Fair warning: this is all techy words and no pretty pictures, although hopefully it will lead to those in time.
Anyway, with some help from Guru, I now have a better understanding of the various System 23 hardware configurations.
Gorgon: AKA “System 22.5”. This is the base from which all other S23s are derived. It’s got a 133 MHz R4650 main CPU, the same H8/3002 “sub CPU” and C352 sound generator as System 12, the text tilemap from System 22, and as-yet unknown 3D hardware. It uses per-game I/O boards based on the Namco custom “C78”, which is a Hitachi/Renesas H8/3334. The 3334 is an 8-bit version of the 16-bit H8/3002, and it communicates with the H8/3002 on the main board.
System 23: This is 22.5 with the main CPU bumped to 166 MHz, changes to the memory map, and unknown changes to the 3D hardware. Other specs and the I/O board remain the same.
System 23 “G-Men”: Used for Gunmen Wars, this is System 23 with an added network board driven by an SH-2 CPU.
Super System 23: This is 23 with a new-style I/O board based on a PIC16Cxx, which increases security somewhat. There don’t appear to be any other changes to improve the graphics capability.
Super System 23 Evolution 2: Used only for Crisis Zone, this bumps the main CPU to 200 MHz. Again, no other changes are known.
Relative to all this Guru has dumped some of the C78s and I’ve put together an H8/3334 core in MAME to run them. The 8-bit and 16-bit H8s are binary compatible, but the on-board peripherals, bus widths, and interrupt semantics differ. So it wasn’t too hard to share the opcode implementations with our existing H8/3002 core.
I haven’t yet figured out exactly how the I/O board talks to the 3002 on the main board, but the onboard serial ports of both chips seem like a reasonable guess (System 22 used a similar scheme with two M37702s instead of a 3002/3334 pair). The 3334 program enables it’s serial port A and basically waits for something to happen, while the 3002 periodically sends a few bytes out it’s serial port A and seems to expect a reply. Incidentally, the 3002 is expecting the same sorts of replies regardless of the I/O board type (C78 or PIC). The major difference for us is that Guru can dump the C78-type boards while the PICs will likely need decapping.