Integrated Circuit Chips: Difference between revisions
NerdOfEpic (talk | contribs) No edit summary |
NerdOfEpic (talk | contribs) No edit summary |
||
Line 2: | Line 2: | ||
= Processor = | = Processor = | ||
== 65C02 == | == 65C02 == | ||
= RAM = | = RAM = | ||
== 32KB == | == AS6C62256 == | ||
== 512KB == | This 32KB RAM chip is used for NerdConsole's 16KB of Main RAM. There aren't any readily available 16KB static RAM chips, so the decision was made to use a 32KB chip instead, and only use half of it. Main RAM was intentionally placed on a separate chip from Extended RAM to simplify bank selecting logic. | ||
{| 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 | |||
|} | |||
== AS6C4008 == | |||
This 512KB RAM chip is used for Extended RAM and provides 32x 16KB banks. | |||
{| 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" | A15 | |||
|- | |||
| style="text-align:right" | A14 | |||
! 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" | ~WE | |||
|- | |||
| 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 | |||
|} | |||
= ROM = | = ROM = | ||
Several different types of ROM chips can be used for cartridges. | |||
== 8KB == | == 8KB == | ||
== 32KB == | == 32KB == | ||
Line 12: | Line 172: | ||
== 256KB == | == 256KB == | ||
== 512KB == | == 512KB == | ||
= Audio = | = Audio = | ||
== YM-3812 == | == YM-3812 == | ||
== YM-3014 == | == YM-3014 == | ||
= Logic = | = Logic = | ||
NerdConsole uses a variety of logic chips for address decoding, holding register values, and buffering data as it moves between systems. | |||
== 74HCT00 == | == 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 == | == 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 == | == 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 == | == 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 | |||
|} |
Revision as of 19:35, 21 January 2024
This is a collection of pinouts and basic descriptions for all of the various chips used in NerdConsole.
Processor
65C02
RAM
AS6C62256
This 32KB RAM chip is used for NerdConsole's 16KB of Main RAM. There aren't any readily available 16KB static RAM chips, so the decision was made to use a 32KB chip instead, and only use half of it. Main RAM was intentionally placed on a separate chip from Extended RAM to simplify bank selecting logic.
A14 | 1 | 28 | VCC |
---|---|---|---|
A12 | 2 | 27 | ~WE |
A7 | 3 | 26 | A13 |
A6 | 4 | 25 | A8 |
A5 | 5 | 24 | A9 |
A4 | 6 | 23 | A11 |
A3 | 7 | 22 | ~OE |
A2 | 8 | 21 | A10 |
A1 | 9 | 20 | ~CE |
A0 | 10 | 19 | D7 |
D0 | 11 | 18 | D6 |
D1 | 12 | 17 | D5 |
D2 | 13 | 16 | D4 |
GND | 14 | 15 | D3 |
AS6C4008
This 512KB RAM chip is used for Extended RAM and provides 32x 16KB banks.
A18 | 1 | 32 | VCC |
---|---|---|---|
A16 | 2 | 31 | A15 |
A14 | 3 | 30 | A17 |
A12 | 4 | 29 | ~WE |
A7 | 5 | 28 | A13 |
A6 | 6 | 27 | A8 |
A5 | 7 | 26 | A9 |
A4 | 8 | 25 | A11 |
A3 | 9 | 24 | ~OE |
A2 | 10 | 23 | A10 |
A1 | 11 | 22 | ~CE |
A0 | 12 | 21 | D7 |
D0 | 13 | 20 | D6 |
D1 | 14 | 19 | D5 |
D2 | 15 | 18 | D4 |
GND | 16 | 17 | D3 |
ROM
Several different types of ROM chips can be used for cartridges.
8KB
32KB
64KB
128KB
256KB
512KB
Audio
YM-3812
YM-3014
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.
1A | 1 | 14 | VCC |
---|---|---|---|
1B | 2 | 13 | 4B |
1Y | 3 | 12 | 4A |
2A | 4 | 11 | 4Y |
2B | 5 | 10 | 3B |
2Y | 6 | 9 | 3A |
GND | 7 | 8 | 3Y |
74HCT08
This chip provides four 2-input AND gates.
1A | 1 | 14 | VCC |
---|---|---|---|
1B | 2 | 13 | 4B |
1Y | 3 | 12 | 4A |
2A | 4 | 11 | 4Y |
2B | 5 | 10 | 3B |
2Y | 6 | 9 | 3A |
GND | 7 | 8 | 3Y |
74HCT14
This chip provides six signal inverters.
1A | 1 | 14 | VCC |
---|---|---|---|
1Y | 2 | 13 | 6A |
2A | 3 | 12 | 6Y |
2Y | 4 | 11 | 5A |
3A | 5 | 10 | 5Y |
3Y | 6 | 9 | 4A |
GND | 7 | 8 | 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.
A | 1 | 14 | VCC |
---|---|---|---|
B | 2 | 13 | NC |
C | 3 | 12 | H |
D | 4 | 11 | G |
E | 5 | 10 | NC |
F | 6 | 9 | NC |
GND | 7 | 8 | Y |
74HCT32
This chip provides four 2-input OR gates.
1A | 1 | 14 | VCC |
---|---|---|---|
1B | 2 | 13 | 4B |
1Y | 3 | 12 | 4A |
2A | 4 | 11 | 4Y |
2B | 5 | 10 | 3B |
2Y | 6 | 9 | 3A |
GND | 7 | 8 | 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.
~1G | 1 | 16 | VCC |
---|---|---|---|
1A | 2 | 15 | ~2G |
1B | 3 | 14 | 2A |
1Y0 | 4 | 13 | 2B |
1Y1 | 5 | 12 | 2Y0 |
1Y2 | 6 | 11 | 2Y1 |
1Y3 | 7 | 10 | 2Y2 |
GND | 8 | 9 | 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.
A0 | 1 | 16 | VCC |
---|---|---|---|
A1 | 2 | 15 | Y0 |
A2 | 3 | 14 | Y1 |
~G0 | 4 | 13 | Y2 |
~G1 | 5 | 12 | Y3 |
G2 | 6 | 11 | Y4 |
Y7 | 7 | 10 | Y5 |
GND | 8 | 9 | Y6 |
74HCT240
This chip reads the state of all 8 possible controllers and inverts the signal turning the 0s from pressed buttons into 1s.
~1OE | 1 | 20 | VCC |
---|---|---|---|
1A0 | 2 | 19 | ~2OE |
~2Y3 | 3 | 18 | ~1Y0 |
1A1 | 4 | 17 | 2A3 |
~2Y2 | 5 | 16 | ~1Y1 |
1A2 | 6 | 15 | 2A2 |
~2Y1 | 7 | 14 | ~1Y2 |
1A3 | 8 | 13 | 2A1 |
~2Y0 | 9 | 12 | ~1Y3 |
GND | 10 | 11 | 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.
~CLR | 1 | 20 | VCC |
---|---|---|---|
1Q | 2 | 19 | 8Q |
1D | 3 | 18 | 8D |
2D | 4 | 17 | 7D |
2Q | 5 | 16 | 7Q |
3Q | 6 | 15 | 6Q |
3D | 7 | 14 | 6D |
4D | 8 | 13 | 5D |
4Q | 9 | 12 | 5Q |
GND | 10 | 11 | CLK |