void GBAHardwareClear(struct GBACartridgeHardware* hw) { hw->devices = HW_NONE | (hw->devices & HW_GB_PLAYER_DETECTION); hw->direction = GPIO_WRITE_ONLY; hw->pinState = 0; hw->direction = 0; if (hw->p->sio.drivers.normal == &hw->gbpDriver.d) { GBASIOSetDriver(&hw->p->sio, 0, SIO_NORMAL_32); } }
void GBASIOSetDriverSet(struct GBASIO* sio, struct GBASIODriverSet* drivers) { GBASIOSetDriver(sio, drivers->normal, SIO_NORMAL_8); GBASIOSetDriver(sio, drivers->multiplayer, SIO_MULTI); GBASIOSetDriver(sio, drivers->joybus, SIO_JOYBUS); }