|
|
| version 1.1, 2004/08/01 05:31:32 | version 1.4, 2004/08/14 12:16:18 |
|---|---|
| Line 144 _di: or byte [edi + R_Z80IFF], (1 << | Line 144 _di: or byte [edi + R_Z80IFF], (1 << |
| ret | ret |
| align 16 | align 16 |
| _ei: and byte [edi + R_Z80IFF], ~(1 << IFF_IFLAG) | _ei: mov al, [edi + R_Z80IFF] |
| movzx ecx, word [edi + R_Z80PC] | test al, (1 << IFF_IFLAG) |
| call memfetch | je short .ed |
| cmp al, 0fbh | and al, ~(1 << IFF_IFLAG) |
| je short .eiret | mov edx, [edi + z80core_t.remainclock] |
| inc byte [edi + R_Z80R] | mov [edi + R_Z80IFF], al |
| inc word [edi + R_Z80PC] | test al, (1 << IFF_NMI) |
| movzx edx, byte [_cycles_main + eax] | jne short .nextop |
| Z80WORK dx | cmp dword [edi + R_Z80REQIRQ], byte 0 |
| jmp [opcode_main + eax*4] | jne short .eventexit |
| .eiret: ret | .nextop: cmp edx, byte 1 |
| jge short .ed | |
| .eventexit: dec edx | |
| mov dword [edi + z80core_t.remainclock], 1 | |
| sub [edi + z80core_t.baseclock], edx | |
| .ed: ret | |
| align 16 | align 16 |
| ld_nop: ret | ld_nop: ret |
| Line 745 in_a_byte: GETPCAL | Line 749 in_a_byte: GETPCAL |
| _dd: inc byte [edi + R_Z80R] | _dd: inc byte [edi + R_Z80R] |
| FETCH | FETCH |
| movzx edx, byte [_cycles_xx + eax] | movzx edx, byte [_cycles_xx + eax] |
| Z80WORK dx | Z80WORK edx |
| jmp [opcode_dd + eax*4] | jmp [opcode_dd + eax*4] |
| align 16 | align 16 |
| _ed: inc byte [edi + R_Z80R] | _ed: inc byte [edi + R_Z80R] |
| FETCH | FETCH |
| movzx edx, byte [_cycles_ed + eax] | movzx edx, byte [_cycles_ed + eax] |
| Z80WORK dx | Z80WORK edx |
| jmp [opcode_ed + eax*4] | jmp [opcode_ed + eax*4] |
| align 16 | align 16 |
| _fd: inc byte [edi + R_Z80R] | _fd: inc byte [edi + R_Z80R] |
| FETCH | FETCH |
| movzx edx, byte [_cycles_xx + eax] | movzx edx, byte [_cycles_xx + eax] |
| Z80WORK dx | Z80WORK edx |
| jmp [opcode_fd + eax*4] | jmp [opcode_fd + eax*4] |