--- np2/i286a/i286a_fe.s 2003/12/17 10:41:06 1.2 +++ np2/i286a/i286a_fe.s 2003/12/17 14:04:43 1.3 @@ -1,8 +1,8 @@ INCLUDE i286a.inc INCLUDE i286aalu.inc + INCLUDE i286aop.inc - IMPORT _szpcflag8 IMPORT i286a_ea IMPORT i286a_a IMPORT i286_memoryread @@ -19,52 +19,8 @@ i286aopfe GETPC8 tst r0, #(1 << 3) bne decea8 - - cmp r0, #&c0 - bcc inc8m - CPUWORK #2 - R8SRC r0, r5 - ldrb r4, [r5, #CPU_REG] - INC8 r4 - strb r1, [r5, #CPU_REG] - mov pc, r11 -inc8m CPUWORK #7 - bl i286a_ea - cmp r0, #I286_MEMWRITEMAX - bcs inc8e - ldrb r4, [r9, r0] - INC8 r4 - strb r1, [r9, r0] - mov pc, r11 -inc8e mov r5, r0 - bl i286_memoryread - INC8 r0 - mov r0, r5 - mov lr, r11 - b i286_memorywrite - -decea8 cmp r0, #&c0 - bcc dec8m - CPUWORK #2 - R8SRC r0, r5 - ldrb r4, [r5, #CPU_REG] - DEC8 r4 - strb r1, [r5, #CPU_REG] - mov pc, r11 -dec8m CPUWORK #7 - bl i286a_ea - cmp r0, #I286_MEMWRITEMAX - bcs dec8e - ldrb r4, [r9, r0] - DEC8 r4 - strb r1, [r9, r0] - mov pc, r11 -dec8e mov r5, r0 - bl i286_memoryread - DEC8 r0 - mov r0, r5 - mov lr, r11 - b i286_memorywrite +incea8 OP_EA8 INC8, #2, #7 +decea8 OP_EA8 DEC8, #2, #7 ; ---- @@ -73,7 +29,6 @@ i286aopff GETPC8 and r12, r0, #(7 << 3) adr r1, opefftbl ldr pc, [r1, r12 lsr #1] - opefftbl dcd incea16 dcd decea16 dcd callea16 @@ -83,55 +38,8 @@ opefftbl dcd incea16 dcd pushea16 dcd popea16 -incea16 cmp r0, #&c0 - bcc inc16m - CPUWORK #2 - R16SRC r0, r5 - ldrh r4, [r5, #CPU_REG] - INC16 r4 - strh r1, [r5, #CPU_REG] - mov pc, r11 -inc16m CPUWORK #7 - bl i286a_ea - tst r0, #1 - bne inc16e - cmp r0, #I286_MEMWRITEMAX - bcs inc16e - ldrh r4, [r9, r0] - INC16 r4 - strh r1, [r9, r0] - mov pc, r11 -inc16e mov r5, r0 - bl i286_memoryread_w - INC16 r0 - mov r0, r5 - mov lr, r11 - b i286_memorywrite_w - -decea16 cmp r0, #&c0 - bcc dec16m - CPUWORK #2 - R16SRC r0, r5 - ldrh r4, [r5, #CPU_REG] - DEC16 r4 - strh r1, [r5, #CPU_REG] - mov pc, r11 -dec16m CPUWORK #7 - bl i286a_ea - tst r0, #1 - bne dec16e - cmp r0, #I286_MEMWRITEMAX - bcs dec16e - ldrh r4, [r9, r0] - DEC16 r4 - strh r1, [r9, r0] - mov pc, r11 -dec16e mov r5, r0 - bl i286_memoryread_w - DEC16 r0 - mov r0, r5 - mov lr, r11 - b i286_memorywrite_w +incea16 OP_EA16 INC16, #2, #7 +decea16 OP_EA16 DEC16, #2, #7 callea16 cmp r0, #&c0 bcc call16m