diff --git a/include/arm11/hardware/hid.h b/include/arm11/hardware/hid.h index 4b3b963..e09f377 100644 --- a/include/arm11/hardware/hid.h +++ b/include/arm11/hardware/hid.h @@ -51,6 +51,7 @@ void hidInit(void); u32 hidGetPowerButton(bool resetState); u32 hidGetWifiButton(bool resetState); +bool hidIsHomeButtonHeldRaw(void); void hidScanInput(void); u32 hidKeysHeld(void); u32 hidKeysDown(void); diff --git a/source/arm11/hardware/hid.c b/source/arm11/hardware/hid.c index 406a28f..2e28457 100644 --- a/source/arm11/hardware/hid.c +++ b/source/arm11/hardware/hid.c @@ -77,6 +77,13 @@ return tmp>>2; } +bool hidIsHomeButtonHeldRaw(void) +{ + u8 buf[19]; + if(!I2C_readRegBuf(I2C_DEV_MCU, 0x7F, buf, 19)) return false; + return !(buf[18] & 1u<<1); +} + void hidScanInput(void) { u32 kOld = kHeld;