summaryrefslogtreecommitdiffstats
path: root/apps/plugins/sdl
AgeCommit message (Collapse)AuthorFilesLines
2019-07-12wolf3d: allow entering in-game jukebox by holding fire buttonFranklin Wei1-1/+7
Change-Id: I8936178191e682b70c64ef6ae04d6636e5cf3521
2019-07-10wolf3d: increase default viewport sizeFranklin Wei1-1/+1
Makes things a little bigger by default (but not maximized). Change-Id: I9e4ae725e22458f1e5140a560ff242159ef582d7
2019-07-10wolf3d: write configs to /.rockbox/wolf3d instead of /.wolf4sdlFranklin Wei2-2/+2
Let's keep things neat. Change-Id: I995b2c4949d3adbbd7ea4ef361f0712aa222612e
2019-07-09wolf3d: fix FM OPL alignment bug in a cleaner wayFranklin Wei2-9/+8
wl_def.h has a #pragma pack(1), which causes issues when we take the address of an unaligned struct field. This fixes the issue by disabling packing in fmopl_gpl.c. Change-Id: I526880fa73226e8028855896f7efc3a66571b3ec
2019-07-09sdl: fix buildFranklin Wei1-3/+3
-T flag is program-specific. Change-Id: I730a9c19be43e79c7ff4e6d4fb5b8f498f08515e
2019-07-09wolf3d: add missing SOURCES.wolfFranklin Wei1-0/+27
I'm dumb... Change-Id: I5e8ebcf3d7e739c1cd50509b15fe585819ba7fb9
2019-07-09Wolfenstein 3-D!Franklin Wei61-2/+44119
This is a port of Wolf4SDL, which is derived from the original id software source release. The port runs on top of the SDL plugin runtime and is loaded as an overlay. Licensing of the game code is not an issue, as discussed below (essentially, the Debian project treats Wolf4SDL as GPLv2, with an email from John Carmack backing it up): http://forums.rockbox.org/index.php?topic=52872 Included is a copy of MAME's Yamaha OPL sound chip emulator (fmopl_gpl.c). This file was not part of the original Wolf4SDL source (which includes a non-GPL'd version), but was rather rebased from from a later MAME source which had been relicensed to GPLv2. Change-Id: I64c2ba035e0be7e2f49252f40640641416613439
2019-07-09sdl: silence audio driver debug outputFranklin Wei1-2/+2
Change-Id: I7aae3419f56f9cf952d9383f2a6cf9e9950e9a6d
2019-07-09sdl: a couple minor fixesFranklin Wei3-20/+18
Prevents system SDL from interfering with thread driver selection. Also adds test code for alignment faults. Change-Id: I8bc181922c4a9e764429897dbbaa1ffaabd01126
2019-06-16sdl: add pointer to wiki for docsFranklin Wei1-0/+2
Change-Id: I6e87658351f32d3c40d9ca2b635ae2f654fdd3aa
2019-06-16sdl: prevent simulator build from using pthreadsFranklin Wei1-2/+0
The simulator build will pull in the host SDL headers, which we can't filter out easily. A simple workaround is to simply remove the pthread include from our SDL. Change-Id: I09de0f2e85b891aa88958e21426ab450af516e76
2018-03-12sdl: remove non-rockbox driversFranklin Wei530-138647/+0
We never use any of these other drivers, so having them around just takes up space. Change-Id: Iced812162df1fef3fd55522b7e700acb6c3bcd41
2018-01-15sdl: clean up audio driverFranklin Wei1-2/+2
This prevents a (highly improbable) race condition when exiting, and uses pcm_set_frequency() instead of mixer_set_frequency(), since that seems like the Right Thing to Do (TM). Change-Id: Icb6a4597843215f08b3835490ac63f67c9a04736
2018-01-15duke3d: bump audio sample rate to 22.1KHzFranklin Wei1-1/+1
Recent optimizations to sound mixing should allow this, up from 16KHz. Change-Id: I0ba5742c934118a3a6505b8dc58578b0cfe8ea77
2018-01-15duke3d: further optimize audio mixingFranklin Wei5-52/+65
Rather than holding intermediate results as fixed-point, this converts them directly to normal integers (in the range of the PCM sample) while mixing, instead of waiting till the end to perform a separate shifting step. Also, this precalculates some constants in the reverb code. Change-Id: Ie04e444d145bc28ce67eef9ae0ead6d328acf28a
2018-01-14sdl: correct misleading commentsFranklin Wei2-2/+2
Change-Id: Ieb33d3fec1e0d834c5e294b79f280959497acb6a
2018-01-14Use sleep(0) instead of yield() in SDL_WaitAudioMichael Sevakis1-1/+1
This allows CPU load to drop below 100%, which is good for anything that scales frequency and voltage based on CPU load. Also conserves some energy by letting the core go idle if there aren't any available buffers. Change-Id: I9385ac9e030f97010b12eb825875a900463ab0ac
2018-01-11sdl: fix freeze on startup on PP targetsFranklin Wei3-2/+4
Using the coprocessor was a good idea in theory, but didn't actually work. This moves all SDL threads to the main core, which isn't ideal, but at least works. Additionally, this also adds some good-practice stuff such as setting the default sample rate on exit. Change-Id: If1636b33d439000ec7c4e50f46e8d002708d3121
2018-01-05duke3d: unregister timer on exitFranklin Wei2-101/+21
This was leading to a crash upon audio playback after running the game. Change-Id: I1e9961da443c21e3eff38bcf9877ffa75a922715
2017-12-26duke3d: rewrite sound mixing to use fixed-pointFranklin Wei10-453/+480
Gives significant performance improvement on ipod6g. Change-Id: I1e8462bec197acb10e770c796240b5001df52440
2017-12-26duke3d: use hardware FPU if availableFranklin Wei1-0/+4
Change-Id: Idd9fad7bc0604a553c282a0f8c663ad44030ecac
2017-12-24fix red once moreFranklin Wei1-1/+1
Change-Id: I6290cc6cca468c197656236d3dd31c3f72c53842
2017-12-24attempt to fix sysfont.h errorsFranklin Wei1-1/+1
Change-Id: Icc67dc777d3a2269ececbf4fbe34d78d7bd34087
2017-12-24fix redFranklin Wei1-6/+4
Change-Id: Ib28cfd9037901c7b8bc9b2960ad2c1c9a1e25a69
2017-12-23fix redFranklin Wei3-6/+5
Change-Id: I20f1bd6f0208f6108d68fb59206b09dd9da4f1af
2017-12-23Port of Duke Nukem 3DFranklin Wei985-0/+336834
This ports Fabien Sanglard's Chocolate Duke to run on a version of SDL for Rockbox. Change-Id: I8f2c4c78af19de10c1633ed7bb7a997b43256dd9