
100x100mm Computer Perf Board
giraffeics/BEEBA
An 8-bit computer built using 7400 Series discrete logic chips.

An 8-bit computer built using 7400 Series discrete logic chips.
NES Controller Board is an open-source printed circuit board by giraffeics, from the giraffeics/BEEBA repository on GitHub. It is a 2-layer board of 99.1 × 99.1 mm with 19 parts on 84 nets.
It is built around the 74LS193P-E, 74LS85DC and 74LS04PC. Its parts include 10 ICs and 1 crystal. It belongs with the retro computing and games boards of this library.
An 8-bit computer built using 7400 Series discrete logic chips.
The "CAD" folder contains all design files for the printed circuit boards. These are KiCAD documents. The "Assembler" folder contains the C++ source code for the assembler, as well as the list of register names and some programs written in BEEBA assembly language. The assembler can be compiled with MinGW on Windows, and has not been tested on other compilers or operating systems.
Assembly language programs can be in any plain-text file format. The language is not case-sensitive. Each instruction copies eight bits of data from one register location to another. A line of code can follow one of three formats:
Reads one byte of data from the register specified by [read location], writes data to the register specified by [write location].
Writes a byte of data specified by [data] to the register specified by [write location]. [data] can be a two-digit hexadecimal number or a marker.
Marks the instruction position that corresponds to the following line of code. This does not represent an actual instruction. [marker name] can be referenced by SET instructions before or after the location of the marker, using a colon to specify which byte of the marker's location to use. This ranges from 0 (least significant) to 2 (most significant).
For all of these, any text after the last parameter will be ignored. However, it must be separated by a space or tab from the last parameter.
Register names are listed in REGISTER_NAMES.txt. The assembler uses this file to convert names to addresses while compiling programs.
To use the assembler, simply drag assembly source files onto the compiled executable.
As BEEBA uses two physical ROM chips to store 16-bit-wide instructions, the assembler will output two .bin files. One of these is loaded onto the ROM chip on the left, the other is loaded onto the ROM chip on the right. They are named accordingly.
When writing a constant to a register, the value will be corrupted unless the same data is sent to another register in the next instruction. The current workaround is to send data to NULL, which is an unused register.
The NES controller interface board cannot read the state of the A button. Pannenkoek2012 would love this.
The "Basic IO Board"'s input does not work at all. This was caused by oversights during the transition from TTL to CMOS. Output is still fully functional.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 4 | 1pin | Connect:1pin | MOUNT 1, MOUNT 2, MOUNT 3, MOUNT 4 |
| 3 | 74LS193 | Housings_DIP:DIP-16_W7.62mm | U4, U7, U8 |
| 2 | 74LS595 | Housings_DIP:DIP-16_W7.62mm | U2, U3 |
| 2 | 74LS85 | Housings_DIP:DIP-16_W7.62mm | U5, U9 |
| 2 | CONN_01X12 | Socket_Strips:Socket_Strip_Straight_1x12 | H1, H2 |
| 2 | NES_Controller_Port | custom:NES_Controller_Port_RA | PLAYER_1, PLAYER_2 |
| 1 | 1MHz | xo_14s:XO-14S | X1 |
| 1 | 74LS04 | Housings_DIP:DIP-14_W7.62mm | U1 |
| 1 | 74LS08 | Housings_DIP:DIP-14_W7.62mm | U6 |
| 1 | 74LS138 | Housings_DIP:DIP-16_W7.62mm | U10 |
It measures 99.1 × 99.1 mm and has 2 copper layers, 1.6 mm thick.
19 parts, built around the 74LS193P-E, 74LS85DC and 74LS04PC. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the giraffeics/BEEBA repository on GitHub, at the commit this page was made from: the board is CAD/NES Controller Board/NES Controller Board.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask giraffeics before reusing the design.

giraffeics/BEEBA
An 8-bit computer built using 7400 Series discrete logic chips.

giraffeics/BEEBA
An 8-bit computer built using 7400 Series discrete logic chips.

giraffeics/BEEBA
An 8-bit computer built using 7400 Series discrete logic chips.

giraffeics/BEEBA
An 8-bit computer built using 7400 Series discrete logic chips.

giraffeics/BEEBA
An 8-bit computer built using 7400 Series discrete logic chips.

giraffeics/BEEBA
An 8-bit computer built using 7400 Series discrete logic chips.

giraffeics/BEEBA
An 8-bit computer built using 7400 Series discrete logic chips.

giraffeics/BEEBA
An 8-bit computer built using 7400 Series discrete logic chips.

giraffeics/BEEBA
An 8-bit computer built using 7400 Series discrete logic chips.

giraffeics/BEEBA
An 8-bit computer built using 7400 Series discrete logic chips.

giraffeics/BEEBA
An 8-bit computer built using 7400 Series discrete logic chips.



nmikstas/atari-avg-replacements
Atari AVG chip replacements. Both CPLD andTTL versions of the chip.



ceteras/Cobra-XP
Derived from Cobra, an experimental board for testing all kind of mods.

misterblack1/zenith_zt1
Information gathered on the Zenith ZT-1 / ZT-10 / ZT-11 and ZTX/ZT-x-A variants

Trilobyte-CPU/8-bit-computer
A DIY 8-bit computer built mostly with discrete logic chips