Lephenixnoir
dc7519fe3e
This was using screens[1] which I had deallocated when fixing the status bar (I incorrectly assumed it was used only for that). While the CGDOOM technique to share screens[1] to avoid allocating the 320x20 buffer for the status bar makes clear sense with that new information, I think I'll keep this 6.4 kB buffer there and rather search for ways to use more memory zones.
33 lines
1.3 KiB
Plaintext
33 lines
1.3 KiB
Plaintext
This repository is a fork of CGDOOM which was ported originally by MPoupe.
|
|
|
|
Credit goes to:
|
|
* MPoupe for the original fx-CG 10/20 port of DOOM.
|
|
* ComputerNerd for attempts at an fx-CG 50 port, which this repository is
|
|
based on.
|
|
* Lephenixnoir for the final fixes and fx-CG 50 version.
|
|
|
|
TODO:
|
|
-> Fix screen not cleared when changing resolution, add larger resolutions
|
|
-> Try and support more WADs
|
|
-> Reenable LTO if possible
|
|
-> Try and use more memory regions in z_zone.c
|
|
-> Overclocking etc.
|
|
|
|
CGDOOM used to be compiled with the mini-SDK. However, it's become quite
|
|
difficult to get a copy of that. Instead, this port is built with a slightly
|
|
modified PrizmSDK from Jonimoose/libfxcg.
|
|
|
|
The differences are (I might push it later):
|
|
* TOOLCHAIN_PREFIX=sh-elf- (in libc/ and libfxcg/)
|
|
* Syscall 0x1B0B, getSecondaryVramAddress() is added in libfxcg/
|
|
* abort() is removed from libc/ (CGDOOM has its own)
|
|
* calloc() defined in libc/ (just a call to sys_calloc)
|
|
* sys_calloc() fixed in libfxcg/ to use memset (memsetZero is broken)
|
|
* Linker script outputs in elf32-sh format
|
|
* Linker script sets 500k of RAM instead of 64k
|
|
* LTO disabled (hopefully it could be reenabled later)
|
|
* Syscall memcpy() (apparently broken) replaced by fxlibc memcpy()
|
|
* fxlibc qsort() is added in libc/
|
|
|
|
[1] https://github.com/Jonimoose/libfxcg/
|