Plus4i8255 is an Intel 8255 Interface for the Commodore 16, 116 and Plus/4.
The Intel 8255 is a general purpose programmable I/O device featuring 24 I/O pins which may be individually programmed in 2 groups of 12 and used in 3 major modes of operation.
Plus4i8255 is based on the article published in Rádiótechnika 1988/12 by Ferenc Garay and Dr. János Rohonczy with a few improvements: the board has been made much smaller, the ICs doing address decoding have been turned into a GAL for easy reconfigurability (both GAL20 and GAL22 are supported) and pull-up resistors have been added on all inputs.
Intel 8255 chips can all be bought supercheap on AliExpress & similar sites. There are only a couple of other components, making this board very affordable to build for everyone.
The board is generic and can be used for a multitude of purposes, but its most common usage back in the day was to connect a 1541 drive in a parallel fashion, making it faster when used with software such as Port-Turbo V1 or Port-Backup.
A simple program to test all the board I/O pins (in Mode 1) can be found in the Release area.
The 8255 is a relatively complex chip with 3 different modes of operation. The datasheet is your friend, those for a few different chips are provided in the doc directory. Make sure to pick the one corresponding to your target chip and read it carefully.
The board exposes the four 8255 registers at $FE00-$FE03:
| Address | Description |
|---|---|
| $FE00 | Port A Register |
| $FE01 | Port B Register |
| $FE02 | Port C Register |
| $FE03 | Control Register |
Note that, while on some modern chip all registers can be read and written to, for compatibility's sake you should assume that the Control Register can only be written to, as is the case with most (older) 8255 chips.
If you want to get this board produced, you are recommended to get the latest release rather than the current git version, as the latter might be under development and is not guaranteed to be working.
Every release is accompanied by its Bill Of Materials (BOM) file and any relevant notes about it, which you are recommended to read carefully.
The Plus4i8255 documentation, including the design itself, is copyright © SukkoPera 2024 and is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
This documentation is distributed as is and WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES whatsoever with respect to its functionality, operability or use, including, without limitation, any implied warranties OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE or infringement. We expressly disclaim any liability whatsoever for any direct, indirect, consequential, incidental or special damages, including, without limitation, lost revenues, lost profits, losses resulting from business interruption or loss of data, regardless of the form of action or legal theory under which the liability may be asserted, even if advised of the possibility or likelihood of such damages.
If you want to get some boards manufactured, you can get them from PCBWay through this link:
You get my gratitude and cheap, professionally-made and good quality PCBs, I get some credit that will help with this and other projects. You won't even have to worry about the various PCB options, it's all pre-configured for you!
Also, if you still have to register, you can use this link to get some bonus initial credit (and yield me some more).
You can also buy me a coffee if you want:

