Recreating Pong in its original, hardware forn

“Unfortunately, many of the logic chips that make up Pong are no longer readily available. There are newer parts that will perform the same function but they have different pin connections. I started by re-drawing and adapting some the circuits to the available parts.” Recreating Pong from scratch. In its original hardware form. Crazy cool.

This reminds me of that Clint Eastwood movie, Space Cowboys, where he has to explain his own ancient hardware schematics to youngens (with Masters and Phds) that couldn’t read logic schematics anymore.

When I was back in college, 1 particular grad student had his very own ICL 1904 built out of transistor boards working in a spare room. As each board failed he would wire up a TTL logic board replacement work alike.

Then there was that BBC show that ran on PBS last year that reset a British family back to 1970 and had them relive the 70s and 80s in a month going through all these toys 1 day every year.

When I was back in college, 1 particular grad student had his very own ICL 1904 built out of transistor boards working in a spare room. As each board failed he would wire up a TTL logic board replacement work alike.

I disagree. There is nothing incredible in it. Modern computers simply can do it. If somebody tried to emulate Pong hardware at atomic level it would require even higher clock speeds and higher amounts of memory but it still wouldn’t be incredible.

Incredible you can , for example, call methods and tools that engineers at MOS Technology used to create 6502 chip.

There is really no need to run a detailed event driven gate level or device level PSpice like simulator for this at all.

The amount of logic in this game is so small that a very simple cycle accurate simulator would need very few resources.

Essentially every gate or flop is declared as an expression or master slave register and these are arranged into a C like for loop that looks a lot like a Verilog always @CK block with all the expressions in their time order feeding a master input that cycles back to the slave register variable and back to the top of the loop. If there are RS latches or other analogish circuits those have to be modified into normal clock logic. Did this loads of times for chips thousands of times more complex than Pong.

You could probably even run it on an Arduino board or any MicroChip or Arm chip only running at a few MHz, maybe even a PicoBlaze state machine.

In fact the ARM chip itself was built in exactly this way in BBC Basic on a Beeb, converted to HDL by VLSI Inc and it pretty much worked on first silicon. The Beeb emulator might well have been able to run some early ARM firmware at a few instructions per sec.