BombJack up and running

I thought I would try porting an existing game implementation to my own board. I found this guy who made an implementation of BombJack, one of my favorite games. It was made using VHDL for a Xilinx FPGA. I don’t know VHDL, never used Xilinx and it was also made to use an external SRAM to “emulate” a lot of the EPROMs in the game, since the FPGA he used did not have enough built-in RAM. Also he added a converter to use a VGA screen, while I want to use an original 15kHz arcade monitor.

Fortunately, VHDL was not that hard to grasp, and the many comments and good coding style in the implementation certainly helped. Also, he had left implementations for all EPROMS for use in internal RAM, only commented out.

I removed all code for emulating EPROMS from SRAM, the SRAM code itself with bootsrapping and stuff. I also removed the VGA converter. I had to change all EPROMS to use the Altera internal RAMs instead.

One big problem was he used a processor core programmed specifically for Xilinx. Luckily I found an Altera port of the exact same processor, and could just swap it.

After some quirks and bug finding it sprung to life!

2016-03-19 00.25.11

At this point it seems to be working flawlessly.

2016-03-19 00.16.23

A big thanks to Alex! Without his implementation and hard work this could never have been made in such short time.