struct {
u32 swissMagic, -- something to make it obvious when we're passed this.
void* readDevice, -- optional
void* writeDevice, -- optional
void* screenData, -- ptr to screen dump, more info can be pulled from viRegs perhaps or stored somewhere
void* reservedAreaBase -- ptr to all our in-game stuff
} swissGlue
Add it as an optional arg to argv, when found, Swiss can skip traditional init and work in a bare-bones mode more akin to an in-game menu of sorts. This could be a separately built version of Swiss or just a separate code path invoked via IGR, it'd have a menu to:
Current Temperature
Game Info (time played this session, time played total) (relies on writable device)
Return to game (relies on a writeable device being present so we could've dumped things Swiss would've overwritten before it invoked itself)
Dump screenshot
Save State
Load State
This would all be much easier on something like the Wii though where we'd just use spare MEM2 to move/mirror the state in.
Describe the feature
Create a struct, something like:
Add it as an optional arg to argv, when found, Swiss can skip traditional init and work in a bare-bones mode more akin to an in-game menu of sorts. This could be a separately built version of Swiss or just a separate code path invoked via IGR, it'd have a menu to:
This would all be much easier on something like the Wii though where we'd just use spare MEM2 to move/mirror the state in.
Add screenshots
No response