diff --git a/bin2a1monitor.py b/bin2a1monitor.py index ad2fd41..599bdd5 100644 --- a/bin2a1monitor.py +++ b/bin2a1monitor.py @@ -10,7 +10,7 @@ if __name__ == "__main__": def print_row(offset, row_data): print(hex(offset)[2:].upper() + ': ' + " ".join(row_data)) - row_offset = int(sys.argv[1], 0) + row_offset = int(sys.argv[1], 16) row = list() with open(sys.argv[2], 'rb') as file: byte = file.read(1) diff --git a/src/cartridge.xa b/src/cartridge.xa index 18fe773..1a54de4 100644 --- a/src/cartridge.xa +++ b/src/cartridge.xa @@ -38,6 +38,9 @@ start + ; clear decimal mode + cld + ; enable rom bank sta rom_bank diff --git a/src/rom_content.xa b/src/rom_content.xa index 3d18039..a8d8376 100644 --- a/src/rom_content.xa +++ b/src/rom_content.xa @@ -6,6 +6,12 @@ rom_content = $4800 number_of_entries .byt $05 +/* + How to store INTEGER BASIC programs? + C100R + 004A.00FFW 0800.0FFFW + E2B3R - warm entry point +*/ basic basic_seg .byt $01 basic_len .word $1000 @@ -22,19 +28,20 @@ apple30th_cont_start .word apple30th_cont apple30th_str .byt $13,"APPLE 30TH BIRTHDAY" apple30th_jmp_addr .word $0280 -/* 00: */ -/* test address expected actual */ /* -0 - All zeros - each byte of memory is verified that a 0x00 value can be written and read -1 - All ones - each byte of memory is verified that a 0xff value can be written and read -2 - Floating ones - eight passes, starting with 0x01 and moving the 1 bit to left each succeeding pass + 00: + test address expected actual + + 0 - All zeros - each byte of memory is verified that a 0x00 value can be written and read + 1 - All ones - each byte of memory is verified that a 0xff value can be written and read + 2 - Floating ones - eight passes, starting with 0x01 and moving the 1 bit to left each succeeding pass 0x02 0x04 0x08 0x10 0x20 0x40 0x80 -3 - Floating zeros - eight passes, starting with 0x7f and shifting the 0 bit to the right each succeeding pass + 3 - Floating zeros - eight passes, starting with 0x7f and shifting the 0 bit to the right each succeeding pass 0xBF 0xDF 0xEF 0xF7 0xFB 0xFD 0xFE -4 - Address in Address 1 - one pass with low eight bits of the locations address is written to that location + 4 - Address in Address 1 - one pass with low eight bits of the locations address is written to that location if this fails, you have a problem with one of the low eight address lines (this is pretty unlikely to fail, since you need these address lines in order to load and run this program) -5 - Address in Address 2 - one pass with high eight bits of the locations address written to that location + 5 - Address in Address 2 - one pass with high eight bits of the locations address written to that location if this fails, you have a problem with one of the eight high address lines */ memorytest @@ -48,8 +55,9 @@ memorytest_2_cont_start .word memorytest_cont+16 memorytest_str .byt $10,"MEMORY TEST 280R" memorytest_jmp_addr .word $FF1F -/* 44: */ - +/* + 44: - disassembler start address +*/ disassembler disassembler_seg .byt $01 disassembler_1_len .word $0200