Adolfo’s Status Report for 4/26

Tess finished the memory bank controllers, which allow us to play more complex games that require more memory.  Meanwhile, I worked on an alternate solution to get the controller to work with the FPGA. I made a controller driver on an RPI and then sent signals to the FPGA through GPIO, with this I was able to play Tetris and Doctor Mario. I also fixed the timer bugs (which means our timer passes all the tests and as a results the sprites in Doctor Mario no longer play at super-fast speed). With this, no bugs were found while playing the games.

Thus, this concludes our main requirements for the FPGA portion of the project. I then restructured the MBC code to work better with the FPGA and then got an MBC1 game working, Super Mario World. This proves that our memory bank controller works in synth as well and that more complex games give our emulator no issues. We’re gonna try to get the off-board memory flashed with games to be able to try out notoriously difficult games to emulate, which require a bit more space than the FPGA has to run. We don’t expect them to work 100% since our PPU isn’t 100% accurate (this is the hardest part to get right in an emulator), but we expect them to be in an otherwise playable state. This is a stretch goal since Tess and I are a bit busy this week so we may not be able to put in as much work as we did in the previous weeks.

We are happy with our results as we have gotten more results than what we had originally aimed for on the FPGA side, even before the COVID issues. Hopefully, we’ll get the external memory on the FPGA to work to do the stretch goal of playing games like Pokemon.

Leave a Reply

Your email address will not be published. Required fields are marked *