Ed
2008-05-22 11:44:31 UTC
There appears to be a bug in the C64 CBM assembler:
TEST.S......PAGE 0001
LINE# LOC CODE LINE
00001 0000 * = $800
00002 0800 10 04 .WORD 16+1024
00003 0802 10 04 .WORD 1024+16
00004 0804 10 00 .WORD 16*1024
00005 0806 00 04 .WORD 1024*16
00006 0808 .END
ERRORS = 00000
END OF ASSEMBLY
Lines 4 & 5 produce different output. In theory they should
evaluate to the same number i.e. $4000.
It's possible I have a corrupt version of the assembler. Does
anyone else get the same results?
Also, the cross-reference generator seems to output many
pages of junk e.g.
CROSS REFERENCE......PAGE 1
* ÿÿÿÿÿ $FFFF 12336
* ÿÿÿÿÿÿ $FF00 12336
* $0000 12336
* $0000 12336
* $0000 12336
* $0000 12336
...
Again, maybe CROSSREF (or the asm) is corrupt :(
I'm running this on VICE 1.2. I don't know if CBM ever
released more than version of the assembler. This one
signs on as: 'CBM RESIDENT ASSEMBLER V080282'
I don't plan to use the CBM assembler for serious work;
just curious as to what's going on.
TEST.S......PAGE 0001
LINE# LOC CODE LINE
00001 0000 * = $800
00002 0800 10 04 .WORD 16+1024
00003 0802 10 04 .WORD 1024+16
00004 0804 10 00 .WORD 16*1024
00005 0806 00 04 .WORD 1024*16
00006 0808 .END
ERRORS = 00000
END OF ASSEMBLY
Lines 4 & 5 produce different output. In theory they should
evaluate to the same number i.e. $4000.
It's possible I have a corrupt version of the assembler. Does
anyone else get the same results?
Also, the cross-reference generator seems to output many
pages of junk e.g.
CROSS REFERENCE......PAGE 1
* ÿÿÿÿÿ $FFFF 12336
* ÿÿÿÿÿÿ $FF00 12336
* $0000 12336
* $0000 12336
* $0000 12336
* $0000 12336
...
Again, maybe CROSSREF (or the asm) is corrupt :(
I'm running this on VICE 1.2. I don't know if CBM ever
released more than version of the assembler. This one
signs on as: 'CBM RESIDENT ASSEMBLER V080282'
I don't plan to use the CBM assembler for serious work;
just curious as to what's going on.