diff options
| author | Astrid Smith | 2010-09-10 21:12:31 -0700 |
|---|---|---|
| committer | Astrid Smith | 2010-09-10 21:12:31 -0700 |
| commit | 1c26c72e8abbac88f7718edc8785ea2448fd03cc (patch) | |
| tree | 257933da5a3830f28e66c715ae3f5636696652a4 | |
| parent | 5ab672895479fcc20bade5971324708929db3830 (diff) | |
XXX UNDO LATER: Performance degrading change to make debugging easier
| -rw-r--r-- | opcodes.asm | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/opcodes.asm b/opcodes.asm index b4e57c5..b2f4909 100644 --- a/opcodes.asm +++ b/opcodes.asm @@ -103,16 +103,6 @@ START MACRO _align SET _align+$40 ENDM - ;; This is run at the end of every instruction routine. -DONE MACRO - clr.w d0 ; 4 cycles / 2 bytes - move.b (epc)+,d0 ; 8 cycles / 2 bytes - move.b d0,$4c00+32*(128/8) - rol.w #6,d0 ;18 cycles / 2 bytes - jmp 0(a5,d0.w) ;14 cycles / 4 bytes - ;; overhead: 42 cycles /10 bytes - ENDM - ;; LOHI/HILO are hideously slow for instructions used often. ;; Interleave registers instead: ;; @@ -181,6 +171,20 @@ F_DEC_W MACRO ;; lookup table + ;; This is run at the end of every instruction routine. +done: + clr.w d0 ; 4 cycles / 2 bytes + move.b (epc)+,d0 ; 8 cycles / 2 bytes + move.b d0,$4c00+32*(128/8) + rol.w #6,d0 ;18 cycles / 2 bytes + jmp 0(a5,d0.w) ;14 cycles / 4 bytes + ;; overhead: 42 cycles /10 bytes + + +DONE MACRO + bra done + ENDM + CNOP 0,32 |
