|
|
| version 1.1, 2003/12/16 21:59:07 | version 1.7, 2003/12/19 12:29:04 |
|---|---|
| Line 1 | Line 1 |
| INCLUDE i286a.inc | INCLUDE i286a.inc |
| INCLUDE i286aea.inc | |
| INCLUDE i286aalu.inc | INCLUDE i286aalu.inc |
| IMPORT i286core | |
| IMPORT _szpcflag8 | |
| IMPORT i286a_ea | IMPORT i286a_ea |
| IMPORT i286a_lea | IMPORT i286a_memoryread |
| IMPORT i286_memoryread | IMPORT i286a_memoryread_w |
| IMPORT i286_memoryread_w | IMPORT i286a_memorywrite |
| IMPORT i286_memorywrite | IMPORT i286a_memorywrite_w |
| IMPORT i286_memorywrite_w | |
| EXPORT i286aop80 | |
| EXPORT i286a_80 | EXPORT i286aop81 |
| EXPORT i286a_81 | EXPORT i286aop83 |
| EXPORT i286a_83 | |
| AREA .text, CODE, READONLY | AREA .text, CODE, READONLY |
| i286a_80 GETPC8 | i286aop80 GETPC8 |
| and r6, r0, #(7 << 3) | and r6, r0, #(7 << 3) |
| cmp r0, #&c0 | cmp r0, #&c0 |
| bcc ope80m | bcc ope80m |
| Line 35 ope80m CPUWORK #7 | Line 33 ope80m CPUWORK #7 |
| GETPC8 | GETPC8 |
| adr r1, op8x_reg8 | adr r1, op8x_reg8 |
| ldr pc, [r1, r6 lsr #1] | ldr pc, [r1, r6 lsr #1] |
| ope80e mov r4, r0 | ope80e mov r5, r0 |
| bl i286a_memoryread | |
| mov r4, r0 | |
| GETPC8 | GETPC8 |
| mov r5, r0 | |
| bl i286_memoryread | |
| adr r1, op8x_ext8 | adr r1, op8x_ext8 |
| ldr pc, [r1, r6 lsr #1] | ldr pc, [r1, r6 lsr #1] |
| Line 92 cmp_r8_i ldrb r6, [r5] | Line 90 cmp_r8_i ldrb r6, [r5] |
| SUB8 r6, r0 | SUB8 r6, r0 |
| mov pc, r11 | mov pc, r11 |
| add_r8_e ADD8 r0, r4 | add_r8_e ADD8 r4, r0 |
| mov r0, r5 | mov r0, r5 |
| mov lr, r11 | mov lr, r11 |
| b i286_memorywrite | b i286a_memorywrite |
| or_r8_e OR8 r0, r4 | or_r8_e OR8 r4, r0 |
| mov r0, r5 | mov r0, r5 |
| mov lr, r11 | mov lr, r11 |
| b i286_memorywrite | b i286a_memorywrite |
| adc_r8_e ADC8 r0, r4 | adc_r8_e ADC8 r4, r0 |
| mov r0, r5 | mov r0, r5 |
| mov lr, r11 | mov lr, r11 |
| b i286_memorywrite | b i286a_memorywrite |
| sbb_r8_e SBB8 r0, r4 | sbb_r8_e SBB8 r4, r0 |
| mov r0, r5 | mov r0, r5 |
| mov lr, r11 | mov lr, r11 |
| b i286_memorywrite | b i286a_memorywrite |
| and_r8_e AND8 r0, r4 | and_r8_e AND8 r4, r0 |
| mov r0, r5 | mov r0, r5 |
| mov lr, r11 | mov lr, r11 |
| b i286_memorywrite | b i286a_memorywrite |
| sub_r8_e SUB8 r0, r4 | sub_r8_e SUB8 r4, r0 |
| mov r0, r5 | mov r0, r5 |
| mov lr, r11 | mov lr, r11 |
| b i286_memorywrite | b i286a_memorywrite |
| xor_r8_e XOR8 r0, r4 | xor_r8_e XOR8 r4, r0 |
| mov r0, r5 | mov r0, r5 |
| mov lr, r11 | mov lr, r11 |
| b i286_memorywrite | b i286a_memorywrite |
| cmp_r8_e SUB8 r0, r4 | cmp_r8_e SUB8 r4, r0 |
| mov pc, r11 | mov pc, r11 |
| ; ---- | ; ---- |
| i286a_81 GETPC8 | i286aop81 GETPC8 |
| and r6, r0, #(7 << 3) | and r6, r0, #(7 << 3) |
| cmp r0, #&c0 | cmp r0, #&c0 |
| bcc ope81m | bcc ope81m |
| CPUWORK #3 | CPUWORK #3 |
| R8SRC r0, r5 | R16SRC r0, r5 |
| add r5, r5, #CPU_REG | add r5, r5, #CPU_REG |
| GETPC16 | GETPC16 |
| adr r1, op8x_reg16 | adr r1, op8x_reg16 |
| Line 146 ope81m CPUWORK #7 | Line 144 ope81m CPUWORK #7 |
| GETPC16 | GETPC16 |
| adr r1, op8x_reg16 | adr r1, op8x_reg16 |
| ldr pc, [r1, r6 lsr #1] | ldr pc, [r1, r6 lsr #1] |
| ope81e mov r4, r0 | ope81e mov r5, r0 |
| bl i286a_memoryread_w | |
| mov r4, r0 | |
| GETPC16 | GETPC16 |
| mov r5, r0 | |
| bl i286_memoryread_w | |
| adr r1, op8x_ext16 | adr r1, op8x_ext16 |
| ldr pc, [r1, r6 lsr #1] | ldr pc, [r1, r6 lsr #1] |
| i286a_83 GETPC8 | i286aop83 GETPC8 |
| and r6, r0, #(7 << 3) | and r6, r0, #(7 << 3) |
| cmp r0, #&c0 | cmp r0, #&c0 |
| bcc ope83m | bcc ope83m |
| CPUWORK #3 | CPUWORK #3 |
| R8SRC r0, r5 | R16SRC r0, r5 |
| add r5, r5, #CPU_REG | add r5, r5, #CPU_REG |
| GETPC8 | GETPC8 |
| tst r0, #(1 << 7) | tst r0, #(1 << 7) |
| Line 177 ope83m CPUWORK #7 | Line 175 ope83m CPUWORK #7 |
| orrne r0, r0, #(&ff << 8) | orrne r0, r0, #(&ff << 8) |
| adr r1, op8x_reg16 | adr r1, op8x_reg16 |
| ldr pc, [r1, r6 lsr #1] | ldr pc, [r1, r6 lsr #1] |
| ope83e mov r4, r0 | ope83e mov r5, r0 |
| bl i286a_memoryread_w | |
| mov r4, r0 | |
| GETPC8 | GETPC8 |
| mov r5, r0 | |
| tst r0, #(1 << 7) | tst r0, #(1 << 7) |
| orrne r5, r5, #(&ff << 8) | orrne r0, r0, #(&ff << 8) |
| bl i286_memoryread_w | |
| adr r1, op8x_ext16 | adr r1, op8x_ext16 |
| ldr pc, [r1, r6 lsr #1] | ldr pc, [r1, r6 lsr #1] |
| Line 236 cmp_r16_i ldrh r6, [r5] | Line 234 cmp_r16_i ldrh r6, [r5] |
| SUB16 r6, r0 | SUB16 r6, r0 |
| mov pc, r11 | mov pc, r11 |
| add_r16_e ADD16 r0, r4 | add_r16_e ADD16 r4, r0 |
| mov r0, r5 | mov r0, r5 |
| mov lr, r11 | mov lr, r11 |
| b i286_memorywrite_w | b i286a_memorywrite_w |
| or_r16_e OR16 r0, r4 | or_r16_e OR16 r4, r0 |
| mov r0, r5 | mov r0, r5 |
| mov lr, r11 | mov lr, r11 |
| b i286_memorywrite_w | b i286a_memorywrite_w |
| adc_r16_e ADC16 r0, r4 | adc_r16_e ADC16 r4, r0 |
| mov r0, r5 | mov r0, r5 |
| mov lr, r11 | mov lr, r11 |
| b i286_memorywrite_w | b i286a_memorywrite_w |
| sbb_r16_e SBB16 r0, r4 | sbb_r16_e SBB16 r4, r0 |
| mov r0, r5 | mov r0, r5 |
| mov lr, r11 | mov lr, r11 |
| b i286_memorywrite_w | b i286a_memorywrite_w |
| and_r16_e AND16 r0, r4 | and_r16_e AND16 r4, r0 |
| mov r0, r5 | mov r0, r5 |
| mov lr, r11 | mov lr, r11 |
| b i286_memorywrite_w | b i286a_memorywrite_w |
| sub_r16_e SUB16 r0, r4 | sub_r16_e SUB16 r4, r0 |
| mov r0, r5 | mov r0, r5 |
| mov lr, r11 | mov lr, r11 |
| b i286_memorywrite_w | b i286a_memorywrite_w |
| xor_r16_e XOR16 r0, r4 | xor_r16_e XOR16 r4, r0 |
| mov r0, r5 | mov r0, r5 |
| mov lr, r11 | mov lr, r11 |
| b i286_memorywrite_w | b i286a_memorywrite_w |
| cmp_r16_e SUB16 r0, r4 | cmp_r16_e SUB16 r4, r0 |
| mov pc, r11 | mov pc, r11 |
| END | END |