Skip to the content
2 layers350 × 224.3 mmConsole, the printed circuit board in 3D

a 2022 replica of the classic TI/994a, using obtainable parts

Size
350 × 224.3 mm
Copper layers
2
Thickness
1.6 mm
Parts
251
Nets
354
Pads
1,523
Tracks, vias
9,062, 592
Pours
6
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
24 Jun 2022
Updated
5 Oct 2024

Overview

Console is an open-source printed circuit board by danwerner21, from the danwerner21/TI99_22 repository on GitHub. It is a 2-layer board of 350 × 224.3 mm with 251 parts on 354 nets, routed with 9,062 tracks and 592 vias.

It is built around the 74LS367PC, 74LS245SC and 74LS373SC, with the 74LS04PC, 74LS00SC and 74LS574N among its other parts. Its parts include 77 resistors, 75 capacitors, 38 ICs, 11 inductors and 4 transistors.

Main components

12

README

README.md

Texas Instruments TI99/4A Clone(ish) Project

System

Note that this is not a fully tested project at this point. . . .

This is based Rob Krenicki's design that is based on the HackMac KiCAD schematics. I have made several changes to the original design including:

  • Placing 32K of 16bit wide fast ram on the board to fully populate the address space
  • Placing an EPROM on the main board that can be used as an on-board cartridge ROM
  • adding a header to allow a microcontroller to replace the GROM chips (hopefully this can be moved on-board soon)
  • replacing the video DRAM with SRAM
  • Updating the Keyboard header to support a soft caps lock switch on the keyboard PCB
  • designing a Cherry MX keyboard
  • adding headers for the GROM and expansion port to support riser cards for these ports

If there are any questions, I can be reached at vic2020Dan at gmail dot com.

ToDo

  • Cleanup/Documentation Possible Future Thoughts:

  • Redo the Board in an ATX form factor with PEB slots on board

  • Add Support for the Pico9918 on-board

  • Add Support for a Tang Nano FPGA TMS9918 replacement

  • Add Hex-bus port

  • Add a DIN 5-pin Composite video/Audio out.

  • Add built in speech synthesis

  • Clone Disk IO card

  • Relocate all the ports to the back of the motherboard

  • It has been suggested that we also have a console style version of the next revision as not everyone has a desire for a larger PE style machine

  • Also perhaps add some keys to the keyboard

DIP Switch Settings

The DIP switch on the main board allows one to configure which bank areas are populated with RAM.

RAM0 enables RAM to addresses >2000-3FFF (Lo Memory Expansion) RAM1 enables RAM to addresses >A000-BFFF (Hi Memory Expansion) RAM2 enables RAM to addresses >C000-DFFF (Hi Memory Expansion) RAM3 enables RAM to addresses >E000-FFFF (Hi Memory Expansion) RAM4 enables RAM to addresses >8000-83FF (Normal TI Scratch Pad RAM)

Note that I have never actually tested off-board 8 bit RAM, so this is new territory and might need some debugging 😊
also on-board RAM is 16 bit – so all of those external RAM sources will be slower.

Bugs

  • on rev 0.95 R36-40 are listed as 100K ohm, they are actually 100 ohm

  • on rev 0.95 the joystick and cassette connectors are mirrored and need to be mounted on the bottom side of the board to function

  • Both of these are corrected in 0.96

  • The reset button J1 should be attached to pin 5 of U1 not Pin 4

Bill of Materials

Console

QtyReference(s)Part
6C1, C9, C11, C58, C73, C750.001uF
1C222pF
3C3, C5, C5922uF
12C4, C7, C13, C14, C20, C54, C55, C62, C64, C68, C71, C740.1uF
1C61uF
7C8, C52, C63, C65, C66, C67, C720.01uF
1C10100uF
1C120.01uF
7C15, C16, C17, C19, C21, C22, C60100uF
30C18, C23, C24, C25, C26, C27, C28, C29, C30, C31, C32, C33, C34, C35, C36, C37, C38, C39, C40, C41, C42, C43, C44, C45, C46, C47, C48, C49, C50, C510.1uF
1C53100uF
1C5612pF
1C5756pF
1C61220uF
1C69220pF
1C700.022uF
2CR1, CR41N4148
2CR2, CR31N914B
1D1LED
1J1Connector PinHeader 2.54mm:PinHeader 1x02 P2.54mm Vertical
1J2Connector PinHeader 2.54mm:PinHeader 1x02 P2.54mm Vertical
1J3TerminalBlock RND:TerminalBlock RND 205-00278 1x04 P5.00mm Vertical
1J4Connector PinHeader 2.54mm:PinHeader 1x16 P2.54mm Vertical
2J5, J6Connector PinHeader 2.54mm:PinHeader 1x03 P2.54mm Vertical
1J7Connector PinHeader 2.54mm:PinHeader 1x03 P2.54mm Vertical
1J8Connector PinHeader 2.54mm:PinHeader 1x02 P2.54mm Vertical
1J9Connector PinHeader 2.54mm:PinHeader 1x02 P2.54mm Vertical
1J10Connector Dsub:DSUB-9 Female Horizontal P2.77x2.84mm EdgePinOffset4.94mm Housed MountingHolesOffset7.48mm
1J11Connector PinHeader 2.54mm:PinHeader 1x18 P2.54mm Vertical
1J12Connector PinHeader 2.54mm:PinHeader 2x22 P2.54mm Vertical
1J13WernerCustomLibrary:44 Pin Card Edge
1J14Library:CardEdge 34Pin 2.54mm Vertical
1J15Connector PinHeader 2.54mm:PinHeader 2x18 P2.54mm Vertical
1J16Connector PinSocket 2.54mm:PinSocket 1x03 P2.54mm Vertical
1J17Connector PinSocket 2.54mm:PinSocket 1x03 P2.54mm Vertical
1J18Connector Dsub:DSUB-9 Female Horizontal P2.77x2.84mm EdgePinOffset4.94mm Housed MountingHolesOffset7.48mm
1L10.33uH
2L4, L56.8uH
1L75.8uH
1L8INDUCTOR (Ferrite BEAD)
7L10, L11, L12, L13, L14, L15, L168.2uH
3Q1, Q3, Q4TIS92
1Q22N3904
1R1150k
7R2, R9, R11, R18, R34, R35, R461k
1R312k
1R447k
4R5, R6, R7, R822
5R10, R26, R45, R52, R534.7k
5R12, R13, R14, R15, R161K
3R17, R48, R502.2k
2R19, R30470
1R20270
1R211.5k x 9 SIP bussed
1R22361
3R23, R73, R755.6k
2R24, R2710
1R25150
1R28470k
1R290
2R31, R3375
1R32470
4R41, R42, R43, R4462
1R473.3k
9R36, R37, R38, R39, R40, R49, R51, R54, R56100
1R55330
1R5710k
1R586.8k
1R5939k
1R606.8k
4R61, R62, R67, R681K
1R63120k
1R642.7k
3R65, R66, R76220
1R6910K
1R709.1k
2R71, R7210k
1R745.6K
1R7715
2RN1, RN210K x 9 SIP Bussed
1SW1DIP switchx05
1SW2Pin Header 01x02 Male
1U1TMS9904 (note this needs to be a 9904 not 9904ANL. If the 9904ANL is used, Y1 needs to be substituted with 12Mhz, L1 needs to be substituted with 3.3uh and C2 needs to be substituted with 50pf)
1U2TMS9900
4U3, U15, U22, U2474LS04
2U4, U974LS32
2U5, U874LS138
1U674LS03
1U774LS08
3U10, U14, U1874LS00
2U11, U4174LS244
1U1274LS373
1U1374LS245
1U1674LS74
1U1774LS194
1U19LM2901
1U20LM7905 TO220
1U21LM2903
3U26, U27, U28TMC0430
3U29, U30, U37HM62256BLP
2U31, U3227C64
1U33SN76489
1U34TMS9918
3U35, U36, U3874LS574
1U39TMS9901
1U4074LS156
2U42, U4374LS367
1U4474LS379
1U4527C010
1U46RC4558
1U4774LS06
2U48, U49TIL119
1Y148.000 MHz Crystal
1Y210.7MHz Crystal

Keyboard

QtyReference(s)ValuePart
1C10.1uFCapacitor
1D1LEDLED
1D2LEDLED
1J1Pin Header 1x18 malePin Header 1x18 male
2R1, R2470 ohmResistor
1R31K ohmResistor
48SW1-SW48Mechanical SwitchCherry MX Switch (or compatible)
1U1ATtiny13A-PIC
1U274LS125IC
3Switch Stabilizer 2.25
1Switch Stabilizer 6.25
1Optional Alignment frame (will need modified)
Stabilizers (frame not used):https://www.amazon.com/Genuine-Cherry-PCB-Snap-Stabilizers/dp/B085T8QZJC
Stabilizers (Frame used)https://www.amazon.com/dp/B082X4V9VC
Frame:https://www.amazon.com/gp/product/B07MMB33WG

Cartridge Riser

QtyReference(s)PartType
1J1Pin Header 01x18 MalePin Header 01x18 Male
1J236 Pin Edge ConnectorCONN EDGE DUAL FMALE 36POS 0.100 spacing

IO Riser

QtyReference(s)PartType
1J1Pin Header 2x22 MalePin Header 2x22 Male

UNICORN BOARD

QtyReference(s)PartType
1J1Pin Header Socket 01x16 Female Right AnglePin Header Socket 01x16 Female Right Angle
4U1-U4Level Shifterhttps://www.amazon.com/KeeYees-Channels-Converter-Bi-Directional-Shifter/dp/B07LG646VS
1U5ESP32 Devkithttps://www.amazon.com/Development-Microcontroller-Integrated-Antenna-Amplifiers/dp/B09GK74F7N

License

The original project was licensed under the Creative Commons - Attribution - ShareAlike 3.0 License

Attribution

This board was derrived from works by, uses design elements from, or contains sofware writen by the following:

Parts

251
QtyValueFootprintReferences
420.1µFCapacitor_THT:C_Rect_L7.0mm_W2.0mm_P5.00mmC13, C14, C18, C20, C23, C24, C25, C26, C27, C28, C29, C30, C31, C32, C33, C34 +26
9100ΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR36, R37, R38, R39, R40, R49, R51, R54, R56
91KΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR12, R13, R14, R15, R16, R61, R62, R67, R68
80.01µFCapacitor_THT:C_Rect_L7.0mm_W2.0mm_P5.00mmC8, C12, C52, C63, C65, C66, C67, C72
8100µFCapacitor_THT:CP_Radial_D7.5mm_P2.50mmC10, C15, C16, C17, C19, C21, C22, C60
71kΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR2, R9, R11, R18, R34, R35, R46
78.2µhResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P15.24mm_HorizontalL10, L11, L12, L13, L14, L15, L16
7MountingHoleMountingHole:MountingHole_3.2mm_M3H1, H2, H3, H4, H5, H6, H7
60.001µFCapacitor_THT:C_Rect_L7.0mm_W2.0mm_P5.00mmC1, C9, C11, C58, C73, C75
54.7kΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR10, R26, R45, R52, R53
422ΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR5, R6, R7, R8
462ΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR41, R42, R43, R44
474LS04Package_DIP:DIP-14_W7.62mm_Socket_LongPadsU3, U15, U22, U24
310kΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR57, R71, R72
32.2kΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR17, R48, R50
3220ΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR65, R66, R76
322µFCapacitor_THT:CP_Radial_D7.5mm_P2.50mmC3, C5, C59
3470ΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR19, R30, R32
35.6kΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR23, R73, R75
374LS00Package_DIP:DIP-14_W7.62mm_Socket_LongPadsU10, U14, U18
374LS574Package_DIP:DIP-20_W7.62mm_Socket_LongPadsU35, U36, U38
3HM62256BLPPackage_DIP:DIP-28_W15.24mm_Socket_LongPadsU29, U30, U37
3TIS92Package_TO_SOT_THT:TO-92_HandSolderQ1, Q3, Q4
3TMC0430Package_DIP:DIP-16_W7.62mm_Socket_LongPadsU26, U27, U28
210KResistor_THT:R_Array_SIP10RN1, RN2
210ΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR24, R27
21N4148Diode_THT:D_A-405_P7.62mm_HorizontalCR1, CR4
21N914BDiode_THT:D_A-405_P7.62mm_HorizontalCR2, CR3
227C64Package_DIP:DIP-28_W15.24mm_Socket_LongPadsU31, U32
26.8kΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR58, R60
26.8µHResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P15.24mm_HorizontalL4, L5
274LS138Package_DIP:DIP-16_W7.62mm_Socket_LongPadsU5, U8
274LS244Package_DIP:DIP-20_W7.62mm_Socket_LongPadsU11, U41
274LS32Package_DIP:DIP-14_W7.62mm_Socket_LongPadsU4, U9
274LS367Package_DIP:DIP-16_W7.62mm_Socket_LongPadsU42, U43
275ΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR31, R33
2ROM SelectConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ5, J6
2TIL119Package_DIP:DIP-6_W7.62mm_Socket_LongPadsU48, U49
10.022µFCapacitor_THT:C_Rect_L7.0mm_W2.0mm_P5.00mmC70
10.33µHResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P15.24mm_HorizontalL1
10ΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR29
11.5kΩResistor_THT:R_Array_SIP10R21
110.7MHzCrystal:Crystal_HC49-U_VerticalY2
1100µFCapacitor_THT:CP_Radial_D5.0mm_P2.00mmC53
110KΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR69
1120kΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR63
112kΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR3
112pFCapacitor_THT:C_Rect_L7.0mm_W2.0mm_P5.00mmC56
1150kΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR1
1150ΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR25
115ΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR77
11µFCapacitor_THT:C_Rect_L7.0mm_W2.0mm_P5.00mmC6
12.7kΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR64
1220pFCapacitor_THT:C_Rect_L7.0mm_W2.0mm_P5.00mmC69
1220µFCapacitor_THT:CP_Radial_D7.5mm_P2.50mmC61
122pFCapacitor_THT:C_Rect_L7.0mm_W2.0mm_P5.00mmC2
1270ΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR20
127C010-CPackage_DIP:DIP-32_W15.24mm_Socket_LongPadsU45
12N3904Package_TO_SOT_THT:TO-92L_HandSolderQ2
13.3kΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR47
1330ΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR55
1361ΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR22
139kΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR59
1470kΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR28
147kΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR4
148.000 MHzCrystal:Crystal_HC49-U_VerticalY1
15.6KΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR74
15.8µHResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P15.24mm_HorizontalL7
156pFCapacitor_THT:C_Rect_L7.0mm_W2.0mm_P5.00mmC57
174LS03Package_DIP:DIP-14_W7.62mm_Socket_LongPadsU6
174LS06Package_DIP:DIP-14_W7.62mm_Socket_LongPadsU47
174LS08Package_DIP:DIP-14_W7.62mm_Socket_LongPadsU7
174LS156Package_DIP:DIP-16_W7.62mm_Socket_LongPadsU40
174LS194Package_DIP:DIP-16_W7.62mm_Socket_LongPadsU17
174LS245Package_DIP:DIP-20_W7.62mm_Socket_LongPadsU13
174LS373Package_DIP:DIP-20_W7.62mm_Socket_LongPadsU12
174LS379Package_DIP:DIP-16_W7.62mm_Socket_LongPadsU44
174LS74Package_DIP:DIP-14_W7.62mm_Socket_LongPadsU16
19.1kΩResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR70
1AUDIO OUTConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ8

The 223 most common of 251 parts.

More from danwerner21/TI99_22

4
  • 2 layers282.7 × 108.3 mmKeyboard, the printed circuit board in 3D

    Keyboard

    danwerner21/TI99_22

    a 2022 replica of the classic TI/994a, using obtainable parts

    63 parts50
  • 2 layers100 × 60 mmUnicorn, the printed circuit board in 3D

    Unicorn

    danwerner21/TI99_22

    a 2022 replica of the classic TI/994a, using obtainable parts

    10 parts50
  • 2 layers17.4 × 69.8 mmCartRiser, the printed circuit board in 3D

    CartRiser

    danwerner21/TI99_22

    a 2022 replica of the classic TI/994a, using obtainable parts

    4 parts50
  • 2 layers76.9 × 58.5 mmIO Riser, the printed circuit board in 3D

    IO Riser

    danwerner21/TI99_22

    a 2022 replica of the classic TI/994a, using obtainable parts

    4 parts50

Similar boards

  • 4 layers244 × 244 mmConsole, the printed circuit board in 3D

    Console

    danwerner21/TI99_22-mark2

    Second revision of the TI_99

    269 parts4
  • 2 layers338.7 × 107.7 mmQuapple, the printed circuit board in 3D

    Quapple

    kitspace-test-repos/kicad6-file-collection

    122 partsMIT
  • 2 layers76.3 × 147.3 mmNorthstar PIO, the printed circuit board in 3D

    Northstar PIO

    abzman/Northstar-Advantage-Cards

    43 parts4Unlicense
  • 4 layers254 × 137.7 mmS100 ColorMagic-1.1-006, the printed circuit board in 3D

    S100 ColorMagic-1.1-006

    RichCini/LomasBoards

    Small repository of files/data related to Lomas Data Products S-100 boards.

    150 parts1
  • 2 layers407 × 184 mmTRS-80-Model I G E1, the printed circuit board in 3D

    TRS-80-Model I G E1

    RetroStack/TRS-80-Model-I-G-E1

    Hardware Replica of the TRS-80 Model I Revision G

    230 parts57MIT
  • 2 layers100 × 100 mmALU0, the printed circuit board in 3D

    ALU0

    Left-Hand/74-gate-computer

    An logic gate computer made of 74 gates

    68 parts19
  • 2 layers400.9 × 280.5 mmAleste520v4, the printed circuit board in 3D

    Aleste520v4

    lucedoriente/Aleste520ex

    Western version of 1993 Z80 russian computer

    345 parts4GPL-3.0

Questions

How big is the Console PCB?

It measures 350 × 224.3 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Console use?

251 parts, built around the 74LS367PC, 74LS245SC, 74LS373SC 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.

Where can I download the Console KiCad files?

From the danwerner21/TI99_22 repository on GitHub, at the commit this page was made from: the board is mainboard/Console.kicad_pcb and its schematic CartRiser/CartRiser/CartRiser.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Console design in my own project?

Its repository states no licence, so its author keeps all rights: ask danwerner21 before reusing the design.