mirror of
https://github.com/dragoonDorise/EmuDeck.git
synced 2024-06-02 19:47:51 -04:00
Add MGBA Standalone (#558)
* begin mgba standalone flatpak code * add config files * add srm parser and sh * fix mistaken merge * fix mistaken merge * NYI set emulation folder for now * convert to appimage * Hotkeys and Steam Input Profile * Updating Hotkeys/Steam Input Profile * Updating Steam Input Profile/Hotkeys * Cleared recent history * Update config.ini * zenity updates * add uninstall and cli scripts * add library, gb, and gbc parsers * add input profile and change parser id * fix category * begin mgba standalone flatpak code * add srm parser and sh * add preliminary CSO compression for PSP * zenity updates * add uninstall and cli scripts * add library, gb, and gbc parsers * fix steam categories * fix rebase errors * fix chd change * Fix extra If in uninstall move mgba to normal install area in zenity --------- Co-authored-by: rawdatafeel <108900299+rawdatafeel@users.noreply.github.com> Co-authored-by: Godsbane <godsbane@gmail.com>
This commit is contained in:
parent
50b45d760d
commit
1c2e970bbd
221
configs/mgba/config.ini
Normal file
221
configs/mgba/config.ini
Normal file
|
@ -0,0 +1,221 @@
|
|||
[General]
|
||||
audioDriver=1
|
||||
cameraDriver=0
|
||||
displayDriver=1
|
||||
maximized=true
|
||||
multiplayerAudio=all
|
||||
windowPos=@Point(0 0)
|
||||
|
||||
[shader.default.0]
|
||||
bias%5B0%5D=0
|
||||
bias%5B1%5D=0
|
||||
bias%5B2%5D=0
|
||||
desaturation%5B0%5D=0
|
||||
desaturation%5B1%5D=0
|
||||
desaturation%5B2%5D=0
|
||||
gamma=1
|
||||
scale%5B0%5D=1
|
||||
scale%5B1%5D=1
|
||||
scale%5B2%5D=1
|
||||
|
||||
[shortcutAxis]
|
||||
fastForward=@String(\0-1)
|
||||
|
||||
[shortcutButton]
|
||||
fastForward=-1
|
||||
|
||||
[shortcutKey]
|
||||
fastForward=F
|
||||
fastForwardRatio.-1=F10
|
||||
fastForwardRatio.10=F9
|
||||
fastForwardRatio.2=F1
|
||||
fastForwardRatio.3=F2
|
||||
fastForwardRatio.4=F3
|
||||
fastForwardRatio.5=F4
|
||||
fastForwardRatio.6=F5
|
||||
fastForwardRatio.7=F6
|
||||
fastForwardRatio.8=F7
|
||||
fastForwardRatio.9=F8
|
||||
fullscreen=Z
|
||||
gbPrint=H
|
||||
holdFastForward=E
|
||||
holdRewind=G
|
||||
loadState=B
|
||||
pause=D
|
||||
quit=C
|
||||
reset=X
|
||||
rewind=
|
||||
saveState=A
|
||||
screenshot=I
|
||||
shutdown=Ctrl+S
|
||||
|
||||
[shortcutProfileAxis.Microsoft%20X-Box%20360%20pad%200]
|
||||
fastForward=@String(\0-1)
|
||||
|
||||
[shortcutProfileButton.Microsoft%20X-Box%20360%20pad%200]
|
||||
fastForward=-1
|
||||
[gba.input.SDLB]
|
||||
keyRight=-1
|
||||
keyDown=-1
|
||||
axisUpValue=-12288
|
||||
device0=03000000de280000ff11000001000000
|
||||
hat0Up=6
|
||||
tiltAxisY=3
|
||||
axisLeftAxis=-0
|
||||
gyroAxisZ=-1
|
||||
gyroSensitivity=2.2e+09
|
||||
gyroAxisX=0
|
||||
axisLeftValue=-12288
|
||||
axisRightAxis=+0
|
||||
keyR=5
|
||||
keyL=4
|
||||
hat0Right=4
|
||||
hat0Left=5
|
||||
tiltAxisX=2
|
||||
keyB=1
|
||||
keyUp=-1
|
||||
gyroAxisY=1
|
||||
keySelect=6
|
||||
keyLeft=-1
|
||||
axisRightValue=12288
|
||||
keyA=0
|
||||
hat0Down=7
|
||||
axisDownValue=12288
|
||||
keyStart=7
|
||||
axisUpAxis=-1
|
||||
axisDownAxis=+1
|
||||
|
||||
[gba.input.QT_K]
|
||||
keyRight=16777236
|
||||
keyDown=16777237
|
||||
keyR=83
|
||||
keyL=65
|
||||
keyB=90
|
||||
keyUp=16777235
|
||||
keySelect=16777219
|
||||
keyLeft=16777234
|
||||
keyA=88
|
||||
keyStart=16777220
|
||||
|
||||
[gba.input-profile.Microsoft X-Box 360 pad 0]
|
||||
keyRight=-1
|
||||
keyDown=-1
|
||||
axisUpValue=-12288
|
||||
hat0Up=6
|
||||
axisLeftAxis=-0
|
||||
axisLeftValue=-12288
|
||||
axisRightAxis=+0
|
||||
keyR=5
|
||||
keyL=4
|
||||
hat0Right=4
|
||||
hat0Left=5
|
||||
keyB=1
|
||||
keyUp=-1
|
||||
keySelect=6
|
||||
keyLeft=-1
|
||||
axisRightValue=12288
|
||||
keyA=0
|
||||
hat0Down=7
|
||||
axisDownValue=12288
|
||||
keyStart=7
|
||||
axisUpAxis=-1
|
||||
axisDownAxis=+1
|
||||
|
||||
[gba.input-profile.03000000de280000ff11000001000000]
|
||||
tiltAxisY=3
|
||||
gyroAxisX=0
|
||||
gyroAxisZ=-1
|
||||
gyroSensitivity=2.2e+09
|
||||
tiltAxisX=2
|
||||
gyroAxisY=1
|
||||
|
||||
[ports.qt]
|
||||
fullscreen=0
|
||||
showOSD=1
|
||||
suspendScreensaver=1
|
||||
logFile=
|
||||
width=2560
|
||||
skipBios=0
|
||||
gb.pal[4]=8953928
|
||||
gb.pal[5]=4745264
|
||||
gb.pal[7]=1583112
|
||||
pauseOnMinimize=0
|
||||
useDiscordPresence=0
|
||||
autoload=1
|
||||
allowOpposingDirections=0
|
||||
muteOnMinimize=0
|
||||
gb.bios=
|
||||
logToStdout=0
|
||||
lockIntegerScaling=0
|
||||
gb.pal[0]=8953928
|
||||
logLevel=7
|
||||
pauseOnFocusLost=0
|
||||
frameskip=0
|
||||
hwaccelVideo=1
|
||||
height=1330
|
||||
rewindBufferCapacity=1000
|
||||
autofireThreshold=1
|
||||
showFilename=0
|
||||
vbaBugCompat=1
|
||||
savestatePath=/run/media/mmcblk0p1/Emulation/saves/mgba/states
|
||||
gb.pal[10]=2637856
|
||||
sampleRate=44100
|
||||
showFilenameInLibrary=0
|
||||
lockAspectRatio=1
|
||||
lastDirectory=/run/media/mmcblk0p1/Emulation/roms
|
||||
cheatsPath=/run/media/mmcblk0p1/Emulation/storage/mgba/cheats
|
||||
resampleVideo=0
|
||||
autosave=0
|
||||
fastForwardRatio=-1
|
||||
logLevel.core.status=111
|
||||
cgb.model=CGB
|
||||
showLibrary=1
|
||||
loadStateExtdata=9
|
||||
interframeBlending=0
|
||||
sgb.borders=1
|
||||
videoScale=5
|
||||
updateAutoCheck=0
|
||||
gb.pal[2]=2637856
|
||||
showResetInfo=0
|
||||
showFps=1
|
||||
cheatAutoload=1
|
||||
gb.colors=1
|
||||
audioSync=1
|
||||
fastForwardVolume=256
|
||||
sgb.model=SGB
|
||||
fastForwardHeldRatio=-1
|
||||
gbc.bios=
|
||||
sgb.bios=
|
||||
screenshotPath=/run/media/mmcblk0p1/Emulation/storage/mgba/screenshots
|
||||
savegamePath=/run/media/mmcblk0p1/Emulation/saves/mgba/saves
|
||||
idleOptimization=ignore
|
||||
gb.pal[1]=4745264
|
||||
gb.pal[8]=8953928
|
||||
dynamicTitle=1
|
||||
gb.model=DMG
|
||||
fastForwardMute=0
|
||||
volume=256
|
||||
videoSync=0
|
||||
rewindEnable=1
|
||||
logLevel.gba.bios=33
|
||||
preload=0
|
||||
cheatAutosave=1
|
||||
gba.forceGbp=0
|
||||
cgb.sgbModel=CGB
|
||||
gb.pal[11]=1583112
|
||||
cgb.hybridModel=CGB
|
||||
libraryStyle=1
|
||||
mute=0
|
||||
fpsTarget=59.72750056960583
|
||||
gb.pal[6]=2637856
|
||||
gb.pal[9]=4745264
|
||||
showFrameCounter=0
|
||||
gba.bios=
|
||||
muteOnFocusLost=0
|
||||
patchPath=/run/media/mmcblk0p1/Emulation/storage/mgba/patches
|
||||
audioBuffers=1536
|
||||
saveStateExtdata=31
|
||||
useBios=1
|
||||
logToFile=0
|
||||
gb.pal[3]=1583112
|
||||
|
56
configs/mgba/qt.ini
Normal file
56
configs/mgba/qt.ini
Normal file
|
@ -0,0 +1,56 @@
|
|||
[General]
|
||||
audioDriver=1
|
||||
cameraDriver=0
|
||||
displayDriver=1
|
||||
maximized=true
|
||||
multiplayerAudio=all
|
||||
windowPos=@Point(0 0)
|
||||
|
||||
[shader.default.0]
|
||||
bias%5B0%5D=0
|
||||
bias%5B1%5D=0
|
||||
bias%5B2%5D=0
|
||||
desaturation%5B0%5D=0
|
||||
desaturation%5B1%5D=0
|
||||
desaturation%5B2%5D=0
|
||||
gamma=1
|
||||
scale%5B0%5D=1
|
||||
scale%5B1%5D=1
|
||||
scale%5B2%5D=1
|
||||
|
||||
[shortcutAxis]
|
||||
fastForward=@String(\0-1)
|
||||
|
||||
[shortcutButton]
|
||||
fastForward=-1
|
||||
|
||||
[shortcutKey]
|
||||
fastForward=F
|
||||
fastForwardRatio.-1=F10
|
||||
fastForwardRatio.10=F9
|
||||
fastForwardRatio.2=F1
|
||||
fastForwardRatio.3=F2
|
||||
fastForwardRatio.4=F3
|
||||
fastForwardRatio.5=F4
|
||||
fastForwardRatio.6=F5
|
||||
fastForwardRatio.7=F6
|
||||
fastForwardRatio.8=F7
|
||||
fastForwardRatio.9=F8
|
||||
fullscreen=Z
|
||||
gbPrint=H
|
||||
holdFastForward=E
|
||||
holdRewind=G
|
||||
loadState=B
|
||||
pause=D
|
||||
quit=C
|
||||
reset=X
|
||||
rewind=
|
||||
saveState=A
|
||||
screenshot=I
|
||||
shutdown=Ctrl+S
|
||||
|
||||
[shortcutProfileAxis.Microsoft%20X-Box%20360%20pad%200]
|
||||
fastForward=@String(\0-1)
|
||||
|
||||
[shortcutProfileButton.Microsoft%20X-Box%20360%20pad%200]
|
||||
fastForward=-1
|
894
configs/steam-input/mgba_controller_config.vdf
Executable file
894
configs/steam-input/mgba_controller_config.vdf
Executable file
|
@ -0,0 +1,894 @@
|
|||
"controller_mappings"
|
||||
{
|
||||
"version" "3"
|
||||
"revision" "46"
|
||||
"title" "EmuDeck - mGBA"
|
||||
"description" "Your modified layout for this game."
|
||||
"creator" "76561199036238022"
|
||||
"progenitor" ""
|
||||
"url" "template://mgba_controller_config.vdf"
|
||||
"export_type" "template"
|
||||
"controller_type" "controller_neptune"
|
||||
"controller_caps" "23117823"
|
||||
"major_revision" "0"
|
||||
"minor_revision" "0"
|
||||
"Timestamp" "-136895680"
|
||||
"localization"
|
||||
{
|
||||
"english"
|
||||
{
|
||||
"title" "mGBA Menu Hotkeys"
|
||||
"description" "mGBA Menu Hotkeys"
|
||||
}
|
||||
"czech"
|
||||
{
|
||||
"title" "Gamepad s ovládáním kamery"
|
||||
"description" "Tato šablona je pro většinu her podporujících gamepad a disponujících kamerou z pohledu první nebo třetí osoby. Mezi takové hry patří například akční hry z pohledu první nebo třetí osoby."
|
||||
}
|
||||
"danish"
|
||||
{
|
||||
"title" "Gamepad med kamerastyring"
|
||||
"description" "Denne skabelon er til de fleste spil, der allerede har indbygget gamepad-understøttelse og har et første- eller tredjepersonskontrolleret kamera. FPS eller tredjepersons adventure-spil osv."
|
||||
}
|
||||
"dutch"
|
||||
{
|
||||
"title" "Gamepad met camerabesturing"
|
||||
"description" "Deze template is voor de meeste spellen die reeds ingebouwde gamepadondersteuning hebben en die een camera hebben die wordt bestuurd in de eerste of derde persoon. FPS, third person-avontuurspellen, etc."
|
||||
}
|
||||
"finnish"
|
||||
{
|
||||
"title" "Kameraa ohjaava peliohjain"
|
||||
"description" "Tämä malli on useimmille muita ohjaimia valmiiksi tukeville peleille, joissa on ensimmäisessä tai kolmannessa persoonassa ohjattava kamera. FPS-pelit, kolmannen persoonan seikkailupelit jne."
|
||||
}
|
||||
"french"
|
||||
{
|
||||
"title" "Manette avec contrôles caméra"
|
||||
"description" "Ce modèle fonctionne pour la plupart des jeux ayant un support manette intégré et une caméra contrôlée à la première ou à la troisième personne. FPS, jeux d'aventure à la troisième personne, etc."
|
||||
}
|
||||
"german"
|
||||
{
|
||||
"title" "Gamepad mit Kamerasteuerung"
|
||||
"description" "Diese Vorlage ist für die meisten Spiele konzipiert, die bereits volle Untersützung für Gamepads mit sich bringen und eine First- oder Third-Person-Kamerasteuerung haben. Gedacht für Ego-Shooter, Third-Person-Abenteuerspiele usw."
|
||||
}
|
||||
"hungarian"
|
||||
{
|
||||
"title" "Gamepad kamerairányítással"
|
||||
"description" "Ez a sablon a legtöbb olyan játékhoz való, melyek már rendelkeznek beépített gamepad-támogatással, és van első vagy harmadik személyű kezelésű kamerájuk. Ilyenek az FPS vagy harmadik személyű kalandjátékok stb."
|
||||
}
|
||||
"italian"
|
||||
{
|
||||
"title" "Gamepad con controlli della telecamera"
|
||||
"description" "Questo template è pensato per la maggior parte dei giochi che hanno già il supporto per gamepad integrato e hanno la visuale controllata in prima o terza persona. Giochi d'avventura in terza persona, FPS ecc."
|
||||
}
|
||||
"japanese"
|
||||
{
|
||||
"title" "カメラコントロール機能を持つゲームパッド"
|
||||
"description" "FPS や、アドベンチャーゲームのような、一人称または三人称のカメラ操作を行うゲームパッドに標準対応したゲーム用のテンプレートです。"
|
||||
}
|
||||
"koreana"
|
||||
{
|
||||
"title" "카메라 조작 기능이 있는 게임패드"
|
||||
"description" "이 템플릿은 이미 게임패드 지원이 내장되어 있으며 1인칭 또는 3인칭 시점 카메라 조작을 지원하는 대부분의 게임을 위한 것입니다. FPS, 3인칭 어드벤쳐 게임 및 기타."
|
||||
}
|
||||
"polish"
|
||||
{
|
||||
"title" "Kontroler obsługujący kamerę"
|
||||
"description" "Ten szablon jest dla większości gier, które mają wbudowane wsparcie dla kontrolerów, a także kamerę kontrolowaną z perspektywy pierwszej lub trzeciej osoby, np. FPS-y bądź gry przygodowe."
|
||||
}
|
||||
"portuguese"
|
||||
{
|
||||
"title" "Comando com controlos de câmara"
|
||||
"description" "Este modelo é indicado para jogos que já têm compatibilidade nativa com comando e têm uma câmara que pode ser controlada. Por exemplo, jogos em primeira ou terceira pessoa, do género de aventura, de tiros, etc."
|
||||
}
|
||||
"romanian"
|
||||
{
|
||||
"title" "Gamepad cu controale pentru cameră"
|
||||
"description" "Acest șablon este pentru majoritatea jocurilor care au deja suport pentru gamepad implementat și au o cameră controlată din perspectivă first sau third person. FPS sau jocuri de aventură third person, etc."
|
||||
}
|
||||
"russian"
|
||||
{
|
||||
"title" "Геймпад с управлением камерой"
|
||||
"description" "Этот шаблон предназначен для большинства игр от первого или третьего лица, в которых уже есть встроенная поддержка геймпада (например, для шутеров или экшенов)."
|
||||
}
|
||||
"spanish"
|
||||
{
|
||||
"title" "Mando con controles de cámara"
|
||||
"description" "Esta plantilla es para la mayoría de juegos que ya incluyen de serie compatibilidad con mando y disponen de cámara controlada en primera o tercera persona: FPS, juegos de aventura en tercera persona, etc."
|
||||
}
|
||||
"swedish"
|
||||
{
|
||||
"title" "Gamepad med kamerakontroller"
|
||||
"description" "Denna mall är för de flesta spel som redan har inbyggt stöd för spelkontroller och har en kamera som styrs i första- eller tredjeperson. FPS eller äventyrsspel etc."
|
||||
}
|
||||
"schinese"
|
||||
{
|
||||
"title" "支持视角控制的手柄"
|
||||
"description" "该模板适用于已内置手柄支持,并且拥有第一或第三人称控制视角的大多数游戏。包括 FPS 或第三人称冒险游戏等。"
|
||||
}
|
||||
"thai"
|
||||
{
|
||||
"title" "เกมแพดพร้อมการควบคุมมุมกล้อง"
|
||||
"description" "แม่แบบนี้ใช้สำหรับเกมส่วนมากที่มีการรองรับเกมแพดมาในตัวอยู่แล้ว และมีการควบคุมมุมกล้องในมุมมองบุคคลที่หนึ่งหรือสาม เช่น เกมยิงมุมมองบุคคลที่หนึ่ง หรือเกมผจญภัยมุมมองบุคคลที่สาม ฯลฯ"
|
||||
}
|
||||
"brazilian"
|
||||
{
|
||||
"title" "Controle com controle de câmera"
|
||||
"description" "Este modelo é para jogos já compatíveis com controles que possuem uma câmera controlável, seja em primeira ou terceira pessoa, como jogos de tiro, aventura, etc."
|
||||
}
|
||||
"bulgarian"
|
||||
{
|
||||
"title" "Геймпад с управление на камерата"
|
||||
"description" "Този шаблон е за повечето игри, които вече имат вградена поддръжка на геймпад и включват управление на камерата от първо или трето лице. Екшъни от първо лице, приключенски игри от трето лице и т.н."
|
||||
}
|
||||
"greek"
|
||||
{
|
||||
"title" "Χειριστήριο με πλήκτρα κάμερας"
|
||||
"description" "Αυτό το πρότυπο είναι για τα περισσότερα παιχνίδια που έχουν ενσωματωμένη υποστήριξη χειριστηρίου και έχουν μια ελεγχόμενη κάμερα πρώτου ή τρίτου προσώπου. FPS ή παιχνίδια περιπέτειας τρίτου προσώπου κλπ."
|
||||
}
|
||||
"turkish"
|
||||
{
|
||||
"title" "Kamera Kontrollü Oyun Kumandası"
|
||||
"description" "Bu şablon hali hazırda oyun içi oyun kumandası desteği ve birincil veya üçüncü kişi kontrollü kameraya sahip oyunlar içindir. FPS veya Üçüncü Kişi Macera oyunları vb."
|
||||
}
|
||||
"ukrainian"
|
||||
{
|
||||
"title" "Ґеймпад з елементами керування камерою"
|
||||
"description" "Цей шаблон для більшості ігор, що вже мають вбудовану підтримку ґеймпада і у яких камера керується від першої або третьої особи. Шутери від першої особи чи пригодницькі ігри від третьої особи тощо."
|
||||
}
|
||||
}
|
||||
"group"
|
||||
{
|
||||
"id" "0"
|
||||
"mode" "four_buttons"
|
||||
"name" ""
|
||||
"description" ""
|
||||
"inputs"
|
||||
{
|
||||
"button_a"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button A, , "
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"button_b"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button B, , "
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"button_x"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button X, , "
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"button_y"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button Y, , "
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
"group"
|
||||
{
|
||||
"id" "1"
|
||||
"mode" "dpad"
|
||||
"name" ""
|
||||
"description" ""
|
||||
"inputs"
|
||||
{
|
||||
"dpad_north"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button dpad_up, , "
|
||||
}
|
||||
"settings"
|
||||
{
|
||||
"haptic_intensity" "1"
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"dpad_south"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button dpad_down, , "
|
||||
}
|
||||
"settings"
|
||||
{
|
||||
"haptic_intensity" "1"
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"dpad_east"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button dpad_right, , "
|
||||
}
|
||||
"settings"
|
||||
{
|
||||
"haptic_intensity" "1"
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"dpad_west"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button dpad_left, , "
|
||||
}
|
||||
"settings"
|
||||
{
|
||||
"haptic_intensity" "1"
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
"group"
|
||||
{
|
||||
"id" "2"
|
||||
"mode" "joystick_move"
|
||||
"name" ""
|
||||
"description" ""
|
||||
"inputs"
|
||||
{
|
||||
"click"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Soft_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button JOYSTICK_RIGHT, , "
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
"group"
|
||||
{
|
||||
"id" "3"
|
||||
"mode" "joystick_move"
|
||||
"name" ""
|
||||
"description" ""
|
||||
"inputs"
|
||||
{
|
||||
"click"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button JOYSTICK_LEFT, , "
|
||||
}
|
||||
"settings"
|
||||
{
|
||||
"haptic_intensity" "2"
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
"settings"
|
||||
{
|
||||
"deadzone_inner_radius" "7199"
|
||||
}
|
||||
}
|
||||
"group"
|
||||
{
|
||||
"id" "4"
|
||||
"mode" "trigger"
|
||||
"name" ""
|
||||
"description" ""
|
||||
"inputs"
|
||||
{
|
||||
}
|
||||
"settings"
|
||||
{
|
||||
"output_trigger" "1"
|
||||
}
|
||||
}
|
||||
"group"
|
||||
{
|
||||
"id" "5"
|
||||
"mode" "trigger"
|
||||
"name" ""
|
||||
"description" ""
|
||||
"inputs"
|
||||
{
|
||||
}
|
||||
"settings"
|
||||
{
|
||||
"output_trigger" "2"
|
||||
}
|
||||
}
|
||||
"group"
|
||||
{
|
||||
"id" "6"
|
||||
"mode" "joystick_move"
|
||||
"name" ""
|
||||
"description" ""
|
||||
"inputs"
|
||||
{
|
||||
"click"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Soft_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button JOYSTICK_RIGHT, , "
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
"group"
|
||||
{
|
||||
"id" "8"
|
||||
"mode" "joystick_move"
|
||||
"name" ""
|
||||
"description" ""
|
||||
"inputs"
|
||||
{
|
||||
"click"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button JOYSTICK_RIGHT, , "
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
"group"
|
||||
{
|
||||
"id" "9"
|
||||
"mode" "dpad"
|
||||
"name" ""
|
||||
"description" ""
|
||||
"inputs"
|
||||
{
|
||||
"dpad_north"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button DPAD_UP, , "
|
||||
}
|
||||
"settings"
|
||||
{
|
||||
"haptic_intensity" "1"
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"dpad_south"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button DPAD_DOWN, , "
|
||||
}
|
||||
"settings"
|
||||
{
|
||||
"haptic_intensity" "1"
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"dpad_east"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button DPAD_RIGHT, , "
|
||||
}
|
||||
"settings"
|
||||
{
|
||||
"haptic_intensity" "1"
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"dpad_west"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button DPAD_LEFT, , "
|
||||
}
|
||||
"settings"
|
||||
{
|
||||
"haptic_intensity" "1"
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
"settings"
|
||||
{
|
||||
"requires_click" "0"
|
||||
"haptic_intensity_override" "0"
|
||||
}
|
||||
}
|
||||
"group"
|
||||
{
|
||||
"id" "10"
|
||||
"mode" "single_button"
|
||||
"name" ""
|
||||
"description" ""
|
||||
"inputs"
|
||||
{
|
||||
"click"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Soft_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button START, , "
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
"group"
|
||||
{
|
||||
"id" "11"
|
||||
"mode" "single_button"
|
||||
"name" ""
|
||||
"description" ""
|
||||
"inputs"
|
||||
{
|
||||
"click"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Soft_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button SELECT, , "
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
"group"
|
||||
{
|
||||
"id" "12"
|
||||
"mode" "mouse_joystick"
|
||||
"name" ""
|
||||
"description" ""
|
||||
"inputs"
|
||||
{
|
||||
"click"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Soft_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button JOYSTICK_RIGHT, , "
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
"group"
|
||||
{
|
||||
"id" "14"
|
||||
"mode" "touch_menu"
|
||||
"name" ""
|
||||
"description" ""
|
||||
"inputs"
|
||||
{
|
||||
"touch_menu_button_0"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Long_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "key_press A, Save State, ghost_075_utility_020.png, #232323 #0074ad"
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"touch_menu_button_1"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Long_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "controller_action empty_binding, , "
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"touch_menu_button_2"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Long_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "key_press B, Load State, ghost_075_utility_010.png, #232323 #0074ad"
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"touch_menu_button_3"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Long_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "key_press D, Pause/Play, ghost_090_media_0210.png, #232323 #E4E4E4"
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"touch_menu_button_4"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Long_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "key_press Z, Menu, ghost_070_setting_0030.png, #232323 #E4E4E4"
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"touch_menu_button_5"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Long_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "key_press X, Reset, ghost_075_utility_040.png, #232323 #E4E4E4"
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"touch_menu_button_6"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Long_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "key_press G, Rewind, ghost_090_media_0200.png, #232323 #00AD00"
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"touch_menu_button_7"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "controller_action empty_sub_command, , "
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"touch_menu_button_8"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Long_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "key_press F, Fast Forward, ghost_090_media_0190.png, #232323 #00AD3D"
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
"settings"
|
||||
{
|
||||
"mouse_smoothing" "0"
|
||||
"touch_menu_button_count" "9"
|
||||
"touch_menu_scale" "120"
|
||||
"touch_menu_show_labels" "0"
|
||||
}
|
||||
}
|
||||
"group"
|
||||
{
|
||||
"id" "7"
|
||||
"mode" "switches"
|
||||
"name" ""
|
||||
"description" ""
|
||||
"inputs"
|
||||
{
|
||||
"button_escape"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button start, , "
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"button_menu"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button select, , "
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"left_bumper"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button shoulder_left, , "
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"right_bumper"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"Full_Press"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "xinput_button shoulder_right, , "
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
"button_capture"
|
||||
{
|
||||
"activators"
|
||||
{
|
||||
"release"
|
||||
{
|
||||
"bindings"
|
||||
{
|
||||
"binding" "controller_action system_key_1, , "
|
||||
}
|
||||
}
|
||||
}
|
||||
"disabled_activators"
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
"preset"
|
||||
{
|
||||
"id" "0"
|
||||
"name" "Default"
|
||||
"group_source_bindings"
|
||||
{
|
||||
"7" "switch active"
|
||||
"0" "button_diamond active"
|
||||
"1" "left_trackpad inactive"
|
||||
"11" "left_trackpad inactive"
|
||||
"14" "left_trackpad active"
|
||||
"2" "right_trackpad inactive"
|
||||
"6" "right_trackpad inactive"
|
||||
"10" "right_trackpad inactive"
|
||||
"12" "right_trackpad active"
|
||||
"3" "joystick active"
|
||||
"4" "left_trigger active"
|
||||
"5" "right_trigger active"
|
||||
"8" "right_joystick active"
|
||||
"9" "dpad active"
|
||||
}
|
||||
}
|
||||
"settings"
|
||||
{
|
||||
"left_trackpad_mode" "0"
|
||||
"right_trackpad_mode" "0"
|
||||
}
|
||||
}
|
|
@ -1504,6 +1504,68 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"parserType": "Glob",
|
||||
"configTitle": "Nintendo GameBoy - mGBA",
|
||||
"steamCategory": "${GameBoy}",
|
||||
"executableModifier": "\"${exePath}\"",
|
||||
"romDirectory": "${romsdirglobal}/gb",
|
||||
"steamDirectory": "${steamdirglobal}",
|
||||
"startInDirectory": "",
|
||||
"titleModifier": "${fuzzyTitle}",
|
||||
"executableArgs": "-f \"'${filePath}'\"",
|
||||
"onlineImageQueries": "${${fuzzyTitle}}",
|
||||
"imagePool": "${fuzzyTitle}",
|
||||
"imageProviders": ["SteamGridDB"],
|
||||
"defaultImage": "",
|
||||
"defaultTallImage": "",
|
||||
"defaultHeroImage": "",
|
||||
"defaultLogoImage": "",
|
||||
"defaultIcon": "/home/deck/.config/EmuDeck/backend/configs/steam-rom-manager/userData/img/default/icon.png",
|
||||
"localImages": "",
|
||||
"localTallImages": "",
|
||||
"localHeroImages": "",
|
||||
"localLogoImages": "",
|
||||
"localIcons": "",
|
||||
"disabled": true,
|
||||
"userAccounts": {
|
||||
"specifiedAccounts": "",
|
||||
"skipWithMissingDataDir": true,
|
||||
"useCredentials": true
|
||||
},
|
||||
"parserInputs": {
|
||||
"glob": "${title}@(.7z|.7Z|.gb|.GB|.dmg|.DMG|.zip|.ZIP)"
|
||||
},
|
||||
"titleFromVariable": {
|
||||
"limitToGroups": "",
|
||||
"caseInsensitiveVariables": false,
|
||||
"skipFileIfVariableWasNotFound": false,
|
||||
"tryToMatchTitle": false
|
||||
},
|
||||
"fuzzyMatch": {
|
||||
"replaceDiacritics": true,
|
||||
"removeCharacters": true,
|
||||
"removeBrackets": true
|
||||
},
|
||||
"executable": {
|
||||
"path": "/run/media/mmcblk0p1/Emulation/tools/launchers/mgba.sh",
|
||||
"shortcutPassthrough": false,
|
||||
"appendArgsToExecutable": false
|
||||
},
|
||||
"parserId": "164785621855061650",
|
||||
"version": 10,
|
||||
"imageProviderAPIs": {
|
||||
"SteamGridDB": {
|
||||
"nsfw": false,
|
||||
"humor": false,
|
||||
"imageMotionTypes": ["static"],
|
||||
"styles": [],
|
||||
"stylesHero": [],
|
||||
"stylesLogo": [],
|
||||
"stylesIcon": []
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"parserType": "Glob",
|
||||
"configTitle": "Nintendo GameBoy Color - Retroarch - Gambatte",
|
||||
|
@ -1566,6 +1628,68 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"parserType": "Glob",
|
||||
"configTitle": "Nintendo GameBoy Color - mGBA",
|
||||
"steamCategory": "${GameBoy Color}",
|
||||
"executableModifier": "\"${exePath}\"",
|
||||
"romDirectory": "${romsdirglobal}/gbc",
|
||||
"steamDirectory": "${steamdirglobal}",
|
||||
"startInDirectory": "",
|
||||
"titleModifier": "${fuzzyTitle}",
|
||||
"executableArgs": "-f \"'${filePath}'\"",
|
||||
"onlineImageQueries": "${${fuzzyTitle}}",
|
||||
"imagePool": "${fuzzyTitle}",
|
||||
"imageProviders": ["SteamGridDB"],
|
||||
"defaultImage": "",
|
||||
"defaultTallImage": "",
|
||||
"defaultHeroImage": "",
|
||||
"defaultLogoImage": "",
|
||||
"defaultIcon": "/home/deck/.config/EmuDeck/backend/configs/steam-rom-manager/userData/img/default/icon.png",
|
||||
"localImages": "",
|
||||
"localTallImages": "",
|
||||
"localHeroImages": "",
|
||||
"localLogoImages": "",
|
||||
"localIcons": "",
|
||||
"disabled": true,
|
||||
"userAccounts": {
|
||||
"specifiedAccounts": "",
|
||||
"skipWithMissingDataDir": true,
|
||||
"useCredentials": true
|
||||
},
|
||||
"parserInputs": {
|
||||
"glob": "${title}@(.7z|.7Z|.gb|.GB|.gbc|.GBC|.zip|.ZIP)"
|
||||
},
|
||||
"titleFromVariable": {
|
||||
"limitToGroups": "",
|
||||
"caseInsensitiveVariables": false,
|
||||
"skipFileIfVariableWasNotFound": false,
|
||||
"tryToMatchTitle": false
|
||||
},
|
||||
"fuzzyMatch": {
|
||||
"replaceDiacritics": true,
|
||||
"removeCharacters": true,
|
||||
"removeBrackets": true
|
||||
},
|
||||
"executable": {
|
||||
"path": "/run/media/mmcblk0p1/Emulation/tools/launchers/mgba.sh",
|
||||
"shortcutPassthrough": false,
|
||||
"appendArgsToExecutable": false
|
||||
},
|
||||
"parserId": "164785621855061650",
|
||||
"version": 10,
|
||||
"imageProviderAPIs": {
|
||||
"SteamGridDB": {
|
||||
"nsfw": false,
|
||||
"humor": false,
|
||||
"imageMotionTypes": ["static"],
|
||||
"styles": [],
|
||||
"stylesHero": [],
|
||||
"stylesLogo": [],
|
||||
"stylesIcon": []
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"parserType": "Glob",
|
||||
"configTitle": "Nintendo GameBoy Advance - Retroarch - mGBA",
|
||||
|
@ -1628,6 +1752,68 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"parserType": "Glob",
|
||||
"configTitle": "Nintendo GameBoy Advance - mGBA (Standalone)",
|
||||
"steamCategory": "${GameBoy Advance}",
|
||||
"executableModifier": "\"${exePath}\"",
|
||||
"romDirectory": "${romsdirglobal}/gba",
|
||||
"steamDirectory": "${steamdirglobal}",
|
||||
"startInDirectory": "",
|
||||
"titleModifier": "${fuzzyTitle}",
|
||||
"executableArgs": "-f \"'${filePath}'\"",
|
||||
"onlineImageQueries": "${${fuzzyTitle}}",
|
||||
"imagePool": "${fuzzyTitle}",
|
||||
"imageProviders": ["SteamGridDB"],
|
||||
"defaultImage": "",
|
||||
"defaultTallImage": "",
|
||||
"defaultHeroImage": "",
|
||||
"defaultLogoImage": "",
|
||||
"defaultIcon": "/home/deck/.config/EmuDeck/backend/configs/steam-rom-manager/userData/img/default/icon.png",
|
||||
"localImages": "",
|
||||
"localTallImages": "",
|
||||
"localHeroImages": "",
|
||||
"localLogoImages": "",
|
||||
"localIcons": "",
|
||||
"disabled": true,
|
||||
"userAccounts": {
|
||||
"specifiedAccounts": "",
|
||||
"skipWithMissingDataDir": true,
|
||||
"useCredentials": true
|
||||
},
|
||||
"parserInputs": {
|
||||
"glob": "${title}@(.7z|.7Z|.gba|.GBA|.zip|.ZIP)"
|
||||
},
|
||||
"titleFromVariable": {
|
||||
"limitToGroups": "",
|
||||
"caseInsensitiveVariables": false,
|
||||
"skipFileIfVariableWasNotFound": false,
|
||||
"tryToMatchTitle": false
|
||||
},
|
||||
"fuzzyMatch": {
|
||||
"replaceDiacritics": true,
|
||||
"removeCharacters": true,
|
||||
"removeBrackets": true
|
||||
},
|
||||
"executable": {
|
||||
"path": "/run/media/mmcblk0p1/Emulation/tools/launchers/mgba.sh",
|
||||
"shortcutPassthrough": false,
|
||||
"appendArgsToExecutable": false
|
||||
},
|
||||
"parserId": "164785621855061652",
|
||||
"version": 10,
|
||||
"imageProviderAPIs": {
|
||||
"SteamGridDB": {
|
||||
"nsfw": false,
|
||||
"humor": false,
|
||||
"imageMotionTypes": ["static"],
|
||||
"styles": [],
|
||||
"stylesHero": [],
|
||||
"stylesLogo": [],
|
||||
"stylesIcon": []
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"parserType": "Glob",
|
||||
"configTitle": "Nintendo GameCube - Dolphin",
|
||||
|
|
123
functions/EmuScripts/emuDeckMGBA.sh
Normal file
123
functions/EmuScripts/emuDeckMGBA.sh
Normal file
|
@ -0,0 +1,123 @@
|
|||
#!/bin/bash
|
||||
#variables
|
||||
mGBA_emuName="mGBA"
|
||||
mGBA_emuType="AppImage"
|
||||
mGBA_emuPath="$HOME/Applications/mGBA.AppImage"
|
||||
mGBA_configFile="$HOME/.config/mgba/config.ini"
|
||||
|
||||
#cleanupOlderThings
|
||||
mGBA_cleanup(){
|
||||
echo "NYI"
|
||||
}
|
||||
|
||||
#Install
|
||||
mGBA_install(){
|
||||
echo "Begin mGBA Install"
|
||||
installEmuAI "mGBA" "$(getReleaseURLGH "mgba-emu/mgba" "x64.appimage")" #mgba.AppImage
|
||||
}
|
||||
|
||||
#ApplyInitialSettings
|
||||
mGBA_init(){
|
||||
setMSG "Initializing $mGBA_emuName settings."
|
||||
configEmuAI "$mGBA_emuName" "config" "$HOME/.config/mgba" "$EMUDECKGIT/configs/mgba" "true"
|
||||
mGBA_setupStorage
|
||||
mGBA_setEmulationFolder
|
||||
mGBA_setupSaves
|
||||
mGBA_addSteamInputProfile
|
||||
}
|
||||
|
||||
#update
|
||||
mGBA_update(){
|
||||
setMSG "Updating $mGBA_emuName settings."
|
||||
configEmuAI "$mGBA_emuName" "config" "$HOME/.config/mgba" "$EMUDECKGIT/configs/mgba"
|
||||
mGBA_setupStorage
|
||||
mGBA_setEmulationFolder
|
||||
mGBA_setupSaves
|
||||
mGBA_addSteamInputProfile
|
||||
}
|
||||
|
||||
#ConfigurePaths
|
||||
mGBA_setEmulationFolder(){
|
||||
echo "NYI"
|
||||
}
|
||||
|
||||
#SetupSaves
|
||||
mGBA_setupSaves(){
|
||||
mkdir -p "$savesPath/mgba/saves"
|
||||
mkdir -p "$savesPath/mgba/states"
|
||||
}
|
||||
|
||||
|
||||
#SetupStorage
|
||||
mGBA_setupStorage(){
|
||||
mkdir -p "$storagePath/mgba/cheats"
|
||||
mkdir -p "$storagePath/mgba/patches"
|
||||
mkdir -p "$storagePath/mgba/screenshots"
|
||||
}
|
||||
|
||||
|
||||
#WipeSettings
|
||||
mGBA_wipe(){
|
||||
setMSG "Wiping $mGBA_emuName settings."
|
||||
rm -rf "$HOME/.config/mgba"
|
||||
}
|
||||
|
||||
|
||||
#Uninstall
|
||||
mGBA_uninstall(){
|
||||
setMSG "Uninstalling $mGBA_emuName."
|
||||
rm -rf "$emuPath"
|
||||
}
|
||||
|
||||
#setABXYstyle
|
||||
mGBA_setABXYstyle(){
|
||||
echo "NYI"
|
||||
}
|
||||
|
||||
#Migrate
|
||||
mGBA_migrate(){
|
||||
echo "NYI"
|
||||
}
|
||||
|
||||
#WideScreenOn
|
||||
mGBA_wideScreenOn(){
|
||||
echo "NYI"
|
||||
}
|
||||
|
||||
#WideScreenOff
|
||||
mGBA_wideScreenOff(){
|
||||
echo "NYI"
|
||||
}
|
||||
|
||||
#BezelOn
|
||||
mGBA_bezelOn(){
|
||||
echo "NYI"
|
||||
}
|
||||
|
||||
#BezelOff
|
||||
mGBA_bezelOff(){
|
||||
echo "NYI"
|
||||
}
|
||||
|
||||
mGBA_IsInstalled(){
|
||||
if [ -e "$mGBA_emuPath" ]; then
|
||||
echo "true"
|
||||
else
|
||||
echo "false"
|
||||
fi
|
||||
}
|
||||
|
||||
mGBA_resetConfig(){
|
||||
mGBA_init &>/dev/null && echo "true" || echo "false"
|
||||
}
|
||||
|
||||
#finalExec - Extra stuff
|
||||
mGBA_finalize(){
|
||||
echo "NYI"
|
||||
}
|
||||
|
||||
mGBA_addSteamInputProfile(){
|
||||
echo "NYI"
|
||||
setMSG "Adding $mGBA_emuName Steam Input Profile."
|
||||
rsync -r "$EMUDECKGIT/configs/steam-input/mGBA_controller_config.vdf" "$HOME/.steam/steam/controller_base/templates/"
|
||||
}
|
|
@ -64,12 +64,11 @@ source "$EMUDECKGIT"/functions/EmuScripts/emuDeckPCSX2QT.sh
|
|||
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckMAME.sh
|
||||
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckScummVM.sh
|
||||
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckVita3K.sh
|
||||
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckMGBA.sh
|
||||
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckRMG.sh
|
||||
source "$EMUDECKGIT"/functions/EmuScripts/emuDeckMelonDS.sh
|
||||
|
||||
|
||||
#Soon
|
||||
#source "$EMUDECKGIT"/EmuScripts/emuDeckMgba.sh
|
||||
#source "$EMUDECKGIT"/EmuScripts/emuDeckRedream.sh
|
||||
#source "$EMUDECKGIT"/EmuScripts/emuDeckMAMEProton.sh
|
||||
|
||||
|
|
|
@ -252,6 +252,7 @@ function createUpdateSettingsFile(){
|
|||
defaultSettingsList+=("doSetupVita3K=true")
|
||||
defaultSettingsList+=("doSetupRMG=true")
|
||||
#defaultSettingsList+=("doSetupMelon=true")
|
||||
defaultSettingsList+=("doSetupMGBA=true")
|
||||
defaultSettingsList+=("doInstallSRM=true")
|
||||
defaultSettingsList+=("doInstallESDE=true")
|
||||
defaultSettingsList+=("doInstallRA=true")
|
||||
|
@ -272,6 +273,7 @@ function createUpdateSettingsFile(){
|
|||
defaultSettingsList+=("doInstallScummVM=true")
|
||||
defaultSettingsList+=("doInstallVita3K=true")
|
||||
#defaultSettingsList+=("doInstallMelon=false")
|
||||
defaultSettingsList+=("doInstallMGBA=false")
|
||||
defaultSettingsList+=("doInstallCHD=true")
|
||||
defaultSettingsList+=("doInstallPowertools=false")
|
||||
defaultSettingsList+=("doInstallGyro=false")
|
||||
|
|
|
@ -398,6 +398,7 @@ if [ "$RUNCHOICE" == 1 ]; then
|
|||
if [[ $doSelectEmulators == "true" ]]; then
|
||||
|
||||
emuTable=()
|
||||
emuTable+=(TRUE "GameBoy / Color / Advance" "mGBA")
|
||||
emuTable+=(TRUE "Multiple" "RetroArch")
|
||||
emuTable+=(TRUE "Metroid Prime" "PrimeHack")
|
||||
emuTable+=(TRUE "PS2" "PCSX2")
|
||||
|
@ -435,6 +436,9 @@ if [ "$RUNCHOICE" == 1 ]; then
|
|||
|
||||
if [ $ans -eq 0 ]; then
|
||||
echo "Emu Install selected: $emusToInstall"
|
||||
if [[ "$emusToInstall" == *"mGBA"* ]]; then
|
||||
setSetting doInstallMGBA true
|
||||
fi
|
||||
if [[ "$emusToInstall" == *"RetroArch"* ]]; then
|
||||
setSetting doInstallRA true
|
||||
fi
|
||||
|
@ -553,6 +557,7 @@ if [ "$RUNCHOICE" == 1 ]; then
|
|||
if [ -f "$SECONDTIME" ]; then
|
||||
|
||||
emuTable=()
|
||||
emuTable+=(TRUE "mGBA")
|
||||
emuTable+=(TRUE "RetroArch")
|
||||
emuTable+=(TRUE "PrimeHack")
|
||||
emuTable+=(TRUE "PCSX2")
|
||||
|
@ -587,6 +592,9 @@ if [ "$RUNCHOICE" == 1 ]; then
|
|||
echo -e "EmuDeck ${version}"
|
||||
if [ $ans -eq 0 ]; then
|
||||
echo "Emulators to reinstall selected: $emusToReset"
|
||||
if [[ "$emusToReset" == *"mGBA"* ]]; then
|
||||
setSetting doSetupMGBA true
|
||||
fi
|
||||
if [[ "$emusToReset" == *"RetroArch"* ]]; then
|
||||
setSetting doSetupRA true
|
||||
fi
|
||||
|
@ -648,6 +656,7 @@ if [ "$RUNCHOICE" == 1 ]; then
|
|||
fi
|
||||
else
|
||||
#easy mode settings
|
||||
setSetting doInstallMGBA true
|
||||
setSetting doInstallRA true
|
||||
setSetting doInstallDolphin true
|
||||
setSetting doInstallPCSX2 true
|
||||
|
@ -738,6 +747,9 @@ if [ $doInstallSRM == "true" ]; then
|
|||
SRM_install
|
||||
fi
|
||||
#Emulators Installation
|
||||
if [ "$doInstallMGBA" == "true" ]; then
|
||||
MGBA_install
|
||||
fi
|
||||
if [ "$doInstallPCSX2" == "true" ]; then
|
||||
PCSX2_install
|
||||
fi
|
||||
|
@ -806,6 +818,9 @@ fi
|
|||
if [ "$doSetupDolphin" == "true" ]; then
|
||||
Dolphin_init
|
||||
fi
|
||||
if [ "$doSetupMGBA" == "true" ]; then
|
||||
mGBA_init
|
||||
fi
|
||||
if [ "$doSetupPCSX2" == "true" ]; then
|
||||
PCSX2_init
|
||||
fi
|
||||
|
|
|
@ -25,6 +25,7 @@ doSetupESDE=true
|
|||
doSetupSRM=true
|
||||
doSetupPCSX2QT=true
|
||||
#doSetupMelon=true
|
||||
doSetupMGBA=true
|
||||
|
||||
#Install all systems by default
|
||||
doInstallSRM=true
|
||||
|
@ -46,6 +47,7 @@ doInstallXemu=false
|
|||
doInstallPCSX2QT=false
|
||||
doInstallMAME=true
|
||||
#doInstallMelon=false
|
||||
doInstallMGBA=false
|
||||
doInstallCHD=false
|
||||
doInstallPowertools=false
|
||||
doInstallGyro=false
|
||||
|
|
8
setup.sh
8
setup.sh
|
@ -312,6 +312,10 @@ if [ $doInstallVita3K == "true" ]; then
|
|||
echo "Vita3K_install"
|
||||
Vita3K_install
|
||||
fi
|
||||
if [ $doInstallMGBA == "true" ]; then
|
||||
echo "mGBA_install"
|
||||
mGBA_install
|
||||
fi
|
||||
#Xenia - We need to install Xenia after creating the Roms folders!
|
||||
if [ "$doInstallXenia" == "true" ]; then
|
||||
echo "Xenia_install"
|
||||
|
@ -397,6 +401,10 @@ if [ "$doSetupVita3K" == "true" ]; then
|
|||
echo "Vita3K_init"
|
||||
Vita3K_init
|
||||
fi
|
||||
if [ "$doSetupMGBA" == "true" ]; then
|
||||
echo "mGBA_init"
|
||||
mGBA_init
|
||||
fi
|
||||
if [ "${doSetupCemuNative}" == "true" ]; then
|
||||
echo "CemuNative_init"
|
||||
CemuNative_init
|
||||
|
|
24
tools/launchers/mgba.sh
Normal file
24
tools/launchers/mgba.sh
Normal file
|
@ -0,0 +1,24 @@
|
|||
#!/bin/sh
|
||||
emuName="mGBA" #parameterize me
|
||||
emufolder="$HOME/Applications" # has to be applications for ES-DE to find it
|
||||
|
||||
#find full path to emu executable
|
||||
exe=$(find $emufolder -iname "${emuName}*.AppImage" | sort -n | cut -d' ' -f 2- | tail -n 1 2>/dev/null)
|
||||
|
||||
#if appimage doesn't exist fall back to flatpak.
|
||||
if [[ $exe == '' ]]; then
|
||||
#flatpak
|
||||
flatpakApp=$(flatpak list --app --columns=application | grep $emuName)
|
||||
exe="/usr/bin/flatpak run "$flatpakApp
|
||||
else
|
||||
#make sure that file is executable
|
||||
chmod +x $exe
|
||||
fi
|
||||
#run the executable with the params.
|
||||
#Fix first '
|
||||
param="${@}"
|
||||
substituteWith='"'
|
||||
param=${param/\'/"$substituteWith"}
|
||||
#Fix last ' on command
|
||||
param=$(echo "$param" | sed 's/.$/"/')
|
||||
eval "${exe} ${param}"
|
10
uninstall.sh
10
uninstall.sh
|
@ -17,6 +17,7 @@ doUninstallPPSSPP=true
|
|||
doUninstallMame=true
|
||||
doUninstallSRM=true
|
||||
doUninstallESDE=true
|
||||
doUninstallMGBA=true
|
||||
doUninstallRMG=true
|
||||
|
||||
LOGFILE="$HOME/Desktop/emudeck-uninstall.log"
|
||||
|
@ -138,7 +139,10 @@ if [ "$doUninstall" == true ]; then
|
|||
fi
|
||||
if [[ "$emusToUninstall" == *"Mame"* ]]; then
|
||||
doUninstallMame=false
|
||||
fi
|
||||
fi
|
||||
if [[ "$emusToUninstall" == *"mGBA"* ]]; then
|
||||
doUninstallMGBA=false
|
||||
fi
|
||||
if [[ "$emusToUninstall" == *"RMG"* ]]; then
|
||||
doUninstallRMG=false
|
||||
fi
|
||||
|
@ -209,6 +213,10 @@ if [ "$doUninstall" == true ]; then
|
|||
flatpak uninstall org.mamedev.MAME --system -y
|
||||
rm -rf ~/.var/app/org.mamedev.MAME &>> /dev/null
|
||||
fi
|
||||
if [[ "$doUninstallMGBA" == true ]]; then
|
||||
rm -rf ~/Applications/mGBA.AppImage &>> /dev/null
|
||||
rm -rf ~/.config/mgba
|
||||
fi
|
||||
if [[ "$doUninstallRMG" == true ]]; then
|
||||
flatpak uninstall org.com.github.Rosalie241.RMG --system -y
|
||||
rm -rf ~/.var/app/com.github.Rosalie241.RMG &>> /dev/null
|
||||
|
|
|
@ -323,7 +323,8 @@ if [ "$expert" == "true" ]; then
|
|||
emuTable+=(TRUE "WiiU" "Cemu")
|
||||
emuTable+=(TRUE "XBox" "Xemu")
|
||||
emuTable+=(TRUE "N64" "RMG")
|
||||
|
||||
emuTable+=(FALSE "GameBoy / Color / Advance" "mGBA")
|
||||
|
||||
#if we are in beta / dev install, allow Xenia. Still false by default though. Will only work on expert mode, and explicitly turned on.
|
||||
if [[ $branch == "beta" || $branch == "dev" ]]; then
|
||||
emuTable+=(FALSE "Xbox360" "Xenia")
|
||||
|
@ -393,6 +394,11 @@ if [ "$expert" == "true" ]; then
|
|||
else
|
||||
setSetting doInstallPPSSPP false
|
||||
fi
|
||||
if [[ "$emusToInstall" == *"mGBA"* ]]; then
|
||||
setSetting doInstallMGBA true
|
||||
else
|
||||
setSetting doInstallMGBA false
|
||||
fi
|
||||
if [[ "$emusToInstall" == *"Yuzu"* ]]; then
|
||||
setSetting doInstallYuzu true
|
||||
else
|
||||
|
@ -580,6 +586,11 @@ if [ "$expert" == "true" ]; then
|
|||
else
|
||||
setSetting doSetupPPSSPP false
|
||||
fi
|
||||
if [[ "$emusToReset" == *"mGBA"* ]]; then
|
||||
setSetting doSetupMGBA true
|
||||
else
|
||||
setSetting doSetupMGBA false
|
||||
fi
|
||||
if [[ "$emusToReset" == *"Yuzu"* ]]; then
|
||||
setSetting doSetupYuzu true
|
||||
else
|
||||
|
@ -641,12 +652,12 @@ else
|
|||
setSetting doInstallCitra true
|
||||
setSetting doInstallDuck true
|
||||
setSetting doInstallCemu true
|
||||
setSetting doInstallXenia false
|
||||
setSetting doInstallPrimeHacks true
|
||||
setSetting doInstallPPSSPP true
|
||||
setSetting doInstallXemu true
|
||||
setSetting doInstallMAME true
|
||||
setSetting doInstallXenia false
|
||||
setSetting doInstallMGBA false
|
||||
setSetting doInstallRMG true
|
||||
#doInstallMelon=true
|
||||
|
||||
|
@ -665,6 +676,7 @@ else
|
|||
setSetting doSetupMAME true
|
||||
setSetting doSetupCemu true
|
||||
setSetting doSetupXenia false
|
||||
setSetting doSetupMGBA false
|
||||
setSetting doSetupRMG true
|
||||
|
||||
#widescreen off by default
|
||||
|
|
Loading…
Reference in a new issue