Previous journal: | Next journal: |
---|---|
0070-2023-04-30.md | 0072-2023-05-02.md |
- Fixed the wall edge tracing glitch, yay!
- Also seems to improve the FPGA memory glitch (though there are still timing errors)
- Q16.16 is working well
- Also got other parametric Qm.n options to work. Q11.9 seems to work, for instance.
- Pictures needed:
- FPGA setup
- FPGA glitching - anim gif?
- Wall edge glitch before and after
- New bug discovered: If player is perfectly on a grid boundary (i.e. fractional part is 0)
then something seems to go wrong with working out the map grid cells (at least for those
on the right side of the viewplane)...?
- Maybe saturation test in DDA will fix this.
- Need to verify this same bug exists prior to all the Q16.16 changes -- Cherry-pick the wall edge glitch fix?
- Implement simulation inspection of some signals, esp. player data.
- Fix FPGA player position reset. Why does it (seemingly) go to (0,0)?
- Implement rotation, even if done externally on frame start, for now -- clock domains!
- Try mouse integration via Verilator/SDL. Will this work with VirtualBox?
- Optimise tracer state machine
- Fix full screen width: Either hardcoded 640-division or just 1024-division with range limit.
- Trace buffer ring memory
- Different wall type IDs (just 2-bit colour for now)
- Further investigate FPGA timing
- Textures
- Sprites
- Doors
- Collisions
- Make chip able to be configured to support higher (or lower) resolutions:
- 640x480-based: 512x480, 512x400, 512x384, 320x480, 320x240, or 320x200.
- 800x600-based: 800x600, 400x600, 400x300
- 1024x768 max
- NOTE: A higher resolution is still useful even without a wider trace buffer, because it gets better sync/quality on native resolution displays.
- Faster parallel processing: Could simply double/interleave multiple tracers? Alternatively, have mirrored tracers (do pos/neg viewplane rays simultaneously).
- EDA Playground: https://edaplayground.com/x/AuPw
- Good TBs, deep signals
- WaveTrace VSCode extension
- 640x15 (9,600 bits): DFF shift RAM, or OpenRAM, or reram?
- Watch OpenRAM video: https://www.youtube.com/watch?v=hUh-z4E542o