y si bien es cierto que estos chips de ATMEL sí tienen latches (pin keepers según el fabricante) en los pines para recordar el último estado, también lo es que permiten salidas triestado y para los DD tal vez requieran reescribir el código. En formato GALasm podría quedar algo así,
Código: Seleccionar todo
GAL22V10
ZXVaDeRetrorController
; Pin assignments
;1 2 3 4 5 6 7 8 9 10 11 12
A5 A14 A15 MREQ IORQ RD WR JLEFT JRIGHT JUP JDOWN GND
;13 14 15 16 17 18 19 20 21 22 23 24
JFIRE ROMRD ROMWR D7 D6 D5 D4 D3 D2 D1 D0 VCC
; Joystick
D0.T = /JRIGHT
D0.E = /A5 * /IORQ * /RD
D1.T = /JLEFT
D1.E = /A5 * /IORQ * /RD
D2.T = /JDOWN
D2.E = /A5 * /IORQ * /RD
D3.T = /JUP
D3.E = /A5 * /IORQ * /RD
D4.T = /JFIRE
D4.E = /A5 * /IORQ * /RD
D5.T = GND
D5.E = /A5 * /IORQ * /RD
D6.T = GND
D6.E = /A5 * /IORQ * /RD
D7.T = GND
D7.E = /A5 * /IORQ * /RD
; ROM
ROMRD = A14 + A15 + MREQ + RD
ROMWR = A14 + A15 + MREQ + WR
DESCRIPTION
ZX VaDeRetror Joystick and ROM controller