gint/TODO

38 lines
1.5 KiB
Text

Bugs to fix:
- A few key hits ignored after leaving the application (could not reproduce)
- Lost keyboard control at startup (could not reproduce)
- Influence of keyboard on some timers and RTC (maybe interrupt priority)
- Alignment of ALL .data / .rodata files is required to ensure converted data
is properly aligned
Simple improvements:
- demo: Try 284x124 at (-60, -28) (all disadvantages)
- display: Rectangle-based drawing functions
- time: Compute CLOCKS_PER_SEC
- core: Add VBR handlers debugging information (if possible)
- events: Introduce KeyRepeat events
- library: Implement C99's inttypes.h for Cake's UpdateExe
- string: Use cmp/str to implement memchr() (assembler examples)
- string: Do some tests for memcmp()
Larger improvements:
- errno: Introduce errno and use it more or less everywhere
- bopti: Monochrome bitmaps blending modes
- bopti: Handle partial transparency
- core: Implement all callbacks and a complete user API
Other whole modules:
- Serial communication through 3-pin
- USB communication
- Sound playback and synthesizing (if possible)
- Overclock (relaunch clocks when overclocking)
Things to investigate:
- Packed bit fields alignment
- Registers that may need to be saved within setjmp()
- Registers that may need to be saved and restored by gint
- Possible bug when optimizing __attribute__((interrupt_handler))
Configuration:
- ATEXIT_MAX (16)
- RTC_CB_ARRAY_SIZE (5)
- EVENTS_QUEUE_SIZE (64)
- GINT_NO_SYSCALLS (undefined)