summaryrefslogtreecommitdiffstats
path: root/manual/plugins
diff options
context:
space:
mode:
authorFranklin Wei <frankhwei536@gmail.com>2014-10-13 21:00:47 -0400
committerMichael Giacomelli <giac2000@hotmail.com>2014-12-23 23:48:12 +0100
commit33cb13dee5a527ac445ea1b13d42723e4eb3e3b0 (patch)
tree3ce36ea21b53377b900049143e77e74b77ca1b0d /manual/plugins
parentb681e932a9da797249ddc0e4ccab7ed7cf50fd41 (diff)
downloadrockbox-33cb13dee5a527ac445ea1b13d42723e4eb3e3b0.tar.gz
rockbox-33cb13dee5a527ac445ea1b13d42723e4eb3e3b0.zip
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>
Diffstat (limited to 'manual/plugins')
-rw-r--r--manual/plugins/main.tex2
-rw-r--r--manual/plugins/xworld.tex81
2 files changed, 83 insertions, 0 deletions
diff --git a/manual/plugins/main.tex b/manual/plugins/main.tex
index a49cfacbef..4143fd6b63 100644
--- a/manual/plugins/main.tex
+++ b/manual/plugins/main.tex
@@ -94,6 +94,8 @@ text files%
\opt{lcd_bitmap}{\input{plugins/xobox.tex}}
+\opt{lcd_bitmap}{\input{plugins/xworld.tex}}
+
\section{Demos}
\opt{lcd_bitmap}{\input{plugins/bounce.tex}}
diff --git a/manual/plugins/xworld.tex b/manual/plugins/xworld.tex
new file mode 100644
index 0000000000..32e3ecbf78
--- /dev/null
+++ b/manual/plugins/xworld.tex
@@ -0,0 +1,81 @@
+\subsection{XWorld}
+
+In this cinematic, award winning platform game by Éric Chahi, you must evade capture
+and do your best to escape an alien planet. After an experiment goes awry the hero
+must team up with an unlikely ally, when they both become fugitives on another world.
+XWorld requires the data files, bank* and memlist.bin, from the original "Another World"
+PC game to be copied into the .rockbox/xworld/ directory before the game can be played.
+
+\begin{btnmap}
+ %
+ \opt{RECORDER_PAD,ONDIO_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD,IAUDIO_X5_PAD%
+ ,SANSA_E200_PAD,SANSA_FUZE_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_PAD%
+ ,GIGABEAT_S_PAD,MROBE100_PAD,PBELL_VIBE500_PAD,SANSA_FUZEPLUS_PAD%
+ ,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}
+ {\ButtonUp}
+ \opt{IPOD_4G_PAD,IPOD_3G_PAD,IPOD_1G2G_PAD}{\ButtonMenu}
+ \opt{IRIVER_H10_PAD}{\ButtonScrollUp}
+ \opt{HAVE_TOUCHSCREEN}{\TouchTopMiddle}
+ \opt{PBELL_VIBE500_PAD}{\ButtonOk}
+ \opt{HAVEREMOTEKEYMAP}{& }
+ & Up and Jump \\
+ %
+ \opt{RECORDER_PAD,ONDIO_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD,IAUDIO_X5_PAD%
+ ,SANSA_E200_PAD,SANSA_FUZE_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_PAD%
+ ,GIGABEAT_S_PAD,MROBE100_PAD,PBELL_VIBE500_PAD,SANSA_FUZEPLUS_PAD%
+ ,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}
+ {\ButtonDown}
+ \opt{IPOD_4G_PAD,IPOD_3G_PAD,IPOD_1G2G_PAD}{\ButtonPlay}
+ \opt{IRIVER_H10_PAD}{\ButtonScrollDown}
+ \opt{HAVE_TOUCHSCREEN}{\TouchBottomMiddle}
+ \opt{PBELL_VIBE500_PAD}{\ButtonCancel}
+ \opt{HAVEREMOTEKEYMAP}{& }
+ & Down and Crouch\\
+ %
+ \opt{RECORDER_PAD,ONDIO_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD,IAUDIO_X5_PAD%
+ ,SANSA_E200_PAD,SANSA_FUZE_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_PAD%
+ ,GIGABEAT_S_PAD,MROBE100_PAD,PBELL_VIBE500_PAD,SANSA_FUZEPLUS_PAD%
+ ,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD,IPOD_4G_PAD,IPOD_3G_PAD,IPOD_1G2G_PAD%
+ ,IRIVER_H10_PAD}
+ {\ButtonLeft / \ButtonRight}
+ \opt{HAVE_TOUCHSCREEN}{\TouchMidLeft / \TouchMidRight}
+ \opt{PBELL_VIBE500_PAD}{\ButtonMenu / \ButtonPlay}
+ \opt{HAVEREMOTEKEYMAP}{& }
+ & Move Left and Right\\
+ %
+ \opt{SANSA_FUZE_PAD}{\ButtonHome}
+ \opt{SAMSUNG_YH920_PAD}{\ButtonFFWD}
+ \opt{IRIVER_H300_PAD,SANSA_E200_PAD,SAMSUNG_YH820_PAD,IAUDIO_X5M5_PAD}{\ButtonRec}
+ \opt{IPOD_4G_PAD,IPOD_3G_PAD,IPOD_1G2G_PAD,CREATIVE_ZEN_PAD,SANSA_CLIP_PAD}{\ButtonSelect}
+ \opt{SONY_NWZ_PAD,CREATIVEZVM_PAD}{\ButtonPlay}
+ \opt{ONDAVX777_PAD,MROBE500_PAD,PBELL_VIBE500_PAD}{\ButtonPower}
+ \opt{SAMSUNG_YPR0_PAD}{\ButtonUser}
+ \opt{IRIVER_H10_PAD}{\ButtonRew}
+ \opt{HM801_PAD}{\ButtonPrev}
+ \opt{SONY_NWZ_PAD,CREATIVEZVM_PAD}{\ButtonPlay}
+ \opt{MROBE500_PAD}{\ButtonPower}
+ \opt{DX50_PAD,ONDAVX747_PAD,PHILIPS_HDD1630_PAD,PHILIPS_HDD6330_PAD,PHILIPS_SA9200_PAD%
+ ,CREATIVE_ZENXFI2_PAD,CREATIVE_ZENXFI3_PAD,SANSA_CONNECT_PAD,SANSA_C200_PAD%
+ ,SANSA_FUZEPLUS_PAD,GIGABEAT_PAD,GIGABEAT_S_PAD}{\ButtonVolUp}
+ \opt{HAVE_TOUCHSCREEN}{\ButtonBottomLeft}
+ \opt{HAVEREMOTEKEYMAP}{& }
+ & Action and Fire\\
+ %
+ \opt{DX50_PAD,ONDAVX747_PAD,PHILIPS_HDD1630_PAD,PHILIPS_HDD6330_PAD,PHILIPS_SA9200_PAD%
+ ,CREATIVE_ZENXFI2_PAD,CREATIVE_ZENXFI3_PAD,SANSA_CONNECT_PAD,SANSA_C200_PAD%
+ ,SANSA_FUZEPLUS_PAD}{\ButtonVolDown}
+ \opt{GIGABEAT_PAD,GIGABEAT_S_PAD}{\ButtonMenu}
+ \opt{SANSA_FUZE_PAD}{\ButtonSelect}
+ \opt{SAMSUNG_YH920_PAD}{\ButtonRew}
+ \opt{SAMSUNG_YH820_PAD,IAUDIO_X5M5_PAD}{\ButtonPlay}
+ \opt{SANSA_E200_PAD,SANSA_CLIP_PAD}{\ButtonPower}
+ \opt{CREATIVE_ZEN_PAD,SONY_NWZ_PAD}{\ButtonBack}
+ \opt{CREATIVEZVM_PAD,SAMSUNG_YPR0_PAD}{\ButtonMenu}
+ \opt{IRIVER_H300_PAD}{\ButtonMode}
+ \opt{HM801_PAD}{\ButtonNext}
+ \opt{PBELL_VIBE500_PAD}{\ButtonRec}
+ \opt{IRIVER_H10_PAD}{\ButtonPlay}
+ \opt{IPOD_4G_PAD,IPOD_3G_PAD,IPOD_1G2G_PAD}{\ButtonMenu / \ButtonSelect}
+ \opt{HAVEREMOTEKEYMAP}{& }
+ & Menu\\
+\end{btnmap}