Adolfo’s Status Report for 4/19

This week I focused on getting the PPU finished and in an “excellent” state. I did this by running the dmg-acid2 test, which helped us pinpoint all the inaccuracies that the PPU had.  I spent a good chunk of the week getting it running, as I was confident that with this test and our CPU verification tests we would be good to run most games that we throw at the emulator.

Furthermore, after much struggle, Tess and I managed to get the core running on the FPGA. We were able to run some tests, but there were some glaring graphical glitches. This was because we had not accounted for the memory not having combinational reads, all the memories offered by the FPGA required registered inputs. We got around this by speeding up the clock and changing some internal details to account for this change. In the end, it worked out!

Furthermore, I planned out the joypad integration into the Gameboi. I read the docs and made a module where we can just plug in the controller’s signals to make it work.

After getting the FPGA working with the whole system, we were able to run the PPU stress test on the board and all the other instruction tests we ran before, with the same results as simulation. I am excited to say that we also got Tetris and Doctor Mario running. Tetris didn’t seem to have any bugs and Doctor Mario was suffering from some timer issues, which I think we have diagnosed.

This week we’ll get memory banking working so that we can run all of our stretch goal games. Furthermore, we’ll also squash any bugs that remain. Our goal is to have the Gameboy working without game switching by the end of the week. We are also looking into an audio module that looks promising, it is built for our FPGA so it’s worth a shot!

Leave a Reply

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