P.A.C.E. Prototype Hardware

(Last Update: 22/08/07)


  • Took delivery of PACE-P3M - as 'payment' for porting DOOM to it!
  • I did some more layout on the PACE-P2 JAMMA adapter board. It's getting closer now - although Chris is adamant I'll need 4 layers as power is going to be tricky! Also time to order some parts and check the footprints before I send it out. I should also implement the CPLD logic just in case.
  • Chris started implementing & simulating the CPLD logic he needs on his 6809/68k adapter board.
  • Work continues on the JAMMA I/O board. I'm half-way through layout, but the audio circuitry is causing grief and needs revisiting. I'm certainly no analogue engineer, but getting line-level output and sufficient power for speaker output seemingly requires ridiculous amounts of passive components and a handful of power rails for a supposedly quick'n'dirty I/O board design - arrgghh! 
  • Chris has completed layout of his DE2 6809/68k I/O board.
  • I have completed schematic capture and component placement of my JAMMA  I/O board. As well as a standard JAMMA connector for use in an arcade cabinet, the board also has a DC jack, audio DAC with stereo line-level and amplified speaker outputs, PS/2 input and VGA output to enable desk-top development without a cabinet. In fact, it has everything PACE-P2 has except the composite video chip! I'll also add some 5V I/O for things like Chris's MapleBus (Dreamcast) interface as well as PS/2 & Gamecube controller interfaces. I'm ready to start laying down tracks so Chris & I can get our boards manufactured ASAP on the same panel.
  • Chris is laying out an add-on PCB for his DE2 with sockets for a 6809 and 68000 to aid CPU core development and I am laying out a new PACE-P2 PCB with a JAMMA connector so I can hook PACE-P2 directly to my arcade cabinet(s). Hopefully these will go out first thing in the New Year for manufacture.
  • The ADV724 PAL/NTSC video encoder appears to be operational. Only composite video (as opposed to S-VIDEO) output has been tested so far, and the results are satisfactory if not spectacular. More care in layout and proper termination of RGB inputs to ADV724 may have produced better results.
  • Chris is hooking up a Dreamcast controller (Maple Bus) to his DE2 (to avoid working on his 6809) and has made some progress in communicating with it.
  • I've managed to load some game ROMs into SRAM from the compact flash and have the game boot! This has opened up a whole new range of games that can potentially be supported with 1MB (not 2 as I first thought) SRAM onboard.
  • PACE-P2 is up and running! VGA output and PS/2 input verified working. I've managed to port Space Invaders, Pacman and Frogger so far. The EP2C35 allows me to debug the Frogger sound now (even though the sound circuit hasn't been assembled on the board as yet).


#1 - The Altium NanoBoard

    The NanoBoard NB-1 is a cross-vendor FPGA development platform sold by Altium, producers of DXP (formerly Protel) circuit designer software.

    In late 2003 I had the good fortune to be in the right place at the right time, and had the opportunity to do some development using Altium's Nexar platform as part of Altium's beta test program. Shipped with the platform is an FPGA prototyping board called the NanoBoard which comprises plug-in modules for various FPGA silicon on a PCB with SRAM, LCD, numeric keypad, PS/2 ports and a VGA connector, as well as other various I/O modules such as serial, ADC, DAC and digital I/O. The development environment also comes bundled with IP such as PS/2 & VGA controllers for the on-board modules, as well as a couple of CPU cores, including a Z80!

    It was immediately obvious, of course, that the NanoBoard was the perfect prototype platform for PACE! With on-board PS/2 controllers for input, VGA controller for output to a standard monitor, some SRAM, the Z80 core and Altera Cyclone FPGA module - I had exactly what I needed to start work on PACE without the effort & cost that goes with designing, manufacturing and debugging a prototype PCB! And with the experience we had in the beta program, I had a head-start on the firmware design as well!

    The bulk of my PACE firmware prototyping to date has been done on the NanoBoard. Emulated platforms include arcade games like Pacman, Space Invaders, Galaxian and Frogger; 8-bit micro computers such as the TRS-80, Apple II, VIC-20 and C-64; and TV game consoles such as Bally Astrocade and Colecovision.

#2 - Celoxica RC-10

    In August 2006 I was lucky enough to receive a Celoxica RC-10. Celoxica specialise in C based FPGA design and synthesis.

    I'm yet to port any of my designs to the RC-10, but am interested to get into Handel-C and see what it has to offer!

#3 - PACE-P2

    The third prototype platform comprises some 'donated' hardware and an add-on board to facilitate PACE IP development.

    The hardware in question houses an EP2C35, 64MB SDRAM, 2MB SRAM, Compact Flash adapter and 10/100 Ethernet. Very, very nice because my designs were outgrowing the Nanoboard and I particularly needed more RAM and Compact Flash for emulated floppy and hard disk systems. I'm in the layout stages of a plug-in PCB which has the PACE-P2 power supply, video (VGA + composite + SVIDEO) output, PS/2 input and stereo RC filters for simple sound output.

    PACE-P2 should allow multi-CPU games (adding the AY-3-8910 sound core on a 2nd Z80 to Frogger, for example), games with much larger ROMs (like 1942!), vector games which require a frame buffer (Asteroids!) and the addition of proper floppy/hard disk image support for various 8/16-bit computer platforms.

#4 - Altera DE2 Development & Education Board

    Chris is the proud new owner of an Altera DE2 board..

    EP2C35, 8MB SDRAM, 512KB SRAM, 4MB Flash, SD adapter, 10/100 Ethernet, 30-bit VGA and a QVGA (320x240) LCD.

#5 - PACE-P3M

    This was designed as a multi-purpose platform - amongst other uses, to run DOOM.

    A very nice, neat little board with an EP2C35, SDRAM, FLASH, USB, SD/MMC adapter, RS-232, CAN. It has an integrated 240x320 60Hz 18-bit colour LCD with touch-screen and runs off battery, USB power or DC plug pak.