Since there is no dedicated thread about the U1MB plugin development, I started a new one.
There is a nice introduction into this topic here:
I understood that the plugin binary compatibility between the versions 1.25 and 2.00 of the U1MB firmware will be broken.
Unfortunately Jon was continuously updating the documentation on his web page, so the current version does not match the (still official) 1.25 release anymore. The 2.00RC firmware distributed to volontiers was only a binary.
I understand that version 2.00 will be released soon (together with updated docs and example plugin source code).
Until then the only way to play around with plugin development is to use version 1.25.
And so I did:
I have modified the HardwareSetup section:
.local HardwareSetup lda #$00 sta $D500 rts .endl
compiled it and tested in Altirra only (since I already have the 2.00RC in my real U1MB).
It works as supposed. On every reset the memory bank containing a menu on the multicarts: Atarimax 1mb / 8mb, SIC, etc. is selected.
Since those carts do not have a reset button, you would need to power off the Atari to start a new game.
Now you just press RESET and voila the cart menu is displayed
In the next setp I wanted to make it configurable: to enable/disable this feature over U1MB menu.
I looked at the source code and I'm confused:
PluginMenu .local StereoToggle @ dta Item (1,CovoxToggle,Title,ItemType.OnOff,StereoPokey,Help,Cfg.Aux,$01) Title .byte 'Stereo Pokey',0 Help .byte 'Enable/disable stereo audio',0 .endl .local CovoxToggle @ dta Item (1,Device3Toggle,Title,ItemType.OnOff,CovoxFlag,Help,Cfg.Aux,$02) Title .byte 'Covox',0 Help .byte 'Enable/disable Covox',0 .endl
Menu item for Stereo uses CovoxToggle and menu item for Covox uses Device3Toggle ?