diff options
Diffstat (limited to 'asm/test_py_src.atk16_optimized')
| -rw-r--r-- | asm/test_py_src.atk16_optimized | 115 |
1 files changed, 115 insertions, 0 deletions
diff --git a/asm/test_py_src.atk16_optimized b/asm/test_py_src.atk16_optimized new file mode 100644 index 0000000..a6a77ab --- /dev/null +++ b/asm/test_py_src.atk16_optimized @@ -0,0 +1,115 @@ +@opt stack_pointer RG +@opt csr_scratch RH +@use ext_std:* +@let vector_table 0x10 +@let vt_ISR0 0x10 +@let vt_ISR1 0x11 +@let vt_ISR2 0x12 +@let vt_ISR3 0x13 +@let vt_stack_addr 0x14 +@let vt_term_pp_addr 0x15 +@let vt_kb_pp_addr 0x16 +@let vt_gr_mode_addr 0x17 +@let vt_sprite_mem 0x18 +@let vt_text_mem 0x19 +@let stack_segment 0x8000 +@let mmio_segment 0xE000 +@let terminal_addr 0xE000 +@let keyboard_addr 0xE001 +@let gr_mode_addr 0xE002 +@let sprite_mem 0xE800 +@let text_mem 0xF800 +@let gr_disabled_mode 0b00 +@let gr_text_mode 0b01 +@let gr_sprite_mode 0b10 +@address 0x0 + ldi vt_stack_addr RA + ldr RA __STACK_POINTER + jpi program_segment +@address vector_table + keyboard_isr + hlt_isr + hlt_isr + hlt_isr + stack_segment + terminal_addr + keyboard_addr + gr_mode_addr + sprite_mem + text_mem +@label hlt_isr + ldi 0x55 RE + hlt +@label keyboard_isr + spu RA + spu RB + ldi vt_kb_pp_addr RA + ldr RA RA + ldr RA RA + ldi vt_term_pp_addr RB + ldr RB RB + str RA RB + spo RB + spo RA + rti +@label program_segment + ldi vt_gr_mode_addr RA + ldr RA RA + ldi gr_disabled_mode RB + str RB RA + jpi main +@label TEXT_MODE + 1 +@label int_0 + 23 +@label int_1 + 63488 +@label int_2 + 72 +@label int_3 + 63489 +@label int_4 + 69 +@label int_5 + 63490 +@label int_6 + 76 +@label int_7 + 63491 +@label int_8 + 76 +@label int_9 + 63492 +@label int_10 + 79 +@label main + ldi int_0 RA + ldr RA RB + spo RA + str RB RA + ldi int_1 RA + ldr RA RA + ldi int_2 RB + ldr RB RB + str RB RA + ldi int_3 RA + ldr RA RA + ldi int_4 RB + ldr RB RB + str RB RA + ldi int_5 RA + ldr RA RA + ldi int_6 RB + ldr RB RB + str RB RA + ldi int_7 RA + ldr RA RA + ldi int_8 RB + ldr RB RB + str RB RA + ldi int_9 RA + ldr RA RA + ldi int_10 RB + ldr RB RB + str RB RA + ldi 1 RA
\ No newline at end of file |
