OpenDingux: Add "lepus" platform
The "lepus" platform is the OpenDingux Beta for the same devices that run RetroFW (e.g. RG300).
This commit is contained in:
parent
f0fdae168a
commit
0d7072dae4
6 changed files with 109 additions and 1 deletions
59
CMake/lepus_defs.cmake
Normal file
59
CMake/lepus_defs.cmake
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
set(DISABLE_ZERO_TIER ON)
|
||||
set(USE_SDL1 ON)
|
||||
|
||||
set(SDL1_VIDEO_MODE_BPP 8)
|
||||
set(SDL1_VIDEO_MODE_FLAGS SDL_YUV444|SDL_HWSURFACE|SDL_TRIPLEBUF)
|
||||
set(SDL1_FORCE_SVID_VIDEO_MODE ON)
|
||||
|
||||
set(PREFILL_PLAYER_NAME ON)
|
||||
|
||||
set(JOY_AXIS_LEFTX 0)
|
||||
set(JOY_AXIS_LEFTY 1)
|
||||
set(JOY_AXIS_RIGHTX 2)
|
||||
set(JOY_AXIS_RIGHTY 3)
|
||||
|
||||
# OpenDingux Beta does not currently support X-OD-NeedsJoystick,
|
||||
# so we use KBCTRL instead. Unfortunately, this partially breaks
|
||||
# external mouse and keyboard support.
|
||||
set(HAS_KBCTRL 1)
|
||||
set(KBCTRL_BUTTON_DPAD_LEFT SDLK_LEFT)
|
||||
set(KBCTRL_BUTTON_DPAD_RIGHT SDLK_RIGHT)
|
||||
set(KBCTRL_BUTTON_DPAD_UP SDLK_UP)
|
||||
set(KBCTRL_BUTTON_DPAD_DOWN SDLK_DOWN)
|
||||
set(KBCTRL_BUTTON_B SDLK_LCTRL)
|
||||
set(KBCTRL_BUTTON_A SDLK_LALT)
|
||||
set(KBCTRL_BUTTON_Y SDLK_SPACE)
|
||||
set(KBCTRL_BUTTON_X SDLK_LSHIFT)
|
||||
set(KBCTRL_BUTTON_RIGHTSHOULDER SDLK_BACKSPACE)
|
||||
set(KBCTRL_BUTTON_LEFTSHOULDER SDLK_TAB)
|
||||
set(KBCTRL_BUTTON_START SDLK_RETURN)
|
||||
set(KBCTRL_BUTTON_BACK SDLK_ESCAPE) # Select
|
||||
set(KBCTRL_BUTTON_TRIGGERLEFT SDLK_PAGEUP)
|
||||
set(KBCTRL_BUTTON_TRIGGERRIGHT SDLK_PAGEDOWN)
|
||||
set(KBCTRL_BUTTON_LEFTSTICK SDLK_KP_DIVIDE)
|
||||
set(KBCTRL_BUTTON_RIGHTSTICK SDLK_KP_PERIOD)
|
||||
|
||||
# Joystick mappings that have no effect on OpenDingux Beta:
|
||||
set(JOY_HAT_DPAD_UP_HAT 0)
|
||||
set(JOY_HAT_DPAD_UP 1)
|
||||
set(JOY_HAT_DPAD_DOWN_HAT 0)
|
||||
set(JOY_HAT_DPAD_DOWN 4)
|
||||
set(JOY_HAT_DPAD_LEFT_HAT 0)
|
||||
set(JOY_HAT_DPAD_LEFT 8)
|
||||
set(JOY_HAT_DPAD_RIGHT_HAT 0)
|
||||
set(JOY_HAT_DPAD_RIGHT 2)
|
||||
set(JOY_BUTTON_A 0)
|
||||
set(JOY_BUTTON_B 1)
|
||||
set(JOY_BUTTON_Y 2)
|
||||
set(JOY_BUTTON_X 3)
|
||||
set(JOY_BUTTON_RIGHTSHOULDER 5)
|
||||
set(JOY_BUTTON_LEFTSHOULDER 4)
|
||||
set(JOY_BUTTON_TRIGGERLEFT 6)
|
||||
set(JOY_BUTTON_TRIGGERRIGHT 7)
|
||||
set(JOY_BUTTON_START 9)
|
||||
set(JOY_BUTTON_BACK 8)
|
||||
set(JOY_BUTTON_LEFTSTICK 10)
|
||||
set(JOY_BUTTON_RIGHTSTICK 11)
|
||||
|
||||
# Map Power button to Esc (Menu in-game / Exit in-menu).
|
||||
set(REMAP_KEYBOARD_KEYS "{SDLK_HOME,SDLK_ESCAPE}")
|
||||
|
|
@ -164,7 +164,9 @@ endif()
|
|||
|
||||
set(TARGET_PLATFORM host CACHE STRING "Target platform")
|
||||
set_property(CACHE TARGET_PLATFORM PROPERTY STRINGS host retrofw rg350 gkd350h cpigamesh)
|
||||
if(TARGET_PLATFORM STREQUAL "retrofw")
|
||||
if(TARGET_PLATFORM STREQUAL "lepus")
|
||||
include(lepus_defs)
|
||||
elseif(TARGET_PLATFORM STREQUAL "retrofw")
|
||||
include(retrofw_defs)
|
||||
elseif(TARGET_PLATFORM STREQUAL "rg350")
|
||||
include(rg350_defs)
|
||||
|
|
|
|||
|
|
@ -20,11 +20,13 @@ fi
|
|||
declare -r TARGET="$1"
|
||||
declare -r BUILD_DIR="build-${TARGET}"
|
||||
declare -rA BUILDROOT_REPOS=(
|
||||
[lepus]=https://github.com/OpenDingux/buildroot.git
|
||||
[retrofw]=https://github.com/retrofw/buildroot.git
|
||||
[rg350]=https://github.com/OpenDingux/buildroot.git
|
||||
[gkd350h]=https://github.com/tonyjih/RG350_buildroot.git
|
||||
)
|
||||
declare -rA BUILDROOT_DEFCONFIGS=(
|
||||
[lepus]='od_lepus_defconfig BR2_EXTERNAL=board/opendingux'
|
||||
[retrofw]='RetroFW_defconfig BR2_EXTERNAL=retrofw'
|
||||
[rg350]='od_gcw0_defconfig BR2_EXTERNAL=board/opendingux'
|
||||
[gkd350h]='rg350_defconfig BR2_EXTERNAL=board/opendingux'
|
||||
|
|
@ -55,6 +57,7 @@ prepare_buildroot() {
|
|||
fi
|
||||
git clone --depth=1 "${BUILDROOT_REPOS[$BUILDROOT_TARGET]}" "$BUILDROOT"
|
||||
cd "$BUILDROOT"
|
||||
ln -s ../shared-dl dl
|
||||
|
||||
# Work around a BR2_EXTERNAL initialization bug in older buildroots.
|
||||
mkdir -p output
|
||||
|
|
|
|||
31
Packaging/OpenDingux/lepus-manual.txt
Normal file
31
Packaging/OpenDingux/lepus-manual.txt
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
Copy diabdat.mpq from your CD (or GoG install folder) to:
|
||||
~/.local/share/diasurgical/
|
||||
|
||||
For Hellfire, also copy hellfire.mpq, hfmonk.mpq, hfmusic.mpq, and hfvoice.mpq.
|
||||
|
||||
Game saves and diablo.ini are located at:
|
||||
~/.local/share/diasurgical/devilution
|
||||
|
||||
~ is your home directory, /media/home by default.
|
||||
|
||||
Controls:
|
||||
- D-pad: move hero
|
||||
- A: attack nearby enemies, talk to townspeople and merchants, pickup/place items in the inventory, OK while in main menu
|
||||
- B: select spell, back while in menus
|
||||
- X: pickup items, open nearby chests and doors, use item in the inventory
|
||||
- Y: cast spell, delete character while in main menu
|
||||
- R: use mana potion from belt
|
||||
- L: use health item from belt
|
||||
- Start + Select: game menu (alt: Start + ↑)
|
||||
- Start + L or ←: character info
|
||||
- Start + R or →: inventory
|
||||
- Start + ↓: map
|
||||
- Start + Y: Quest log
|
||||
- Start + B: Spell book
|
||||
- Select + A/B/X/Y: hot spell
|
||||
- Select + D-pad: move map/cursor
|
||||
- Select + L: left mouse click
|
||||
- Select + R: right mouse click
|
||||
- Suspend: map
|
||||
|
||||
Source: https://github.com/diasurgical/devilutionX/
|
||||
12
Packaging/OpenDingux/lepus.desktop
Normal file
12
Packaging/OpenDingux/lepus.desktop
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[Desktop Entry]
|
||||
Name=DevilutionX
|
||||
Comment=Diablo 1 for OpenDingux
|
||||
Exec=devilutionx
|
||||
Terminal=false
|
||||
Type=Application
|
||||
StartupNotify=true
|
||||
Icon=icon_32
|
||||
Categories=games;
|
||||
X-OD-Manual=readme.lepus.txt
|
||||
X-OD-NeedsDownscaling=true
|
||||
X-OD-NeedsJoystick=true
|
||||
|
|
@ -1,4 +1,5 @@
|
|||
declare -ra VALID_TARGETS=(
|
||||
lepus
|
||||
retrofw
|
||||
rg350
|
||||
gkd350h
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue