--- np2/i286a/i286a.inc 2003/12/20 11:49:47 1.13 +++ np2/i286a/i286a.inc 2003/12/21 23:27:08 1.14 @@ -12,7 +12,7 @@ I_FLAG equ &0200 D_FLAG equ &0400 O_FLAG equ &0800 -CPU_SIZE equ 124 +CPU_SIZE equ 116 CPU_STAT equ (0 - CPU_SIZE) CPU_EXT equ (104 - CPU_SIZE) @@ -72,23 +72,33 @@ CPU_EXTMEMSIZE equ CPU_EXT + 4 MEMWAIT_TRAM equ CPU_EXT + 8 MEMWAIT_VRAM equ CPU_EXT + 9 MEMWAIT_GRCG equ CPU_EXT + 10 -FONTPTR_LOW equ CPU_EXT + 12 -FONTPTR_HIGH equ CPU_EXT + 16 -; cpu_ext_size equ 20 +; cpu_ext_size equ 12 MAX_PREFIX equ 8 + MACRO -$label CPUSVC +$label CPUDBGS $label ;; str r7, [r9, #CPU_REMAINCLOCK] MEND MACRO -$label CPULDC +$label CPUDBGL $label ;; ldr r7, [r9, #CPU_REMAINCLOCK] MEND + + MACRO +$label CPUSVC +$label str r7, [r9, #CPU_REMAINCLOCK] + MEND + + MACRO +$label CPULDC +$label ldr r7, [r9, #CPU_REMAINCLOCK] + MEND + MACRO $label CPUSVF $label str r8, [r9, #CPU_FLAG] @@ -114,27 +124,27 @@ $label CPULDF MACRO $label CPUWORK $clock -$label ldr r7, [r9, #CPU_REMAINCLOCK] +$label CPUDBGL sub r7, r7, $clock - str r7, [r9, #CPU_REMAINCLOCK] + CPUDBGS MEND MACRO $label CPUWKS $clock -$label ldr r7, [r9, #CPU_REMAINCLOCK] +$label CPUDBGL subs r7, r7, $clock - str r7, [r9, #CPU_REMAINCLOCK] + CPUDBGS MEND MACRO $label CREMSET $clock $label mov r7, $clock - str r7, [r9, #CPU_REMAINCLOCK] + CPUDBGS MEND MACRO $label NEXT_OPCODE -$label ldr r7, [r9, #CPU_REMAINCLOCK] +$label CPUDBGL cmp r7, #1 movge pc, r11 ldr r0, [r9, #CPU_BASECLOCK] @@ -142,13 +152,13 @@ $label ldr r7, [r9, #CPU_REMAINCLOCK] mov r7, #1 add r0, r0, r1 str r0, [r9, #CPU_BASECLOCK] - str r7, [r9, #CPU_REMAINCLOCK] + CPUDBGS mov pc, r11 MEND MACRO $label REMAIN_ADJUST $clk -$label ldr r7, [r9, #CPU_REMAINCLOCK] +$label CPUDBGL cmp r7, $clk moveq pc, r11 ldr r0, [r9, #CPU_BASECLOCK] @@ -156,23 +166,24 @@ $label ldr r7, [r9, #CPU_REMAINCLOCK] mov r7, $clk add r0, r0, r1 str r0, [r9, #CPU_BASECLOCK] - str r7, [r9, #CPU_REMAINCLOCK] + CPUDBGS mov pc, r11 MEND MACRO $label I286IRQCHECKTERM -$label ldr r7, [r9, #CPU_REMAINCLOCK] +$label CPUDBGL cmp r7, #0 movle pc, r11 ldr r0, [r9, #CPU_BASECLOCK] mov r1, r7 mov r7, #0 sub r0, r0, r1 - str r7, [r9, #CPU_REMAINCLOCK] str r0, [r9, #CPU_BASECLOCK] + CPUDBGS mov pc, r11 MEND + END