diff --git a/firmware/basic/keyin.c b/firmware/basic/keyin.c index 5083e80..b0d6964 100644 --- a/firmware/basic/keyin.c +++ b/firmware/basic/keyin.c @@ -19,13 +19,10 @@ uint8_t getInput(void) { result += BTN_ENTER; } - if(IOCON_PIO0_1 & 1 == 1){ - ; // disable left - }else - if (gpioGetValue(RB_BTN0)==0) { - while(gpioGetValue(RB_BTN0)==0); - result += BTN_LEFT; - } + if (gpioGetValue(RB_BTN0)==0) { + while(gpioGetValue(RB_BTN0)==0); + result += BTN_LEFT; + } if (gpioGetValue(RB_BTN1)==0) { while(gpioGetValue(RB_BTN1)==0); diff --git a/firmware/usb/usbmsc.c b/firmware/usb/usbmsc.c index fdb7a4c..acc93c2 100644 --- a/firmware/usb/usbmsc.c +++ b/firmware/usb/usbmsc.c @@ -42,8 +42,9 @@ void usbMSCInit(void) { SCB_USBCLKSEL = SCB_USBCLKSEL_SOURCE_USBPLLOUT; // Set USB pin functions - IOCON_PIO0_1 &= ~IOCON_PIO0_1_FUNC_MASK; - IOCON_PIO0_1 |= IOCON_PIO0_1_FUNC_CLKOUT; // CLK OUT + // bsx says, its only needed for usb-hid. And it conflicts with btn_0 +// IOCON_PIO0_1 &= ~IOCON_PIO0_1_FUNC_MASK; +// IOCON_PIO0_1 |= IOCON_PIO0_1_FUNC_CLKOUT; // CLK OUT IOCON_PIO0_3 &= ~IOCON_PIO0_3_FUNC_MASK; IOCON_PIO0_3 |= IOCON_PIO0_3_FUNC_USB_VBUS; // VBus IOCON_PIO0_6 &= ~IOCON_PIO0_6_FUNC_MASK; @@ -91,3 +92,7 @@ void USB_IRQHandler() { } #endif +void usbMSCOff(void) { + (*rom)->pUSBD->connect(false); /* USB Disconnect */ +} + diff --git a/firmware/usb/usbmsc.h b/firmware/usb/usbmsc.h index 20c2929..84e7bdc 100644 --- a/firmware/usb/usbmsc.h +++ b/firmware/usb/usbmsc.h @@ -42,5 +42,6 @@ void usbMSCWrite(uint32_t offset, uint8_t src[], uint32_t length); void usbMSCRead(uint32_t offset, uint8_t dst[], uint32_t length); void usbMSCInit(void); +void usbMSCOff(void); #endif