Integrated Circuit Chips: Difference between revisions

From NerdConsole
Jump to navigationJump to search
No edit summary
 
(5 intermediate revisions by the same user not shown)
Line 2: Line 2:


== Processor ==
== Processor ==
* [[Chip - 65C02 CPU]]
* [[Chip - 65C02 CPU|65C02 CPU]]
== RAM ==
== RAM ==
System RAM in NerdConsole should operate at 55ns or faster.
System RAM in NerdConsole should operate at 55ns or faster.
* [[Chip - AS6C62256 32KB RAM]]
* [[Chip - AS6C62256 32KB RAM|AS6C62256 32KB RAM]]
* [[Chip - AS6C4008 512KB RAM]]
* [[Chip - AS6C4008 512KB RAM|AS6C4008 512KB RAM]]
== ROM ==
== ROM ==
Cartridge ROM in NerdConsole should operate at 150ns or faster.
Cartridge ROM in NerdConsole should operate at 150ns or faster.
* [[Chip - AT28C64 8KB ROM]]
* [[Chip - AT28C64 8KB ROM|AT28C64 8KB ROM]]
* [[Chip - AT28C256 32KB ROM]]
* [[Chip - AT28C256 32KB ROM|AT28C256 32KB ROM]]
* [[Chip - W27C512 64KB ROM]]
* [[Chip - W27C512 64KB ROM|W27C512 64KB ROM]]
* [[Chip - SST39SF010 128KB ROM]]
* [[Chip - SST39SF010 128KB ROM|SST39SF010 128KB ROM]]
* [[Chip - SST39SF020 256KB ROM]]
* [[Chip - SST39SF020 256KB ROM|SST39SF020 256KB ROM]]
* [[Chip - SST39SF040 512KB ROM]]
* [[Chip - SST39SF040 512KB ROM|SST39SF040 512KB ROM]]
== Audio ==
== Audio ==
* [[Chip - YM-3812 Audio]]
* [[Chip - YM-3812 Audio|YM-3812 Audio]]
* [[Chip - YM-3014 DAC]]
* [[Chip - YM-3014 DAC|YM-3014 DAC]]
* [[Chip - OPA2132 2x OpAmp]]
* [[Chip - OPA2132 2x OpAmp|OPA2132 2x OpAmp]]
* [[Chip - NE5532 2x OpAmp|NE5532 2x OpAmp]]
 
== Logic ==
== Logic ==
* [[Chip - 74HCT00 4x 2-Input NAND]]
* [[Chip - 74HCT00 4x 2-Input NAND|74HCT00 4x 2-Input NAND]]
* [[Chip - 74HCT08 4x 2-Input AND]]
* [[Chip - 74HCT08 4x 2-Input AND|74HCT08 4x 2-Input AND]]
* [[Chip - 74HCT14 6x Inverter]]
* [[Chip - 74HCT14 6x Inverter|74HCT14 6x Inverter]]
* [[Chip - 74HCT30 1x 8-Input NAND]]
* [[Chip - 74HCT30 1x 8-Input NAND|74HCT30 1x 8-Input NAND]]
* [[Chip - 74HCT32 4x 2-Input OR]]
* [[Chip - 74HCT32 4x 2-Input OR|74HCT32 4x 2-Input OR]]
* [[Chip - 74HCT139 2x 2 to 4 Line Decoder]]
* [[Chip - 74HCT139 2x 2 to 4 Line Decoder|74HCT139 2x 2 to 4 Line Decoder]]
* [[Chip - 74HCT238 1x 3 to 8 Line Decoder]]
* [[Chip - 74HCT238 1x 3 to 8 Line Decoder|74HCT238 1x 3 to 8 Line Decoder]]
* [[Chip - 74HCT240 8x Inverting Buffer]]
* [[Chip - 74HCT240 8x Inverting Buffer|74HCT240 8x Inverting Buffer]]
* [[Chip - 74HCT273 8x D-Type Flip-Flops]]
* [[Chip - 74HCT273 8x D-Type Flip-Flops|74HCT273 8x D-Type Flip-Flops]]
== Clock ==
== Clock ==
* [[Chip - Crystal Oscillator]]
* [[Chip - Crystal Oscillator|Crystal Oscillator]]
 
== Reset ==
 
* [[Chip - DS1813 Reset Manager|DS1813 Reset Manager]]
 
 
 
 
 
 
 
 
 
== AT28C256 ==
This 32KB ROM chip is used in small cartridges and typically provides exactly one bank of each of Low ROM and High ROM without the need for any support chips.
 
{| class="wikitable"
| style="text-align:right" width="180" | A14
! style="text-align:left" width="30" | 1
! style="text-align:right" width="30" | 28
| style="text-align:left" width="180" | VCC
|-
| style="text-align:right" | A12
! style="text-align:left" | 2
! style="text-align:right" | 27
| style="text-align:left" | ~WE
|-
| style="text-align:right" | A7
! style="text-align:left" | 3
! style="text-align:right" | 26
| style="text-align:left" | A13
|-
| style="text-align:right" | A6
! style="text-align:left" | 4
! style="text-align:right" | 25
| style="text-align:left" | A8
|-
| style="text-align:right" | A5
! style="text-align:left" | 5
! style="text-align:right" | 24
| style="text-align:left" | A9
|-
| style="text-align:right" | A4
! style="text-align:left" | 6
! style="text-align:right" | 23
| style="text-align:left" | A11
|-
| style="text-align:right" | A3
! style="text-align:left" | 7
! style="text-align:right" | 22
| style="text-align:left" | ~OE
|-
| style="text-align:right" | A2
! style="text-align:left" | 8
! style="text-align:right" | 21
| style="text-align:left" | A10
|-
| style="text-align:right" | A1
! style="text-align:left" | 9
! style="text-align:right" | 20
| style="text-align:left" | ~CE
|-
| style="text-align:right" | A0
! style="text-align:left" | 10
! style="text-align:right" | 19
| style="text-align:left" | D7
|-
| style="text-align:right" | D0
! style="text-align:left" | 11
! style="text-align:right" | 18
| style="text-align:left" | D6
|-
| style="text-align:right" | D1
! style="text-align:left" | 12
! style="text-align:right" | 17
| style="text-align:left" | D5
|-
| style="text-align:right" | D2
! style="text-align:left" | 13
! style="text-align:right" | 16
| style="text-align:left" | D4
|-
| style="text-align:right" | GND
! style="text-align:left" | 14
! style="text-align:right" | 15
| style="text-align:left" | D3
|}
 
== W27C512 ==
This is a 64KB ROM chip that is both fast and usually inexpensive.
 
{| class="wikitable"
| style="text-align:right" width="180" | A15
! style="text-align:left" width="30" | 1
! style="text-align:right" width="30" | 28
| style="text-align:left" width="180" | VCC
|-
| style="text-align:right" | A12
! style="text-align:left" | 2
! style="text-align:right" | 27
| style="text-align:left" | A14
|-
| style="text-align:right" | A7
! style="text-align:left" | 3
! style="text-align:right" | 26
| style="text-align:left" | A13
|-
| style="text-align:right" | A6
! style="text-align:left" | 4
! style="text-align:right" | 25
| style="text-align:left" | A8
|-
| style="text-align:right" | A5
! style="text-align:left" | 5
! style="text-align:right" | 24
| style="text-align:left" | A9
|-
| style="text-align:right" | A4
! style="text-align:left" | 6
! style="text-align:right" | 23
| style="text-align:left" | A11
|-
| style="text-align:right" | A3
! style="text-align:left" | 7
! style="text-align:right" | 22
| style="text-align:left" | ~OE
|-
| style="text-align:right" | A2
! style="text-align:left" | 8
! style="text-align:right" | 21
| style="text-align:left" | A10
|-
| style="text-align:right" | A1
! style="text-align:left" | 9
! style="text-align:right" | 20
| style="text-align:left" | ~CE
|-
| style="text-align:right" | A0
! style="text-align:left" | 10
! style="text-align:right" | 19
| style="text-align:left" | D7
|-
| style="text-align:right" | D0
! style="text-align:left" | 11
! style="text-align:right" | 18
| style="text-align:left" | D6
|-
| style="text-align:right" | D1
! style="text-align:left" | 12
! style="text-align:right" | 17
| style="text-align:left" | D5
|-
| style="text-align:right" | D2
! style="text-align:left" | 13
! style="text-align:right" | 16
| style="text-align:left" | D4
|-
| style="text-align:right" | GND
! style="text-align:left" | 14
! style="text-align:right" | 15
| style="text-align:left" | D3
|}
 
== SST39SF010 ==
This is the 128KB version of this ROM chip.  This chip has the advantage of being writable at 5V and can thus be used for cartridges that allow save games to be stored.
 
{| class="wikitable"
| style="text-align:right" width="180" | NC
! style="text-align:left" width="30" | 1
! style="text-align:right" width="30" | 32
| style="text-align:left" width="180" | VCC
|-
| style="text-align:right" | A16
! style="text-align:left" | 2
! style="text-align:right" | 31
| style="text-align:left" | ~WE
|-
| style="text-align:right" | A15
! style="text-align:left" | 3
! style="text-align:right" | 30
| style="text-align:left" | NC
|-
| style="text-align:right" | A12
! style="text-align:left" | 4
! style="text-align:right" | 29
| style="text-align:left" | A14
|-
| style="text-align:right" | A7
! style="text-align:left" | 5
! style="text-align:right" | 28
| style="text-align:left" | A13
|-
| style="text-align:right" | A6
! style="text-align:left" | 6
! style="text-align:right" | 27
| style="text-align:left" | A8
|-
| style="text-align:right" | A5
! style="text-align:left" | 7
! style="text-align:right" | 26
| style="text-align:left" | A9
|-
| style="text-align:right" | A4
! style="text-align:left" | 8
! style="text-align:right" | 25
| style="text-align:left" | A11
|-
| style="text-align:right" | A3
! style="text-align:left" | 9
! style="text-align:right" | 24
| style="text-align:left" | ~OE
|-
| style="text-align:right" | A2
! style="text-align:left" | 10
! style="text-align:right" | 23
| style="text-align:left" | A10
|-
| style="text-align:right" | A1
! style="text-align:left" | 11
! style="text-align:right" | 22
| style="text-align:left" | ~CE
|-
| style="text-align:right" | A0
! style="text-align:left" | 12
! style="text-align:right" | 21
| style="text-align:left" | D7
|-
| style="text-align:right" | D0
! style="text-align:left" | 13
! style="text-align:right" | 20
| style="text-align:left" | D6
|-
| style="text-align:right" | D1
! style="text-align:left" | 14
! style="text-align:right" | 19
| style="text-align:left" | D5
|-
| style="text-align:right" | D2
! style="text-align:left" | 15
! style="text-align:right" | 18
| style="text-align:left" | D4
|-
| style="text-align:right" | GND
! style="text-align:left" | 16
! style="text-align:right" | 17
| style="text-align:left" | D3
|}
 
== SST39SF020 ==
This is the 256KB version of this ROM chip.  This chip has the advantage of being writable at 5V and can thus be used for cartridges that allow save games to be stored.
 
{| class="wikitable"
| style="text-align:right" width="180" | NC
! style="text-align:left" width="30" | 1
! style="text-align:right" width="30" | 32
| style="text-align:left" width="180" | VCC
|-
| style="text-align:right" | A16
! style="text-align:left" | 2
! style="text-align:right" | 31
| style="text-align:left" | ~WE
|-
| style="text-align:right" | A15
! style="text-align:left" | 3
! style="text-align:right" | 30
| style="text-align:left" | A17
|-
| style="text-align:right" | A12
! style="text-align:left" | 4
! style="text-align:right" | 29
| style="text-align:left" | A14
|-
| style="text-align:right" | A7
! style="text-align:left" | 5
! style="text-align:right" | 28
| style="text-align:left" | A13
|-
| style="text-align:right" | A6
! style="text-align:left" | 6
! style="text-align:right" | 27
| style="text-align:left" | A8
|-
| style="text-align:right" | A5
! style="text-align:left" | 7
! style="text-align:right" | 26
| style="text-align:left" | A9
|-
| style="text-align:right" | A4
! style="text-align:left" | 8
! style="text-align:right" | 25
| style="text-align:left" | A11
|-
| style="text-align:right" | A3
! style="text-align:left" | 9
! style="text-align:right" | 24
| style="text-align:left" | ~OE
|-
| style="text-align:right" | A2
! style="text-align:left" | 10
! style="text-align:right" | 23
| style="text-align:left" | A10
|-
| style="text-align:right" | A1
! style="text-align:left" | 11
! style="text-align:right" | 22
| style="text-align:left" | ~CE
|-
| style="text-align:right" | A0
! style="text-align:left" | 12
! style="text-align:right" | 21
| style="text-align:left" | D7
|-
| style="text-align:right" | D0
! style="text-align:left" | 13
! style="text-align:right" | 20
| style="text-align:left" | D6
|-
| style="text-align:right" | D1
! style="text-align:left" | 14
! style="text-align:right" | 19
| style="text-align:left" | D5
|-
| style="text-align:right" | D2
! style="text-align:left" | 15
! style="text-align:right" | 18
| style="text-align:left" | D4
|-
| style="text-align:right" | GND
! style="text-align:left" | 16
! style="text-align:right" | 17
| style="text-align:left" | D3
|}
 
== SST39SF040 ==
This is the 512KB version of this ROM chip.  This chip has the advantage of being writable at 5V and can thus be used for cartridges that allow save games to be stored.
 
{| class="wikitable"
| style="text-align:right" width="180" | A18
! style="text-align:left" width="30" | 1
! style="text-align:right" width="30" | 32
| style="text-align:left" width="180" | VCC
|-
| style="text-align:right" | A16
! style="text-align:left" | 2
! style="text-align:right" | 31
| style="text-align:left" | ~WE
|-
| style="text-align:right" | A15
! style="text-align:left" | 3
! style="text-align:right" | 30
| style="text-align:left" | A17
|-
| style="text-align:right" | A12
! style="text-align:left" | 4
! style="text-align:right" | 29
| style="text-align:left" | A14
|-
| style="text-align:right" | A7
! style="text-align:left" | 5
! style="text-align:right" | 28
| style="text-align:left" | A13
|-
| style="text-align:right" | A6
! style="text-align:left" | 6
! style="text-align:right" | 27
| style="text-align:left" | A8
|-
| style="text-align:right" | A5
! style="text-align:left" | 7
! style="text-align:right" | 26
| style="text-align:left" | A9
|-
| style="text-align:right" | A4
! style="text-align:left" | 8
! style="text-align:right" | 25
| style="text-align:left" | A11
|-
| style="text-align:right" | A3
! style="text-align:left" | 9
! style="text-align:right" | 24
| style="text-align:left" | ~OE
|-
| style="text-align:right" | A2
! style="text-align:left" | 10
! style="text-align:right" | 23
| style="text-align:left" | A10
|-
| style="text-align:right" | A1
! style="text-align:left" | 11
! style="text-align:right" | 22
| style="text-align:left" | ~CE
|-
| style="text-align:right" | A0
! style="text-align:left" | 12
! style="text-align:right" | 21
| style="text-align:left" | D7
|-
| style="text-align:right" | D0
! style="text-align:left" | 13
! style="text-align:right" | 20
| style="text-align:left" | D6
|-
| style="text-align:right" | D1
! style="text-align:left" | 14
! style="text-align:right" | 19
| style="text-align:left" | D5
|-
| style="text-align:right" | D2
! style="text-align:left" | 15
! style="text-align:right" | 18
| style="text-align:left" | D4
|-
| style="text-align:right" | GND
! style="text-align:left" | 16
! style="text-align:right" | 17
| style="text-align:left" | D3
|}
 
= Audio =
The audio system in NerdConsole has a dedicated audio processor which is driven the CPU.  The output of that is then piped to the Raspberry Pi based PPU for inclusion in the HDMI signal.
 
== YM-3812 ==
The Yamaha YM-3812 is the same audio processor that was found in countless Adlib and SoundBlaster sound cards.
 
{| class="wikitable"
| style="text-align:right" width="180" | VCC
! style="text-align:left" width="30" | 1
! style="text-align:right" width="30" | 24
| style="text-align:left" width="180" | M
|-
| style="text-align:right" | ~IRQ
! style="text-align:left" | 2
! style="text-align:right" | 23
| style="text-align:left" | SY
|-
| style="text-align:right" | ~IC
! style="text-align:left" | 3
! style="text-align:right" | 22
| style="text-align:left" | NC
|-
| style="text-align:right" | A0
! style="text-align:left" | 4
! style="text-align:right" | 21
| style="text-align:left" | MO
|-
| style="text-align:right" | ~WR
! style="text-align:left" | 5
! style="text-align:right" | 20
| style="text-align:left" | SH
|-
| style="text-align:right" | ~RD
! style="text-align:left" | 6
! style="text-align:right" | 19
| style="text-align:left" | NC
|-
| style="text-align:right" | ~CS
! style="text-align:left" | 7
! style="text-align:right" | 18
| style="text-align:left" | D7
|-
| style="text-align:right" | NC
! style="text-align:left" | 8
! style="text-align:right" | 17
| style="text-align:left" | D6
|-
| style="text-align:right" | NC
! style="text-align:left" | 9
! style="text-align:right" | 16
| style="text-align:left" | D5
|-
| style="text-align:right" | D0
! style="text-align:left" | 10
! style="text-align:right" | 15
| style="text-align:left" | D4
|-
| style="text-align:right" | D1
! style="text-align:left" | 11
! style="text-align:right" | 14
| style="text-align:left" | D3
|-
| style="text-align:right" | GND
! style="text-align:left" | 12
! style="text-align:right" | 13
| style="text-align:left" | D2
|}
 
== YM-3014 ==
This chip is a digital to analog converter (DAC) and is used to convert the digital signals produced by the YM-3812 into actual analog audio waveforms.
 
{| class="wikitable"
| style="text-align:right" width="180" | VCC
! style="text-align:left" width="30" | 1
! style="text-align:right" width="30" | 8
| style="text-align:left" width="180" | MP
|-
| style="text-align:right" | To BUFF
! style="text-align:left" | 2
! style="text-align:right" | 7
| style="text-align:left" | RB
|-
| style="text-align:right" | LOAD
! style="text-align:left" | 3
! style="text-align:right" | 6
| style="text-align:left" | GND
|-
| style="text-align:right" | SD
! style="text-align:left" | 4
! style="text-align:right" | 5
| style="text-align:left" | CLOCK
|}
 
= Logic =
NerdConsole uses a variety of logic chips for address decoding, holding register values, and buffering data as it moves between systems.
 
== 74HCT00 ==
This chip provides four 2-input NAND gates.
 
{| class="wikitable"
| style="text-align:right" width="180" | 1A
! style="text-align:left" width="30" | 1
! style="text-align:right" width="30" | 14
| style="text-align:left" width="180" | VCC
|-
| style="text-align:right" | 1B
! style="text-align:left" | 2
! style="text-align:right" | 13
| style="text-align:left" | 4B
|-
| style="text-align:right" | 1Y
! style="text-align:left" | 3
! style="text-align:right" | 12
| style="text-align:left" | 4A
|-
| style="text-align:right" | 2A
! style="text-align:left" | 4
! style="text-align:right" | 11
| style="text-align:left" | 4Y
|-
| style="text-align:right" | 2B
! style="text-align:left" | 5
! style="text-align:right" | 10
| style="text-align:left" | 3B
|-
| style="text-align:right" | 2Y
! style="text-align:left" | 6
! style="text-align:right" | 9
| style="text-align:left" | 3A
|-
| style="text-align:right" | GND
! style="text-align:left" | 7
! style="text-align:right" | 8
| style="text-align:left" | 3Y
|}
 
== 74HCT08 ==
This chip provides four 2-input AND gates.
 
{| class="wikitable"
| style="text-align:right" width="180" | 1A
! style="text-align:left" width="30" | 1
! style="text-align:right" width="30" | 14
| style="text-align:left" width="180" | VCC
|-
| style="text-align:right" | 1B
! style="text-align:left" | 2
! style="text-align:right" | 13
| style="text-align:left" | 4B
|-
| style="text-align:right" | 1Y
! style="text-align:left" | 3
! style="text-align:right" | 12
| style="text-align:left" | 4A
|-
| style="text-align:right" | 2A
! style="text-align:left" | 4
! style="text-align:right" | 11
| style="text-align:left" | 4Y
|-
| style="text-align:right" | 2B
! style="text-align:left" | 5
! style="text-align:right" | 10
| style="text-align:left" | 3B
|-
| style="text-align:right" | 2Y
! style="text-align:left" | 6
! style="text-align:right" | 9
| style="text-align:left" | 3A
|-
| style="text-align:right" | GND
! style="text-align:left" | 7
! style="text-align:right" | 8
| style="text-align:left" | 3Y
|}
 
== 74HCT14 ==
This chip provides six signal inverters.
 
{| class="wikitable"
| style="text-align:right" width="180" | 1A
! style="text-align:left" width="30" | 1
! style="text-align:right" width="30" | 14
| style="text-align:left" width="180" | VCC
|-
| style="text-align:right" | 1Y
! style="text-align:left" | 2
! style="text-align:right" | 13
| style="text-align:left" | 6A
|-
| style="text-align:right" | 2A
! style="text-align:left" | 3
! style="text-align:right" | 12
| style="text-align:left" | 6Y
|-
| style="text-align:right" | 2Y
! style="text-align:left" | 4
! style="text-align:right" | 11
| style="text-align:left" | 5A
|-
| style="text-align:right" | 3A
! style="text-align:left" | 5
! style="text-align:right" | 10
| style="text-align:left" | 5Y
|-
| style="text-align:right" | 3Y
! style="text-align:left" | 6
! style="text-align:right" | 9
| style="text-align:left" | 4A
|-
| style="text-align:right" | GND
! style="text-align:left" | 7
! style="text-align:right" | 8
| style="text-align:left" | 4Y
|}
 
== 74HCT30 ==
This chip provides a single 8-input NAND gate.  This is used to identify when extended RAM bank 255 is selected and thus extended RAM writes should instead be directed to the PPU.
 
{| class="wikitable"
| style="text-align:right" width="180" | A
! style="text-align:left" width="30" | 1
! style="text-align:right" width="30" | 14
| style="text-align:left" width="180" | VCC
|-
| style="text-align:right" | B
! style="text-align:left" | 2
! style="text-align:right" | 13
| style="text-align:left" | NC
|-
| style="text-align:right" | C
! style="text-align:left" | 3
! style="text-align:right" | 12
| style="text-align:left" | H
|-
| style="text-align:right" | D
! style="text-align:left" | 4
! style="text-align:right" | 11
| style="text-align:left" | G
|-
| style="text-align:right" | E
! style="text-align:left" | 5
! style="text-align:right" | 10
| style="text-align:left" | NC
|-
| style="text-align:right" | F
! style="text-align:left" | 6
! style="text-align:right" | 9
| style="text-align:left" | NC
|-
| style="text-align:right" | GND
! style="text-align:left" | 7
! style="text-align:right" | 8
| style="text-align:left" | Y
|}
 
== 74HCT32 ==
This chip provides four 2-input OR gates.
 
{| class="wikitable"
| style="text-align:right" width="180" | 1A
! style="text-align:left" width="30" | 1
! style="text-align:right" width="30" | 14
| style="text-align:left" width="180" | VCC
|-
| style="text-align:right" | 1B
! style="text-align:left" | 2
! style="text-align:right" | 13
| style="text-align:left" | 4B
|-
| style="text-align:right" | 1Y
! style="text-align:left" | 3
! style="text-align:right" | 12
| style="text-align:left" | 4A
|-
| style="text-align:right" | 2A
! style="text-align:left" | 4
! style="text-align:right" | 11
| style="text-align:left" | 4Y
|-
| style="text-align:right" | 2B
! style="text-align:left" | 5
! style="text-align:right" | 10
| style="text-align:left" | 3B
|-
| style="text-align:right" | 2Y
! style="text-align:left" | 6
! style="text-align:right" | 9
| style="text-align:left" | 3A
|-
| style="text-align:right" | GND
! style="text-align:left" | 7
! style="text-align:right" | 8
| style="text-align:left" | 3Y
|}
 
== 74HCT139 ==
This chip is provides 2 separate 2 to 4 line decoders.  Each takes 2 inputs as a 2-bit number (0-3) and turns on the single line that corresponds to that number as output.
 
{| class="wikitable"
| style="text-align:right" width="180" | ~1G
! style="text-align:left" width="30" | 1
! style="text-align:right" width="30" | 16
| style="text-align:left" width="180" | VCC
|-
| style="text-align:right" | 1A
! style="text-align:left" | 2
! style="text-align:right" | 15
| style="text-align:left" | ~2G
|-
| style="text-align:right" | 1B
! style="text-align:left" | 3
! style="text-align:right" | 14
| style="text-align:left" | 2A
|-
| style="text-align:right" | 1Y0
! style="text-align:left" | 4
! style="text-align:right" | 13
| style="text-align:left" | 2B
|-
| style="text-align:right" | 1Y1
! style="text-align:left" | 5
! style="text-align:right" | 12
| style="text-align:left" | 2Y0
|-
| style="text-align:right" | 1Y2
! style="text-align:left" | 6
! style="text-align:right" | 11
| style="text-align:left" | 2Y1
|-
| style="text-align:right" | 1Y3
! style="text-align:left" | 7
! style="text-align:right" | 10
| style="text-align:left" | 2Y2
|-
| style="text-align:right" | GND
! style="text-align:left" | 8
! style="text-align:right" | 9
| style="text-align:left" | 2Y3
|}
 
== 74HCT238 ==
This chip is a 3 to 8 line decoder.  It takes 3 inputs as a 3-bit number (0-7) and turns on the single line that corresponds to that number as output.
 
{| class="wikitable"
| style="text-align:right" width="180" | A0
! style="text-align:left" width="30" | 1
! style="text-align:right" width="30" | 16
| style="text-align:left" width="180" | VCC
|-
| style="text-align:right" | A1
! style="text-align:left" | 2
! style="text-align:right" | 15
| style="text-align:left" | Y0
|-
| style="text-align:right" | A2
! style="text-align:left" | 3
! style="text-align:right" | 14
| style="text-align:left" | Y1
|-
| style="text-align:right" | ~G0
! style="text-align:left" | 4
! style="text-align:right" | 13
| style="text-align:left" | Y2
|-
| style="text-align:right" | ~G1
! style="text-align:left" | 5
! style="text-align:right" | 12
| style="text-align:left" | Y3
|-
| style="text-align:right" | G2
! style="text-align:left" | 6
! style="text-align:right" | 11
| style="text-align:left" | Y4
|-
| style="text-align:right" | Y7
! style="text-align:left" | 7
! style="text-align:right" | 10
| style="text-align:left" | Y5
|-
| style="text-align:right" | GND
! style="text-align:left" | 8
! style="text-align:right" | 9
| style="text-align:left" | Y6
|}
 
== 74HCT240 ==
This chip reads the state of all 8 possible controllers and inverts the signal turning the 0s from pressed buttons into 1s.
 
{| class="wikitable"
| style="text-align:right" width="180" | ~1OE
! style="text-align:left" width="30" | 1
! style="text-align:right" width="30" | 20
| style="text-align:left" width="180" | VCC
|-
| style="text-align:right" | 1A0
! style="text-align:left" | 2
! style="text-align:right" | 19
| style="text-align:left" | ~2OE
|-
| style="text-align:right" | ~2Y3
! style="text-align:left" | 3
! style="text-align:right" | 18
| style="text-align:left" | ~1Y0
|-
| style="text-align:right" | 1A1
! style="text-align:left" | 4
! style="text-align:right" | 17
| style="text-align:left" | 2A3
|-
| style="text-align:right" | ~2Y2
! style="text-align:left" | 5
! style="text-align:right" | 16
| style="text-align:left" | ~1Y1
|-
| style="text-align:right" | 1A2
! style="text-align:left" | 6
! style="text-align:right" | 15
| style="text-align:left" | 2A2
|-
| style="text-align:right" | ~2Y1
! style="text-align:left" | 7
! style="text-align:right" | 14
| style="text-align:left" | ~1Y2
|-
| style="text-align:right" | 1A3
! style="text-align:left" | 8
! style="text-align:right" | 13
| style="text-align:left" | 2A1
|-
| style="text-align:right" | ~2Y0
! style="text-align:left" | 9
! style="text-align:right" | 12
| style="text-align:left" | ~1Y3
|-
| style="text-align:right" | GND
! style="text-align:left" | 10
! style="text-align:right" | 11
| style="text-align:left" | 2A0
|}
 
== 74HCT273 ==
This chip provides an octal D-type flip-flops with a clear pin for ensuring a known state upon system reset.  These are commonly used for holding upper address pin values for bank selection.
 
{| class="wikitable"
| style="text-align:right" width="180" | ~CLR
! style="text-align:left" width="30" | 1
! style="text-align:right" width="30" | 20
| style="text-align:left" width="180" | VCC
|-
| style="text-align:right" | 1Q
! style="text-align:left" | 2
! style="text-align:right" | 19
| style="text-align:left" | 8Q
|-
| style="text-align:right" | 1D
! style="text-align:left" | 3
! style="text-align:right" | 18
| style="text-align:left" | 8D
|-
| style="text-align:right" | 2D
! style="text-align:left" | 4
! style="text-align:right" | 17
| style="text-align:left" | 7D
|-
| style="text-align:right" | 2Q
! style="text-align:left" | 5
! style="text-align:right" | 16
| style="text-align:left" | 7Q
|-
| style="text-align:right" | 3Q
! style="text-align:left" | 6
! style="text-align:right" | 15
| style="text-align:left" | 6Q
|-
| style="text-align:right" | 3D
! style="text-align:left" | 7
! style="text-align:right" | 14
| style="text-align:left" | 6D
|-
| style="text-align:right" | 4D
! style="text-align:left" | 8
! style="text-align:right" | 13
| style="text-align:left" | 5D
|-
| style="text-align:right" | 4Q
! style="text-align:left" | 9
! style="text-align:right" | 12
| style="text-align:left" | 5Q
|-
| style="text-align:right" | GND
! style="text-align:left" | 10
! style="text-align:right" | 11
| style="text-align:left" | CLK
|}
 
= Clock =
Clock generation is handled with crystal oscillators.  Regardless of the size (DIP-8 or DIP-14) the pinout is the same.
 
{| class="wikitable"
| style="text-align:right" width="180" | NC
! style="text-align:left" width="30" | 1
! style="text-align:right" width="30" | 4
| style="text-align:left" width="180" | VCC
|-
| style="text-align:right" | GND
! style="text-align:left" | 2
! style="text-align:right" | 3
| style="text-align:left" | Clock
|}
 
== CPU Clock ==
The main CPU in NerdConsole operates at 6.00 MHz.
 
== Audio Clock ==
The audio system in NerdConsole operates at 3.58 MHz.  There is an independent clock crystal for this instead of doing clock division of the main CPU clock which would be less accurate and difficult.

Latest revision as of 15:25, 23 January 2024