En la dirección de memoria 0x057A tengo el dato 0xF9, ejecuto esto en el simulador y no para cuando encuentra el dato, sino cuando BC = 0. Me equivoco?
.text
LD HL, 0x0575
LD A, 0xF9
LD BC, 0x06A1
CPIR
.end
En la dirección de memoria 0x057A tengo el dato 0xF9, ejecuto esto en el simulador y no para cuando encuentra el dato, sino cuando BC = 0. Me equivoco?
.text
LD HL, 0x0575
LD A, 0xF9
LD BC, 0x06A1
CPIR
.end
Cuando decís que "En la dirección de memoria 0x057A tengo el dato 0xF9", cómo lo averiguaste? mirando el contenido de memoria con el debugger o porque lo escribe antes tu programa?
Si es lo segundo, ojo porque en esa dirección de memoria hay ROM. Mirá el mapa de memoria del sistema del simulador que se da en la pagina 7 de la guía.
julio
Si, lo averigüe mirando el contenido de memoria con el debugger, no lo escribí yo
Daniel,
Gracias por el reporte.
Recién hoy pudimos probarlo con Leonardo y efectivamente parece haber un bug en el simulador del Z80 (QEMU).
Hicimos la misma prueba trabajando sobre la placa cambiando el valor cargado en A ya que el contenido de ROM es distinto y funcionó ok.
Vamos a seguir investigando.
Saludos,
julio
Ok, muchas gracias