diff --git a/emu-configs/defaults/duckstation/settings.ini b/emu-configs/defaults/duckstation/settings.ini index 50d2654f..43f1ef6e 100644 --- a/emu-configs/defaults/duckstation/settings.ini +++ b/emu-configs/defaults/duckstation/settings.ini @@ -7,25 +7,23 @@ SyncToHostRefreshRate = false IncreaseTimerResolution = true InhibitScreensaver = true StartPaused = false -StartFullscreen = false +StartFullscreen = true PauseOnFocusLoss = false PauseOnMenu = true SaveStateOnExit = true -CreateSaveStateBackups = true -CompressSaveStates = true -ConfirmPowerOff = true +ConfirmPowerOff = false LoadDevicesFromSaveStates = false -ApplyCompatibilitySettings = true ApplyGameSettings = true AutoLoadCheats = true DisableAllEnhancements = false RewindEnable = false RewindFrequency = 10.000000 RewindSaveSlots = 10 -RunaheadFrameCount = 0 +RunaheadFrameCount = 0.000000 ControllerBackend = SDL ControllerEnhancedMode = false EnableDiscordPresence = false +RenderToMainWindow = true [Console] @@ -35,19 +33,17 @@ Enable8MBRAM = false [CPU] ExecutionMode = Recompiler -OverclockEnable = false OverclockNumerator = 1 OverclockDenominator = 1 OverclockEnable = false RecompilerMemoryExceptions = false RecompilerBlockLinking = true -RecompilerICache = false -FastmemMode = MMap +ICache = false +FastmemMode = true [GPU] Renderer = OpenGL -Adapter = ResolutionScale = 1 Multisamples = 1 UseDebugDevice = false @@ -55,8 +51,7 @@ UseSoftwareRendererForReadbacks = false PerSampleShading = false UseThread = true ThreadedPresentation = true -UseSoftwareRendererForReadbacks = false -TrueColor = true +TrueColor = false ScaledDithering = true TextureFilter = Nearest DownsampleMode = Disabled @@ -67,13 +62,12 @@ ChromaSmoothing24Bit = false PGXPEnable = false PGXPCulling = true PGXPTextureCorrection = true -PGXPColorCorrection = false PGXPVertexCache = false PGXPCPU = false PGXPPreserveProjFP = false PGXPTolerance = -1.000000 PGXPDepthBuffer = false -PGXPDepthClearThreshold = 1228800.000000 +PGXPDepthClearThreshold = 300.000000 [Display] @@ -82,10 +76,9 @@ ActiveStartOffset = 0 ActiveEndOffset = 0 LineStartOffset = 0 LineEndOffset = 0 -Force4_3For24Bit = false AspectRatio = Auto (Game Native) -Alignment = Center -CustomAspectRatioNumerator = 0 +CustomAspectRatioNumerator = 4 +Force4_3For24Bit = false LinearFiltering = true IntegerScaling = false Stretch = false @@ -95,10 +88,7 @@ ShowFPS = false ShowVPS = false ShowSpeed = false ShowResolution = false -ShowCPU = false -ShowGPU = false ShowStatusIndicators = true -ShowInputs = false ShowEnhancements = false Fullscreen = false VSync = false @@ -106,16 +96,12 @@ DisplayAllFrames = false PostProcessChain = MaxFPS = 0.000000 InternalResolutionScreenshots = false -VSync = false -MaxFPS = 0.000000 -OSDScale = 100.000000 [CDROM] ReadaheadSectors = 8 RegionCheck = false LoadImageToRAM = false -LoadImagePatches = false MuteCDAudio = false ReadSpeedup = 1 SeekSpeedup = 1 @@ -123,57 +109,84 @@ SeekSpeedup = 1 [Audio] Backend = Cubeb -Driver = -StretchMode = TimeStretch -BufferMS = 50 -OutputLatencyMS = 20 OutputVolume = 100 FastForwardVolume = 100 -OutputMuted = false +BufferSize = 2048 +Resampling = true +OutputMuted = 0 +Sync = true DumpOnBoot = false -[Hacks] -DMAMaxSliceTicks = 1000 -DMAHaltTicks = 100 -GPUFIFOSize = 16 -GPUMaxRunAhead = 128 - - [BIOS] -PatchTTYEnable = false -PatchFastBoot = false -SearchDirectory = bios +SearchDirectory = /home/deck/retrodeck/bios PathNTSCU = PathNTSCJ = PathPAL = +PatchTTYEnable = false +PatchFastBoot = false + + +[Controller1] +Type = AnalogController +ButtonUp = Controller0/Button11 +ButtonDown = Controller0/Button12 +ButtonLeft = Controller0/Button13 +ButtonRight = Controller0/Button14 +ButtonSelect = Controller0/Button4 +ButtonStart = Controller0/Button6 +ButtonTriangle = Controller0/Button3 +ButtonCross = Controller0/Button0 +ButtonSquare = Controller0/Button2 +ButtonCircle = Controller0/Button1 +ButtonL1 = Controller0/Button9 +ButtonL2 = Controller0/+Axis4 +ButtonR1 = Controller0/Button10 +ButtonR2 = Controller0/+Axis5 +ButtonL3 = Controller0/Button7 +ButtonR3 = Controller0/Button8 +AxisLeftX = Controller0/Axis0 +AxisLeftY = Controller0/Axis1 +AxisRightX = Controller0/Axis2 +AxisRightY = Controller0/Axis3 + + +[Controller2] +Type = None + + +[Controller3] +Type = None + + +[Controller4] +Type = None + + +[Controller5] +Type = None + + +[Controller6] +Type = None + + +[Controller7] +Type = None + + +[Controller8] +Type = None [MemoryCards] Card1Type = PerGameTitle Card2Type = None UsePlaylistTitle = true -Directory = memcards [ControllerPorts] MultitapMode = Disabled -PointerXScale = 8.000000 -PointerYScale = 8.000000 -PointerXInvert = false -PointerYInvert = false - - -[Cheevos] -Enabled = false -TestMode = false -UnofficialTestMode = false -UseFirstDiscFromPlaylist = true -RichPresence = true -ChallengeMode = false -Leaderboards = true -SoundEffects = true -PrimedIndicators = true [Logging] @@ -197,103 +210,32 @@ ShowMDECState = false ShowDMAState = false -[TextureReplacements] -EnableVRAMWriteReplacements = false -PreloadTextures = false -DumpVRAMWrites = false -DumpVRAMWriteForceAlphaChannel = true -DumpVRAMWriteWidthThreshold = 128 -DumpVRAMWriteHeightThreshold = 128 - - -[Folders] -Cache = cache -Cheats = cheats -Covers = covers -Dumps = dump -GameSettings = gamesettings -InputProfiles = inputprofiles -SaveStates = savestates -Screenshots = screenshots -Shaders = shaders -Textures = textures - - -[UI] -MainWindowGeometry = AdnQywADAAAAAAGWAAAAeQAABLUAAAM0AAABlgAAAHkAAAS1AAADNAAAAAAAAAAABk0AAAGWAAAAeQAABLUAAAM0 - - -[InputSources] -SDL = true -SDLControllerEnhancedMode = false -Evdev = false -XInput = false -RawInput = false - - -[Pad1] -Type = AnalogController -Up = Keyboard/Up -Right = Keyboard/Right -Down = Keyboard/Down -Left = Keyboard/Left -Triangle = Keyboard/I -Circle = Keyboard/L -Cross = Keyboard/K -Square = Keyboard/J -Select = Keyboard/Backspace -Start = Keyboard/Return -L1 = Keyboard/Q -R1 = Keyboard/E -L2 = Keyboard/1 -R2 = Keyboard/3 -L3 = Keyboard/2 -R3 = Keyboard/4 -LLeft = Keyboard/A -LRight = Keyboard/D -LDown = Keyboard/S -LUp = Keyboard/W -RLeft = Keyboard/F -RRight = Keyboard/H -RDown = Keyboard/G -RUp = Keyboard/T - - -[Pad2] -Type = None - - -[Pad3] -Type = None - - -[Pad4] -Type = None - - -[Pad5] -Type = None - - -[Pad6] -Type = None - - -[Pad7] -Type = None - - -[Pad8] -Type = None +[Hacks] +DMAMaxSliceTicks = 1000 +DMAHaltTicks = 100 +GPUFIFOSize = 16 +GPUMaxRunAhead = 128 [Hotkeys] FastForward = Keyboard/Tab TogglePause = Keyboard/Space +ToggleFullscreen = Keyboard/Alt+Return Screenshot = Keyboard/F10 -ToggleFullscreen = Keyboard/F11 -OpenPauseMenu = Keyboard/Escape +PowerOff = Keyboard/Escape LoadSelectedSaveState = Keyboard/F1 SaveSelectedSaveState = Keyboard/F2 SelectPreviousSaveStateSlot = Keyboard/F3 -SelectNextSaveStateSlot = Keyboard/F4 \ No newline at end of file +SelectNextSaveStateSlot = Keyboard/F4 + + +[Cheevos] +Enabled = false +TestMode = false +UnofficialTestMode = false +UseFirstDiscFromPlaylist = true + + +[UI] +MainWindowGeometry = AdnQywADAAAAAAAAAAAAAAAAAx8AAAK7AAAAAAAAAAAAAAMfAAACuwAAAAAAAAAABQAAAAAAAAAAAAAAAx8AAAK7 +MainWindowState = AAAA/wAAAAD9AAAAAAAAAyAAAAJQAAAABAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAEAAAAOAHQAbwBvAGwAQgBhAHIBAAAAAP////8AAAAAAAAAAA== \ No newline at end of file diff --git a/emu-configs/defaults/primehack/Dolphin.ini b/emu-configs/defaults/primehack/Dolphin.ini new file mode 100644 index 00000000..8983fa34 --- /dev/null +++ b/emu-configs/defaults/primehack/Dolphin.ini @@ -0,0 +1,68 @@ +[Analytics] +ID = 0d7f9276eb4e2200f7454c1bf3d780e0 +Enabled = False +[Core] +InitialPrimeHackRun = True +SIDevice0 = 7 +SIDevice1 = 0 +SIDevice2 = 0 +SIDevice3 = 0 +AutoDiscChange = False +CPUThread = True +EnableCheats = False +OverrideRegionSettings = False +EnablePrimeHack = True +EmulationSpeed = 1.0 +FallbackRegion = 1 +AudioStretch = False +AudioStretchMaxLatency = 80 +CPUCore = 1 +DPL2Decoder = False +DPL2Quality = 2 +DSPHLE = True +EnableCustomRTC = False +MMU = False +OverclockEnable = False +RAMOverrideEnable = False +SelectedLanguage = 0 +SerialPort1 = 255 +SkipIPL = True +SlotA = 8 +SlotB = 255 +WiiKeyboard = False +WiiSDCard = True +WiiSDCardAllowWrites = True +WiiSDCardEnableFolderSync = False +[NetPlay] +TraversalChoice = direct +[General] +UseDiscordPresence = True +HotkeysRequireFocus = True +UseGameCovers = False +RecursiveISOPaths = False +[Display] +DisableScreenSaver = True +KeepWindowOnTop = False +[Interface] +ConfirmStop = True +LanguageCode = +OnScreenDisplayMessages = True +PauseOnFocusLost = False +ShowActiveTitle = True +UseBuiltinTitleDatabase = True +UsePanicHandlers = False +ThemeName = Clean +DebugModeEnabled = False +CursorVisibility = 2 +[DSP] +Backend = No Audio Output +EnableJIT = False +[GBA] +BIOS = +Rom1 = +Rom2 = +Rom3 = +Rom4 = +SavesInRomPath = False +SavesPath = +Threads = True diff --git a/emu-configs/defaults/primehack/FreeLookController.ini b/emu-configs/defaults/primehack/FreeLookController.ini new file mode 100644 index 00000000..0a03c416 --- /dev/null +++ b/emu-configs/defaults/primehack/FreeLookController.ini @@ -0,0 +1,22 @@ +[FreeLook1] +Device = XInput2/0/Virtual core pointer +Move/Up = @(Shift+E) +Move/Down = @(Shift+Q) +Move/Left = @(Shift+A) +Move/Right = @(Shift+D) +Move/Forward = @(Shift+W) +Move/Backward = @(Shift+S) +Speed/Decrease = @(Shift+`1`) +Speed/Increase = @(Shift+`2`) +Speed/Reset = @(Shift+F) +Other/Reset View = @(Shift+R) +Field of View/Increase X = @(Shift+`Axis Z+`) +Field of View/Decrease X = @(Shift+`Axis Z-`) +Field of View/Increase Y = @(Shift+`Axis Z+`) +Field of View/Decrease Y = @(Shift+`Axis Z-`) +Incremental Rotation/Pitch Up = if(`Click 3`,`RelativeMouse Y-` * 0.10, 0) +Incremental Rotation/Pitch Down = if(`Click 3`,`RelativeMouse Y+` * 0.10, 0) +Incremental Rotation/Roll Left = if(`Click 2`,`RelativeMouse X-` * 0.10, 0) +Incremental Rotation/Roll Right = if(`Click 2`,`RelativeMouse X+` * 0.10, 0) +Incremental Rotation/Yaw Left = if(`Click 3`,`RelativeMouse X-` * 0.10, 0) +Incremental Rotation/Yaw Right = if(`Click 3`,`RelativeMouse X+` * 0.10, 0) diff --git a/emu-configs/defaults/primehack/GBA.ini b/emu-configs/defaults/primehack/GBA.ini new file mode 100644 index 00000000..3afa86fc --- /dev/null +++ b/emu-configs/defaults/primehack/GBA.ini @@ -0,0 +1,18 @@ +[GBA1] +Device = XInput2/0/Virtual core pointer +Buttons/B = `Z` +Buttons/A = `X` +Buttons/L = `Q` +Buttons/R = `W` +Buttons/SELECT = `Backspace` +Buttons/START = `Return` +D-Pad/Up = `T` +D-Pad/Down = `G` +D-Pad/Left = `F` +D-Pad/Right = `H` +[GBA2] +Device = XInput2/0/Virtual core pointer +[GBA3] +Device = XInput2/0/Virtual core pointer +[GBA4] +Device = XInput2/0/Virtual core pointer diff --git a/emu-configs/defaults/primehack/GCKeyNew.ini b/emu-configs/defaults/primehack/GCKeyNew.ini new file mode 100644 index 00000000..dcdb8ce3 --- /dev/null +++ b/emu-configs/defaults/primehack/GCKeyNew.ini @@ -0,0 +1,93 @@ +[GCKeyboard1] +Device = XInput2/0/Virtual core pointer +Keys/HOME = Home +Keys/END = End +Keys/PGUP = Prior +Keys/PGDN = Next +Keys/SCR LK = Scroll_Lock +Keys/A = A +Keys/B = B +Keys/C = C +Keys/D = D +Keys/E = E +Keys/F = F +Keys/G = G +Keys/H = H +Keys/I = I +Keys/J = J +Keys/K = K +Keys/L = L +Keys/M = M +Keys/N = N +Keys/O = O +Keys/P = P +Keys/Q = Q +Keys/R = R +Keys/S = S +Keys/T = T +Keys/U = U +Keys/V = V +Keys/W = W +Keys/X = X +Keys/Y = Y +Keys/Z = Z +Keys/1 = `1` +Keys/2 = `2` +Keys/3 = `3` +Keys/4 = `4` +Keys/5 = `5` +Keys/6 = `6` +Keys/7 = `7` +Keys/8 = `8` +Keys/9 = `9` +Keys/0 = `0` +Keys/- = minus +Keys/` = grave +Keys/PRT SC = Print +Keys/' = apostrophe +Keys/[ = bracketleft +Keys/EQUALS = equal +Keys/* = KP_Multiply +Keys/] = bracketright +Keys/, = comma +Keys/. = period +Keys// = slash +Keys/\ = backslash +Keys/F1 = F1 +Keys/F2 = F2 +Keys/F3 = F3 +Keys/F4 = F4 +Keys/F5 = F5 +Keys/F6 = F6 +Keys/F7 = F7 +Keys/F8 = F8 +Keys/F9 = F9 +Keys/F10 = F10 +Keys/F11 = F11 +Keys/F12 = F12 +Keys/ESC = Escape +Keys/INSERT = Insert +Keys/DELETE = Delete +Keys/; = semicolon +Keys/BACKSPACE = BackSpace +Keys/TAB = Tab +Keys/CAPS LOCK = Caps_Lock +Keys/L SHIFT = Shift_L +Keys/R SHIFT = Shift_R +Keys/L CTRL = Control_L +Keys/R ALT = Alt_R +Keys/L WIN = Super_L +Keys/SPACE = space +Keys/R WIN = Super_R +Keys/MENU = Menu +Keys/LEFT = Left +Keys/DOWN = Down +Keys/UP = Up +Keys/RIGHT = Right +Keys/ENTER = Return +[GCKeyboard2] +Device = XInput2/0/Virtual core pointer +[GCKeyboard3] +Device = XInput2/0/Virtual core pointer +[GCKeyboard4] +Device = XInput2/0/Virtual core pointer diff --git a/emu-configs/defaults/primehack/GCPadNew.ini b/emu-configs/defaults/primehack/GCPadNew.ini new file mode 100644 index 00000000..edb3b23b --- /dev/null +++ b/emu-configs/defaults/primehack/GCPadNew.ini @@ -0,0 +1,41 @@ +[GCPad1] +Device = XInput2/0/Virtual core pointer +Buttons/A = `Click 1` | RETURN +Buttons/B = space +Buttons/X = Ctrl +Buttons/Y = F +Buttons/Z = Tab +Buttons/Start = grave +Main Stick/Up = W | Up +Main Stick/Down = S | Down +Main Stick/Left = A | Left +Main Stick/Right = D | Right +Main Stick/Modifier/Range = 50.0 +Main Stick/Calibration = 100.00 141.42 100.00 141.42 100.00 141.42 100.00 141.42 +C-Stick/Up = !E & `1` +C-Stick/Down = !E & `3` +C-Stick/Left = !E & `4` +C-Stick/Right = !E & `2` +C-Stick/Modifier/Range = 50.0 +C-Stick/Calibration = 100.00 141.42 100.00 141.42 100.00 141.42 100.00 141.42 +Triggers/L = `Click 3` +D-Pad/Up = E & `1` +D-Pad/Down = E & `3` +D-Pad/Left = E & `2` +D-Pad/Right = E & `4` +Camera Control/Modifier/Range = 50.0 +[GCPad2] +Device = XInput2/0/Virtual core pointer +Main Stick/Modifier/Range = 50.0 +C-Stick/Modifier/Range = 50.0 +Camera Control/Modifier/Range = 50.0 +[GCPad3] +Device = XInput2/0/Virtual core pointer +Main Stick/Modifier/Range = 50.0 +C-Stick/Modifier/Range = 50.0 +Camera Control/Modifier/Range = 50.0 +[GCPad4] +Device = XInput2/0/Virtual core pointer +Main Stick/Modifier/Range = 50.0 +C-Stick/Modifier/Range = 50.0 +Camera Control/Modifier/Range = 50.0 diff --git a/emu-configs/defaults/primehack/Logger.ini b/emu-configs/defaults/primehack/Logger.ini new file mode 100644 index 00000000..9021eeae --- /dev/null +++ b/emu-configs/defaults/primehack/Logger.ini @@ -0,0 +1,58 @@ +[Logs] +ActionReplay = False +AI = False +Audio = False +BOOT = False +CI = False +COMMON = False +CONSOLE = False +CORE = False +CP = False +DIO = False +DSP = False +DSPHLE = False +DSPLLE = False +DSPMails = False +DVD = False +EXI = False +FileMon = False +FRAMEDUMP = False +GDB_STUB = False +GP = False +HLE = False +Host GPU = False +HSP = False +IOS = False +IOS_DI = False +IOS_ES = False +IOS_FS = False +IOS_NET = False +IOS_SD = False +IOS_SSL = False +IOS_STM = False +IOS_USB = False +IOS_WC24 = False +IOS_WFS = False +IOS_WIIMOTE = False +JIT = False +MASTER = False +MemCard Manager = False +MI = False +NETPLAY = False +OSREPORT = False +OSREPORT_HLE = False +PE = False +PI = False +PowerPC = False +SI = False +SP1 = False +SYMBOLS = False +VI = False +Video = False +WII_IPC = False +Wiimote = False +[Options] +Verbosity = 1 +WriteToConsole = True +WriteToFile = False +WriteToWindow = True diff --git a/emu-configs/defaults/primehack/Qt.ini b/emu-configs/defaults/primehack/Qt.ini new file mode 100644 index 00000000..4b5f0311 --- /dev/null +++ b/emu-configs/defaults/primehack/Qt.ini @@ -0,0 +1,90 @@ +[breakpointwidget] +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) + +[cheatsmanager] +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) + +[codewidget] +boxsplitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x4\0\0\0\x8d\0\0\0\x8d\0\0\0\x8d\0\0\0\x8d\x1\xff\xff\xff\xff\x1\0\0\0\x2\0) +codesplitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\0\x8b\0\0\0W\x1\xff\xff\xff\xff\x1\0\0\0\x1\0) +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0t\0\0\x1\x8e\0\0\x2\xf3\0\0\0\0\0\0\0t\0\0\x1\x8e\0\0\x2\xf3\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0t\0\0\x1\x8e\0\0\x2\xf3) + +[debugger] +showcode=true + +[gamelist] +autorefresh=true + +[gridview] +scale=@Variant(\0\0\0\x87?\x80\0\0) + +[jitwidget] +asmsplitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\0W\0\0\0W\x1\xff\xff\xff\xff\x1\0\0\0\x1\0) +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) +tablesplitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\0W\0\0\0W\x1\xff\xff\xff\xff\x1\0\0\0\x2\0) + +[logconfigwidget] +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) + +[logging] +font=0 +wraplines=false + +[logwidget] +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) + +[mainwindow] +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\xf0\0\0\0\\\0\0\x4\xf\0\0\x3l\0\0\0\xf0\0\0\0y\0\0\x4\xf\0\0\x3l\0\0\0\0\0\0\0\0\x5\0\0\0\0\xf0\0\0\0y\0\0\x4\xf\0\0\x3l) +state=@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x1\0\0\0\0\0\0\x1\x8f\0\0\x2\x80\xfc\x2\0\0\0\x1\xfc\0\0\0t\0\0\x2\x80\0\0\0\0\0\xff\xff\xff\xfa\xff\xff\xff\xff\x2\0\0\0\n\xfb\0\0\0\x6\0l\0o\0g\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xb1\x1\0\0\x3\xfb\0\0\0\x12\0l\0o\0g\0\x63\0o\0n\0\x66\0i\0g\0\0\0\0\0\xff\xff\xff\xff\0\0\x2\x1b\x1\0\0\x3\xfb\0\0\0\b\0\x63\0o\0\x64\0\x65\0\0\0\0\0\xff\xff\xff\xff\0\0\x2\x80\x1\0\0\x3\xfb\0\0\0\x12\0r\0\x65\0g\0i\0s\0t\0\x65\0r\0s\0\0\0\0\0\xff\xff\xff\xff\0\0\0}\x1\0\0\x3\xfb\0\0\0\xe\0t\0h\0r\0\x65\0\x61\0\x64\0s\0\0\0\0\0\xff\xff\xff\xff\0\0\x2\x91\x1\0\0\x3\xfb\0\0\0\n\0w\0\x61\0t\0\x63\0h\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xab\x1\0\0\x3\xfb\0\0\0\x16\0\x62\0r\0\x65\0\x61\0k\0p\0o\0i\0n\0t\0s\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xab\x1\0\0\x3\xfb\0\0\0\f\0m\0\x65\0m\0o\0r\0y\0\0\0\0\0\xff\xff\xff\xff\0\0\0}\x1\0\0\x3\xfb\0\0\0\xe\0n\0\x65\0t\0w\0o\0r\0k\0\0\0\0\0\xff\xff\xff\xff\0\0\x2\x92\x1\0\0\x3\xfb\0\0\0\x12\0j\0i\0t\0w\0i\0\x64\0g\0\x65\0t\0\0\0\0\0\xff\xff\xff\xff\0\0\x1\x1\x1\0\0\x3\0\0\x3 \0\0\x2\x80\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x1\0\0\0\x2\0\0\0\x1\0\0\0\xe\0t\0o\0o\0l\0\x62\0\x61\0r\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0) + +[memorywidget] +addrspace_auxiliary=false +addrspace_effective=true +addrspace_physical=false +bplog=true +bpread=false +bpreadwrite=true +bpwrite=false +display_type=1 +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) +inputcombo=1 +splitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\xff\xff\xff\xff\xff\xff\xff\xff\x1\xff\xff\xff\xff\x1\0\0\0\x1\0) + +[netplaydialog] +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\x2\x7f\0\0\x1\xf3\0\0\0\0\0\0\0\x14\0\0\x2\x7f\0\0\x1\xf3\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\x2\x7f\0\0\x1\xf3) +splitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\0\xa5\0\0\0\xd7\x1\xff\xff\xff\xff\x1\0\0\0\x1\0) + +[networkwidget] +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) + +[registerwidget] +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) + +[renderwidget] +geometry=@ByteArray() + +[tableheader] +state=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\x2\x1\0\0\0\0\0\0\0\0\0\0\0\xe(?\0\0\0\b\0\0\0\n\0\0\0\x64\0\0\0\x5\0\0\0\x46\0\0\0\x3\0\0\0\x64\0\0\0\r\0\0\0\x64\0\0\0\f\0\0\0\x64\0\0\0\t\0\0\0\x64\0\0\0\b\0\0\0\x64\0\0\0\v\0\0\0\x64\0\0\x3\v\0\0\0\xe\x1\x1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x64\0\0\0&\0\0\0\x84\0\0\0\0\0\0\0\xe\0\0\0&\0\0\0\x1\0\0\0\x2\0\0\0\x66\0\0\0\x1\0\0\0\x2\0\0\x1\x2\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\x1\x2\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\x2\0\0\0&\0\0\0\x1\0\0\0\x2\0\0\0U\0\0\0\x1\0\0\0\x2\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\x2\0\0\0\0\0\0\0\x1\0\0\0\x2\0\0\0\0\0\0\0\x1\0\0\0\x2\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\x3\xe8\0\0\0\0\0) + +[threadwidget] +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) + +[toolbar] +visible=true + +[userstyle] +enabled=false +name= + +[watchwidget] +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) diff --git a/emu-configs/defaults/primehack/WiimoteNew.ini b/emu-configs/defaults/primehack/WiimoteNew.ini new file mode 100644 index 00000000..af2be94b --- /dev/null +++ b/emu-configs/defaults/primehack/WiimoteNew.ini @@ -0,0 +1,101 @@ +[Wiimote1] +Device = XInput2/0/Virtual core pointer +Buttons/A = `Click 1` | RETURN +Buttons/B = space +Buttons/1 = Tab +Buttons/2 = `grave` +Buttons/- = E +Buttons/+ = R +Tilt/Modifier/Range = 50.0 +IMUIR/Enabled = False +Extension = Nunchuk +Nunchuk/Buttons/C = Ctrl +Nunchuk/Buttons/Z = `Click 3` +Nunchuk/Stick/Up = W | UP +Nunchuk/Stick/Down = S | DOWN +Nunchuk/Stick/Left = A | LEFT +Nunchuk/Stick/Right = D | RIGHT +Nunchuk/Stick/Modifier/Range = 50.0 +Nunchuk/Stick/Calibration = 100.00 141.42 100.00 141.42 100.00 141.42 100.00 141.42 +Nunchuk/Tilt/Modifier/Range = 50.0 +Nunchuk/Shake/Y = LSHIFT & (`Axis Y-` | `Axis Y+` | `Axis X-` | `Axis X+`) +Classic/Left Stick/Modifier/Range = 50.0 +Classic/Right Stick/Modifier/Range = 50.0 +Guitar/Stick/Modifier/Range = 50.0 +Drums/Stick/Modifier/Range = 50.0 +Turntable/Stick/Modifier/Range = 50.0 +uDraw/Stylus/Modifier/Range = 50.0 +Drawsome/Stylus/Modifier/Range = 50.0 +D-Pad/Down = F +PrimeHack/Beam 1 = `1` & !E +PrimeHack/Beam 2 = `2` & !E +PrimeHack/Beam 3 = `3` & !E +PrimeHack/Beam 4 = `4` & !E +PrimeHack/Next Beam = !E & `Axis Z+` +PrimeHack/Previous Beam = !E & `Axis Z-` +PrimeHack/Visor 1 = E & (!`1` & !`2` & !`3`) +PrimeHack/Visor 2 = E & `1` +PrimeHack/Visor 3 = E & `2` +PrimeHack/Visor 4 = E & `3` +PrimeHack/Next Visor = E & `Axis Z+` +PrimeHack/Previous Visor = E & `Axis Z-` +PrimeHack/AltProfile = Disabled +Camera Control/Modifier/Range = 50.0 +PrimeHack/Spring Ball = Alt +PrimeHack/Grapple Lasso = Shift +[Wiimote2] +Device = XInput2/0/Virtual core pointer +Tilt/Modifier/Range = 50.0 +Nunchuk/Stick/Modifier/Range = 50.0 +Nunchuk/Tilt/Modifier/Range = 50.0 +Classic/Left Stick/Modifier/Range = 50.0 +Classic/Right Stick/Modifier/Range = 50.0 +Guitar/Stick/Modifier/Range = 50.0 +Drums/Stick/Modifier/Range = 50.0 +Turntable/Stick/Modifier/Range = 50.0 +uDraw/Stylus/Modifier/Range = 50.0 +Drawsome/Stylus/Modifier/Range = 50.0 +PrimeHack/AltProfile = Disabled +Camera Control/Modifier/Range = 50.0 +[Wiimote3] +Device = XInput2/0/Virtual core pointer +Tilt/Modifier/Range = 50.0 +Nunchuk/Stick/Modifier/Range = 50.0 +Nunchuk/Tilt/Modifier/Range = 50.0 +Classic/Left Stick/Modifier/Range = 50.0 +Classic/Right Stick/Modifier/Range = 50.0 +Guitar/Stick/Modifier/Range = 50.0 +Drums/Stick/Modifier/Range = 50.0 +Turntable/Stick/Modifier/Range = 50.0 +uDraw/Stylus/Modifier/Range = 50.0 +Drawsome/Stylus/Modifier/Range = 50.0 +PrimeHack/AltProfile = Disabled +Camera Control/Modifier/Range = 50.0 +[Wiimote4] +Device = XInput2/0/Virtual core pointer +Tilt/Modifier/Range = 50.0 +Nunchuk/Stick/Modifier/Range = 50.0 +Nunchuk/Tilt/Modifier/Range = 50.0 +Classic/Left Stick/Modifier/Range = 50.0 +Classic/Right Stick/Modifier/Range = 50.0 +Guitar/Stick/Modifier/Range = 50.0 +Drums/Stick/Modifier/Range = 50.0 +Turntable/Stick/Modifier/Range = 50.0 +uDraw/Stylus/Modifier/Range = 50.0 +Drawsome/Stylus/Modifier/Range = 50.0 +PrimeHack/AltProfile = Disabled +Camera Control/Modifier/Range = 50.0 +[BalanceBoard] +Device = XInput2/0/Virtual core pointer +Tilt/Modifier/Range = 50.0 +Nunchuk/Stick/Modifier/Range = 50.0 +Nunchuk/Tilt/Modifier/Range = 50.0 +Classic/Left Stick/Modifier/Range = 50.0 +Classic/Right Stick/Modifier/Range = 50.0 +Guitar/Stick/Modifier/Range = 50.0 +Drums/Stick/Modifier/Range = 50.0 +Turntable/Stick/Modifier/Range = 50.0 +uDraw/Stylus/Modifier/Range = 50.0 +Drawsome/Stylus/Modifier/Range = 50.0 +PrimeHack/AltProfile = Disabled +Camera Control/Modifier/Range = 50.0 diff --git a/emu-configs/primehack/Dolphin.ini b/emu-configs/primehack/Dolphin.ini new file mode 100644 index 00000000..8b4df327 --- /dev/null +++ b/emu-configs/primehack/Dolphin.ini @@ -0,0 +1,70 @@ +[Analytics] +ID = 0d7f9276eb4e2200f7454c1bf3d780e0 +Enabled = False +[Core] +InitialPrimeHackRun = True +SIDevice0 = 7 +SIDevice1 = 0 +SIDevice2 = 0 +SIDevice3 = 0 +AutoDiscChange = False +CPUThread = True +EnableCheats = False +OverrideRegionSettings = False +EnablePrimeHack = True +EmulationSpeed = 1.0 +FallbackRegion = 1 +AudioStretch = False +AudioStretchMaxLatency = 80 +CPUCore = 1 +DPL2Decoder = False +DPL2Quality = 2 +DSPHLE = True +EnableCustomRTC = False +MMU = False +OverclockEnable = False +RAMOverrideEnable = False +SelectedLanguage = 0 +SerialPort1 = 255 +SkipIPL = True +SlotA = 8 +SlotB = 255 +WiiKeyboard = False +WiiSDCard = True +WiiSDCardAllowWrites = True +WiiSDCardEnableFolderSync = False +[NetPlay] +TraversalChoice = direct +[General] +UseDiscordPresence = True +HotkeysRequireFocus = True +UseGameCovers = False +RecursiveISOPaths = False +ISOPath0 = /home/deck/retrodeck/roms/gc +ISOPaths = 1 +[Display] +DisableScreenSaver = True +KeepWindowOnTop = False +[Interface] +ConfirmStop = True +LanguageCode = +OnScreenDisplayMessages = True +PauseOnFocusLost = False +ShowActiveTitle = True +UseBuiltinTitleDatabase = True +UsePanicHandlers = False +ThemeName = Clean +DebugModeEnabled = False +CursorVisibility = 2 +[DSP] +Backend = No Audio Output +EnableJIT = False +[GBA] +BIOS = /var/data/primehack/GBA/gba_bios.bin +Rom1 = +Rom2 = +Rom3 = +Rom4 = +SavesInRomPath = False +SavesPath = /var/data/primehack/GBA/Saves/ +Threads = True diff --git a/emu-configs/primehack/FreeLookController.ini b/emu-configs/primehack/FreeLookController.ini new file mode 100644 index 00000000..0a03c416 --- /dev/null +++ b/emu-configs/primehack/FreeLookController.ini @@ -0,0 +1,22 @@ +[FreeLook1] +Device = XInput2/0/Virtual core pointer +Move/Up = @(Shift+E) +Move/Down = @(Shift+Q) +Move/Left = @(Shift+A) +Move/Right = @(Shift+D) +Move/Forward = @(Shift+W) +Move/Backward = @(Shift+S) +Speed/Decrease = @(Shift+`1`) +Speed/Increase = @(Shift+`2`) +Speed/Reset = @(Shift+F) +Other/Reset View = @(Shift+R) +Field of View/Increase X = @(Shift+`Axis Z+`) +Field of View/Decrease X = @(Shift+`Axis Z-`) +Field of View/Increase Y = @(Shift+`Axis Z+`) +Field of View/Decrease Y = @(Shift+`Axis Z-`) +Incremental Rotation/Pitch Up = if(`Click 3`,`RelativeMouse Y-` * 0.10, 0) +Incremental Rotation/Pitch Down = if(`Click 3`,`RelativeMouse Y+` * 0.10, 0) +Incremental Rotation/Roll Left = if(`Click 2`,`RelativeMouse X-` * 0.10, 0) +Incremental Rotation/Roll Right = if(`Click 2`,`RelativeMouse X+` * 0.10, 0) +Incremental Rotation/Yaw Left = if(`Click 3`,`RelativeMouse X-` * 0.10, 0) +Incremental Rotation/Yaw Right = if(`Click 3`,`RelativeMouse X+` * 0.10, 0) diff --git a/emu-configs/primehack/GBA.ini b/emu-configs/primehack/GBA.ini new file mode 100644 index 00000000..3afa86fc --- /dev/null +++ b/emu-configs/primehack/GBA.ini @@ -0,0 +1,18 @@ +[GBA1] +Device = XInput2/0/Virtual core pointer +Buttons/B = `Z` +Buttons/A = `X` +Buttons/L = `Q` +Buttons/R = `W` +Buttons/SELECT = `Backspace` +Buttons/START = `Return` +D-Pad/Up = `T` +D-Pad/Down = `G` +D-Pad/Left = `F` +D-Pad/Right = `H` +[GBA2] +Device = XInput2/0/Virtual core pointer +[GBA3] +Device = XInput2/0/Virtual core pointer +[GBA4] +Device = XInput2/0/Virtual core pointer diff --git a/emu-configs/primehack/GCKeyNew.ini b/emu-configs/primehack/GCKeyNew.ini new file mode 100644 index 00000000..dcdb8ce3 --- /dev/null +++ b/emu-configs/primehack/GCKeyNew.ini @@ -0,0 +1,93 @@ +[GCKeyboard1] +Device = XInput2/0/Virtual core pointer +Keys/HOME = Home +Keys/END = End +Keys/PGUP = Prior +Keys/PGDN = Next +Keys/SCR LK = Scroll_Lock +Keys/A = A +Keys/B = B +Keys/C = C +Keys/D = D +Keys/E = E +Keys/F = F +Keys/G = G +Keys/H = H +Keys/I = I +Keys/J = J +Keys/K = K +Keys/L = L +Keys/M = M +Keys/N = N +Keys/O = O +Keys/P = P +Keys/Q = Q +Keys/R = R +Keys/S = S +Keys/T = T +Keys/U = U +Keys/V = V +Keys/W = W +Keys/X = X +Keys/Y = Y +Keys/Z = Z +Keys/1 = `1` +Keys/2 = `2` +Keys/3 = `3` +Keys/4 = `4` +Keys/5 = `5` +Keys/6 = `6` +Keys/7 = `7` +Keys/8 = `8` +Keys/9 = `9` +Keys/0 = `0` +Keys/- = minus +Keys/` = grave +Keys/PRT SC = Print +Keys/' = apostrophe +Keys/[ = bracketleft +Keys/EQUALS = equal +Keys/* = KP_Multiply +Keys/] = bracketright +Keys/, = comma +Keys/. = period +Keys// = slash +Keys/\ = backslash +Keys/F1 = F1 +Keys/F2 = F2 +Keys/F3 = F3 +Keys/F4 = F4 +Keys/F5 = F5 +Keys/F6 = F6 +Keys/F7 = F7 +Keys/F8 = F8 +Keys/F9 = F9 +Keys/F10 = F10 +Keys/F11 = F11 +Keys/F12 = F12 +Keys/ESC = Escape +Keys/INSERT = Insert +Keys/DELETE = Delete +Keys/; = semicolon +Keys/BACKSPACE = BackSpace +Keys/TAB = Tab +Keys/CAPS LOCK = Caps_Lock +Keys/L SHIFT = Shift_L +Keys/R SHIFT = Shift_R +Keys/L CTRL = Control_L +Keys/R ALT = Alt_R +Keys/L WIN = Super_L +Keys/SPACE = space +Keys/R WIN = Super_R +Keys/MENU = Menu +Keys/LEFT = Left +Keys/DOWN = Down +Keys/UP = Up +Keys/RIGHT = Right +Keys/ENTER = Return +[GCKeyboard2] +Device = XInput2/0/Virtual core pointer +[GCKeyboard3] +Device = XInput2/0/Virtual core pointer +[GCKeyboard4] +Device = XInput2/0/Virtual core pointer diff --git a/emu-configs/primehack/GCPadNew.ini b/emu-configs/primehack/GCPadNew.ini new file mode 100644 index 00000000..9579f8ef --- /dev/null +++ b/emu-configs/primehack/GCPadNew.ini @@ -0,0 +1,44 @@ +[GCPad1] +Device = SDL/0/Microsoft X-Box 360 pad 0 +Buttons/A = `Button 0` +Buttons/B = `Button 1` +Buttons/X = `Button 2` +Buttons/Y = `Button 3` +Buttons/Z = `Button 6` +Buttons/Start = `Button 7` +Main Stick/Up = `Axis 4-` +Main Stick/Down = `Axis 4+` +Main Stick/Left = `Axis 3-` +Main Stick/Right = `Axis 3+` +Main Stick/Modifier/Range = 50.0 +Main Stick/Calibration = 100.00 141.42 100.00 141.42 100.00 141.42 100.00 141.42 +C-Stick/Up = `Axis 1-` +C-Stick/Down = `Axis 1+` +C-Stick/Left = `Axis 0-` +C-Stick/Right = `Axis 0+` +C-Stick/Modifier/Range = 50.0 +C-Stick/Calibration = 100.00 141.42 100.00 141.42 100.00 141.42 100.00 141.42 +Triggers/L = `Button 4` +D-Pad/Up = `Hat 0 N` +D-Pad/Down = `Hat 0 S` +D-Pad/Left = `Hat 0 W` +D-Pad/Right = `Hat 0 E` +Camera Control/Modifier/Range = 50.0 +Triggers/L-Analog = `Full Axis 2+` +Triggers/R-Analog = `Full Axis 5+` +Triggers/R = `Button 5` +[GCPad2] +Device = XInput2/0/Virtual core pointer +Main Stick/Modifier/Range = 50.0 +C-Stick/Modifier/Range = 50.0 +Camera Control/Modifier/Range = 50.0 +[GCPad3] +Device = XInput2/0/Virtual core pointer +Main Stick/Modifier/Range = 50.0 +C-Stick/Modifier/Range = 50.0 +Camera Control/Modifier/Range = 50.0 +[GCPad4] +Device = XInput2/0/Virtual core pointer +Main Stick/Modifier/Range = 50.0 +C-Stick/Modifier/Range = 50.0 +Camera Control/Modifier/Range = 50.0 diff --git a/emu-configs/primehack/Logger.ini b/emu-configs/primehack/Logger.ini new file mode 100644 index 00000000..9021eeae --- /dev/null +++ b/emu-configs/primehack/Logger.ini @@ -0,0 +1,58 @@ +[Logs] +ActionReplay = False +AI = False +Audio = False +BOOT = False +CI = False +COMMON = False +CONSOLE = False +CORE = False +CP = False +DIO = False +DSP = False +DSPHLE = False +DSPLLE = False +DSPMails = False +DVD = False +EXI = False +FileMon = False +FRAMEDUMP = False +GDB_STUB = False +GP = False +HLE = False +Host GPU = False +HSP = False +IOS = False +IOS_DI = False +IOS_ES = False +IOS_FS = False +IOS_NET = False +IOS_SD = False +IOS_SSL = False +IOS_STM = False +IOS_USB = False +IOS_WC24 = False +IOS_WFS = False +IOS_WIIMOTE = False +JIT = False +MASTER = False +MemCard Manager = False +MI = False +NETPLAY = False +OSREPORT = False +OSREPORT_HLE = False +PE = False +PI = False +PowerPC = False +SI = False +SP1 = False +SYMBOLS = False +VI = False +Video = False +WII_IPC = False +Wiimote = False +[Options] +Verbosity = 1 +WriteToConsole = True +WriteToFile = False +WriteToWindow = True diff --git a/emu-configs/primehack/Profiles/GCPad/Steam Virtual Controller.ini b/emu-configs/primehack/Profiles/GCPad/Steam Virtual Controller.ini new file mode 100644 index 00000000..7320c1f6 --- /dev/null +++ b/emu-configs/primehack/Profiles/GCPad/Steam Virtual Controller.ini @@ -0,0 +1,29 @@ +[Profile] +Device = SDL/0/Microsoft X-Box 360 pad 0 +Buttons/A = `Button 0` +Buttons/B = `Button 1` +Buttons/X = `Button 2` +Buttons/Y = `Button 3` +Buttons/Z = `Button 6` +Buttons/Start = `Button 7` +Main Stick/Up = `Axis 4-` +Main Stick/Down = `Axis 4+` +Main Stick/Left = `Axis 3-` +Main Stick/Right = `Axis 3+` +Main Stick/Modifier/Range = 50.0 +Main Stick/Calibration = 100.00 141.42 100.00 141.42 100.00 141.42 100.00 141.42 +C-Stick/Up = `Axis 1-` +C-Stick/Down = `Axis 1+` +C-Stick/Left = `Axis 0-` +C-Stick/Right = `Axis 0+` +C-Stick/Modifier/Range = 50.0 +C-Stick/Calibration = 100.00 141.42 100.00 141.42 100.00 141.42 100.00 141.42 +Triggers/L = `Button 4` +Triggers/R = `Button 5` +Triggers/L-Analog = `Full Axis 2+` +Triggers/R-Analog = `Full Axis 5+` +D-Pad/Up = `Hat 0 N` +D-Pad/Down = `Hat 0 S` +D-Pad/Left = `Hat 0 W` +D-Pad/Right = `Hat 0 E` +Camera Control/Modifier/Range = 50.0 diff --git a/emu-configs/primehack/Qt.ini b/emu-configs/primehack/Qt.ini new file mode 100644 index 00000000..c9114c35 --- /dev/null +++ b/emu-configs/primehack/Qt.ini @@ -0,0 +1,90 @@ +[breakpointwidget] +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) + +[cheatsmanager] +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) + +[codewidget] +boxsplitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x4\0\0\0\x8d\0\0\0\x8d\0\0\0\x8d\0\0\0\x8d\x1\xff\xff\xff\xff\x1\0\0\0\x2\0) +codesplitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\0\x8b\0\0\0W\x1\xff\xff\xff\xff\x1\0\0\0\x1\0) +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0t\0\0\x1\x8e\0\0\x2\xf3\0\0\0\0\0\0\0t\0\0\x1\x8e\0\0\x2\xf3\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0t\0\0\x1\x8e\0\0\x2\xf3) + +[debugger] +showcode=true + +[gamelist] +autorefresh=true + +[gridview] +scale=@Variant(\0\0\0\x87?\x80\0\0) + +[jitwidget] +asmsplitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\0W\0\0\0W\x1\xff\xff\xff\xff\x1\0\0\0\x1\0) +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) +tablesplitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\0W\0\0\0W\x1\xff\xff\xff\xff\x1\0\0\0\x2\0) + +[logconfigwidget] +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) + +[logging] +font=0 +wraplines=false + +[logwidget] +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) + +[mainwindow] +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\x3\x1f\0\0\x2\xcc\0\0\0\0\0\0\0\0\0\0\x3\x1f\0\0\x2\xcc\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\0\0\0\x3\x1f\0\0\x2\xcc) +state=@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x1\0\0\0\0\0\0\x1\x8f\0\0\x2\x80\xfc\x2\0\0\0\x1\xfc\0\0\0t\0\0\x2\x80\0\0\0\0\0\xff\xff\xff\xfa\xff\xff\xff\xff\x2\0\0\0\n\xfb\0\0\0\x6\0l\0o\0g\0\0\0\0\0\xff\xff\xff\xff\0\0\0\x88\0\xff\xff\xff\xfb\0\0\0\x12\0l\0o\0g\0\x63\0o\0n\0\x66\0i\0g\0\0\0\0\0\xff\xff\xff\xff\0\0\x1\xc3\0\xff\xff\xff\xfb\0\0\0\b\0\x63\0o\0\x64\0\x65\0\0\0\0\0\xff\xff\xff\xff\0\0\x2\x2\0\xff\xff\xff\xfb\0\0\0\x12\0r\0\x65\0g\0i\0s\0t\0\x65\0r\0s\0\0\0\0\0\xff\xff\xff\xff\0\0\0]\0\xff\xff\xff\xfb\0\0\0\xe\0t\0h\0r\0\x65\0\x61\0\x64\0s\0\0\0\0\0\xff\xff\xff\xff\0\0\x2\x14\0\xff\xff\xff\xfb\0\0\0\n\0w\0\x61\0t\0\x63\0h\0\0\0\0\0\xff\xff\xff\xff\0\0\0\x84\0\xff\xff\xff\xfb\0\0\0\x16\0\x62\0r\0\x65\0\x61\0k\0p\0o\0i\0n\0t\0s\0\0\0\0\0\xff\xff\xff\xff\0\0\0\x84\0\xff\xff\xff\xfb\0\0\0\f\0m\0\x65\0m\0o\0r\0y\0\0\0\0\0\xff\xff\xff\xff\0\0\0]\0\xff\xff\xff\xfb\0\0\0\xe\0n\0\x65\0t\0w\0o\0r\0k\0\0\0\0\0\xff\xff\xff\xff\0\0\x2\x1d\0\xff\xff\xff\xfb\0\0\0\x12\0j\0i\0t\0w\0i\0\x64\0g\0\x65\0t\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xc4\0\xff\xff\xff\0\0\x3 \0\0\x2w\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x1\0\0\0\x2\0\0\0\x1\0\0\0\xe\0t\0o\0o\0l\0\x62\0\x61\0r\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0) + +[memorywidget] +addrspace_auxiliary=false +addrspace_effective=true +addrspace_physical=false +bplog=true +bpread=false +bpreadwrite=true +bpwrite=false +display_type=1 +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) +inputcombo=1 +splitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\xff\xff\xff\xff\xff\xff\xff\xff\x1\xff\xff\xff\xff\x1\0\0\0\x1\0) + +[netplaydialog] +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\x2\x7f\0\0\x1\xf3\0\0\0\0\0\0\0\x14\0\0\x2\x7f\0\0\x1\xf3\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\x2\x7f\0\0\x1\xf3) +splitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\0\xa5\0\0\0\xd7\x1\xff\xff\xff\xff\x1\0\0\0\x1\0) + +[networkwidget] +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) + +[registerwidget] +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) + +[renderwidget] +geometry=@ByteArray() + +[tableheader] +state=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\x2\x1\0\0\0\0\0\0\0\0\0\0\0\xe(?\0\0\0\b\0\0\0\t\0\0\0\x64\0\0\0\b\0\0\0\x64\0\0\0\v\0\0\0\x64\0\0\0\n\0\0\0\x64\0\0\0\r\0\0\0\x64\0\0\0\f\0\0\0\x64\0\0\0\x3\0\0\0\x64\0\0\0\x5\0\0\0\x46\0\0\x3\x13\0\0\0\xe\x1\x1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x64\0\0\0&\0\0\0\x84\0\0\0\0\0\0\0\xe\0\0\0&\0\0\0\x1\0\0\0\x2\0\0\0\x66\0\0\0\x1\0\0\0\x2\0\0\x1\x6\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\x1\x6\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\x2\0\0\0&\0\0\0\x1\0\0\0\x2\0\0\0U\0\0\0\x1\0\0\0\x2\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\x2\0\0\0\0\0\0\0\x1\0\0\0\x2\0\0\0\0\0\0\0\x1\0\0\0\x2\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\x3\xe8\0\0\0\0\0) + +[threadwidget] +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) + +[toolbar] +visible=true + +[userstyle] +enabled=false +name= + +[watchwidget] +floating=false +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) diff --git a/emu-configs/primehack/WiimoteNew.ini b/emu-configs/primehack/WiimoteNew.ini new file mode 100644 index 00000000..af2be94b --- /dev/null +++ b/emu-configs/primehack/WiimoteNew.ini @@ -0,0 +1,101 @@ +[Wiimote1] +Device = XInput2/0/Virtual core pointer +Buttons/A = `Click 1` | RETURN +Buttons/B = space +Buttons/1 = Tab +Buttons/2 = `grave` +Buttons/- = E +Buttons/+ = R +Tilt/Modifier/Range = 50.0 +IMUIR/Enabled = False +Extension = Nunchuk +Nunchuk/Buttons/C = Ctrl +Nunchuk/Buttons/Z = `Click 3` +Nunchuk/Stick/Up = W | UP +Nunchuk/Stick/Down = S | DOWN +Nunchuk/Stick/Left = A | LEFT +Nunchuk/Stick/Right = D | RIGHT +Nunchuk/Stick/Modifier/Range = 50.0 +Nunchuk/Stick/Calibration = 100.00 141.42 100.00 141.42 100.00 141.42 100.00 141.42 +Nunchuk/Tilt/Modifier/Range = 50.0 +Nunchuk/Shake/Y = LSHIFT & (`Axis Y-` | `Axis Y+` | `Axis X-` | `Axis X+`) +Classic/Left Stick/Modifier/Range = 50.0 +Classic/Right Stick/Modifier/Range = 50.0 +Guitar/Stick/Modifier/Range = 50.0 +Drums/Stick/Modifier/Range = 50.0 +Turntable/Stick/Modifier/Range = 50.0 +uDraw/Stylus/Modifier/Range = 50.0 +Drawsome/Stylus/Modifier/Range = 50.0 +D-Pad/Down = F +PrimeHack/Beam 1 = `1` & !E +PrimeHack/Beam 2 = `2` & !E +PrimeHack/Beam 3 = `3` & !E +PrimeHack/Beam 4 = `4` & !E +PrimeHack/Next Beam = !E & `Axis Z+` +PrimeHack/Previous Beam = !E & `Axis Z-` +PrimeHack/Visor 1 = E & (!`1` & !`2` & !`3`) +PrimeHack/Visor 2 = E & `1` +PrimeHack/Visor 3 = E & `2` +PrimeHack/Visor 4 = E & `3` +PrimeHack/Next Visor = E & `Axis Z+` +PrimeHack/Previous Visor = E & `Axis Z-` +PrimeHack/AltProfile = Disabled +Camera Control/Modifier/Range = 50.0 +PrimeHack/Spring Ball = Alt +PrimeHack/Grapple Lasso = Shift +[Wiimote2] +Device = XInput2/0/Virtual core pointer +Tilt/Modifier/Range = 50.0 +Nunchuk/Stick/Modifier/Range = 50.0 +Nunchuk/Tilt/Modifier/Range = 50.0 +Classic/Left Stick/Modifier/Range = 50.0 +Classic/Right Stick/Modifier/Range = 50.0 +Guitar/Stick/Modifier/Range = 50.0 +Drums/Stick/Modifier/Range = 50.0 +Turntable/Stick/Modifier/Range = 50.0 +uDraw/Stylus/Modifier/Range = 50.0 +Drawsome/Stylus/Modifier/Range = 50.0 +PrimeHack/AltProfile = Disabled +Camera Control/Modifier/Range = 50.0 +[Wiimote3] +Device = XInput2/0/Virtual core pointer +Tilt/Modifier/Range = 50.0 +Nunchuk/Stick/Modifier/Range = 50.0 +Nunchuk/Tilt/Modifier/Range = 50.0 +Classic/Left Stick/Modifier/Range = 50.0 +Classic/Right Stick/Modifier/Range = 50.0 +Guitar/Stick/Modifier/Range = 50.0 +Drums/Stick/Modifier/Range = 50.0 +Turntable/Stick/Modifier/Range = 50.0 +uDraw/Stylus/Modifier/Range = 50.0 +Drawsome/Stylus/Modifier/Range = 50.0 +PrimeHack/AltProfile = Disabled +Camera Control/Modifier/Range = 50.0 +[Wiimote4] +Device = XInput2/0/Virtual core pointer +Tilt/Modifier/Range = 50.0 +Nunchuk/Stick/Modifier/Range = 50.0 +Nunchuk/Tilt/Modifier/Range = 50.0 +Classic/Left Stick/Modifier/Range = 50.0 +Classic/Right Stick/Modifier/Range = 50.0 +Guitar/Stick/Modifier/Range = 50.0 +Drums/Stick/Modifier/Range = 50.0 +Turntable/Stick/Modifier/Range = 50.0 +uDraw/Stylus/Modifier/Range = 50.0 +Drawsome/Stylus/Modifier/Range = 50.0 +PrimeHack/AltProfile = Disabled +Camera Control/Modifier/Range = 50.0 +[BalanceBoard] +Device = XInput2/0/Virtual core pointer +Tilt/Modifier/Range = 50.0 +Nunchuk/Stick/Modifier/Range = 50.0 +Nunchuk/Tilt/Modifier/Range = 50.0 +Classic/Left Stick/Modifier/Range = 50.0 +Classic/Right Stick/Modifier/Range = 50.0 +Guitar/Stick/Modifier/Range = 50.0 +Drums/Stick/Modifier/Range = 50.0 +Turntable/Stick/Modifier/Range = 50.0 +uDraw/Stylus/Modifier/Range = 50.0 +Drawsome/Stylus/Modifier/Range = 50.0 +PrimeHack/AltProfile = Disabled +Camera Control/Modifier/Range = 50.0 diff --git a/emu-configs/yuzu/qt-config.ini b/emu-configs/yuzu/qt-config.ini index 166892cc..28d4ca15 100644 --- a/emu-configs/yuzu/qt-config.ini +++ b/emu-configs/yuzu/qt-config.ini @@ -86,59 +86,59 @@ player_0_body_color_left=4278893030 player_0_body_color_left\default=false player_0_body_color_right=4294917160 player_0_body_color_right\default=false -player_0_button_a="toggle:0,code:67,engine:keyboard" -player_0_button_a\default=true -player_0_button_b="toggle:0,code:88,engine:keyboard" -player_0_button_b\default=true +player_0_button_a="button:1,guid:03000000de280000ff11000001000000,port:0,engine:sdl" +player_0_button_a\default=false +player_0_button_b="button:0,guid:03000000de280000ff11000001000000,port:0,engine:sdl" +player_0_button_b\default=false player_0_button_color_left=4278197790 player_0_button_color_left\default=false player_0_button_color_right=4280158730 player_0_button_color_right\default=false -player_0_button_ddown="toggle:0,code:16777237,engine:keyboard" -player_0_button_ddown\default=true -player_0_button_dleft="toggle:0,code:16777234,engine:keyboard" -player_0_button_dleft\default=true -player_0_button_dright="toggle:0,code:16777236,engine:keyboard" -player_0_button_dright\default=true -player_0_button_dup="toggle:0,code:16777235,engine:keyboard" -player_0_button_dup\default=true -player_0_button_home="engine:keyboard,port:0,pad:0,code:82" +player_0_button_ddown="hat:0,direction:down,guid:03000000de280000ff11000001000000,port:0,engine:sdl" +player_0_button_ddown\default=false +player_0_button_dleft="hat:0,direction:left,guid:03000000de280000ff11000001000000,port:0,engine:sdl" +player_0_button_dleft\default=false +player_0_button_dright="hat:0,direction:right,guid:03000000de280000ff11000001000000,port:0,engine:sdl" +player_0_button_dright\default=false +player_0_button_dup="hat:0,direction:up,guid:03000000de280000ff11000001000000,port:0,engine:sdl" +player_0_button_dup\default=false +player_0_button_home="button:8,guid:03000000de280000ff11000001000000,port:0,engine:sdl" player_0_button_home\default=false -player_0_button_l="toggle:0,code:81,engine:keyboard" -player_0_button_l\default=true -player_0_button_lstick="toggle:0,code:70,engine:keyboard" -player_0_button_lstick\default=true -player_0_button_minus="toggle:0,code:78,engine:keyboard" -player_0_button_minus\default=true -player_0_button_plus="toggle:0,code:77,engine:keyboard" -player_0_button_plus\default=true -player_0_button_r="toggle:0,code:69,engine:keyboard" -player_0_button_r\default=true -player_0_button_rstick="toggle:0,code:71,engine:keyboard" -player_0_button_rstick\default=true -player_0_button_screenshot="toggle:0,code:0,engine:keyboard" -player_0_button_screenshot\default=true -player_0_button_sl="toggle:0,code:81,engine:keyboard" -player_0_button_sl\default=true -player_0_button_sr="toggle:0,code:69,engine:keyboard" -player_0_button_sr\default=true -player_0_button_x="toggle:0,code:86,engine:keyboard" -player_0_button_x\default=true -player_0_button_y="toggle:0,code:90,engine:keyboard" -player_0_button_y\default=true -player_0_button_zl="toggle:0,code:82,engine:keyboard" -player_0_button_zl\default=true -player_0_button_zr="toggle:0,code:84,engine:keyboard" -player_0_button_zr\default=true +player_0_button_l="button:4,guid:03000000de280000ff11000001000000,port:0,engine:sdl" +player_0_button_l\default=false +player_0_button_lstick="button:9,guid:03000000de280000ff11000001000000,port:0,engine:sdl" +player_0_button_lstick\default=false +player_0_button_minus="button:6,guid:03000000de280000ff11000001000000,port:0,engine:sdl" +player_0_button_minus\default=false +player_0_button_plus="button:7,guid:03000000de280000ff11000001000000,port:0,engine:sdl" +player_0_button_plus\default=false +player_0_button_r="button:5,guid:03000000de280000ff11000001000000,port:0,engine:sdl" +player_0_button_r\default=false +player_0_button_rstick="button:10,guid:03000000de280000ff11000001000000,port:0,engine:sdl" +player_0_button_rstick\default=false +player_0_button_screenshot=[empty] +player_0_button_screenshot\default=false +player_0_button_sl="button:4,guid:03000000de280000ff11000001000000,port:0,engine:sdl" +player_0_button_sl\default=false +player_0_button_sr="button:5,guid:03000000de280000ff11000001000000,port:0,engine:sdl" +player_0_button_sr\default=false +player_0_button_x="button:3,guid:03000000de280000ff11000001000000,port:0,engine:sdl" +player_0_button_x\default=false +player_0_button_y="button:2,guid:03000000de280000ff11000001000000,port:0,engine:sdl" +player_0_button_y\default=false +player_0_button_zl="threshold:0.500000,axis:2,guid:03000000de280000ff11000001000000,port:0,invert:+,engine:sdl" +player_0_button_zl\default=false +player_0_button_zr="threshold:0.500000,axis:5,guid:03000000de280000ff11000001000000,port:0,invert:+,engine:sdl" +player_0_button_zr\default=false player_0_connected=true player_0_connected\default=true -player_0_lstick="modifier_scale:0.500000,engine:analog_from_button,up:engine$0keyboard$1code$087$1toggle$00,down:engine$0keyboard$1code$083$1toggle$00,left:engine$0keyboard$1code$065$1toggle$00,right:engine$0keyboard$1code$068$1toggle$00,modifier:toggle$00$1code$016777248$1engine$0keyboard" +player_0_lstick="deadzone:0.150000,invert_y:+,invert_x:+,offset_y:0.000000,axis_y:1,offset_x:-0.000000,axis_x:0,guid:03000000de280000ff11000001000000,port:0,engine:sdl" player_0_lstick\default=false -player_0_motionleft="toggle:0,code:55,engine:keyboard" -player_0_motionleft\default=true -player_0_motionright="toggle:0,code:56,engine:keyboard" -player_0_motionright\default=true -player_0_rstick="modifier_scale:0.500000,engine:analog_from_button,up:engine$0keyboard$1code$073$1toggle$00,down:engine$0keyboard$1code$075$1toggle$00,left:engine$0keyboard$1code$074$1toggle$00,right:engine$0keyboard$1code$076$1toggle$00,modifier:toggle$00$1code$00$1engine$0keyboard" +player_0_motionleft=[empty] +player_0_motionleft\default=false +player_0_motionright=[empty] +player_0_motionright\default=false +player_0_rstick="deadzone:0.150000,invert_y:+,invert_x:+,offset_y:-0.063723,axis_y:4,offset_x:-0.024476,axis_x:3,guid:03000000de280000ff11000001000000,port:0,engine:sdl" player_0_rstick\default=false player_0_type=0 player_0_type\default=true diff --git a/functions.sh b/functions.sh index 8fe5ae7e..d9f760f0 100644 --- a/functions.sh +++ b/functions.sh @@ -171,7 +171,7 @@ get_setting_value() { if [[ -z $current_section_name ]]; then echo $(grep -o -P "(?<=^$current_setting_name=).*" $1) else - sed -n '\^\['"$section_name"'\]^,\^'"$current_setting_name"'^{ \^\['"$section_name"'\]^! { \^'"$current_setting_name"'^ p } }' $1 | grep -o -P "(?<=^$current_setting_name=).*" + sed -n '\^\['"$current_section_name"'\]^,\^'"$current_setting_name"'^{ \^\['"$current_section_name"'\]^! { \^'"$current_setting_name"'^ p } }' $1 | grep -o -P "(?<=^$current_setting_name=).*" fi ;; @@ -179,7 +179,7 @@ get_setting_value() { if [[ -z $current_section_name ]]; then echo $(grep -o -P "(?<=^$current_setting_name = \").*(?=\")" $1) else - sed -n '\^\['"$section_name"'\]^,\^'"$current_setting_name"'^{ \^\['"$section_name"'\]^! { \^'"$current_setting_name"'^ p } }' $1 | grep -o -P "(?<=^$current_setting_name = \").*(?=\")" + sed -n '\^\['"$current_section_name"'\]^,\^'"$current_setting_name"'^{ \^\['"$current_section_name"'\]^! { \^'"$current_setting_name"'^ p } }' $1 | grep -o -P "(?<=^$current_setting_name = \").*(?=\")" fi ;; @@ -187,7 +187,7 @@ get_setting_value() { if [[ -z $current_section_name ]]; then echo $(grep -o -P "(?<=^$current_setting_name = ).*" $1) else - sed -n '\^\['"$section_name"'\]^,\^'"$current_setting_name"'^{ \^\['"$section_name"'\]^! { \^'"$current_setting_name"'^ p } }' $1 | grep -o -P "(?<=^$current_setting_name = ).*" + sed -n '\^\['"$current_section_name"'\]^,\^'"$current_setting_name"'^{ \^\['"$current_section_name"'\]^! { \^'"$current_setting_name"'^ p } }' $1 | grep -o -P "(?<=^$current_setting_name = ).*" fi ;; @@ -195,7 +195,7 @@ get_setting_value() { if [[ -z $current_section_name ]]; then echo $(grep -o -P "(?<=$current_setting_name: ).*" $1) else - sed -n '\^\['"$section_name"'\]^,\^'"$current_setting_name"'^{ \^\['"$section_name"'\]^! { \^'"$current_setting_name"'^ p } }' $1 | grep -o -P "(?<=$current_setting_name: ).*" + sed -n '\^\['"$current_section_name"'\]^,\^'"$current_setting_name"'^{ \^\['"$current_section_name"'\]^! { \^'"$current_setting_name"'^ p } }' $1 | grep -o -P "(?<=$current_setting_name: ).*" fi ;; @@ -219,7 +219,7 @@ add_setting() { if [[ -z $current_section_name ]]; then sed -i '$ a '"$current_setting_line"'' $1 else - sed -i '/^\s*?\['"$current_section_name"'\]|\b'"$current_section"':$/a '"$current_setting_line"'' $1 + sed -i '/^\s*?\['"$current_section_name"'\]|\b'"$current_section_name"':$/a '"$current_setting_line"'' $1 fi ;; @@ -239,7 +239,7 @@ disable_setting() { if [[ -z $current_section_name ]]; then sed -i -E 's^(\s*?)'"$current_setting_line"'^\1#'"$current_setting_line"'^' $1 else - sed -i -E '\^\['"$current_section_name"'\]|\b'"$current_section"':$^,\^\s*?'"$current_setting_line"'^s^(\s*?)'"$current_setting_line"'^\1#'"$current_setting_line"'^' $1 + sed -i -E '\^\['"$current_section_name"'\]|\b'"$current_section_name"':$^,\^\s*?'"$current_setting_line"'^s^(\s*?)'"$current_setting_line"'^\1#'"$current_setting_line"'^' $1 fi ;; @@ -259,7 +259,7 @@ enable_setting() { if [[ -z $current_section_name ]]; then sed -i -E 's^(\s*?)#'"$current_setting_line"'^\1'"$current_setting_line"'^' $1 else - sed -i -E '\^\['"$current_section_name"'\]|\b'"$current_section"':$^,\^\s*?#'"$current_setting_line"'^s^(\s*?)#'"$current_setting_line"'^\1'"$current_setting_line"'^' $1 + sed -i -E '\^\['"$current_section_name"'\]|\b'"$current_section_name"':$^,\^\s*?#'"$current_setting_line"'^s^(\s*?)#'"$current_setting_line"'^\1'"$current_setting_line"'^' $1 fi ;; @@ -502,6 +502,12 @@ dir_prep() { mv -f "$symlink" "$symlink.old" fi + # if the real dir is already a symlink, unlink it first + if [ -L "$real" ]; + then + unlink "$real" + fi + # if the real dir doesn't exist we create it if [ ! -d "$real" ]; then @@ -518,7 +524,7 @@ dir_prep() { if [ -d "$symlink.old" ]; then echo "Moving the data from $symlink.old to $real" #DEBUG - mv -f "$symlink".old/* $real + mv -f "$symlink.old"/{.[!.],}* $real echo "Removing $symlink.old" #DEBUG rm -rf "$symlink.old" fi @@ -665,9 +671,9 @@ duckstation_init() { echo "------------------------" echo "Initializing DUCKSTATION" echo "------------------------" - mkdir -p /var/config/duckstation/ - cp -fv $emuconfigs/duckstation/* /var/config/duckstation - sed -i 's#/home/deck/retrodeck/bios#'$rdhome/bios'#g' /var/config/duckstation/settings.ini + mkdir -p /var/data/duckstation/ + cp -fv $emuconfigs/duckstation/* /var/data/duckstation + sed -i 's#/home/deck/retrodeck/bios#'$rdhome/bios'#g' /var/data/duckstation/settings.ini } ryujinx_init() { @@ -699,6 +705,63 @@ standalones_init() { yuzu_init } +ra_init() { + dir_prep "$rdhome/bios" "/var/config/retroarch/system" + dir_prep "$rdhome/.logs/retroarch" "/var/config/retroarch/logs" + mkdir -pv /var/config/retroarch/shaders/ + cp -rf /app/share/libretro/shaders /var/config/retroarch/ + dir_prep "$rdhome/shaders/retroarch" "/var/config/retroarch/shaders" + mkdir -pv /var/config/retroarch/cores/ + cp -f /app/share/libretro/cores/* /var/config/retroarch/cores/ + cp -fv $emuconfigs/retroarch/retroarch.cfg /var/config/retroarch/ + cp -fv $emuconfigs/retroarch/retroarch-core-options.cfg /var/config/retroarch/ + mkdir -pv /var/config/retroarch/config/ + cp -rf $emuconfigs/retroarch/core-overrides/* /var/config/retroarch/config + #rm -rf $rdhome/bios/bios # in some situations a double bios symlink is created + sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/retroarch/retroarch.cfg + + # PPSSPP + echo "--------------------------------" + echo "Initializing PPSSPP_LIBRETRO" + echo "--------------------------------" + if [ -d $rdhome/bios/PPSSPP/flash0/font ] + then + mv -fv $rdhome/bios/PPSSPP/flash0/font $rdhome/bios/PPSSPP/flash0/font.bak + fi + mkdir -p $rdhome/bios/PPSSPP + #if [ ! -f "$rdhome/bios/PPSSPP/ppge_atlas.zim" ] + #then + wget "https://github.com/hrydgard/ppsspp/archive/refs/heads/master.zip" -P $rdhome/bios/PPSSPP + unzip -q "$rdhome/bios/PPSSPP/master.zip" -d $rdhome/bios/PPSSPP/ + mv -f "$rdhome/bios/PPSSPP/ppsspp-master/assets/"* "$rdhome/bios/PPSSPP/" + rm -rfv "$rdhome/bios/PPSSPP/master.zip" + rm -rfv "$rdhome/bios/PPSSPP/ppsspp-master" + #fi + if [ -d $rdhome/bios/PPSSPP/flash0/font.bak ] + then + mv -fv $rdhome/bios/PPSSPP/flash0/font.bak $rdhome/bios/PPSSPP/flash0/font + fi + + # MSX / SVI / ColecoVision / SG-1000 + echo "-----------------------------------------------------------" + echo "Initializing MSX / SVI / ColecoVision / SG-1000 LIBRETRO" + echo "-----------------------------------------------------------" + wget "http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" -P $rdhome/bios/MSX + unzip -q "$rdhome/bios/MSX/blueMSXv282full.zip" -d $rdhome/bios/MSX + mv -f $rdhome/bios/MSX/Databases $rdhome/bios/Databases + mv -f $rdhome/bios/MSX/Machines $rdhome/bios/Machines + rm -rfv $rdhome/bios/MSX +} + +tools_init() { + rm -rfv /var/config/retrodeck/tools/ + mkdir -pv /var/config/retrodeck/tools/ + cp -rfv /app/retrodeck/tools/* /var/config/retrodeck/tools/ + mkdir -pv /var/config/emulationstation/.emulationstation/custom_systems/tools/ + rm -rfv /var/config/retrodeck/tools/gamelist.xml + cp -fv /app/retrodeck/tools-gamelist.xml /var/config/retrodeck/tools/gamelist.xml +} + emulators_post_move() { # This script will redo the symlinks for all emulators after moving the $rdhome location without resetting other options # FUTURE WORK: The sed commands here should be replaced with set_setting_value and dir_prep should be replaced with changing paths in config files directly where possible @@ -761,123 +824,13 @@ emulators_post_move() { sed -i 's#/home/deck/retrodeck#'$rdhome'#g' /var/config/ppsspp/PSP/SYSTEM/ppsspp.ini # Duckstation section - sed -i 's#/home/deck/retrodeck/bios#'$rdhome/bios'#g' /var/config/duckstation/settings.ini + sed -i 's#/home/deck/retrodeck/bios#'$rdhome/bios'#g' /var/data/duckstation/settings.ini # Ryujinx section sed -i 's#/home/deck/retrodeck#'$rdhome'#g' /var/config/Ryujinx/Config.json dir_prep "$rdhome/bios/switch/keys" "/var/config/Ryujinx/system" } -#========================= -# REUSABLE DIALOGS SECTION -#========================= - -debug_dialog() { - # This function is for displaying commands run by the Configurator without actually running them - # USAGE: debug_dialog "command" - - zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap \ - --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ - --title "RetroDECK Configurator Utility - Debug Dialog" \ - --text="$1" -} - -configurator_process_complete_dialog() { - # This dialog shows when a process is complete. - # USAGE: configurator_process_complete_dialog "process text" - zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap --ok-label="Quit" --extra-button="OK" \ - --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ - --title "RetroDECK Configurator Utility - Process Complete" \ - --text="The process of $1 is now complete.\n\nYou may need to quit and restart RetroDECK for your changes to take effect\n\nClick OK to return to the Main Menu or Quit to return to RetroDECK." - - if [ ! $? == 0 ] # OK button clicked - then - configurator_welcome_dialog - fi -} - -configurator_generic_dialog() { - # This dialog is for showing temporary messages before another process happens. - # USAGE: configurator_generid_dialog "info text" - zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap \ - --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ - --title "RetroDECK Configurator Utility" \ - --text="$1" -} - -configurator_destination_choice_dialog() { - # This dialog is for making things easy for new users to move files to common locations. Gives the options for "Internal", "SD Card" and "Custom" locations. - # USAGE: $(configurator_destination_choice_dialog "folder being moved" "action text") - # This function returns one of the values: "Back" "Internal Storage" "SD Card" "Custom Location" - choice=$(zenity --title "RetroDECK Configurator Utility - Moving $1 folder" --info --no-wrap --ok-label="Back" --extra-button="Internal Storage" --extra-button="SD Card" --extra-button="Custom Location" \ - --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ - --text="$2") - - echo $choice -} - -#========================= -# LEGACY FUNCTIONS SECTION -#========================= - -# These functions were pulled from retrodeck.sh or global.sh and should be consolidated eventually - -tools_init() { - rm -rfv /var/config/retrodeck/tools/ - mkdir -pv /var/config/retrodeck/tools/ - cp -rfv /app/retrodeck/tools/* /var/config/retrodeck/tools/ - mkdir -pv /var/config/emulationstation/.emulationstation/custom_systems/tools/ - rm -rfv /var/config/retrodeck/tools/gamelist.xml - cp -fv /app/retrodeck/tools-gamelist.xml /var/config/retrodeck/tools/gamelist.xml -} - -ra_init() { - dir_prep "$rdhome/bios" "/var/config/retroarch/system" - dir_prep "$rdhome/.logs/retroarch" "/var/config/retroarch/logs" - mkdir -pv /var/config/retroarch/shaders/ - cp -rfv /app/share/libretro/shaders /var/config/retroarch/ - dir_prep "$rdhome/shaders/retroarch" "/var/config/retroarch/shaders" - mkdir -pv /var/config/retroarch/cores/ - cp -f /app/share/libretro/cores/* /var/config/retroarch/cores/ - cp -fv $emuconfigs/retroarch/retroarch.cfg /var/config/retroarch/ - cp -fv $emuconfigs/retroarch/retroarch-core-options.cfg /var/config/retroarch/ - cp -rfv $emuconfigs/retroarch/core-overrides/* /var/config/retroarch/config - #rm -rf $rdhome/bios/bios # in some situations a double bios symlink is created - sed -i 's#~/retrodeck#'$rdhome'#g' /var/config/retroarch/retroarch.cfg - - # PPSSPP - echo "--------------------------------" - echo "Initializing PPSSPP_LIBRETRO" - echo "--------------------------------" - if [ -d $rdhome/bios/PPSSPP/flash0/font ] - then - mv -fv $rdhome/bios/PPSSPP/flash0/font $rdhome/bios/PPSSPP/flash0/font.bak - fi - mkdir -p $rdhome/bios/PPSSPP - #if [ ! -f "$rdhome/bios/PPSSPP/ppge_atlas.zim" ] - #then - wget "https://github.com/hrydgard/ppsspp/archive/refs/heads/master.zip" -P $rdhome/bios/PPSSPP - unzip -q "$rdhome/bios/PPSSPP/master.zip" -d $rdhome/bios/PPSSPP/ - mv -f "$rdhome/bios/PPSSPP/ppsspp-master/assets/"* "$rdhome/bios/PPSSPP/" - rm -rfv "$rdhome/bios/PPSSPP/master.zip" - rm -rfv "$rdhome/bios/PPSSPP/ppsspp-master" - #fi - if [ -d $rdhome/bios/PPSSPP/flash0/font.bak ] - then - mv -fv $rdhome/bios/PPSSPP/flash0/font.bak $rdhome/bios/PPSSPP/flash0/font - fi - - # MSX / SVI / ColecoVision / SG-1000 - echo "-----------------------------------------------------------" - echo "Initializing MSX / SVI / ColecoVision / SG-1000 LIBRETRO" - echo "-----------------------------------------------------------" - wget "http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" -P $rdhome/bios/MSX - unzip -q "$rdhome/bios/MSX/blueMSXv282full.zip" -d $rdhome/bios/MSX - mv -f $rdhome/bios/MSX/Databases $rdhome/bios/Databases - mv -f $rdhome/bios/MSX/Machines $rdhome/bios/Machines - rm -rfv $rdhome/bios/MSX -} - create_lock() { # creating RetroDECK's lock file and writing the version in the config file version=$hard_version @@ -1077,4 +1030,52 @@ finit() { --title "RetroDECK" \ --text="Installation completed.\nPlease put your roms in:\n\n$roms_folder\n\nand your bioses in\n\n$bios_folder\n\nThen start the program again.\nIf you wish to change the roms location, you may use the tool located the tools section of RetroDECK.\n\nIMPORTANT NOTES:\n- RetroDECK must be manually added and launched from your Steam Library in order to work correctly.\n- It's recommended to use the 'RetroDECK Offical Controller Config' from Steam (under community layouts).\n- It's suggested to use BoilR to automatically add the SteamGridDB images to Steam (this will be automated soon).\nhttps://github.com/PhilipK/BoilR" # TODO: Replace the stuff above with BoilR code when ready +} + +#========================= +# REUSABLE DIALOGS SECTION +#========================= + +debug_dialog() { + # This function is for displaying commands run by the Configurator without actually running them + # USAGE: debug_dialog "command" + + zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap \ + --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ + --title "RetroDECK Configurator Utility - Debug Dialog" \ + --text="$1" +} + +configurator_process_complete_dialog() { + # This dialog shows when a process is complete. + # USAGE: configurator_process_complete_dialog "process text" + zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap --ok-label="Quit" --extra-button="OK" \ + --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ + --title "RetroDECK Configurator Utility - Process Complete" \ + --text="The process of $1 is now complete.\n\nYou may need to quit and restart RetroDECK for your changes to take effect\n\nClick OK to return to the Main Menu or Quit to return to RetroDECK." + + if [ ! $? == 0 ] # OK button clicked + then + configurator_welcome_dialog + fi +} + +configurator_generic_dialog() { + # This dialog is for showing temporary messages before another process happens. + # USAGE: configurator_generid_dialog "info text" + zenity --icon-name=net.retrodeck.retrodeck --info --no-wrap \ + --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ + --title "RetroDECK Configurator Utility" \ + --text="$1" +} + +configurator_destination_choice_dialog() { + # This dialog is for making things easy for new users to move files to common locations. Gives the options for "Internal", "SD Card" and "Custom" locations. + # USAGE: $(configurator_destination_choice_dialog "folder being moved" "action text") + # This function returns one of the values: "Back" "Internal Storage" "SD Card" "Custom Location" + choice=$(zenity --title "RetroDECK Configurator Utility - Moving $1 folder" --info --no-wrap --ok-label="Back" --extra-button="Internal Storage" --extra-button="SD Card" --extra-button="Custom Location" \ + --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ + --text="$2") + + echo $choice } \ No newline at end of file diff --git a/global.sh b/global.sh index ef2b7dd8..4c33839a 100755 --- a/global.sh +++ b/global.sh @@ -14,6 +14,7 @@ hard_version="$(cat '/app/retrodeck/version')" # hardcoded version ( # Config files for emulators with single config files citraconf="/var/config/citra-emu/qt-config.ini" +duckstationconf="/var/data/duckstation/settings.ini" melondsconf="/var/config/melonDS/melonDS.ini" rpcs3conf="/var/config/rpcs3/config.yml" yuzuconf="/var/config/yuzu/qt-config.ini" diff --git a/net.retrodeck.retrodeck.appdata.xml b/net.retrodeck.retrodeck.appdata.xml index 16ea75da..4ae8bc3f 100644 --- a/net.retrodeck.retrodeck.appdata.xml +++ b/net.retrodeck.retrodeck.appdata.xml @@ -76,8 +76,11 @@