ref: 0d4b3504cc557b5ded1180e2fd00cd210c1024d7
dir: /README/
qk1 - (9) quake =============== - setup: . mk install - to install quake (shareware or registered): . mkdir $home/lib/quake/id1 . cp /n/quakecd/id1/*.pak id1/ - to install an expansion or compatible mod (zB rogue): . mkdir $home/lib/quake/rogue . cp /n/quakecd/rogue/*.pak $home/lib/quake/rogue - sound is glitchy with higher resolutions (see snd_9.c) - cdaudio, networking: PORTME - high resolutions work up to 4096x4096 (arbitrary limit in r_shared.h) . by default, quake uses a 8MB heap, which will be insufficient for higher resolutions → crash/exit with "Hunk_Alloc: failed on ..." → use [-mem MB], e.g.: ; quake -mem 24 . resolutions under around 328x160 don't work, possibly because menu text isn't scaled down, or something - mouse is grabbed using m_windowed cvar . open console (~) . type m_windowed 1 (can autocomplete w/ tab) . setting saved on exit in id1/config.cfg - tested on 386 and amd64 only (works ok on a pentium 4) some params useful for workarounds ---------------------------------- -nosound -nostdout -mem MB (-noudp) port notes ---------- - based on linux/x11 code from original release - pr_strings: assumed 32bit pointer arithmetic: use PR_GetStr() instead of dealing with it directly; may be ass - global cppdefotomy, removing code seen as useless for plan9 - vid_9.c: shitty, can probably improve performance a bit without screwing code - *printf -> *print was (mostly) stupid - removed some of the command line parameters . -winsize, -width, -height: just set the window dimensions with rio/rc todo/issues ----------- - compile with PARANOID -> MSG_WriteByte complains about range error and exits. no idea why. - leave running for a couple of hours -> sound dies and eventually, invalid write/reads -> crash - compile with BAN_TEST -> net_dgrm build fails - sprites/particles not scaled correctly on high resolutions - m_windowed 1: can still look around in frozen world when paused - m_windowed 1: mouse can still escape, causing glitchy mouse look - net_9p.c - cd_9.c,net_udp.c,net_dgrm.c: actuallyport - manpages - ungrab mouse when entering console or menus a la games/doom (IN_Grabm()) - cleanse *_9.c from linux legacy - linking errors with -T cflag - fix potential fp exceptions in code rather than ignoring them? - g '/\* FIXME' - port quakeworld and utilities +/- merge common code and mkmany legal ----- Quake, hence qk1, is licensed under the GPLv2. See COPYING for details.