gint/TODO
Lephe 4ad2110efc
core: accept large add-ins and setup TLB management (UNSTABLE)
This change modifies the fx-CG 50 linker script to allow add-ins up to
2M and no longer complains about add-ins that don't fit in the TLB.

It also exposes the __TLB_LoadPTEH() syscall (%003 on fx9860g, %00c on
fxcg50) that answers TLB misses. This syscall can be called manually
from an add-in to load some pages and seems to work without problem.

However, this version does not provide any automatic TLB management,
some key areas of the kernel are still under TLB and some user code
(such as timer callbacks) is not! This version is suitable only for
add-ins smaller than 220k!
2020-06-14 11:01:27 +02:00

44 lines
1.9 KiB
Text

For the 2.1.0 release:
* core: use gint_switch() to handle TLB misses
* core: the four basic memory functions (with automated tests)
* bopti: remove the deprecated image_t definition
* project: remove the compat branch
* gray: remove g*() functions
* core: remove the boot log
Issues:
* #3 make drawing functions parameterized
* #8 support fx-CG Manager
* #10 support fx-CG 20
Extensions on existing code:
* gray: add gprint()
* gray: double-buffer gray settings and unify d* with g*
* topti: support unicode fonts
* gray: find good values for more models than the Graph 35+E II
* dma: fx9860g support (need to switch it on and update the Makefile)
* core: try to leave add-in without reset in case of panic
* hardware: fill in the HWMEM_FITTLB flag
* keyboard: think of extended functions
* cpg: spread spectrum on fxcg50
* display: use more of topti's assembler in drect()
* core: use cmp/str for memchr()
* r61524: brightness control and clean the file
* t6k11: check if dupdate() can be done by the DMA
* core: review forgotten globals and MPU addresses not in <gint/mpu/*.h>
* build: make the build system simpler (two targets are enough by default)
* core: run destructors when a task-switch results in leaving the app
* core: invoke main menu instead of returning after main() ends
* prizm: don't hardcode stack address in fxcg50.ld (if possible)
* prizm: detect P1 static RAM (stack) in TLB
* core rtc: use qdiv10 to massively improve division performance
* core: document the SH7305 PFC in <gint/mpu/pfc.h>
Future directions.
* A complete file system abstraction
* Integrate overclock management
* Audio playback using TSWilliamson's libsnd method
* Serial communication
* USB communication, using Yatis' reverse-engineering of the module
* Make fx9860g projects work out of the box on fxcg50
* Use the DSP to enhance parallel computation