Changes since 0.31:
Controller Improvements & Rumble Support
This release focuses on Controller Support & Improvements.
Please replace your old config.xml file when upgrading to this release.
* [Controllers] Basic rumble support can now be enabled from the CONTROLS
menu. The strength can be adjusted. The code that controls the rumble is
identical to that of the upright arcade machine motor shaker. The option
will only show in the menu if your controller is supported.
* [Controllers] Auto-detection and assignment of controller buttons and axis
should be much improved. I will update the manual to call out the default
controls in due course. (Right trigger = accelerate, Left trigger = brake,
Start = Start, Back = Menu, A = Gear Change, X = Change View, Y = Coin).
These can be redefined as desired.
* [Controllers] D-Pad can be used in menus.
* [Menus] Gamepad/Joystick settings has its own menu.
* [Menus] Ensure that 'A' button on controllers can be used to select items.
Analog accelerate is now only used when run via original arcade cabs as
it's not optimal.
* [Rom Loader] Sped up CRC32 based loading by using a Hashmap. It was
reportedly slow when used over a network.
* [Rom Loader] It is possible to switch back to the old filename loading
system via a setting in config.xml
* [Config] It is now possible to change and configure the location of the
'res' directory.
Changes since 0.3.2019102:
Maintenance Release
This release focuses on upgrading the libraries and compilation tools CannonBall
uses, as I hadn't maintained the codebase in a number of years. Most of these
changes will be invisible to most users. Right now, I'm trying to get the house
in order as opposed to add lots of wild new features! :)
* [audio] Audio updates at the correct rate and resolves the longstanding
issue with music and sound being very slightly 'off'
* [roms] ROMs are now read by CRC 32 value. Filenames no longer matter - so
long as they are present they can be renamed to anything.
* [roms] Fixed expected Z80 rom file length
* [controls] Start Button behaviour less 'sticky' and buggy
* [controls] Analog axis for accelerate and brake can now be configured via
the in-built menu system
* [menu] Reduced delay when scrolling through menu with analog controls
* [config] ROMs and save data can be relocated to separate locations
* [bug fix] Time Trial mode no longer crashes if used as the first mode played
* [timing] Code tries to use V-Sync for timing OR internal timing, as opposed
to both at once
* [source] SDL 2 used by default. SDL 1 removed from codebase. This appears to
have fixed compatibility bugs for some people
* [source] Added compatibility for upcoming SmartyPi hardware (Pi 4 based) to
run on original arcade hardware
* [source] A general clean-up in many areas