Last Updated or created 2023-08-25
Followup on
UPDATE 20230702 20230703 20230714
While working on a Lidar project, my mouser components came in.
Now I have to find a IO address decoder schematic I made a while ago.
This ISA board is going to have a Wirewrapped setup. There is a 8255 IO chip, and uses 3x 74138 for IO address decoding, OR i will use a setup i’ve made for my 6502 using an atf22v10.
What to controll using this 8255? First some Leds, later a LCD display.
Below the 3 mentioned IC’s
The 8255 is a chip like the 6522 used in my DIY 6502 elsewhere on my site.
Overview of comparable IO chips. ( Not interchangeable due to bus timing!)
Most of them have 8 data lines and 2x 8 IO bi-directional lines.
CHIP | NOTES |
6522 | 6502 based machines |
8255 | 8088/8068 based machines |
Z84C2008 | Z80 (called PIO) |
8155 | 8085 / 8088 |
8520 | 68000 amiga |
6821 | 6800 |
UPDATE 20230702
Started wirewrapping, luckily i’ve got a big choice of colors. That makes finding the right signals a breeze.
UPDATE 20230703
Found my schematic
Above uses 3 74138 decoders, address can be “programmed” using jumpers (not used on my prototype board) . Address 0400h in above example.
A15 – 0
A14,13,12 – decodes to OUT-0
A11 – 0
A10,9,8 – decodes to OUT-4
A7 – 0
A6,5,4 – decodes to OUT-0
A3 and A2 are not used (see note)
A1 and A0 are register select on the 8255
Address 0000,0100,0000,xxrr
xx can be a 0 or 1
the 8255 can be controlled using
0400h 0401h 0402h
but also
0404h 0405h 0406h
0408h 0409h ….
040Ch ……
UPDATE 20230714 – Alternative address decode test with ATF22V10
UPDATE 20230803
UPDATE
Miswired second 74138.
Tested with below code
mov dx,503h # control register mov al,80h # output port a,b,c as standard IO/output out dx,al # 16 bit IO mapped IO out mov dx,500h # data register mov al,0 # 0/ff all on/all off out dx,al