Hi Folks! 😎
It has been a long time since the last update and at the edge of this New Year I would like to share with you the recent progresses made on my customized F3D ucode.
1. 80 bytes of DMEM further saved.
2. Management of the overlays by the microcode has been changed.
3. Implementation of a RDP displaylist command. You simply don't process the RDP commands one by one in the RSP but you simply retrieve them from RDRAM and ship them directly to the RDP.
4. Implementation of a “conditional” RDP display list command, based on the fact that triangles will indeed been display on the screen.
5. Successful implementation to a triangle strip command. Such a command can generate numerous triangles (more than 100 triangles is possible) and thus in the appropriate order (in this respect please read https://en.wikipedia.org/wiki/Triangle_strip). I have also implemented with this triangle strip command a restart primitive feature and the possibility to trigger RDP display list commands in the middle of the execution of triangles generation.
6. I removed for the time being the precised clip ratio macro, till it can be further investigated and where necessary debugged.
What about the future?
I will work next year hopefully on the following points:
1. nusys compatibility: I noticed that ALL homebrew using the original N64 SDK uses nusys so I really need to ensure that the microcode is compatible with it.
2. Remove the necessity to block CPU yielding for some commands.
3. Run tests to find the appropriate the balance between the vertex buffer and the RDP buffer in DMEM
4. Point lighting
And likely much more!
I will open a new beta session when 1. and 2. will be done. Testers are welcome!
Wishing you all a happy new year 2024!😀
See ya!
PS: please feel free also to check the incredible developments of F3DEX3 microcode and of the Libdragon SDK. N64 homebrews are about to become fantastic in the coming years!
https://github.com/HackerN64/F3DEX3
https://github.com/DragonMinded/libdragon