The register write queue that VBlank carries out after each finished frame. More...
Go to the source code of this file.
Macros | |
| #define | IO_QUEUE_DEFINE_WRITE(name, control) |
| The queued register writers: each adds a write of value to address that the VBlank handler carries out once the frame loop has finished the frame. | |
Typedefs | |
| typedef void(*) | QueueFlushRoutine(struct IoWriteQueue *queue, u32 count) |
Functions | |
| void | IoWriteQueue_Store8 (u32 address, u32 value) |
| Queues a byte store. | |
| void | IoWriteQueue_Store16 (u32 address, u32 value) |
| Queues a halfword store. | |
| void | IoWriteQueue_Store32 (u32 address, u32 value) |
| Queues a word store. | |
| void | IoWriteQueue_SetBits8 (u32 address, u32 value) |
| Queues setting a byte register's bits. | |
| void | IoWriteQueue_SetBits16 (u32 address, u32 value) |
| Queues setting a halfword register's bits. | |
| void | IoWriteQueue_SetBits32 (u32 address, u32 value) |
| Queues setting a word register's bits. | |
| void | IoWriteQueue_ClearBits8 (u32 address, u32 value) |
| Queues clearing a byte register's bits. | |
| void | IoWriteQueue_ClearBits16 (u32 address, u32 value) |
| Queues clearing a halfword register's bits. | |
| void | IoWriteQueue_ClearBits32 (u32 address, u32 value) |
| Queues clearing a word register's bits. | |
| void | IoWriteQueue_FlushPending (void) |
| Runs the queued register writes and empties the queue, with a copy of the executor routine on the stack. | |
The register write queue that VBlank carries out after each finished frame.
Part of runtime.c, the runtime object, compiled only through it.
Definition in file io_queue.c.
| #define IO_QUEUE_DEFINE_WRITE | ( | name, | |
| control ) |
The queued register writers: each adds a write of value to address that the VBlank handler carries out once the frame loop has finished the frame.
The control word gives the width and whether the value is stored, ORed in or cleared.
Definition at line 13 of file io_queue.c.
Referenced by IoWriteQueue_ClearBits16(), IoWriteQueue_ClearBits32(), IoWriteQueue_ClearBits8(), IoWriteQueue_SetBits16(), IoWriteQueue_SetBits32(), IoWriteQueue_SetBits8(), IoWriteQueue_Store16(), IoWriteQueue_Store32(), and IoWriteQueue_Store8().
| typedef void(*) QueueFlushRoutine(struct IoWriteQueue *queue, u32 count) |
Definition at line 7 of file io_queue.c.
Queues a halfword store.
Definition at line 21 of file io_queue.c.
Referenced by BattleFx_HideBg1AndRestoreBackdrop(), BattleFx_PlayUnitElementEffect(), BattlePres_RunEntryTransition(), BattlePres_SetActorModes(), IoWriteQueue_Store16(), Menu_RunCommandRow(), VaultCave_RunRumble(), and WorldMap_UpdateTransitionBlend().
Queues a word store.
Definition at line 23 of file io_queue.c.
Referenced by HeatGauge_Draw(), and IoWriteQueue_Store32().
Queues setting a byte register's bits.
Definition at line 25 of file io_queue.c.
Referenced by IoWriteQueue_SetBits8().
Queues setting a halfword register's bits.
Definition at line 27 of file io_queue.c.
Referenced by BattleEvent_Playback(), BattlePres_RunEntryTransition(), BattlePresentation_WaitForAdvance(), BattlePresentation_WaitForPromptAt(), and IoWriteQueue_SetBits16().
Queues setting a word register's bits.
Definition at line 29 of file io_queue.c.
Referenced by IoWriteQueue_SetBits32().
Queues clearing a byte register's bits.
Definition at line 31 of file io_queue.c.
Referenced by IoWriteQueue_ClearBits8().
Queues clearing a halfword register's bits.
Definition at line 33 of file io_queue.c.
Referenced by BattleEvent_Playback(), BattlePres_RunEntryTransition(), BattlePresentation_WaitForAdvance(), BattlePresentation_WaitForPromptAt(), and IoWriteQueue_ClearBits16().
Queues clearing a word register's bits.
Definition at line 35 of file io_queue.c.
Referenced by IoWriteQueue_ClearBits32().
| void IoWriteQueue_FlushPending | ( | void | ) |
Runs the queued register writes and empties the queue, with a copy of the executor routine on the stack.
Called by System_VBlankHandler once the frame loop has finished a frame.
Definition at line 40 of file io_queue.c.
Referenced by IoWriteQueue_FlushPending(), System_GetLanguage(), and System_VBlankHandler().