GBAConsolizer Firmware Update

June 6th 2020

Firmware v1.1.1, Play it Loud!

+Fixes DVI+ audio glitches kindly pointed out to me by Henry Hughes (Twitter @random_hughesw). Better use of the DVI+ audio range giving the output a nice audio boost as well as quality improvement.

This update brings a rather significant improvement to the way the Consolizer converts the GBA’s PWM digital audio to 16-bit LPCM digital audio. In past Consolizer firmwares, PWM width was measured by sampling it with a high frequency clock which was asynchronous to the PWM signal. At first this seemed to provide good results, however going from firmware v1.0.2 to v1.1.0 increased the GB/GBC audio levels and amplified an existing audio error to the point where it was clearly noticeable. Firmware v1.1.1 changes the way the Consolizer generates the clock signal for the GBA and in doing so allows the Consolizer to synchronously and exactly convert the PWM audio data to LPCM with zero phase error and in turn zero amplitude error. In practice this fixes the humming noise that can be heard in older firmwares when the GBA is supposed to be muted and it also fixes audio clipping in certain GBC games that exhibited clipping with firmware v1.1.0.

As always, feedback is welcome and helps improve the Consolizer.

Firmware v1.1.1(beta) 6/6/2020 1:59PM

May 30th 2020

GBA Consolizer firmware v1.1.0(beta) is available now! This is a public test and we need user feedback to help catch any remaining bugs. Updating the Consolizer requires a JTAG programming cable and as such, it is a rather advanced process. Details on how to program Xilinx FPGAs with a flash chip (Winbond W25X40BV) using JTAG won’t be provided as a lot can go wrong for novice users and is best left to someone with prior experience. That being said, if you need to send your kit to someone to perform the update for you it might be a good idea to wait and see what the user feedback is in case there are some remaining small bug fixes. Kits will be still be shipping with firmware v1.0.2 until v1.1.0 has undergone a month or so of public testing.

Writing firmware v1.1.0 has been a long process as it involved an almost entire rewrite of the Consolizer code to optimize timing, FPGA usage, and power. Aside from small bug fixes this will likely be the last firmware released for the GBA Consolizer. The changes are detailed below.

+DVI+ compatibility improvements.
+60hz/59.7Hz modes. Runs GBA at stock clock frequency, useful for speedrunning.
+Speedrunning features: enable button input display. Input display changes color based on whether the Consolizer is in 60hz or 59.7Hz mode. Helpful to prevent speedrun cheating through use of 60hz mode.
+Digital audio range bug fix.
+GB/GBC audio level adjustment.
+Fixed bug where game audio sample rate caused an overflow/clipping in the DVI+ audio output (Alien Hominid, Konami Krazy Racers).
+Improved menu responsiveness.
+Rewrite of Shader function to better follow Xilinx DSP guidelines (UG389, pg 27).
+Updated Shader function with latest work by Pokefan531.
+Extra gamma options, increased bit depth on 2nd gamma stage.
+Added more GB palettes.
+Workaround for GB/GBC Everdrive to fix palette swap function.
+Added mask to prevent palette from being incorrectly applied to GB non-picture area.
+Fixed bug where if 8bitdo retro receiver was hot swapped it would reset the game, hot swapping still not recommended.
+Fixes towards bug where a black screen would occasionally occur.
Color wizard removed.
Audio low-pass filter removed.

*If using the CH341A programmer: Type=25 SPI FLASH, Manu=Winbond, Name=W25Q40.

Screenshots of the new menu

Positive SSL