During my semester break, I worked on VBA2.
Â
I now understand the ARM core reasonably and I started rewriting the complete graphical subsystem.
Â
I can already process VRAM data and the video registers to produce bitmaps of (character mode) BG layers. (See screenshot)
Â
Instead of rendering only a single line, I process the whole BGs at once, so that should give some nice speed boosts.
Â
Â
I plan to let this new C++ class for managing the GBA's graphical subsystem produce 128x128 ... 1024x1024 bitmap planes, which a hardware accelerated OpenGL renderer will further process with special effects like scaling, rendering, color manipulation and of course combining, clipping & rendering it all to the screen. Maybe this will also look better in higher resolutions. With a few hacking it might even be possible to get real widescreen support on some games.
Sprites are also perfect work for OpenGL instead of a software renderer.
Â
If you want to help me and have a good knowledge of OpenGL, don't hesitate to contact me. I will do the preprocess work and you do the rendering.
Â
Â
You can always find the latest source code at http://code.google.com/p/gbxemu/