xt5
Members-
Content Count
7 -
Joined
-
Last visited
Content Type
Profiles
Member Map
Forums
Blogs
Gallery
Calendar
Store
Everything posted by xt5
-
New developers (and others) live CD's released! With videos
xt5 replied to belboz's topic in Atari Jaguar
thanks a lot JagChris, I missed this one beacuse the links on the first post redirect me to belboz's youtube channel, and archive.org didn't have further version of the page than a early 2009 one. -
New developers (and others) live CD's released! With videos
xt5 replied to belboz's topic in Atari Jaguar
Hi guys, I have been searching for a valid URL to download this with no luck, anybody knows where to find a working image of this live CD? -
Very nice!! It looks awesome, keep working on it!!
-
why transfering 128 '00' from SIO give me checksum '01'?
xt5 replied to xt5's topic in Atari 8-Bit Computers
me too. that is why I want to know if somebody got similar problems in this forum. my complete setup is the following: -MS3303H UART -> USB bridge with DSR sensing the SIO Command line. -Windows XP 32bits with Prolific drive (MS3303H is a Prolific clone or rebranding) the problem is the follow: when I send a payload using the E459h handler with all the data being zero, int the received data on the PC using the Windows Communication API the last byte (ie: the byte used for checksum) instead of be read as 00 is read has 01. I'm really sure that my code is OK because I already transfer a lot of data up/downstream and always get the last byte ok, except in the situation described above. for example this is the data captured with the analyzer of a payload of 12 zeros as you can see it looks OK and the actual data are zeros, but look why I get in the data: ****bad checksum*** 00 00 00 00 00 00 00 00 00 00 00 01 -------- ACK ERROR so if someone had experimented similar behavior, please tell me if you know some workaround I've tracked down where the problem is, it is in some part of the windows com port management but it seems it will take me long fix to it -
why transfering 128 '00' from SIO give me checksum '01'?
xt5 replied to xt5's topic in Atari 8-Bit Computers
nopes, it is not APE, is my own software on win32 but I've used it a lot and transfer tons of upstream/downstream data and the only case when the atari generate this bad checksum is with the payload are all zeros. seems I've lot of bug tracking on this, maybe have to hook a logic analyzer to discard any software special condition -
why transfering 128 '00' from SIO give me checksum '01'?
xt5 posted a topic in Atari 8-Bit Computers
hi, It seems very strange that transfering plenty of '00' with the SIO function at E459h (to a PC as peripheral) give me a checksum of '01', all other values gives me correct checksum except this case. I've read the SIO specification (http://ftp.pigwa.net/stuff/collections/nir_dary_cds/Tech%2520Info/SIOSPECS.PDF) and it don't mention this case, nor I've read of someone having the same problem. -
hi, this is my first post here, Im really new to the atari world, just got my first ever atari just 2 weeks ago I've playing a little with cc65, the assembler and linker seems really good, but I've lot of problems with the compiler generated code. first, I don't like to use page zero at all for temporal values and pointers, that is why I've done my own linker scripts and generate a nice exe without use the atari libs of the cc65 package for example a simple code like this: unsigned char data[211] = { 0x4A, 0x55, 0x45, 0x47, 0x4F, 0x31, 0x20, 0x44, 0x46, 0x53, 0x46, 0x00, 0x4A, 0x55, 0x45, 0x47, .................................. ...................... .............. 0x31, 0x37, 0x00 }; // global unsigned char i; // global ...... .. for(i=0; i<sizeof(data); i++) data[i]-=0x20; generate a very big and slow code that uses a page zero pointer, the code generated is lda #$00 L0147: sta _i cmp #$D3 bcs L0122 lda #<(_data) ldx #>(_data) clc adc _i bcc L012C inx L012C: sta ptr1 stx ptr1+1 ldy #$00 lda (ptr1),y sec sbc #$20 sta (ptr1),y lda _i clc adc #$01 jmp L0147 the same code is generated either with -O, -Oi, -Or, -Os, -Oir, -Ois, -Ors the code without optimization is even worse: L0121: ldx #$00 lda _i cmp #$D3 jsr boolult jne L0124 jmp L0122 L0124: lda #<(_data) ldx #>(_data) clc adc _i bcc L012C inx L012C: jsr pushax ldy #$00 jsr ldauidx sec sbc #$20 ldy #$00 jsr staspidx ldx #$00 lda _i pha clc adc #$01 sta _i pla jmp L0121 L0122: so Im very disappointed with this, as I've to tweak 50% of the code generated, maybe Im just missing something because the code you would expect by that simple snippet is something that just avoid page zero *abuse* like this ldy #$00 loop: cpy #$D3 bcs L0130 lda _data,y sec sbc #$20 sta _data,y iny jmp loop that seems to be a very common issue on 6502 compilers as I've tested IAR one and seems also abuse zero page, also I've tested other one (can't remeber the name) and was even worse.. please give me any direction in this fun atari coding thing regards, xt5
