Commit graph

8 commits

Author SHA1 Message Date
Franklin Wei
23e7d0ef19 xworld: support diagonal buttons on Zen X-Fi
Change-Id: Ia738ecd2a39c0c0772d6f939d549dd5d0eda055e
2017-09-30 20:50:33 -04:00
Franklin Wei
752f7b1698 Harmonize plugin keymaps
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
2017-09-30 20:13:49 -04:00
Franklin Wei
0a9f71790b xworld: fix several horrendous bugs
- unregisters timer on exit, preventing possible crash
- disables synchronization mechanisms when used from an IRQ
- prevents memory allocations from overflowing the audio buffer (unlikely)

Change-Id: I3c2c4ebe93c10ca9176ed0455e7aacc2d10c059e
2017-02-12 20:36:31 -05:00
Franklin Wei
05733649bc XWorld: some fixes
Fixes sound on most platforms, original root cause was bad menu code
as well as DMA callbacks taking too long. Worked around with smaller
chunk sizes. Permanent fix would include moving mixing out of the
callback. Rewrites input with code from rockboy/doom. Cherry-picks a
change from Gregory Montoir's `rawgl' to patch the code wheel
screen. Finally, adds a motion blur filter on select targets.

Change-Id: I8df549c923c5075800c6625c36c8202e53de1d27
2016-11-19 19:17:14 +01:00
Franklin Wei
2d41866d5a Remove playback control from XWorld, fix comments a bit
XWorld grabs the audio buffer when it starts, so there can be no playback, making the playback control menu useless :P

Change-Id: Ia4e2c207f41619ef9b028917130d6dbf7dfba054
2015-01-08 23:45:37 +01:00
Franklin Wei
193c5df75d XWorld: cleanup
- Comment keymaps.h
 - Tie XWORLD_DEBUG into ROCKBOX_HAS_LOGF to ease debugging
 - Fix up the manual a little bit

Change-Id: I12cfb58001199036cd67dbaa27f164e6790a199d
Reviewed-on: http://gerrit.rockbox.org/1084
Reviewed-by: Michael Giacomelli <giac2000@hotmail.com>
2014-12-28 02:48:42 +01:00
Franklin Wei
37817268ab fix xworld building with 24-bit lcd
also fix a couple unused vars

Change-Id: Ib05d2e22dd7477bc9bd193232bd3de8a0816beb2
Reviewed-on: http://gerrit.rockbox.org/1079
Reviewed-by: Michael Giacomelli <giac2000@hotmail.com>
2014-12-24 03:12:03 +01:00
Franklin Wei
33cb13dee5 Xworld - Another World interpreter for Rockbox
Co-conspirators: Franklin Wei, Benjamin Brown

--------------------------------------------------------------------
This work is based on:
- Fabien Sanglard's "Fabother World" based on
- Piotr Padkowski's newRaw interpreter which was based on
- Gregory Montoir's reverse engineering of
- Eric Chahi's assembly code

--------------------------------------------------------------------
Progress:

* The plugin runs pretty nicely (with sound!) on most color targets
* Keymaps for color LCD targets are complete
* The manual entry is finished
* Grayscale/monochrome support is NOT PLANNED
  - the game looks horrible in grayscale! :p

--------------------------------------------------------------------
Notes:

* The original game strings were built-in to the executable, and
  were copyrighted and could not be used.
* This port ships with an alternate set of strings by default, but
  can load the "official" strings from a file at runtime.

--------------------------------------------------------------------
To be done (in descending order of importance):

* vertical stride compatibility                          <30% done>
* optimization                                           <10% done>

Change-Id: I3155b0d97c2ac470cb8a2040f40d4139ddcebfa5
Reviewed-on: http://gerrit.rockbox.org/1077
Reviewed-by: Michael Giacomelli <giac2000@hotmail.com>
2014-12-23 23:48:12 +01:00