| Home | Job | Pinball | Photo Album | Automotive | Press/Awards | Contact |

In partnership with PinScore (later renamed to XPIN), the first prototype board was constructed in May 2009. It replicates the WPC DMD Driver board, and has a Xilinx XC3S200 FPGA, and is capable of VGA output, RS-232 interface, and has several expansion possibilities for the future. Of course it handles the standard plasma DMD display also. This board marks an exciting new phase of this project: from the lab to the factory floor. Note that its layout matches that of a standard WPC DMD driver board.
This first board replaces the standard WPC DMD board. It also has
VGA output, and several future expansion options.
I have a nice clean test set up on my home office desktop.
This shows the new board DMD14039 board working.
As you can see a new feature is being able to change the color
of the DMD display by using DIP switches.
First test in my IJ shows the high voltage and the FPGA code working. Also,
the simultaneous VGA output was tested.
One useful tool is an upcoming product from XPin/PinScore, which is an LED DMD.
I modified this one to run on 5V only, avoiding the issues and hassles with
high voltage on a test bed.
April 2012, the built-in logo screen for the DMD board is shown above.
Unlike the Williams DMD board, this version has a built-in clock,
so it can run without a working CPU board.
An Appearance at PAPA
In April 2012, Brett Davis (founder of XPIN) showed our DMD board and its logo screen to the organizer of the World Pinball Championships, held by the Professional & Amateur Pinball Association (PAPA). They asked if I could change and sequence the logo screen with a series of screens. The idea was to make the DMD board a part of the 2012 championship trophies. The DMD screen would be mounted in a custom reduced-sized backbox with a custom backglass. The idea was very interesting to us, and promised to create a completely new type of pinball trophy.
Artwork for the backglass used in the PAPA 2012 trophies. The rectangular white
area is reserved for the DMD display. The glass will be mounted in a custom
backbox.
I had always intended the logo screen be ASCII-editable, so changing them was quite easy, but sequencing multiple screens was not anticipated. Nevertheless, I was able to have the DMD board sequence 8 different screens, and add a fade-in transition between each one. I then shipped the programmed boards out to the tournament organizers, and looked forward to seeing the trophies at PAPA 2012.
Video of the trophies at PAPA 2012. They were arranged together next
to the audience viewing the Division A (top division) players.
Wide photo of one of the trophies with the Division A players in the background.
During the tournament, large hi-definition screens showed a closed circuit camera
view of the playfield of the entrants. It allowed the crowd a close view of how the player was doing. You can see one of the screens near the top of the image.
(click for large view).
Testing WPC-89 boards
My WPC test bench working on the repair of a WPC pre-DCS sound board.
Here is a video of the result.
WPC CPU Board Project
In June 2025 we decided to resume the production of replacement hardware. To ensure no issue with IP, the replacement board will use the standard Williams ROM. There will also be a separate Real-Time Clock chip. Everything else will be incorporated into the FPGA including the Security PIC.
This board will be able to run any WPC code (WPC-98, WPC-S, WPC-95) without requiring a Security PIC.
This version of the design that runs on the Spartan
Dev board uses a physical ROM.
Video of this is here (June 2025).
Second update. Prototype drives DMD panel (July 2025).
Third update. Driver board interface added (August 2025).
Fourth update. Alpha-Numeric added (Feb 2026).
The earliest revision of WPC was the WPC-Alpha Numeric (WPC-AN). Examples are Bride of Pinbot (BOP) and FunHouse. I realized I needed to display this output to verify the interface is working, so I decided to build a module that auto-detects the output on the J204 connector, and route the segment info as pixels in the dot matrix display. This would allow a user to no longer need the segment display. The result is shown above. In principle it would be possible for the score display panel on these machines to be replaced by a panel that holds the DMD, which would plug directly into the CPU board.
AcknowledgmentLinks
The following have contributed to this project. I am very grateful for their assistance.
John Kent - For his CPU VHDL core and his patient answering of many e-mails.
Martin Reynolds - For his constant assistance with ideas and his knowledge of PinMAMED.
Brent Butler - Who provided the PAL equations and assisted with the Security PIC.
Martin Adrian (aka WPCmame) - for the IO map of the CPU ASIC & Security PIC algorithm.
John Wart Jr. - Who loaned me a WPC-DCS board.
Jim Knight - Who loaned me a WPC-95 A/V board.
If you are interested in assisting with this project, please send me e-mail.
I am looking for an IP core for the A/V DSP.
- Explanation and history of WPC-DCS sound (Uncle Willy). Archived here.
- Discussion on how the audio board fails and difficulty of finding one for a low price.
- Martin's page on PinMAMED.
- Ken Chapman's Spartan3 Flash loader (scroll down to "M29DW323DT", or search for that keyword on Xilinx.com).
- 6809 on a chip by John Kent
- A similar project emulating an Amiga computer in FPGA.
- PinMAME source.
- Free WPC. A project to rewrite WPC game code in C.
- A useful page with lots of WPC CPU information (Matthias Bucher - Maddes).
- Photo of WPC Printer Kit.
- Eliminating ghosting in lamp matrix on WPC systems. Includes scope plots of lamp matrix drive (article archived).
- Info sheet on WPC from FreeWPC. Great info on the memory map. Backup here.
Project Log
(c) 2026 Edward Cheung, all rights reserved.