mirror of
https://github.com/afska/gba-link-connection.git
synced 2026-09-30 12:57:23 -05:00
Moving notes to main hpp
This commit is contained in:
@@ -35,21 +35,4 @@ _LINK_SERIAL_ISR void LinkWireless::processMessage(u32 playerId,
|
||||
playerBitMapCount);
|
||||
}
|
||||
|
||||
/**
|
||||
* NOTES:
|
||||
* When using `LINK_WIRELESS_ENABLE_NESTED_IRQ`:
|
||||
* - Any user ISR can interrupt the library ISRs.
|
||||
* * The SERIAL ISR only enables nested interrupts after completing the
|
||||
* acknowledge with the Wireless Adapter.
|
||||
* - SERIAL ISR can interrupt TIMER ISR.
|
||||
* -> This doesn't cause data races since TIMER ISR only works when
|
||||
* there is no active async task.
|
||||
* -> When TIMER ISR starts an async task (`transferAsync(...)`),
|
||||
* nested interrupts are disabled (`REG_IME = 0`) and SERIAL cannot
|
||||
* interrupt anymore.
|
||||
* - TIMER interrupts are skipped if SERIAL ISR is running.
|
||||
* - VBLANK interrupts are postponed if SERIAL or TIMER ISRs are running.
|
||||
* - Nobody can interrupt VBLANK ISR.
|
||||
*/
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user