Tamalib has been heavily changed to accommodate G&W needs.
A "fast forward" option has been added to emulate "always on" mode.
The emulator is currently running about 300x speed while fast forwarding.
Save & load of emulator state also works.
Max age for save states are 48 hours. The emulator will ignore fast forward if state is older and just continue from where it left off.
Max volume is 25% as a 100% square wave at even lowest volume setting is way too loud.
It also supports start_paused handling.
Reload of a tama state will now re-initialize the entire emulator which eases the implementation. This is a deviation from other emulators but my hope is that it makes the code more clear and concise.
Bumped all clock counters to 64 bit to avoid wrapping around every 1.5 days.
Button handling is: any d-pad = left button, B is middle button and A is right button.
In-game icons are taken from tamatool and scaled for G&W use.
I have addedd a simple instruction decoding cache using a 4k 'map' to tamalib to increase performance from a 2456 fps base to about 8150 fps (with no gui, and no sound etc.)
lcd_clear_active_buffer & lcd_clear_inactive_buffer how returns the cleared buffer
* draw_darken_rounded_rectangle initial commit
* image drawing routines
* mostly working static overlay
* use 24x24 instead of 32x32 images, slightly tweak some layout
* complete volume and brightness overlays
* save/load overlay
* png icons and tool to convert them to bit arrays
* add speedup overlay icons
* install common_ingame_overlay hook to all emulators
* explicitly invoke ingame overlay when saving so that the icon shows up before the pause
* make transparency look a little better on dark backgrounds
* tweak bars offset
* have pce use lcd_get_active_framebuffer
* shift sun 1 pixel to the right; even though it's just as off-centered, it looks better