Expected behavior: Pokemon Pinball (GBC) has 8KiB of SRAM, so mGBA should use 8KiB for SRAM and create 8KiB .sav files. Saves store high scores, quick saves, Pokedex entries, and custom key configs. It should also be possible to import a save file from a cart or another emulator.
When the game is run - SRAM is correctly resized to 8 KiB
On the 4th-ish frame - SRAM is resized to 24KiB
When the title screen is shown - SRAM is resized to 32KiB
If the Red table is played - SRAM is resized to 48KiB
If the game is reset - Quick save data persists, custom key configs do not
If a 8 KiB .sav is imported from a cart or bgb - No save data is loaded
Tips for reproducing:
Once in a game, you can quick save on the Start menu. If quick save data is present and is working, you'll see a "New game/Continue" menu when starting a game.
Custom key configs are set in the options. By default all actions have one binding, so an easy way to test if the data is being preserved across resets is to bind two keys to an action.