Cinematronics Technical Information


The Cinematronics CPU - Programmer's Reference Guide (PDF, 146Kb)
This second pass at fully documenting the internal workings of the Cinematronics CPU, now documents the bizarre behavior of the Cinematronics software flags. I figured I needed to do this before I went senile and forgot just how these flags operated. (To be honest, I did forget a few things and had to go back to the CINEMU source code to "refresh" my memory!)

If you're interested in writing your own version of a Cinematronics emulator (or porting MAME, etc.), or just want a complete understanding of how the Cinematronics CPU works, you'll need to read this manual. This is everything I knew about the Cinematronics CPU during the writing of CINEMU.

This new reference guide is now a bookmarked PDF file with a table of contents. Much nicer than the original text only version! Which is still available here: CINEINST.TXT.

The Cinematronics Applications Programming Manual (PDF, 1.9Mb)
This is a scanned copy of the in house manual that was used by the programmers at Cinematronics to write games. It contains a description of the Cinematronics Instruction Set, and some game and vector theory.

The instruction set mnemonics described here differ from those I chose while reverse engineering the CPU. After going over this manual in detail I've decided to keep most of my original mnemonics, and register names.

Their inconsistencies in register names makes it harder to describe the inner workings of the processor. (For example the 'I' register is sometimes referred to as "the previous address" and sometimes as "the working register".) Many of their mnemonics describe more of how the CPU hardware works than what the instruction does.

Since my goal was to try and fully explain the inner workings of the Cinematronics CPU, I stuck with [most] of the names I started with.

Either way this manual is full of examples, a flow chart and step by step description of how "Space War" was written and operates. There is advice on game writing in general. A "must read" if you plan on writing any kind of software for the Cinematronics platform, or any other gaming platform for that matter!

Once again: Thanks go to Al Kossow for finding, Scanning and Posting this on spies!

A Star Castle to War of the Worlds, Soundboard Conversion
War of the Worlds was never placed into full production, it apparently tested badly in the field (not hard to understand if you've ever played this game!). The soundboards used in these test games were converted Star Castle soundboards.

So, if you're so inclined, this is a step by step description of how to hack a Star Castle soundboard into a War of the Worlds soundboard.

A Cinematronics Soundboard Exercisor Utility
This utility allows you to trigger individual sounds on a Cinematronics Soundboard using the parallel port of a PC.

This can be very useful when trying to debug a soundboard, since some sounds are difficult to generate on demand by simply running the game.

It requires you to have enough knowledge to build the cable that connects a PC's parallel port to the Cinematronics soundboard, and to supply the soundboard with the proper power supplies.

This utility includes source code. Also included are some very detailed description of how some of the soundboards work. If you've ever thought of designing a Cinematronics multi-game soundboard, or would like to write software to control the soundboards yourself, you'll want to read these.

A Cinematronics Disassembler and Hardware Simulator
This set of utilities is what I used to reverse engineer the Cinematronics hardware. Included is a simple disassembler and a hardware simulator that displays different hardware logic levels for each clock cycle of the, software simulated, hardware in a DOS window.

Chances are these utilities are not very useful to anybody (including myself) now that the hardware has been documented, but they're here and available and include source.

The I/O Read/Write Locations in Cinematronics Game Code ROMs
This is a list of ROM locations, in the Cinematronics game ROMs, where the control panel, and configuration switches are tested in software, and where the different soundboard lines are set/reset.

This is probably not real useful information for very many people. But if you've ever thought of building a Cinematronics multi-game, or would just like to patch, let's say, Star Castle to run in a Ripoff cabinet without rewiring the control panel, these locations are very useful!