path: root/apps/plugins/sdl/progs
diff options
authorFranklin Wei <>2019-07-28 14:06:45 -0400
committerFranklin Wei <>2019-07-28 14:06:45 -0400
commit090bdedc62c7f35cbbe5cc5afb21836c3dc66101 (patch)
treeb21028745676d6793e80c4c78bb918aa1aac497f /apps/plugins/sdl/progs
parent711ddfdaad18cee054213bcba4428ac3c6014774 (diff)
quake: add README with some notes
Change-Id: I702e81f8715b505d4ed6d0eca861e3ddb680038d
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
index 0000000000..9e302f2898
--- /dev/null
+++ b/apps/plugins/sdl/progs/quake/README.rockbox
@@ -0,0 +1,42 @@
+These are my port notes for Quake. This runs, of course, on our SDL
+port. See <> for more.
+Port Lineage
+This port stems from SDLQuake
+(, 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
+(e.g. ipods).
+Known bugs
+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.
+Optimization targets
+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!