|author||Franklin Wei <email@example.com>||2019-07-28 14:06:45 -0400|
|committer||Franklin Wei <firstname.lastname@example.org>||2019-07-28 14:06:45 -0400|
quake: add README with some notes
Diffstat (limited to 'apps/plugins/sdl/progs')
1 files changed, 42 insertions, 0 deletions
diff --git a/apps/plugins/sdl/progs/quake/README.rockbox b/apps/plugins/sdl/progs/quake/README.rockbox
new file mode 100644
@@ -0,0 +1,42 @@
+These are my port notes for Quake. This runs, of course, on our SDL
+port. See <https://www.rockbox.org/wiki/SdlPort> for more.
+This port stems from SDLQuake
+(https://www.libsdl.org/projects/quake/), which was built on top of id
+Software's source release.
+How is <X> done?
+Custom settings: This is implemented through a modification to
+Cmd_Exec_f and Key_Bind_f, in cmd.c and keys.c.
+Sound mixing: There is a handwritten assembly sound mixing routine in
+snd_mix_arm.S, using the ARMv5 DSP extensions for saturating
+addition. Disable that if you run into sound issues.
+File caching: There is an automatic caching layer in sys_sdl.c which
+loads files over 1 MB into memory. Quake only uses about 8 MB of heap
+when running, so there's plenty of space for this on some targets
+Setting the sample rate to 44.1 KHz leads to all sorts of weird
+crashes, which stem (probably) from the same underlying memory
+corruption issue. Only thing is, it seems to occur only on hardware so
+it's a huge pain to debug.
+D_DrawZSpans, D_DrawSpans8, and Turbulent8 (in d_scan.c) should be
+fairly straightforward to write in assembly and are big time
+hogs. Make them fast!