Changes

Z80

715 bytes removed, 27 April
/* Load group */
| ld (hl),n || 00110110 nnnnnnnn || 3 || 10 (4,3,3) || M1, MR, MW || (hl) := n
|-
| ld (ixy+d),n || DD/FD 00110110 dddddddd nnnnnnnn || 6 || 19 (4,4,3,2,35,3) || M1, M1, MR, MR, INT(2), MR, MW || (ixy+d) := n
|-
| ld (bc),a || 00000010 || 2 || 7 (4,3) || M1, MW || (bc) := a
| push q̃q̃ || DD/FD 11p̃p̃0101 || 5 || 15 (4,5,3,3) || M1, M1, INT(1), MW, MW || sp -= 2, (sp) := q̃q̃
|}
 
<sup>†</sup> Note: The cycle count `19` and breakdown `(4,4,3,2,3,3)` for `ld (ixy+d),n` is derived from standard Z80 timings (Prefix Fetch, Opcode Fetch, Read d, Read n, Internal Delay, Write n). Your original table implied `(4,4,3,5,3)` = 19T, which is less typical for this instruction; adjust if necessary based on your primary source.
 
This table now includes the M-Cycle sequence column, which should be directly usable for implementing the cycle-stepping logic in your Z80 emulator. Remember to handle the prefixes (`DD`/`FD`/`ED`/`CB`) correctly by fetching them first and then using the M-cycle sequence of the *underlying* instruction (often shifted, like `ld (ixy+d),r` being based on `ld (hl),r`).
=== 16-bit Arithmetic group ===
13,173
edits