Today I've finally completed integrating all the modules inside the new architecture. This new architecture has a lot of advantages over the previous one, to name a few:
- The code is much easier to mantain now (it involves many less modifications to the original BennuGD source).
- The interpreter (bgdi) can now be compiled without the modules you don't need, so it can be a lot smaller.
- Up to where the endianess issues in BennuGD allow us, the DCBs generated with this new version are completely compatible with the official standard version.
- This new version includes all the modules from the official Bennu version (minus mod_crypt).
- Modules only get loaded when you import them (they were always loaded, which meant more unused RAM in a system without resources to waste).
- Me messing around less with the code means a much more stable version.
- This new architecture is much more friendly to others creating monolithic ports for other platforms.
And here is where I wanted to arrive; in some quick tests, this new version is extremely more stable: it fixes random crashes and misbehaviours of the previous versions whose origin I couldn't trace. Please understand that this new version has been completely rewritten in under a week -so there are still some bugs- but when bugs get fixed, this new version should be as solid as upstream BennuGD.
I'll comment on some particular examples; take a look at the screenshot below:
Worked great until my Wiimote ran out of battery :'(
Also, speaking of better mantainability: I've been working with Daniel Franzini and we're now hosting a common code repository for both the Wii port and the PSP port (the new architecture is awesome :).
You can find the new code here, and this new repository superseeds the older one.
There are no released binaries yet because mod_wpad has not yet been integrated, but I'll probably dump the old code and start using Grisendo's mod_wpad, which is much more complete.
Anyway, don't take my word, as soon as I upload the new binaries, download & start using them, you'll see how much better they work compared to the previous version.
Hope you find the news interesting :)