IC inventory

Every integrated circuit in the Commando machine, grouped by part. A chip drawn across two sheets carries a link to each.
250 chips 42 part types A 100 · B 103 · C 47

Memory and ROM 38 chips

Everything that stores something - program, graphics, scratch space and factory look-up tables.

27128×17

16K x 8 EPROM. The graphics store: background tile ROMs on the C board, sprite bitmap ROMs on the B board, character shapes on the A board.

A board 5D7/8 8M1/8 9F3/8
B board 7E4/6 7H4/6 8E4/6 8H4/6 9E4/6 9H4/6 10E4/6 10H4/6
C board 5A3/3 6A3/3 7A3/3 8A3/3 9A3/3 10A3/3

2114×6

1K x 4 static RAM. Used in pairs to make a byte wide - the 96-object sprite entry store and the sprite work RAM.

B board 1A1/6 2A1/6 3H3/6 3J3/6 4H3/6 4J3/6

TBP24S10×6

256 x 4 bipolar PROM (7611). Look-up tables burned at the factory: the colour palette on the A board, the interrupt table on the CPU sheet, and the sprite line-timing PROM that defines the whole 24/96 object sequence.

A board 1D8/8 1H8/8 2D8/8 3D8/8 6L1/8
B board 6E4/6

2148H×4

1K x 4 static RAM, faster than the 2114. The two sprite line buffers: a pair per buffer, addressed by the 9-bit X counter, with bit 8 wired to /CE so sprites clip at the right edge.

B board 3K5/6 4K5/6 9L6/6 9M6/6

M58725×3

2K x 8 static RAM. Work and video RAM.

A board 7F6/8 8F3/8
C board 2B2/3

27256×1

32K x 8 EPROM. The main program ROM. On the clean board this socket holds two stacked 27128s instead, split by address.

A board 9M1/8

HM6264P×1

8K x 8 static RAM.

A board 7M1/8

Processors, sound and analogue 8 chips

The two CPUs, the sound chips and the audio output stage.

YM2203×2

FM + PSG sound chip (OPN). Two of them, addressed at 8000-8003. Wired write-only here - /RD is tied high and /WR grounded, so accesses are timed purely by chip select.

A board 9C3/8 11C3/8

YM3014×2

Serial DAC. Converts each YM2203's FM output to analogue for the amplifier.

A board 8C-14/8 8C-24/8

Z80A×2

8-bit CPU. Two of them: the main CPU at 11M, and a dedicated sound CPU at 11F that does nothing but drive the two YM2203s.

A board 11F3/8 11M1/8

HA1368×1

Audio power amplifier. Drives the cabinet speaker.

A board 11A4/8

LM324×1

Quad op-amp. Mixing and filtering the PSG and FM channels on the main amp sheet.

A board 8B4/8

Counters, registers and shifters 59 chips

Anything that holds or advances state on a clock edge.

74LS273×14

Octal D flip-flop with clear. Byte-wide registers - sprite attributes, scroll position, colour output.

A board 2E8/8 6D6/8 6E6/8 7E6/8
B board 1M5/6 3E3/6 3F3/6 4F3/6
C board 3A2/3 3E2/3 4A2/3 4B2/3 4C1/3 5C2/3

74LS174×12

Hex D flip-flop. Timing and pixel latches.

A board 1F8/8 4E7/8 7A2/8 7D6/8 7L1/8
B board 2F3/6 3L5/6 3M5/6 6F4/6 10L6/6 10M6/6
C board 3B2/3

74LS194A×12

4-bit bidirectional shift register. The pixel shifters that serialise tile and sprite bitmaps, shifting either direction so a flipped graphic comes out reversed.

A board 4F7/8 5F7/8
B board 7J4/6 8J4/6 9J4/6 10J4/6
C board 5B3/3 6B3/3 7B3/3 8B3/3 9B3/3 10B3/3

74LS161×9

4-bit synchronous counter with asynchronous clear. The H and V video counters that generate the whole raster.

A board 1K5/8 1L5/8 2K5/8 2L5/8
B board 7A2/6 7B2/6 7C2/6 7D2/6 8D2/6

74LS163×6

4-bit synchronous counter with synchronous clear. The sprite line-buffer X counters, three cascaded into a 9-bit count.

B board 5K5/6 5L5/6 5M5/6 6K6/6 6L6/6 6M6/6

74LS175×3

Quad D flip-flop with complementary outputs.

B board 4C3/6 5C3/6
C board 8D1/3

74LS374×2

Octal D flip-flop with tri-state outputs. The sound-command mailbox between the two CPUs.

A board 8J3/8 11K1/8

74LS373×1

Octal transparent latch.

B board 5F3/6

Gates and flip-flops 73 chips

The glue logic - the largest group by chip count.

74LS86×20

Quad XOR. The flip logic: XORing a counter against FLIP mirrors the screen, which is how the cocktail cabinet flips the picture for player two.

A board 4C7/8 4D7/8 4J6/8 5J6/8 6J6/8
B board 4A1/6 4L5/6 4M5/6 5A1/6 6D3/6 7L6/6 7M6/6 9D2/63/6
C board 1D1/3 1E2/3 2D1/3 2E2/3 6D1/32/3 6E3/3 7E1/33/3

74LS74×14

Dual D flip-flop. Sync and blanking latches, the interrupt chain, the DMA handshake.

A board 1E8/8 1M5/8 2M5/8 4H6/8 4M5/8 4N5/8 5M5/8 6M1/8 8D3/8 11E3/8
B board 6C1/6 9B2/6
C board 6C1/32/3 9D1/3

74LS04×10

Hex inverter. Also used throughout as a buffer, and as the source of the alpha/beta copies of FLIP, V1 and the pixel clock.

A board 2N5/8 3E6/87/88/8 4K5/86/8
B board 1F3/6 4B1/6 5B1/6 9A2/6 9K4/6
C board 9C1/33/3 9E1/3

74LS08×9

Quad 2-input AND.

A board 3M5/8 5K1/85/8 6F3/86/8 6N1/81/1 9E3/8 9L1/8
B board 6A1/62/64/6 10B2/6
C board 8E1/3

74LS32×7

Quad 2-input OR. Occasionally used with both inputs tied as a plain buffer.

A board 5H6/87/8 10J1/83/8
B board 6B1/6 8C2/6 8K4/6 9C2/64/6
C board 10C3/3

74LS00×4

Quad 2-input NAND.

A board 3F6/88/8
B board 6J3/64/6 8B2/63/6
C board 2C2/3

74LS20×4

Dual 4-input NAND. One of them (1L on the B board) is the sprite transparency test - a gate per line buffer, drawn on two different sheets.

A board 3J8/8
B board 1L5/66/6 2E1/63/6 10C2/6

74LS10×2

Triple 3-input NAND.

A board 4L5/8
B board 8A2/6

74LS112×1

Dual JK flip-flop. The horizontal blanking latch.

A board 3L5/8

74LS14×1

Hex Schmitt-trigger inverter. Cleans up slow edges.

A board 11J1/81/1

74LS30×1

8-input NAND. Decodes the V counter reaching line 248 to set the VSYNC latch.

A board 3N5/8

Buses, decoding and selection 55 chips

Deciding who drives what, and steering signals onto shared lines.

74LS157×14

Quad 2-to-1 multiplexer. Switches video RAM address between the CPU and the display counters.

A board 3H7/8 6K6/8 7J6/8 7K6/8
B board 1H3/6 1J3/6 2H3/6 2J3/6 5H3/6 5J3/6
C board 1A2/3 1B2/3 1C2/3 7C3/3

74LS245×12

Octal bidirectional bus transceiver. Bus isolation, and the direction reversal that lets the B board read sprite data out of the A board's RAM during blanking.

A board 2A2/8 2B2/8 6H6/8 8L1/8 9K1/8 10K1/8
B board 1C1/6 1D1/6 1E1/6 2D1/6 3D1/6
C board 3C2/3

74LS138×8

3-to-8 line decoder. Address decoding and the read/write strobes.

A board 3A2/8 5L5/8 5N5/8 7B2/8 9J1/8 10E3/8
C board 2A1/3 7D1/3

74LS257×7

Quad 2-to-1 multiplexer with tri-state outputs. The line-buffer write-back and playback muxes.

B board 1K5/6 2K5/6 2L5/6 2M5/6 8L6/6 8M6/6 10K4/6

74LS367×6

Hex buffer with tri-state outputs. Reading the control panel and DIP switches onto the data bus, and timing fan-out.

A board 3K5/8 4B2/8 5B2/8 6B2/8 8E3/8 8K1/8

74LS139×5

Dual 2-to-4 line decoder. Region decoding and the line-buffer strobes.

A board 3B2/8 7C3/8
B board 3A3/6 6H4/6 7K4/6

74LS153×3

Dual 4-to-1 multiplexer. The colour mixer's priority selection between sprite, character and background pixels.

A board 2F8/8 2H8/8 2J8/8

Arithmetic 13 chips

Adders.

74LS283×13

4-bit binary full adder. Adds the scroll offset to the raw counter on the C board, and the sprite Y offset on the B board.

B board 2B1/6 2C1/6 3B1/6 3C1/6 4D3/6 4E3/6 5D3/6 5E3/6
C board 3D1/3 4D1/3 4E2/3 5D1/3 5E2/3

Board-specific and operator parts 4 chips

The pieces that are not standard logic.

DIP-SW8×2

8-position DIP switch block. The two operator setting banks, read back through the '245s at 2A and 2B.

A board 1A2/8 1B2/8

CUSTOM DIP48×1

Capcom's 48-pin opcode decryptor at 10M. Descrambles the program only during M1 fetches. Neither of Robert's boards has it - both use a PAL16L8 substitute.

A board 10M1/1

PST518×1

Power-on reset generator. Holds the machine in reset until the supply is stable.

A board PST1/8