085. Iny implied

Conectar el opcode implícito INY.

Lección 85 de 356 · tests/chapter_01_cpu/test_085_INY_implied.py

En este paso, usa instructions.iny del Test 084 y añade únicamente el despacho.

Ubicación y símbolos en producción

emulator/cpu/opcodes.py: imported `iny` and `OPCODE_TABLE[0xC8]`

Por qué existe este paso

Dado que Y es implícito en INY, la tabla de opcodes puede despachar directamente a la función de instrucción sin decodificar un operando.

Implementación sugerida para este paso

# emulator/cpu/opcodes.py
from emulator.cpu.instructions import iny  # alongside existing imports

OPCODE_TABLE = {
    # ... existing entries ...
    0xC8: iny,
}

Invariantes importantes

  • el opcode 0xC8 se mapea exactamente a la función iny(cpu)
  • la instrucción de un byte avanza el PC en uno
  • el ajuste circular y el comportamiento de Z/N siguen en la función de instrucción del test 084

Concepto erróneo habitual

No uses immediate(cpu) solo porque la tabla necesite algo invocable; INY no tiene byte de operando y una decodificación inmediata corrompería el PC.

Fuera de alcance

  • el comportamiento y mapeo de opcode de DEY (tests 086-087)
  • las formas posteriores de la instrucción ASL
  • el temporizado de ciclos

Ejecutar esta lección

uv run pytest tests/chapter_01_cpu/test_085_INY_implied.py -v