summaryrefslogtreecommitdiff
path: root/apps/plugins
diff options
context:
space:
mode:
authorFranklin Wei <franklin@rockbox.org>2019-07-28 14:06:45 -0400
committerFranklin Wei <franklin@rockbox.org>2019-07-28 14:06:45 -0400
commit090bdedc62c7f35cbbe5cc5afb21836c3dc66101 (patch)
treeb21028745676d6793e80c4c78bb918aa1aac497f /apps/plugins
parent711ddfdaad18cee054213bcba4428ac3c6014774 (diff)
downloadrockbox-090bdedc62c7f35cbbe5cc5afb21836c3dc66101.tar.gz
rockbox-090bdedc62c7f35cbbe5cc5afb21836c3dc66101.zip
quake: add README with some notes
Change-Id: I702e81f8715b505d4ed6d0eca861e3ddb680038d
Diffstat (limited to 'apps/plugins')
-rw-r--r--apps/plugins/sdl/progs/quake/README.rockbox42
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 @@
1Introduction
2============
3
4These are my port notes for Quake. This runs, of course, on our SDL
5port. See <https://www.rockbox.org/wiki/SdlPort> for more.
6
7Port Lineage
8============
9
10This port stems from SDLQuake
11(https://www.libsdl.org/projects/quake/), which was built on top of id
12Software's source release.
13
14How is <X> done?
15================
16
17Custom settings: This is implemented through a modification to
18Cmd_Exec_f and Key_Bind_f, in cmd.c and keys.c.
19
20Sound mixing: There is a handwritten assembly sound mixing routine in
21snd_mix_arm.S, using the ARMv5 DSP extensions for saturating
22addition. Disable that if you run into sound issues.
23
24File caching: There is an automatic caching layer in sys_sdl.c which
25loads files over 1 MB into memory. Quake only uses about 8 MB of heap
26when running, so there's plenty of space for this on some targets
27(e.g. ipods).
28
29Known bugs
30==========
31
32Setting the sample rate to 44.1 KHz leads to all sorts of weird
33crashes, which stem (probably) from the same underlying memory
34corruption issue. Only thing is, it seems to occur only on hardware so
35it's a huge pain to debug.
36
37Optimization targets
38====================
39
40D_DrawZSpans, D_DrawSpans8, and Turbulent8 (in d_scan.c) should be
41fairly straightforward to write in assembly and are big time
42hogs. Make them fast!