summaryrefslogtreecommitdiff
path: root/apps/plugins (follow)
Commit message (Collapse)AuthorAge
* Quake: attempt 2duke3dFranklin Wei2018-02-11
| | | | Change-Id: I4285036e967d7f0722802d43cf2096c808ca5799
* duke3d: remove debug codeFranklin Wei2018-02-07
| | | | | | | Increments are cheap, but they aren't free. Hopefully this' will squeeze out some fraction of a FPS. Change-Id: If99408ed0ac4ad5f754778e0f48d467bd93cc2e0
* sdl: remove non-rockbox driversFranklin Wei2018-02-07
| | | | | | | We never use any of these other drivers, so having them around just takes up space. Change-Id: Iced812162df1fef3fd55522b7e700acb6c3bcd41
* sdl: fix freeze on startup on PP targetsFranklin Wei2018-02-04
| | | | | | | | | 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
* duke3d: clean up whitespace in game.cFranklin Wei2018-01-18
| | | | | | | It was absolutely horrendous before; this should make it easier to work with going forward. No functional changes (hopefully). Change-Id: I2dff2d5b2e88725dc586cd968a29052ee4947bb1
* duke3d: improve greylib supportFranklin Wei2018-01-18
| | | | Change-Id: I44f7fd383bd1aa7c9bfc114977acfc2e0f1dd0c8
* duke3d: misc stuff (DON'T PUSH)Franklin Wei2018-01-05
| | | | | | | | Mostly debugging output to the FPS line. Also changes tools/configure to always cross-compile a 32-bit simulator to support duke's horrendous pointer casting. Please don't push this. Change-Id: I3df6c633b5af017f33055dc4f9257738aaf66cfb
* sdl: support greylib video (untested)Franklin Wei2018-01-05
| | | | | | | | | | This is a very early attempt at getting greylib to work in SDL. The driver gives SDL a virtual 24-bit color framebuffer, which it then averages to grayscale in the update step. This works in the simulator, but has not been tested on real hardware yet. I think only the fastest greylib targets will be able to even run duke. Change-Id: Id9b82fe6273627aae3667d534755804f9112f798
* sdl: clean up audio driverFranklin Wei2018-01-05
| | | | | | | | 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
* duke3d: bump audio sample rate to 22.1KHzFranklin Wei2018-01-05
| | | | | | Recent optimizations to sound mixing should allow this, up from 16KHz. Change-Id: I0ba5742c934118a3a6505b8dc58578b0cfe8ea77
* Add a test_sdl pluginFranklin Wei2018-01-05
| | | | | | | This plugin plays a rough sine wave and is mostly useful for debugging crashes associated with SDL. Probably not worth merging. Change-Id: I58ea675f6f996c15bff11fd35445456e41f9fd60
* duke3d: further optimize audio mixingFranklin Wei2018-01-05
| | | | | | | | | 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
* duke3d: unregister timer on exitFranklin Wei2018-01-05
| | | | | | This was leading to a crash upon audio playback after running the game. Change-Id: I1e9961da443c21e3eff38bcf9877ffa75a922715
* duke3d: enable for non-ARM targetsFranklin Wei2018-01-05
| | | | Change-Id: Ib7ba606a66b76db14bd2a998eb485ed368db9d6e
* duke3d: rewrite sound mixing to use fixed-pointFranklin Wei2017-12-26
| | | | | | Gives significant performance improvement on ipod6g. Change-Id: I1e8462bec197acb10e770c796240b5001df52440
* duke3d: use hardware FPU if availableFranklin Wei2017-12-26
| | | | Change-Id: Idd9fad7bc0604a553c282a0f8c663ad44030ecac
* duke3d: restrict targets to ARM onlyFranklin Wei2017-12-24
| | | | Change-Id: I484d6de2d5d4a495ed54e8ee2a80459785b5f5e8
* fix red once moreFranklin Wei2017-12-24
| | | | Change-Id: I6290cc6cca468c197656236d3dd31c3f72c53842
* attempt to fix sysfont.h errorsFranklin Wei2017-12-24
| | | | Change-Id: Icc67dc777d3a2269ececbf4fbe34d78d7bd34087
* Undef potentially conflicting macros in stdio_compat.hFranklin Wei2017-12-24
| | | | Change-Id: If4af3e3cc16a947127e6253d0b81b684b5abb0c9
* fix redFranklin Wei2017-12-24
| | | | Change-Id: Ib28cfd9037901c7b8bc9b2960ad2c1c9a1e25a69
* fix redFranklin Wei2017-12-23
| | | | Change-Id: I20f1bd6f0208f6108d68fb59206b09dd9da4f1af
* Port of Duke Nukem 3DFranklin Wei2017-12-23
| | | | | | | This ports Fabien Sanglard's Chocolate Duke to run on a version of SDL for Rockbox. Change-Id: I8f2c4c78af19de10c1633ed7bb7a997b43256dd9
* stdio compat layer for pluginsMarcin Bukat2017-12-23
| | | | | | | | | | | | | This is attempt to simplify porting programs to rockbox (as plugins). Currently this compat layer implements: fopen(), fclose(), fflush(), fread(), fwrite(), fseek(), fseeko(), ftell(), ftello(), fgetc(), ungetc(), fputc(), fgets(), clearerr(), ferror(), feof(), fprintf() In order to use it you need to include in ported sources "lib/stdio_compat.h" Change-Id: I5add615dd19c5af9c767ccbfb1bd5a4e466741cb
* Fix last commitFranklin Wei2017-12-16
| | | | Change-Id: Ie3b3fad702e8c03d33b4a264139b6de74736e058
* Change button mappings in plugins/lib/keymaps.hFranklin Wei2017-12-16
| | | | | | Some of the previous mappings didn't make much sense. Change-Id: If373e7d5f28b572523856763c999eb7c5180aced
* Get test_codec synced with changes in 6c868ddMichael Sevakis2017-12-08
| | | | Change-Id: I47c5ae09ff620b46e42463654e1a073b59fb2191
* puzzles: fix off-by-one in blitter clippingFranklin Wei2017-11-24
| | | | | | Nobody to blame except myself for this one... Change-Id: I8446b564c3c060411c46675e9baac1c72437c39a
* puzzles: polish mouse modeFranklin Wei2017-11-24
| | | | | | Reduces lag when dragging. Also throws some comments in. Change-Id: Ibd0d95e94200ae6de8258ce8d2e001c931161385
* puzzles: fix copy-paste typoFranklin Wei2017-11-24
| | | | Change-Id: I09d065574a02a541c43c1a78d92e50a80b5e2ae0
* puzzles: add missing fileFranklin Wei2017-11-21
| | | | Change-Id: I72444b57abb7b7327891b17a22fbe2cafdf724a6
* puzzles: clean junk filesFranklin Wei2017-11-21
| | | | | | These are really not needed. Change-Id: I8aa8d648c363c657ca104fc9876b3c63558c5608
* puzzles: resync with upstream; add Loopy and Palisade, mouse modeFranklin Wei2017-11-21
| | | | | | | | | | | | This brings a various small changes to the drawing and input code, as well as a brand new "mouse mode", where input goes to a virtual mouse cursor. Only Loopy has this mouse mode enabled by default, while other games have it hidden away under the debug menu. Some changes by me to Palisade were required to make it playable; those are included here as well. Right now, sgt-net is pushing the c200v2's upper limit on size and may have to be dropped in a future commit. Change-Id: I495d2a2125462c2985aec1ffbc54bbe3fe5133bd
* Undo hacks to meant to get around string formatting limitationsMichael Sevakis2017-11-21
| | | | | | | | | | | | | | | The new vuprintf makes unnecessary workarounds due to formatting limitations. I checked grep output for whatever appeared to fit but it's possible I missed some instances because they weren't so obvious. Also, this means sound settings can dynamically work with any number of decimals rather than the current assumption of one or two. Add an ipow() function to help and take advantage of dynamic field width and precision. Consolidate string formatting of sound settings. Change-Id: I46caf534859dfd1916cd440cd25e5206b192fcd8
* puzzles: fix blitting when zoomedFranklin Wei2017-11-04
| | | | | | | | Both blitter_save() and blitter_load() functioned incorrectly when zoomed in -- blitter_save() would copy from the wrong location, and blitter_load() would ignore the y-coordinate of the destination. Change-Id: I7c85debf5953575f72c4a81e3dbcf514202c3aed
* puzzles: clarify code and documentationFranklin Wei2017-11-04
| | | | | | | This adds no functionality, but instead cleans up the source and adds some more substantial documentation. Change-Id: I77328c171a61db7729bdf928ba094cfbed4ec0dd
* puzzles: fix title drawingFranklin Wei2017-11-04
| | | | | | | | | | This fixes two separate bugs: The first was that the drawmode was not reliably set when drawing the title, occasionally leading to a black rectangle where the title should be; the second that the title bar's space wasn't being cleared before drawing, leading to artifacts when the length of the title string changed. Change-Id: I3859125b14d568e1098b095ab134645a504b2d45
* puzzles: add an interaction mode to the "Zoom In" featureFranklin Wei2017-10-30
| | | | | | | This makes it possible to play the game while zoomed in. Read the manual entry if you want to know more. Change-Id: Iff8bab12f92ebd2798047c25d1fde7740aa543ce
* puzzles: sync with upstreamFranklin Wei2017-10-29
| | | | | | | This includes the fix for Map's incorrect cursor positioning when zoomed in. Change-Id: I7d7d1f3031bbe1390e89340039996f99efaa8ef5
* puzzles: improve zoom renderingFranklin Wei2017-10-29
| | | | | | | | This adds colored font rendering, as well as a workaround for font loading while zoomed. Additionally, the frontend has been modified to match the new upstream API. Change-Id: I8c3fe57e6854f176485bf792cf4778cd54a21674
* puzzles: fix clipping and 24-bit handlingFranklin Wei2017-10-27
| | | | | | Should fix the build. Change-Id: I68f06702570389c2c9d0d76acc064c324cac457b
* puzzles: add "Zoom In" option to improve usabilityFranklin Wei2017-10-27
| | | | | | | | | | | | This adds a "Zoom In" option to the pause menu of each puzzle, which displays the puzzle at triple size (subject to change). This should help with tiny screens, modulo memory concerns associated with allocating the temporary framebuffer to which drawing operations are redirected. Coincidentally, there's an upstream bug with Map that causes the cursor's positioning to be incorrectly displayed when zoomed. Change-Id: Ic8b7c2942acf558e295f4271dd7dc458cd336895
* puzzles: make Untangle's input code return UI_UPDATE instead of ""Franklin Wei2017-10-24
| | | | | | | This was changed upstream and slipped by when I was merging the changes. Change-Id: I3a53cd2db5a5cd2ffef52719a048b8ff4c80d1aa
* puzzles: adapt frontend to upstream changesFranklin Wei2017-10-23
| | | | Change-Id: Idd911ac4ac6c2efa3c6b064be6058979d7a15447
* puzzles: resync with upstreamFranklin Wei2017-10-23
| | | | | | | There have been some improvements with regard to small screen sizes, which will be nice to have. Change-Id: I30c740514156258d2818fde325c1a751500f7611
* test_mem: increase dram buffer if possible, cap number of iterationsAmaury Pouly2017-10-22
| | | | Change-Id: Ie034433184d0dfcd50e3b783b2b6d0b6a44d001f
* Replace fp_sqrt function with one that only uses shift, or and sub.Michael Sevakis2017-10-01
| | | | | | | | | | | | Simply extends the current isqrt() to be able to do fractional bits and improves the initial estimate using clz(). iqrt() itself is no more and is equivalent to fp_sqrt(x, 0). The original also had a small bug where the guess comparision should have been >=, not >. Uses no large integer math or division and is very accurate (simply returns a truncated fraction). Change-Id: I2ae26e6505df1770dc01e56220f7385369f90ae9
* xworld: support diagonal buttons on Zen X-FiFranklin Wei2017-09-30
| | | | Change-Id: Ia738ecd2a39c0c0772d6f939d549dd5d0eda055e
* Remove old keymaps from xworld and puzzlesFranklin Wei2017-09-30
| | | | | | They've been replaced by the one in apps/plugins/lib/ Change-Id: Icb54ec4caae1149dfddad8c754087686792a8bc2
* Harmonize plugin keymapsFranklin Wei2017-09-30
| | | | | | | | Aims to provide a lib/keymaps.h for plugins needing simple button functionality beyond that provided by PLA. Currently used by puzzles and xworld. Change-Id: Icb3493aaf176d401762de834dd48fc76a3824c5a