-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathxboo-backdoor.h
More file actions
30 lines (22 loc) · 858 Bytes
/
xboo-backdoor.h
File metadata and controls
30 lines (22 loc) · 858 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#ifndef __XBOO_BACKDOOR
#define __XBOO_BACKDOOR
#ifdef __cplusplus
extern "C" {
#endif
// Set up GBA SIO into the correct modes, optionally enabling Serial Interrupts and the ISR.
void xboo_backdoor_init(bool enable_sio_irq, bool set_isr_ptr);
// Can act as a drop-in SIO IRQ handler, returns if not a valid Xboo request.
void xboo_backdoor_sio_irq_handler();
// Runs in an IRQ handler, checking if SIODATA32 contains BRST, returning if not.
void xboo_backdoor_check_siodata32(bool set_start_bit);
// Busy-waits for an Xboo Burst Boot Backdoor request.
//
// Will not return.
void _xboo_backdoor_listen();
// Call this if you just received a "BRST" packet _and_ also replied to it with "BOOT",
// skipping right to length transfer (but only on first attempt).
void _xboo_backdoor_skip_brst();
#ifdef __cplusplus
}
#endif
#endif /* __XBOO_BACKDOOR */