Accomplished:
- Debugged FPGA implementation with teammates
- Tetris is playable, but glitchy
- Runs at double speed.
- Sometimes joypad inputs aren’t processed.
- Dr. Mario doesn’t toss the pill.
Next Step:
- Continue debugging Tetris and Dr. Mario on hardware
Other Notes or Concerns:
- We found that recompiling will sometimes give us different results.
- Debugging is really difficult, even with signal tap, often coming down to guessing and seeing if it works.
Tools/knowledge:
The major thing I had to learn was the Gameboy specification. Although there are some online resources, such as YouTube videos, fan-made documentation, Discord chats, Reddit posts, and software emulators, they are often incomplete or give false information. I had to cross-reference many of these sources to get the full picture. Discord was particularly helpful when learning how to get Verilog to read a .gb file.
Tool-wise, I had to learned how to set up very user-friendly scripts to simulate using free software called Modelsim, which is much more convenient and has more debugging tools than VCS.