From df1a88aff0643a15b9c0bce6625f8ec74e0fd3c8 Mon Sep 17 00:00:00 2001 From: mason Date: Sun, 14 May 2023 06:39:10 +0000 Subject: [PATCH 1/3] rk3326 setup --- .../drastic-sa/config/RK3326/drastic.cfg.oga | 111 +++ .../standalone/drastic-sa/package.mk | 2 +- .../config/RK3326/settings.ini.oga | 258 +++++++ .../config/RK3326/mupen64plus.cfg.oga | 668 ++++++++++++++++++ .../scripts/start_mupen64plus.sh | 2 +- .../config/RK3326/default.ini | 52 +- .../config/gamecontrollerdb.txt | 2 +- .../OpenSimHardware OSH PB Controller.cfg | 2 - .../gamepads/odroidgo2_joypad.cfg | 10 +- .../gamepads/odroidgo2_v11_joypad.cfg | 6 +- .../hardware/quirks/devices/ODROID-GO Advance | 1 + .../002-deviceconfig | 3 +- .../ODROID-GO Advance Black Edition/003-audio | 85 ++- .../004-control-configs | 23 + .../config/common/es_input.cfg | 10 +- .../config/device/RK3326/es_systems.cfg | 8 +- .../Rockchip/devices/RK3326/device.config | 3 +- .../patches/RK3326/000-rk3326-devices.patch | 240 +++++-- 18 files changed, 1396 insertions(+), 90 deletions(-) create mode 100644 packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.oga create mode 100644 packages/emulators/standalone/duckstation-sa/config/RK3326/settings.ini.oga create mode 100644 packages/emulators/standalone/mupen64plus-sa/mupen64plus-sa-core/config/RK3326/mupen64plus.cfg.oga create mode 120000 packages/hardware/quirks/devices/ODROID-GO Advance create mode 100644 packages/hardware/quirks/devices/ODROID-GO Advance Black Edition/004-control-configs diff --git a/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.oga b/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.oga new file mode 100644 index 000000000..e44415fe7 --- /dev/null +++ b/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.oga @@ -0,0 +1,111 @@ +frameskip_type = 2 +frameskip_value = 3 +safe_frameskip = 0 +show_frame_counter = 0 +screen_orientation = 1 +screen_swap = 0 +savestate_number = 0 +fast_forward = 0 +enable_sound = 1 +clock_speed = 0 +threaded_3d = 1 +mirror_touch = 0 +compress_savestates = 1 +savestate_snapshot = 1 +unzip_roms = 0 +preload_roms = 0 +backup_in_savestates = 1 +ignore_gamecard_limit = 0 +frame_interval = 0 +trim_roms = 0 +fix_main_2d_screen = 0 +disable_edge_marking = 0 +interframe_blend = 0 +hires_3d = 1 +use_rtc_custom_time = 0 +rtc_custom_time = 0 +rtc_system_time = 0 +slot2_device_type = 0 +rumble_frames = 3 +firmware.username = Jelos +firmware.language = 1 +firmware.favorite_color = 0 +firmware.birthday_month = 1 +firmware.birthday_day = 1 +enable_cheats = 1 +controls_a[CONTROL_INDEX_UP] = 1032 +controls_a[CONTROL_INDEX_DOWN] = 1033 +controls_a[CONTROL_INDEX_LEFT] = 1034 +controls_a[CONTROL_INDEX_RIGHT] = 1035 +controls_a[CONTROL_INDEX_A] = 1025 +controls_a[CONTROL_INDEX_B] = 1024 +controls_a[CONTROL_INDEX_X] = 1026 +controls_a[CONTROL_INDEX_Y] = 1027 +controls_a[CONTROL_INDEX_L] = 1028 +controls_a[CONTROL_INDEX_R] = 1029 +controls_a[CONTROL_INDEX_START] = 1039 +controls_a[CONTROL_INDEX_SELECT] = 1036 +controls_a[CONTROL_INDEX_HINGE] = 65535 +controls_a[CONTROL_INDEX_TOUCH_CURSOR_UP] = 1217 +controls_a[CONTROL_INDEX_TOUCH_CURSOR_DOWN] = 1153 +controls_a[CONTROL_INDEX_TOUCH_CURSOR_LEFT] = 1216 +controls_a[CONTROL_INDEX_TOUCH_CURSOR_RIGHT] = 1152 +controls_a[CONTROL_INDEX_TOUCH_CURSOR_PRESS] = 1038 +controls_a[CONTROL_INDEX_MENU] = 1037 +controls_a[CONTROL_INDEX_SAVE_STATE] = 65535 +controls_a[CONTROL_INDEX_LOAD_STATE] = 65535 +controls_a[CONTROL_INDEX_FAST_FORWARD] = 65535 +controls_a[CONTROL_INDEX_SWAP_SCREENS] = 65535 +controls_a[CONTROL_INDEX_SWAP_ORIENTATION_A] = 1030 +controls_a[CONTROL_INDEX_SWAP_ORIENTATION_B] = 1031 +controls_a[CONTROL_INDEX_LOAD_GAME] = 65535 +controls_a[CONTROL_INDEX_QUIT] = 65535 +controls_a[CONTROL_INDEX_FAKE_MICROPHONE] = 65535 +controls_a[CONTROL_INDEX_UI_UP] = 1032 +controls_a[CONTROL_INDEX_UI_DOWN] = 1033 +controls_a[CONTROL_INDEX_UI_LEFT] = 1034 +controls_a[CONTROL_INDEX_UI_RIGHT] = 1035 +controls_a[CONTROL_INDEX_UI_SELECT] = 1025 +controls_a[CONTROL_INDEX_UI_BACK] = 65535 +controls_a[CONTROL_INDEX_UI_EXIT] = 1024 +controls_a[CONTROL_INDEX_UI_PAGE_UP] = 65535 +controls_a[CONTROL_INDEX_UI_PAGE_DOWN] = 65535 +controls_a[CONTROL_INDEX_UI_SWITCH] = 65535 +controls_b[CONTROL_INDEX_UP] = 65535 +controls_b[CONTROL_INDEX_DOWN] = 65535 +controls_b[CONTROL_INDEX_LEFT] = 65535 +controls_b[CONTROL_INDEX_RIGHT] = 65535 +controls_b[CONTROL_INDEX_A] = 65535 +controls_b[CONTROL_INDEX_B] = 65535 +controls_b[CONTROL_INDEX_X] = 65535 +controls_b[CONTROL_INDEX_Y] = 65535 +controls_b[CONTROL_INDEX_L] = 65535 +controls_b[CONTROL_INDEX_R] = 65535 +controls_b[CONTROL_INDEX_START] = 65535 +controls_b[CONTROL_INDEX_SELECT] = 65535 +controls_b[CONTROL_INDEX_HINGE] = 65535 +controls_b[CONTROL_INDEX_TOUCH_CURSOR_UP] = 65535 +controls_b[CONTROL_INDEX_TOUCH_CURSOR_DOWN] = 65535 +controls_b[CONTROL_INDEX_TOUCH_CURSOR_LEFT] = 65535 +controls_b[CONTROL_INDEX_TOUCH_CURSOR_RIGHT] = 65535 +controls_b[CONTROL_INDEX_TOUCH_CURSOR_PRESS] = 65535 +controls_b[CONTROL_INDEX_MENU] = 65535 +controls_b[CONTROL_INDEX_SAVE_STATE] = 65535 +controls_b[CONTROL_INDEX_LOAD_STATE] = 65535 +controls_b[CONTROL_INDEX_FAST_FORWARD] = 65535 +controls_b[CONTROL_INDEX_SWAP_SCREENS] = 65535 +controls_b[CONTROL_INDEX_SWAP_ORIENTATION_A] = 65535 +controls_b[CONTROL_INDEX_SWAP_ORIENTATION_B] = 65535 +controls_b[CONTROL_INDEX_LOAD_GAME] = 65535 +controls_b[CONTROL_INDEX_QUIT] = 65535 +controls_b[CONTROL_INDEX_FAKE_MICROPHONE] = 65535 +controls_b[CONTROL_INDEX_UI_UP] = 1217 +controls_b[CONTROL_INDEX_UI_DOWN] = 1153 +controls_b[CONTROL_INDEX_UI_LEFT] = 1216 +controls_b[CONTROL_INDEX_UI_RIGHT] = 1152 +controls_b[CONTROL_INDEX_UI_SELECT] = 65535 +controls_b[CONTROL_INDEX_UI_BACK] = 65535 +controls_b[CONTROL_INDEX_UI_EXIT] = 65535 +controls_b[CONTROL_INDEX_UI_PAGE_UP] = 65535 +controls_b[CONTROL_INDEX_UI_PAGE_DOWN] = 65535 +controls_b[CONTROL_INDEX_UI_SWITCH] = 65535 diff --git a/packages/emulators/standalone/drastic-sa/package.mk b/packages/emulators/standalone/drastic-sa/package.mk index 17e6c2c94..0cda3c253 100644 --- a/packages/emulators/standalone/drastic-sa/package.mk +++ b/packages/emulators/standalone/drastic-sa/package.mk @@ -30,5 +30,5 @@ makeinstall_target() { mkdir -p ${INSTALL}/usr/config/drastic/config cp -rf ${PKG_BUILD}/drastic_aarch64/* ${INSTALL}/usr/config/drastic/ - cp -rf ${PKG_DIR}/config/${DEVICE}/drastic.cfg ${INSTALL}/usr/config/drastic/config/drastic.cfg + cp -rf ${PKG_DIR}/config/${DEVICE}/* ${INSTALL}/usr/config/drastic/config/ } diff --git a/packages/emulators/standalone/duckstation-sa/config/RK3326/settings.ini.oga b/packages/emulators/standalone/duckstation-sa/config/RK3326/settings.ini.oga new file mode 100644 index 000000000..c4e507b09 --- /dev/null +++ b/packages/emulators/standalone/duckstation-sa/config/RK3326/settings.ini.oga @@ -0,0 +1,258 @@ +[Main] +SettingsVersion = 3 +StartFullscreen = true +EmulationSpeed = 1.000000 +FastForwardSpeed = 0.000000 +TurboSpeed = 0.000000 +SyncToHostRefreshRate = false +IncreaseTimerResolution = true +InhibitScreensaver = true +StartPaused = false +PauseOnFocusLoss = false +PauseOnMenu = true +SaveStateOnExit = true +ConfirmPowerOff = true +LoadDevicesFromSaveStates = false +ApplyGameSettings = true +AutoLoadCheats = true +DisableAllEnhancements = false +RewindEnable = false +RewindFrequency = 10.000000 +RewindSaveSlots = 10 +RunaheadFrameCount = 0 +UseLightFullscreenUITheme = false + + +[BIOS] +SearchDirectory = /storage/roms/bios +PathNTSCU = +PathNTSCJ = +PathPAL = +PatchTTYEnable = false +PatchFastBoot = true + + +[GPU] +Renderer = OpenGL +Adapter = +ResolutionScale = 1 +Multisamples = 1 +UseDebugDevice = false +PerSampleShading = false +UseThread = true +ThreadedPresentation = true +UseSoftwareRendererForReadbacks = false +TrueColor = false +ScaledDithering = false +TextureFilter = Nearest +DownsampleMode = Disabled +DisableInterlacing = false +ForceNTSCTimings = false +WidescreenHack = false +ChromaSmoothing24Bit = false +PGXPEnable = false +PGXPCulling = true +PGXPTextureCorrection = true +PGXPVertexCache = false +PGXPCPU = false +PGXPPreserveProjFP = false +PGXPTolerance = -1.000000 +PGXPDepthBuffer = false +PGXPDepthClearThreshold = 300.000000 +FullscreenMode = + + +[Display] +CropMode = Overscan +ActiveStartOffset = 0 +ActiveEndOffset = 0 +LineStartOffset = 0 +LineEndOffset = 0 +Force4_3For24Bit = false +AspectRatio = Auto (Match Window) +CustomAspectRatioNumerator = 4 +LinearFiltering = true +IntegerScaling = false +Stretch = false +PostProcessing = false +ShowOSDMessages = true +ShowFPS = false +ShowVPS = false +ShowSpeed = false +ShowResolution = false +ShowStatusIndicators = true +ShowEnhancements = false +DisplayAllFrames = true +VSync = false +MaxFPS = 0.000000 + + +[Hotkeys] +OpenPauseMenu = SDL-0/Back & SDL-0/X +FastForward = SDL-0/Back & SDL-0/RightStick +LoadSelectedSaveState = SDL-0/Back & SDL-0/LeftShoulder +SaveSelectedSaveState = SDL-0/Back & SDL-0/RightShoulder +PowerOff = SDL-0/Back & SDL-0/Start +Rewind = SDL-0/Back & SDL-0/LeftStick + + +[Logging] +LogLevel = Error +LogFilter = +LogToConsole = false +LogToDebug = false +LogToWindow = false +LogToFile = false + + +[Controller1] +Up = SDL-0/DPadUp +Right = SDL-0/DPadRight +Down = SDL-0/DPadDown +Left = SDL-0/DPadLeft +Triangle = SDL-0/X +Circle = SDL-0/A +Cross = SDL-0/B +Square = SDL-0/Y +Select = SDL-0/Back +Start = SDL-0/Start +L1 = SDL-0/LeftShoulder +R1 = SDL-0/RightShoulder +L2 = SDL-0/+LeftTrigger +R2 = SDL-0/+RightTrigger +L3 = SDL-0/LeftStick +R3 = SDL-0/RightStick +LRight = SDL-0/+Left +LDown = SDL-0/+LeftY +LUp = SDL-0/-LeftY +LLeft = SDL-0/-LeftX + + +[GameList] +RecursivePaths = /storage/roms/psx + + +[MemoryCards] +UsePlaylistTitle = true +Directory = /storage/roms/psx +Card1Type = PerGameTitle +Card2Type = None + + +[Console] +Region = Auto +Enable8MBRAM = false + + +[CPU] +ExecutionMode = Recompiler +OverclockEnable = false +OverclockNumerator = 1 +OverclockDenominator = 1 +RecompilerMemoryExceptions = false +RecompilerBlockLinking = true +RecompilerICache = false +FastmemMode = MMap + + +[CDROM] +ReadaheadSectors = 8 +RegionCheck = false +LoadImageToRAM = false +MuteCDAudio = false +ReadSpeedup = 1 +SeekSpeedup = 1 + + +[Audio] +Backend = SDL +OutputVolume = 100 +FastForwardVolume = 100 +BufferSize = 2048 +Resampling = true +OutputMuted = false +Sync = true +DumpOnBoot = false + + +[Hacks] +DMAMaxSliceTicks = 1000 +DMAHaltTicks = 100 +GPUFIFOSize = 16 +GPUMaxRunAhead = 128 + + +[Controller2] +Type = None + + +[Controller3] +Type = None + + +[Controller4] +Type = None + + +[Controller5] +Type = None + + +[Controller6] +Type = None + + +[Controller7] +Type = None + + +[Controller8] +Type = None + + +[ControllerPorts] +MultitapMode = Disabled + + +[Debug] +ShowVRAM = false +DumpCPUToVRAMCopies = false +DumpVRAMToCPUCopies = false +ShowGPUState = false +ShowCDROMState = false +ShowSPUState = false +ShowTimersState = false +ShowMDECState = false +ShowDMAState = false + + +[TextureReplacements] +EnableVRAMWriteReplacements = false +PreloadTextures = false +DumpVRAMWrites = false +DumpVRAMWriteForceAlphaChannel = true +DumpVRAMWriteWidthThreshold = 128 +DumpVRAMWriteHeightThreshold = 128 + + +[Pad1] +Up = SDL-0/DPadUp +Right = SDL-0/DPadRight +Down = SDL-0/DPadDown +Left = SDL-0/DPadLeft +Triangle = SDL-0/X +Circle = SDL-0/A +Cross = SDL-0/B +Square = SDL-0/Y +Select = SDL-0/Back +Start = SDL-0/Start +L1 = SDL-0/LeftShoulder +R1 = SDL-0/RightShoulder +L2 = SDL-0/+LeftTrigger +R2 = SDL-0/+RightTrigger +L3 = SDL-0/LeftStick +R3 = SDL-0/RightStick +LRight = SDL-0/+Left +LDown = SDL-0/+LeftY +LUp = SDL-0/-LeftY +LLeft = SDL-0/-LeftX diff --git a/packages/emulators/standalone/mupen64plus-sa/mupen64plus-sa-core/config/RK3326/mupen64plus.cfg.oga b/packages/emulators/standalone/mupen64plus-sa/mupen64plus-sa-core/config/RK3326/mupen64plus.cfg.oga new file mode 100644 index 000000000..9db23fdb0 --- /dev/null +++ b/packages/emulators/standalone/mupen64plus-sa/mupen64plus-sa-core/config/RK3326/mupen64plus.cfg.oga @@ -0,0 +1,668 @@ +# Mupen64Plus Configuration File +# This file is automatically read and written by the Mupen64Plus Core library + +[64DD] + +# Filename of the 64DD IPL ROM +IPL-ROM = "" +# Filename of the disk to load into Disk Drive +Disk = "" + + +[Audio-SDL] + +# Mupen64Plus SDL Audio Plugin config parameter version number +Version = 1.000000 +# Frequency which is used if rom doesn't want to change it +DEFAULT_FREQUENCY = 33600 +# Swaps left and right channels +SWAP_CHANNELS = False +# Size of primary buffer in output samples. This is where audio is loaded after it's extracted from n64's memory. +PRIMARY_BUFFER_SIZE = 16384 +# Fullness level target for Primary audio buffer, in equivalent output samples. This value must be larger than the SECONDARY_BUFFER_SIZE. Decreasing this value will reduce audio latency but requires a faster PC to avoid choppiness. Increasing this will increase audio latency but reduce the chance of drop-outs. +PRIMARY_BUFFER_TARGET = 2048 +# Size of secondary buffer in output samples. This is SDL's hardware buffer. The SDL documentation states that this should be a power of two between 512 and 8192. +SECONDARY_BUFFER_SIZE = 1024 +# Audio resampling algorithm. src-sinc-best-quality, src-sinc-medium-quality, src-sinc-fastest, src-zero-order-hold, src-linear, speex-fixed-{10-0}, trivial +RESAMPLE = "trivial" +# Volume control type: 1 = SDL (only affects Mupen64Plus output) 2 = OSS mixer (adjusts master PC volume) +VOLUME_CONTROL_TYPE = 1 +# Percentage change each time the volume is increased or decreased +VOLUME_ADJUST = 5 +# Default volume when a game is started. Only used if VOLUME_CONTROL_TYPE is 1 +VOLUME_DEFAULT = 100 +# Synchronize Video/Audio +AUDIO_SYNC = False + + +[Core] + +# Mupen64Plus Core config parameter set version number. Please don't change this version number. +Version = 1.010000 +# Draw on-screen display if True, otherwise don't draw OSD +OnScreenDisplay = True +# Use Pure Interpreter if 0, Cached Interpreter if 1, or Dynamic Recompiler if 2 or more +R4300Emulator = 2 +# Disable compiled jump commands in dynamic recompiler (should be set to False) +NoCompiledJump = False +# Disable 4MB expansion RAM pack. May be necessary for some games +DisableExtraMem = False +# Increment the save state slot after each save operation +AutoStateSlotIncrement = False +# Activate the R4300 debugger when ROM execution begins, if core was built with Debugger support +EnableDebugger = False +# Save state slot (0-9) to use when saving/loading the emulator state +CurrentStateSlot = 0 +# Path to directory where screenshots are saved. If this is blank, the default value of ${UserDataPath}/screenshot will be used +ScreenshotPath = "/storage/roms/n64" +# Path to directory where emulator save states (snapshots) are saved. If this is blank, the default value of ${UserDataPath}/save will be used +SaveStatePath = "/storage/roms/n64" +# Path to directory where SRAM/EEPROM data (in-game saves) are stored. If this is blank, the default value of ${UserDataPath}/save will be used +SaveSRAMPath = "/storage/roms/n64" +# Path to a directory to search when looking for shared data files +SharedDataPath = "/tmp/mupen64plussa" +# Force number of cycles per emulated instruction +CountPerOp = 0 +# Randomize PI/SI Interrupt Timing +RandomizeInterrupt = True +# Duration of SI DMA (-1: use per game settings) +SiDmaDuration = -1 +# Gameboy Camera Video Capture backend +GbCameraVideoCaptureBackend1 = "" +# Disk Save Format (0: Full Disk Copy (*.ndr/*.d6r), 1: RAM Area Only (*.ram)) +SaveDiskFormat = 1 + + +[CoreEvents] + +# Mupen64Plus CoreEvents config parameter set version number. Please don't change this version number. +Version = 1.000000 +# SDL keysym for stopping the emulator +Kbd Mapping Stop = 27 +# SDL keysym for switching between fullscreen/windowed modes +Kbd Mapping Fullscreen = 0 +# SDL keysym for saving the emulator state +Kbd Mapping Save State = 286 +# SDL keysym for loading the emulator state +Kbd Mapping Load State = 288 +# SDL keysym for advancing the save state slot +Kbd Mapping Increment Slot = 0 +# SDL keysym for resetting the emulator +Kbd Mapping Reset = 290 +# SDL keysym for slowing down the emulator +Kbd Mapping Speed Down = 291 +# SDL keysym for speeding up the emulator +Kbd Mapping Speed Up = 292 +# SDL keysym for taking a screenshot +Kbd Mapping Screenshot = 293 +# SDL keysym for pausing the emulator +Kbd Mapping Pause = 112 +# SDL keysym for muting/unmuting the sound +Kbd Mapping Mute = 109 +# SDL keysym for increasing the volume +Kbd Mapping Increase Volume = 93 +# SDL keysym for decreasing the volume +Kbd Mapping Decrease Volume = 91 +# SDL keysym for temporarily going really fast +Kbd Mapping Fast Forward = 102 +# SDL keysym for advancing by one frame when paused +Kbd Mapping Frame Advance = 47 +# SDL keysym for pressing the game shark button +Kbd Mapping Gameshark = 103 +# Joystick event string for stopping the emulator +Joy Mapping Stop = "J0B12/B15" +# Joystick event string for switching between fullscreen/windowed modes +Joy Mapping Fullscreen = "" +# Joystick event string for saving the emulator state +Joy Mapping Save State = "J0B12/B5" +# Joystick event string for loading the emulator state +Joy Mapping Load State = "J0B12/B4" +# Joystick event string for advancing the save state slot +Joy Mapping Increment Slot = "" +# Joystick event string for resetting the emulator +Joy Mapping Reset = "" +# Joystick event string for slowing down the emulator +Joy Mapping Speed Down = "" +# Joystick event string for speeding up the emulator +Joy Mapping Speed Up = "" +# Joystick event string for taking a screenshot +Joy Mapping Screenshot = "" +# Joystick event string for pausing the emulator +Joy Mapping Pause = "J0B12/B0" +# Joystick event string for muting/unmuting the sound +Joy Mapping Mute = "" +# Joystick event string for increasing the volume +Joy Mapping Increase Volume = "" +# Joystick event string for decreasing the volume +Joy Mapping Decrease Volume = "" +# Joystick event string for fast-forward +Joy Mapping Fast Forward = "J0B12/B14" +# Joystick event string for advancing by one frame when paused +Joy Mapping Frame Advance = "" +# Joystick event string for pressing the game shark button +Joy Mapping Gameshark = "" +# SDL keysym for save slot 0 +Kbd Mapping Slot 0 = 48 +# SDL keysym for save slot 1 +Kbd Mapping Slot 1 = 49 +# SDL keysym for save slot 2 +Kbd Mapping Slot 2 = 50 +# SDL keysym for save slot 3 +Kbd Mapping Slot 3 = 51 +# SDL keysym for save slot 4 +Kbd Mapping Slot 4 = 52 +# SDL keysym for save slot 5 +Kbd Mapping Slot 5 = 53 +# SDL keysym for save slot 6 +Kbd Mapping Slot 6 = 54 +# SDL keysym for save slot 7 +Kbd Mapping Slot 7 = 55 +# SDL keysym for save slot 8 +Kbd Mapping Slot 8 = 56 +# SDL keysym for save slot 9 +Kbd Mapping Slot 9 = 57 + + +[Input-SDL-Control1] + +# Mupen64Plus SDL Input Plugin config parameter version number. Please don't change this version number. +version = 2.000000 +# Controller configuration mode: 0=Fully Manual, 1=Auto with named SDL Device, 2=Fully automatic +mode = 2 +# Specifies which joystick is bound to this controller: -1=No joystick, 0 or more= SDL Joystick number +device = 0 +# SDL joystick name (or Keyboard) +name = "odroidgo2_v11_joypad" +# Specifies whether this controller is 'plugged in' to the simulated N64 +plugged = True +# Specifies which type of expansion pak is in the controller: 1=None, 2=Mem pak, 4=Transfer pak, 5=Rumble pak +plugin = 2 +# If True, then mouse buttons may be used with this controller +mouse = False +# Scaling factor for mouse movements. For X, Y axes. +MouseSensitivity = "2.00,2.00" +# The minimum absolute value of the SDL analog joystick axis to move the N64 controller axis value from 0. For X, Y axes. +AnalogDeadzone = "0,0" +# An absolute value of the SDL joystick axis >= AnalogPeak will saturate the N64 controller axis value (at 80). For X, Y axes. For each axis, this must be greater than the corresponding AnalogDeadzone value +AnalogPeak = "32768,32768" +# Digital button configuration mappings +plugged = True +mouse = False +AnalogDeadzone = 0,0 +AnalogPeak = 32768,32768 +DPad R = button(11) +DPad L = button(10) +DPad D = button(9) +DPad U = button(8) +Start = button(15) +Z Trig = button(4) +B Button = button(3) +A Button = button(0) +C Button R = button(14) +C Button L = button(1) +C Button D = button(13) +C Button U = button(2) +R Trig = button(5) +L Trig = button(12) +Mempak switch = +Rumblepak switch = +# Analog axis configuration mappings +X Axis = axis(1+,1-) +Y Axis = axis(0+,0-) + +[Input-SDL-Control2] + +# Mupen64Plus SDL Input Plugin config parameter version number. Please don't change this version number. +version = 2.000000 +# Controller configuration mode: 0=Fully Manual, 1=Auto with named SDL Device, 2=Fully automatic +mode = 2 +# Specifies which joystick is bound to this controller: -1=No joystick, 0 or more= SDL Joystick number +device = -1 +# SDL joystick name (or Keyboard) +name = "" +# Specifies whether this controller is 'plugged in' to the simulated N64 +plugged = False +# Specifies which type of expansion pak is in the controller: 1=None, 2=Mem pak, 4=Transfer pak, 5=Rumble pak +plugin = 2 +# If True, then mouse buttons may be used with this controller +mouse = False +# Scaling factor for mouse movements. For X, Y axes. +MouseSensitivity = "2.00,2.00" +# The minimum absolute value of the SDL analog joystick axis to move the N64 controller axis value from 0. For X, Y axes. +AnalogDeadzone = "4096,4096" +# An absolute value of the SDL joystick axis >= AnalogPeak will saturate the N64 controller axis value (at 80). For X, Y axes. For each axis, this must be greater than the corresponding AnalogDeadzone value +AnalogPeak = "32768,32768" +# Digital button configuration mappings +DPad R = "" +DPad L = "" +DPad D = "" +DPad U = "" +Start = "" +Z Trig = "" +B Button = "" +A Button = "" +C Button R = "" +C Button L = "" +C Button D = "" +C Button U = "" +R Trig = "" +L Trig = "" +Mempak switch = "" +Rumblepak switch = "" +# Analog axis configuration mappings +X Axis = "" +Y Axis = "" + + +[Input-SDL-Control3] + +# Mupen64Plus SDL Input Plugin config parameter version number. Please don't change this version number. +version = 2.000000 +# Controller configuration mode: 0=Fully Manual, 1=Auto with named SDL Device, 2=Fully automatic +mode = 2 +# Specifies which joystick is bound to this controller: -1=No joystick, 0 or more= SDL Joystick number +device = -1 +# SDL joystick name (or Keyboard) +name = "" +# Specifies whether this controller is 'plugged in' to the simulated N64 +plugged = False +# Specifies which type of expansion pak is in the controller: 1=None, 2=Mem pak, 4=Transfer pak, 5=Rumble pak +plugin = 2 +# If True, then mouse buttons may be used with this controller +mouse = False +# Scaling factor for mouse movements. For X, Y axes. +MouseSensitivity = "2.00,2.00" +# The minimum absolute value of the SDL analog joystick axis to move the N64 controller axis value from 0. For X, Y axes. +AnalogDeadzone = "4096,4096" +# An absolute value of the SDL joystick axis >= AnalogPeak will saturate the N64 controller axis value (at 80). For X, Y axes. For each axis, this must be greater than the corresponding AnalogDeadzone value +AnalogPeak = "32768,32768" +# Digital button configuration mappings +DPad R = "" +DPad L = "" +DPad D = "" +DPad U = "" +Start = "" +Z Trig = "" +B Button = "" +A Button = "" +C Button R = "" +C Button L = "" +C Button D = "" +C Button U = "" +R Trig = "" +L Trig = "" +Mempak switch = "" +Rumblepak switch = "" +# Analog axis configuration mappings +X Axis = "" +Y Axis = "" + + +[Input-SDL-Control4] + +# Mupen64Plus SDL Input Plugin config parameter version number. Please don't change this version number. +version = 2.000000 +# Controller configuration mode: 0=Fully Manual, 1=Auto with named SDL Device, 2=Fully automatic +mode = 2 +# Specifies which joystick is bound to this controller: -1=No joystick, 0 or more= SDL Joystick number +device = -1 +# SDL joystick name (or Keyboard) +name = "" +# Specifies whether this controller is 'plugged in' to the simulated N64 +plugged = False +# Specifies which type of expansion pak is in the controller: 1=None, 2=Mem pak, 4=Transfer pak, 5=Rumble pak +plugin = 2 +# If True, then mouse buttons may be used with this controller +mouse = False +# Scaling factor for mouse movements. For X, Y axes. +MouseSensitivity = "2.00,2.00" +# The minimum absolute value of the SDL analog joystick axis to move the N64 controller axis value from 0. For X, Y axes. +AnalogDeadzone = "4096,4096" +# An absolute value of the SDL joystick axis >= AnalogPeak will saturate the N64 controller axis value (at 80). For X, Y axes. For each axis, this must be greater than the corresponding AnalogDeadzone value +AnalogPeak = "32768,32768" +# Digital button configuration mappings +DPad R = "" +DPad L = "" +DPad D = "" +DPad U = "" +Start = "" +Z Trig = "" +B Button = "" +A Button = "" +C Button R = "" +C Button L = "" +C Button D = "" +C Button U = "" +R Trig = "" +L Trig = "" +Mempak switch = "" +Rumblepak switch = "" +# Analog axis configuration mappings +X Axis = "" +Y Axis = "" + + +[Rsp-HLE] + +# Mupen64Plus RSP HLE Plugin config parameter version number +Version = 1.000000 +# Path to a RSP plugin which will be used when encountering an unknown ucode.You can disable this by letting an empty string. +RspFallback = "" +# Send display lists to the graphics plugin +DisplayListToGraphicsPlugin = True +# Send audio lists to the audio plugin +AudioListToAudioPlugin = False + + +[Transferpak] + +# Filename of the GB ROM to load into transferpak 1 +GB-rom-1 = "" +# Filename of the GB RAM to load into transferpak 1 +GB-ram-1 = "" +# Filename of the GB ROM to load into transferpak 2 +GB-rom-2 = "" +# Filename of the GB RAM to load into transferpak 2 +GB-ram-2 = "" +# Filename of the GB ROM to load into transferpak 3 +GB-rom-3 = "" +# Filename of the GB RAM to load into transferpak 3 +GB-ram-3 = "" +# Filename of the GB ROM to load into transferpak 4 +GB-rom-4 = "" +# Filename of the GB RAM to load into transferpak 4 +GB-ram-4 = "" + + +[UI-Console] + +# Mupen64Plus UI-Console config parameter set version number. Please don't change this version number. +Version = 1.000000 +# Directory in which to search for plugins +PluginDir = "/usr/local/lib/mupen64plus" +# Filename of video plugin +VideoPlugin = "mupen64plus-video-rice" +# Filename of audio plugin +AudioPlugin = "mupen64plus-audio-sdl.so" +# Filename of input plugin +InputPlugin = "mupen64plus-input-sdl.so" +# Filename of RSP plugin +RspPlugin = "mupen64plus-rsp-hle.so" + + +[Video-General] + +# Width of output window or fullscreen width +ScreenWidth = 427 +# Height of output window or fullscreen height +ScreenHeight = 320 +# Use fullscreen mode if True, or windowed mode if False +Fullscreen = True +# If true, activate the SDL_GL_SWAP_CONTROL attribute +VerticalSync = True +# Rotate screen contents: 0=0 degree, 1=90 degree, 2 = 180 degree, 3=270 degree +Rotate = 0 + +[Video-GLideN64] + +###### Hardware Compatibility ###### +# Leave enabled unless a mobile gpu doesn't support it. +EnableFragmentDepthWrite = 1 +# Hardware per pixel lighting, supposedly good for GLES3.1 devices or higher. +EnableHWLighting = 0 + +###### Enhancements ####### +# Internal render resoluton rather than output. So 2 x 240p is 480p, etc. +UseNativeResolutionFactor = 1 +# Enable/Disable MultiSampling (0=off, 2,4,8,16=quality) +MultiSampling = 0 +# Enable/Disable Fast Approximate Anti-Aliasing FXAA +FXAA = 0 +# Max level of Anisotropic Filtering, 0 for off +anisotropy = 0 +# Bilinear filtering mode (0=N64 3point, 1=standard) +# @rishooty: best to use this at 1x native res, any higher turn it off. +bilinearMode = 1 + +###### Compatibility ###### +# Make texrect coordinates continuous to avoid black lines between them. (0=Off/default, 1=Auto, 2=Force) +CorrectTexrectCoords = 1 +# Copy auxiliary buffers to RDRAM (default: 0) +EnableCopyAuxiliaryToRDRAM = 1 +# Render 2D texrects in native resolution to fix misalignment between parts of 2D image. (0=Off/default, 1=Optimized, 2=Unoptimized)") +EnableNativeResTexrects = 1 + +###### Other ###### +# Enable threaded video backend at the cost of input lag +ThreadedVideo = 1 +# Screen aspect ratio (0=stretch, 1=force 4:3, 2=force 16:9, 3=adjust) +AspectRatio = 1 + +[Video-Glide64mk2] + +# Enable full-scene anti-aliasing by setting this to a value greater than 1 +wrpAntiAliasing = 0 +# Card ID +card_id = 0 +# If true, use polygon offset values specified below +force_polygon_offset = False +# Specifies a scale factor that is used to create a variable depth offset for each polygon +polygon_offset_factor = 0.000000 +# Is multiplied by an implementation-specific value to create a constant depth offset +polygon_offset_units = 0.000000 +# Vertical sync +vsync = True +# TODO:ssformat +ssformat = False +# Display performance stats (add together desired flags): 1=FPS counter, 2=VI/s counter, 4=% speed, 8=FPS transparent +show_fps = 0 +# Clock enabled +clock = False +# Clock is 24-hour +clock_24_hr = True +# Wrapper resolution +wrpResolution = 0 +# Wrapper VRAM +wrpVRAM = 0 +# Wrapper FBO +wrpFBO = True +# Wrapper Anisotropic Filtering +wrpAnisotropic = True +# Texture Enhancement: Smooth/Sharpen Filters +ghq_fltr = 0 +# Texture Compression: 0 for S3TC, 1 for FXT1 +ghq_cmpr = 0 +# Texture Enhancement: More filters +ghq_enht = 0 +# Hi-res texture pack format (0 for none, 1 for Rice) +ghq_hirs = 1 +# Compress texture cache with S3TC or FXT1 +ghq_enht_cmpr = False +# Tile textures (saves memory but could cause issues) +ghq_enht_tile = 0 +# Force 16bpp textures (saves ram but lower quality) +ghq_enht_f16bpp = False +# Compress texture cache +ghq_enht_gz = True +# Don't enhance textures for backgrounds +ghq_enht_nobg = False +# Enable S3TC and FXT1 compression +ghq_hirs_cmpr = False +# Tile hi-res textures (saves memory but could cause issues) +ghq_hirs_tile = False +# Force 16bpp hi-res textures (saves ram but lower quality) +ghq_hirs_f16bpp = False +# Compress hi-res texture cache +ghq_hirs_gz = True +# Alternative CRC calculation -- emulates Rice bug +ghq_hirs_altcrc = True +# Save tex cache to disk +ghq_cache_save = True +# Texture Cache Size (MB) +ghq_cache_size = 128 +# Use full alpha channel -- could cause issues for some tex packs +ghq_hirs_let_texartists_fly = False +# Dump textures +ghq_hirs_dump = False +# Alternate texture size method: -1=Game default, 0=disable. 1=enable +alt_tex_size = -1 +# Use first SETTILESIZE only: -1=Game default, 0=disable. 1=enable +use_sts1_only = -1 +# Use spheric mapping only: -1=Game default, 0=disable. 1=enable +force_calc_sphere = -1 +# Force positive viewport: -1=Game default, 0=disable. 1=enable +correct_viewport = -1 +# Force texrect size to integral value: -1=Game default, 0=disable. 1=enable +increase_texrect_edge = -1 +# Reduce fillrect size by 1: -1=Game default, 0=disable. 1=enable +decrease_fillrect_edge = -1 +# Enable perspective texture correction emulation: -1=Game default, 0=disable. 1=enable +texture_correction = -1 +# Set special scale for PAL games: -1=Game default, 0=disable. 1=enable +pal230 = -1 +# 3DFX Dithered alpha emulation mode: -1=Game default, >=0=dithered alpha emulation mode +stipple_mode = -1 +# 3DFX Dithered alpha pattern: -1=Game default, >=0=pattern used for dithered alpha emulation +stipple_pattern = -1 +# Check microcode each frame: -1=Game default, 0=disable. 1=enable +force_microcheck = -1 +# Force 0xb5 command to be quad, not line 3D: -1=Game default, 0=disable. 1=enable +force_quad3d = -1 +# Enable near z clipping: -1=Game default, 0=disable. 1=enable +clip_zmin = -1 +# Enable far plane clipping: -1=Game default, 0=disable. 1=enable +clip_zmax = -1 +# Use fast CRC algorithm: -1=Game default, 0=disable. 1=enable +fast_crc = -1 +# Adjust screen aspect for wide screen mode: -1=Game default, 0=disable. 1=enable +adjust_aspect = -1 +# Force strict check in Depth buffer test: -1=Game default, 0=disable. 1=enable +zmode_compare_less = -1 +# Apply alpha dither regardless of alpha_dither_mode: -1=Game default, 0=disable. 1=enable +old_style_adither = -1 +# Scale vertex z value before writing to depth buffer: -1=Game default, 0=disable. 1=enable +n64_z_scale = -1 +# Fast texrect rendering with hwfbe: -1=Game default, 0=disable. 1=enable +optimize_texrect = -1 +# Do not copy auxiliary frame buffers: -1=Game default, 0=disable. 1=enable +ignore_aux_copy = -1 +# Clear auxiliary texture frame buffers: -1=Game default, 0=disable. 1=enable +hires_buf_clear = -1 +# Read alpha from framebuffer: -1=Game default, 0=disable. 1=enable +fb_read_alpha = -1 +# Handle unchanged fb: -1=Game default, 0=disable. 1=enable +useless_is_useless = -1 +# Set frambuffer CRC mode: -1=Game default, 0=disable CRC, 1=fast CRC, 2=safe CRC +fb_crc_mode = -1 +# Filtering mode: -1=Game default, 0=automatic, 1=force bilinear, 2=force point sampled +filtering = -1 +# Fog: -1=Game default, 0=disable. 1=enable +fog = -1 +# Buffer clear on every frame: -1=Game default, 0=disable. 1=enable +buff_clear = -1 +# Buffer swapping method: -1=Game default, 0=swap buffers when vertical interrupt has occurred, 1=swap buffers when set of conditions is satisfied. Prevents flicker on some games, 2=mix of first two methods +swapmode = -1 +# Aspect ratio: -1=Game default, 0=Force 4:3, 1=Force 16:9, 2=Stretch, 3=Original +aspect = -1 +# LOD calculation: -1=Game default, 0=disable. 1=fast, 2=precise +lodmode = -1 +# Smart framebuffer: -1=Game default, 0=disable. 1=enable +fb_smart = -1 +# Hardware frame buffer emulation: -1=Game default, 0=disable. 1=enable +fb_hires = -1 +# Read framebuffer every frame (may be slow use only for effects that need it e.g. Banjo Kazooie, DK64 transitions): -1=Game default, 0=disable. 1=enable +fb_read_always = -1 +# Render N64 frame buffer as texture: -1=Game default, 0=disable, 1=mode1, 2=mode2 +read_back_to_screen = -1 +# Show images written directly by CPU: -1=Game default, 0=disable. 1=enable +detect_cpu_write = -1 +# Get frame buffer info: -1=Game default, 0=disable. 1=enable +fb_get_info = -1 +# Enable software depth render: -1=Game default, 0=disable. 1=enable +fb_render = -1 +# If true, skip up to maxframeskip frames to maintain clock schedule; if false, skip exactly maxframeskip frames +autoframeskip = False +# If autoframeskip is true, skip up to this many frames to maintain clock schedule; if autoframeskip is false, skip exactly this many frames +maxframeskip = 0 + + +[Video-Rice] + +# Hack to accomodate widescreen devices +ResolutionWidth = 480 +# Mupen64Plus Rice Video Plugin config parameter version number +Version = 1 +# Frame Buffer Emulation (0=ROM default, 1=disable) +FrameBufferSetting = 0 +# Frequency to write back the frame buffer (0=every frame, 1=every other frame, etc) +FrameBufferWriteBackControl = 0 +# Render-to-texture emulation (0=none, 1=ignore, 2=normal, 3=write back, 4=write back and reload) +RenderToTexture = 0 +# Control when the screen will be updated (0=ROM default, 1=VI origin update, 2=VI origin change, 3=CI change, 4=first CI change, 5=first primitive draw, 6=before screen clear, 7=after screen drawn) +ScreenUpdateSetting = 4 +# Force to use normal alpha blender +NormalAlphaBlender = False +# Use a faster algorithm to speed up texture loading and CRC computation +FastTextureLoading = False +# Use different texture coordinate clamping code +AccurateTextureMapping = True +# Force emulated frame buffers to be in N64 native resolution +InN64Resolution = False +# Try to reduce Video RAM usage (should never be used) +SaveVRAM = False +# Enable this option to have better render-to-texture quality +DoubleSizeForSmallTxtrBuf = False +# Force to use normal color combiner +DefaultCombinerDisable = False +# Enable game-specific settings from INI file +EnableHacks = True +# If enabled, graphics will be drawn in WinFrame mode instead of solid and texture mode +WinFrameMode = False +# N64 Texture Memory Full Emulation (may fix some games, may break others) +FullTMEMEmulation = False +# Enable vertex clipper for fog operations +OpenGLVertexClipper = False +# Enable/Disable SSE optimizations for capable CPUs +EnableSSE = True +# If this option is enabled, the plugin will skip every other frame +SkipFrame = False +# If enabled, texture enhancement will be done only for TxtRect ucode +TexRectOnly = False +# If enabled, texture enhancement will be done only for textures width+height<=128 +SmallTextureOnly = False +# Select hi-resolution textures based only on the CRC and ignore format+size information (Glide64 compatibility) +LoadHiResCRCOnly = True +# Enable hi-resolution texture file loading +LoadHiResTextures = False +# Enable texture dumping +DumpTexturesToFiles = False +# Display On-screen FPS +ShowFPS = False +# Use Mipmapping? 0=no, 1=nearest, 2=bilinear, 3=trilinear +Mipmapping = 2 +# Enable, Disable fog generation (0=Disable, 1=Enable) +FogMethod = 1 +# Force to use texture filtering or not (0=auto: n64 choose, 1=force no filtering, 2=force filtering) +ForceTextureFilter = 0 +# Primary texture enhancement filter (0=None, 1=2X, 2=2XSAI, 3=HQ2X, 4=LQ2X, 5=HQ4X, 6=Sharpen, 7=Sharpen More, 8=External, 9=Mirrored) +TextureEnhancement = 0 +# Secondary texture enhancement filter (0 = none, 1-4 = filtered) +TextureEnhancementControl = 0 +# Color bit depth to use for textures (0=default, 1=32 bits, 2=16 bits) +TextureQuality = 0 +# Z-buffer depth (only 16 or 32) +OpenGLDepthBufferSetting = 16 +# Enable/Disable MultiSampling (0=off, 2,4,8,16=quality) +MultiSampling = 0 +# Color bit depth for rendering window (0=32 bits, 1=16 bits) +ColorQuality = 1 +# OpenGL level to support (0=auto, 1=OGL_FRAGMENT_PROGRAM) +OpenGLRenderSetting = 0 +# Enable/Disable Anisotropic Filtering for Mipmapping (0=no filtering, 2-16=quality). This is uneffective if Mipmapping is 0. If the given value is to high to be supported by your graphic card, the value will be the highest value your graphic card can support. Better result with Trilinear filtering +AnisotropicFiltering = 0 +# If true, use polygon offset values specified below +ForcePolygonOffset = False +# Specifies a scale factor that is used to create a variable depth offset for each polygon +PolygonOffsetFactor = 0.000000 +# Is multiplied by an implementation-specific value to create a constant depth offset +PolygonOffsetUnits = 0.000000 diff --git a/packages/emulators/standalone/mupen64plus-sa/mupen64plus-sa-core/scripts/start_mupen64plus.sh b/packages/emulators/standalone/mupen64plus-sa/mupen64plus-sa-core/scripts/start_mupen64plus.sh index 5d15f005c..8a807b784 100644 --- a/packages/emulators/standalone/mupen64plus-sa/mupen64plus-sa-core/scripts/start_mupen64plus.sh +++ b/packages/emulators/standalone/mupen64plus-sa/mupen64plus-sa-core/scripts/start_mupen64plus.sh @@ -33,7 +33,7 @@ fi if [[ ! -f "$M64PCONF" ]]; then mkdir -p /storage/.config/mupen64plus - cp $SHARE/mupen64plus.cfg $M64PCONF + cp $SHARE/mupen64plus.cfg* $M64PCONF fi rm -rf $TMP diff --git a/packages/emulators/standalone/mupen64plus-sa/mupen64plus-sa-input-sdl/config/RK3326/default.ini b/packages/emulators/standalone/mupen64plus-sa/mupen64plus-sa-input-sdl/config/RK3326/default.ini index f0b70890b..cd05279df 100644 --- a/packages/emulators/standalone/mupen64plus-sa/mupen64plus-sa-input-sdl/config/RK3326/default.ini +++ b/packages/emulators/standalone/mupen64plus-sa/mupen64plus-sa-input-sdl/config/RK3326/default.ini @@ -1,4 +1,4 @@ -; RG351P Gamepad - default.ini +; RK3326 Gamepad - default.ini [OpenSimHardware OSH PB Controller] plugged = True mouse = False @@ -23,3 +23,53 @@ Rumblepak switch = # Analog axis configuration mappings X Axis = axis(0+,0-) Y Axis = axis(1+,1-) + +[odroidgo2_joypad] +plugged = True +mouse = False +AnalogDeadzone = 0,0 +AnalogPeak = 32768,32768 +DPad R = button(11) +DPad L = button(10) +DPad D = button(9) +DPad U = button(8) +Start = button(15) +Z Trig = button(4) +B Button = button(3) +A Button = button(0) +C Button R = button(14) +C Button L = button(1) +C Button D = button(13) +C Button U = button(2) +R Trig = button(5) +L Trig = button(12) +Mempak switch = +Rumblepak switch = +# Analog axis configuration mappings +X Axis = axis(0-,0+) +Y Axis = axis(1-,1+) + +[odroidgo2_v11_joypad] +plugged = True +mouse = False +AnalogDeadzone = 0,0 +AnalogPeak = 32768,32768 +DPad R = button(11) +DPad L = button(10) +DPad D = button(9) +DPad U = button(8) +Start = button(15) +Z Trig = button(4) +B Button = button(3) +A Button = button(0) +C Button R = button(14) +C Button L = button(1) +C Button D = button(13) +C Button U = button(2) +R Trig = button(5) +L Trig = button(12) +Mempak switch = +Rumblepak switch = +# Analog axis configuration mappings +X Axis = axis(0-,0+) +Y Axis = axis(1-,1+) diff --git a/packages/emulators/tools/gamecontrollerdb/config/gamecontrollerdb.txt b/packages/emulators/tools/gamecontrollerdb/config/gamecontrollerdb.txt index 779ff1b47..7d3b43ea6 100644 --- a/packages/emulators/tools/gamecontrollerdb/config/gamecontrollerdb.txt +++ b/packages/emulators/tools/gamecontrollerdb/config/gamecontrollerdb.txt @@ -2,4 +2,4 @@ 1900fcf27a65645f6a6f797374696300,zed_joystick,platform:Linux,x:b2,a:b0,b:b1,y:b3,back:b8,start:b9,dpleft:b15,dpdown:b14,dpright:b16,dpup:b13,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,leftstick:b11,rightstick:b12,leftx:a0,lefty:a1,rightx:a2,righty:a3, 03002758091200000031000011010000,OpenSimHardware OSH PB Controller,platform:Linux,x:b2,a:b0,b:b1,y:b3,back:b7,start:b6,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b10,rightshoulder:b5,righttrigger:b11,leftstick:b8,rightstick:b9,leftx:a0,lefty:a1,rightx:a2,righty:a3, 19000226010000000100000001010000,odroidgo2_joypad,platform:Linux,x:b2,a:b1,b:b0,y:b3,back:b12,start:b17,dpleft:b10,dpdown:b9,dpright:b11,dpup:b8,leftshoulder:b4,lefttrigger:b14,rightshoulder:b5,righttrigger:b15,leftstick:b13,rightstick:b16,leftx:a0,lefty:a1, -1900dea8010000000200000001010000,odroidgo2_v11_joypad,platform:Linux,x:b2,a:b1,b:b0,y:b3,back:b12,start:b17,dpleft:b10,dpdown:b9,dpright:b11,dpup:b8,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,leftstick:b13,rightstick:b16,leftx:a0,lefty:a1, +1900dea8010000000200000001010000,odroidgo2_v11_joypad,platform:Linux,x:b2,a:b1,b:b0,y:b3,back:b12,start:b15,dpleft:b10,dpdown:b9,dpright:b11,dpup:b8,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,leftstick:b13,rightstick:b14,leftx:a0,lefty:a1, diff --git a/packages/emulators/tools/retroarch-joypads/gamepads/OpenSimHardware OSH PB Controller.cfg b/packages/emulators/tools/retroarch-joypads/gamepads/OpenSimHardware OSH PB Controller.cfg index e00abcc65..6edd2a183 100755 --- a/packages/emulators/tools/retroarch-joypads/gamepads/OpenSimHardware OSH PB Controller.cfg +++ b/packages/emulators/tools/retroarch-joypads/gamepads/OpenSimHardware OSH PB Controller.cfg @@ -36,8 +36,6 @@ input_r_y_minus_axis = "-3" input_enable_hotkey_btn = "7" input_exit_emulator_btn = "6" -input_screenshot_btn = "16" -input_pause_toggle_btn = "15" input_menu_toggle_btn = "2" input_fps_toggle_btn = "3" diff --git a/packages/emulators/tools/retroarch-joypads/gamepads/odroidgo2_joypad.cfg b/packages/emulators/tools/retroarch-joypads/gamepads/odroidgo2_joypad.cfg index 21ec007c2..05ca9436b 100644 --- a/packages/emulators/tools/retroarch-joypads/gamepads/odroidgo2_joypad.cfg +++ b/packages/emulators/tools/retroarch-joypads/gamepads/odroidgo2_joypad.cfg @@ -5,15 +5,13 @@ input_device_display_name = "Odroid GO Advance Joypad" input_b_btn = "0" input_y_btn = "3" input_select_btn = "12" -input_start_btn = "17" +input_start_btn = "15" input_a_btn = "1" input_x_btn = "2" input_l_btn = "4" input_r_btn = "5" -input_l2_btn = "14" -input_r2_btn = "15" -input_l3_btn = "13" -input_r3_btn = "16" +input_l2_btn = "13" +input_r2_btn = "14" input_up_btn = "8" input_down_btn = "9" @@ -27,7 +25,7 @@ input_l_y_minus_axis = "-1" # Hotkeys input_enable_hotkey_btn = "12" -input_exit_emulator_btn = "17" +input_exit_emulator_btn = "15" input_menu_toggle_btn = "2" input_fps_toggle_btn = "3" diff --git a/packages/emulators/tools/retroarch-joypads/gamepads/odroidgo2_v11_joypad.cfg b/packages/emulators/tools/retroarch-joypads/gamepads/odroidgo2_v11_joypad.cfg index 66dafd491..b7c16346e 100644 --- a/packages/emulators/tools/retroarch-joypads/gamepads/odroidgo2_v11_joypad.cfg +++ b/packages/emulators/tools/retroarch-joypads/gamepads/odroidgo2_v11_joypad.cfg @@ -5,7 +5,7 @@ input_device_display_name = "Odroid GO Advance Joypad v1.1" input_b_btn = "0" input_y_btn = "3" input_select_btn = "12" -input_start_btn = "17" +input_start_btn = "15" input_a_btn = "1" input_x_btn = "2" input_l_btn = "4" @@ -13,7 +13,7 @@ input_r_btn = "5" input_l2_btn = "6" input_r2_btn = "7" input_l3_btn = "13" -input_r3_btn = "16" +input_r3_btn = "14" input_up_btn = "8" input_down_btn = "9" @@ -27,7 +27,7 @@ input_l_y_minus_axis = "-1" # Hotkeys input_enable_hotkey_btn = "12" -input_exit_emulator_btn = "17" +input_exit_emulator_btn = "15" input_menu_toggle_btn = "2" input_fps_toggle_btn = "3" diff --git a/packages/hardware/quirks/devices/ODROID-GO Advance b/packages/hardware/quirks/devices/ODROID-GO Advance new file mode 120000 index 000000000..3277bd096 --- /dev/null +++ b/packages/hardware/quirks/devices/ODROID-GO Advance @@ -0,0 +1 @@ +ODROID-GO Advance Black Edition/ \ No newline at end of file diff --git a/packages/hardware/quirks/devices/ODROID-GO Advance Black Edition/002-deviceconfig b/packages/hardware/quirks/devices/ODROID-GO Advance Black Edition/002-deviceconfig index 2894aa975..67af508c5 100644 --- a/packages/hardware/quirks/devices/ODROID-GO Advance Black Edition/002-deviceconfig +++ b/packages/hardware/quirks/devices/ODROID-GO Advance Black Edition/002-deviceconfig @@ -1,6 +1,6 @@ #!/bin/bash # SPDX-License-Identifier: Apache-2.0 -# Copyright (C) 2021-present Fewtarius (https://github.com/fewtarius) +# Copyright (C) 2023-present BrooksyTech (https://github.com/brooksytech) cat </storage/.config/profile.d/001-deviceconfig # Device Features @@ -16,4 +16,5 @@ UI_SERVICE="weston.service" # FREQ governors CPU_FREQ=("/sys/devices/system/cpu/cpufreq/policy0") GPU_FREQ=("/sys/devices/platform/ff400000.gpu/devfreq/ff400000.gpu") + EOF diff --git a/packages/hardware/quirks/devices/ODROID-GO Advance Black Edition/003-audio b/packages/hardware/quirks/devices/ODROID-GO Advance Black Edition/003-audio index e974b33cc..9ff0f6898 100644 --- a/packages/hardware/quirks/devices/ODROID-GO Advance Black Edition/003-audio +++ b/packages/hardware/quirks/devices/ODROID-GO Advance Black Edition/003-audio @@ -1,6 +1,6 @@ #!/bin/bash # SPDX-License-Identifier: Apache-2.0 -# Copyright (C) 2021-present Fewtarius (https://github.com/fewtarius) +# Copyright (C) 2023-present BrooksyTech (https://github.com/brooksytech) . /etc/profile @@ -31,8 +31,81 @@ pcm.dmixer { } EOF -#if [ ! -e "/storage/.config/asound.state" ] -#then -# cat </storage/.config/asound.state -#EOF -#fi +if [ ! -e "/storage/.config/asound.state" ] +then + cat </storage/.config/asound.state +state.rk817int { + control.1 { + iface CARD + name 'Headphones Jack' + value false + comment { + access read + type BOOLEAN + count 1 + } + } + control.2 { + iface MIXER + name 'Master Playback Volume' + value.0 220 + value.1 220 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 255' + dbmin -9500 + dbmax 0 + dbvalue.0 -1304 + dbvalue.1 -1304 + } + } + control.3 { + iface MIXER + name 'Master Capture Volume' + value.0 220 + value.1 220 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 255' + dbmin -9500 + dbmax 0 + dbvalue.0 -1304 + dbvalue.1 -1304 + } + } + control.4 { + iface MIXER + name 'Mic Capture Gain' + value.0 6 + value.1 6 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 15' + dbmin -1800 + dbmax 2700 + dbvalue.0 0 + dbvalue.1 0 + } + } + control.5 { + iface MIXER + name 'Playback Mux' + value SPK + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 HP + item.1 SPK + } + } +} + +EOF +fi diff --git a/packages/hardware/quirks/devices/ODROID-GO Advance Black Edition/004-control-configs b/packages/hardware/quirks/devices/ODROID-GO Advance Black Edition/004-control-configs new file mode 100644 index 000000000..68cc16613 --- /dev/null +++ b/packages/hardware/quirks/devices/ODROID-GO Advance Black Edition/004-control-configs @@ -0,0 +1,23 @@ +#!/bin/bash +# SPDX-License-Identifier: Apache-2.0 +# Copyright (C) 2023-present BrooksyTech (https://github.com/brooksytech) + +. /etc/profile + +#Set mupen64-plus-sa config for OGA +if [ -f "/storage/.config/mupen64plus/mupen64plus.cfg.oga" ]; then + rm /storage/.config/mupen64plus/mupen64plus.cfg + mv /storage/.config/mupen64plus/mupen64plus.cfg.oga /storage/.config/mupen64plus/mupen64plus.cfg +fi + +#Set drastic-sa config for OGA +if [ -f "/storage/.config/drastic/config/drastic.cfg.oga" ]; then + rm /storage/.config/drastic/config/drastic.cfg + mv /storage/.config/drastic/config/drastic.cfg.oga /storage/.config/drastic/config/drastic.cfg +fi + +#Set duckstation-sa config for OGA +if [ -f "/storage/.config/duckstation/settings.ini.oga" ]; then + rm /storage/.config/duckstation/settings.ini + mv /storage/.config/duckstation/settings.ini.oga /storage/.config/duckstation/settings.ini +fi diff --git a/packages/ui/emulationstation/config/common/es_input.cfg b/packages/ui/emulationstation/config/common/es_input.cfg index 022f8504f..1cd43e21b 100644 --- a/packages/ui/emulationstation/config/common/es_input.cfg +++ b/packages/ui/emulationstation/config/common/es_input.cfg @@ -1154,13 +1154,11 @@ - - - + - + @@ -1180,10 +1178,10 @@ - + - + diff --git a/packages/ui/emulationstation/config/device/RK3326/es_systems.cfg b/packages/ui/emulationstation/config/device/RK3326/es_systems.cfg index 2d88f7f96..3767057e6 100644 --- a/packages/ui/emulationstation/config/device/RK3326/es_systems.cfg +++ b/packages/ui/emulationstation/config/device/RK3326/es_systems.cfg @@ -1222,10 +1222,14 @@ nds nds + + + drastic-sa + + - melonds - desmume + melonds diff --git a/projects/Rockchip/devices/RK3326/device.config b/projects/Rockchip/devices/RK3326/device.config index a73e2b65f..611ad4984 100755 --- a/projects/Rockchip/devices/RK3326/device.config +++ b/projects/Rockchip/devices/RK3326/device.config @@ -1,4 +1,4 @@ -# Device definition file for the Rockchip RK3326 devices +# Device definition file for Rockchip RK3326 devices # Device Features DEVICE_HAS_FAN=false @@ -13,4 +13,3 @@ UI_SERVICE="weston.service" # FREQ governors CPU_FREQ=("/sys/devices/system/cpu/cpufreq/policy0") GPU_FREQ=("/sys/devices/platform/ff400000.gpu/devfreq/ff400000.gpu") -DMC_FREQ=("/sys/devices/platform/dmc/devfreq/dmc") diff --git a/projects/Rockchip/packages/linux/patches/RK3326/000-rk3326-devices.patch b/projects/Rockchip/packages/linux/patches/RK3326/000-rk3326-devices.patch index 7b25abc31..7e881afa5 100644 --- a/projects/Rockchip/packages/linux/patches/RK3326/000-rk3326-devices.patch +++ b/projects/Rockchip/packages/linux/patches/RK3326/000-rk3326-devices.patch @@ -1,3 +1,6 @@ +# SPDX-License-Identifier: GPL-2.0-or-later +# Copyright (C) 2023-present BrooksyTech (https://github.com/brooksytech) + diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/Makefile linux/arch/arm64/boot/dts/rockchip/Makefile --- linux.orig/arch/arm64/boot/dts/rockchip/Makefile 2023-05-10 16:31:20.675981100 +0000 +++ linux/arch/arm64/boot/dts/rockchip/Makefile 2023-05-10 16:31:17.899893326 +0000 @@ -14,7 +17,7 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/Makefile linux/arch/arm64/boo dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3328-nanopi-r2s.dtb diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/px30.dtsi linux/arch/arm64/boot/dts/rockchip/px30.dtsi --- linux.orig/arch/arm64/boot/dts/rockchip/px30.dtsi 2023-05-10 16:31:20.675981100 +0000 -+++ linux/arch/arm64/boot/dts/rockchip/px30.dtsi 2023-05-10 19:21:39.956960642 +0000 ++++ linux/arch/arm64/boot/dts/rockchip/px30.dtsi 2023-05-12 14:46:18.335273009 +0000 @@ -114,12 +114,6 @@ compatible = "operating-points-v2"; opp-shared; @@ -28,7 +31,74 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/px30.dtsi linux/arch/arm64/bo opp-816000000 { opp-hz = /bits/ 64 <816000000>; opp-microvolt = <1050000 1050000 1350000>; -@@ -1039,10 +1033,6 @@ +@@ -210,12 +204,6 @@ + cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; + contribution = <4096>; + }; +- +- map1 { +- trip = <&target>; +- cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; +- contribution = <4096>; +- }; + }; + }; + +@@ -223,6 +211,33 @@ + polling-delay-passive = <100>; /* milliseconds */ + polling-delay = <1000>; /* milliseconds */ + thermal-sensors = <&tsadc 1>; ++ ++ trips { ++ gpu_threshold: gpu-threshold { ++ temperature = <70000>; ++ hysteresis = <2000>; ++ type = "passive"; ++ }; ++ ++ gpu_target: gpu-target { ++ temperature = <85000>; ++ hysteresis = <2000>; ++ type = "passive"; ++ }; ++ ++ gpu_crit: gpu-crit { ++ temperature = <115000>; ++ hysteresis = <2000>; ++ type = "critical"; ++ }; ++ }; ++ ++ cooling-maps { ++ map0 { ++ trip = <&gpu_target>; ++ cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; ++ }; ++ }; + }; + }; + +@@ -453,7 +468,7 @@ + #address-cells = <1>; + #size-cells = <0>; + +- port@0 { ++ lvds_in: port@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; +@@ -468,6 +483,10 @@ + remote-endpoint = <&vopl_out_lvds>; + }; + }; ++ ++ lvds_out: port@1 { ++ reg = <1>; ++ }; + }; + }; + }; +@@ -1039,10 +1058,6 @@ gpu_opp_table: opp-table-1 { compatible = "operating-points-v2"; @@ -39,7 +109,7 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/px30.dtsi linux/arch/arm64/bo opp-300000000 { opp-hz = /bits/ 64 <300000000>; opp-microvolt = <975000>; -@@ -1051,8 +1041,8 @@ +@@ -1051,8 +1066,8 @@ opp-hz = /bits/ 64 <400000000>; opp-microvolt = <1050000>; }; @@ -50,6 +120,26 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/px30.dtsi linux/arch/arm64/bo opp-microvolt = <1125000>; }; }; +@@ -1113,7 +1128,7 @@ + #address-cells = <1>; + #size-cells = <0>; + +- port@0 { ++ dsi_in: port@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; +@@ -1128,6 +1143,10 @@ + remote-endpoint = <&vopl_out_dsi>; + }; + }; ++ ++ dsi_out: port@1 { ++ reg = <1>; ++ }; + }; + }; + diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-anbernic-rg351m.dts linux/arch/arm64/boot/dts/rockchip/rk3326-anbernic-rg351m.dts --- linux.orig/arch/arm64/boot/dts/rockchip/rk3326-anbernic-rg351m.dts 1970-01-01 00:00:00.000000000 +0000 +++ linux/arch/arm64/boot/dts/rockchip/rk3326-anbernic-rg351m.dts 2023-05-10 19:47:36.202575152 +0000 @@ -680,8 +770,8 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go.dtsi linux/a +}; diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2-v11.dts linux/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2-v11.dts --- linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2-v11.dts 1970-01-01 00:00:00.000000000 +0000 -+++ linux/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2-v11.dts 2023-05-10 18:02:12.774307422 +0000 -@@ -0,0 +1,292 @@ ++++ linux/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2-v11.dts 2023-05-13 19:33:10.059992302 +0000 +@@ -0,0 +1,299 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (c) 2019 Hardkernel Co., Ltd @@ -700,6 +790,25 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2-v11.dts lin + mmc1 = &sdio; + }; + ++ gpio_keys: volume-keys { ++ compatible = "gpio-keys-polled"; ++ poll-interval = <5>; ++ autorepeat; ++ ++ volume-up-button { ++ label = "VOLUME-UP"; ++ linux,code = ; ++ gpios = <&gpio2 RK_PA3 GPIO_ACTIVE_LOW>; ++ ++ }; ++ volume-down-button { ++ label = "VOLUME-DOWN"; ++ linux,code = ; ++ gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_LOW>; ++ ++ }; ++ }; ++ + joypad: odroidgo2-joypad { + compatible = "odroidgo2-v11-joypad"; + @@ -773,7 +882,7 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2-v11.dts lin + | sw2 | LCD Display | sw6 | + | | | | + | |-------------------| | -+ | sw9 sw10 sw11 sw12 sw13 sw14 | ++ | sw9 sw10 vol- vol+ sw13 sw14 | + |------------------------------------------------| + */ + /* @@ -830,16 +939,6 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2-v11.dts lin + label = "GPIO F2"; + linux,code = ; // 0x2c1 + }; -+ sw11 { -+ gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_LOW>; -+ label = "GPIO F3"; -+ linux,code = ; // 0x2c2 -+ }; -+ sw12 { -+ gpios = <&gpio2 RK_PA3 GPIO_ACTIVE_LOW>; -+ label = "GPIO F4"; -+ linux,code = ; // 0x2c3 -+ }; + sw13 { + gpios = <&gpio2 RK_PA4 GPIO_ACTIVE_LOW>; + label = "GPIO F5"; @@ -956,8 +1055,6 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2-v11.dts lin + <1 RK_PB7 RK_FUNC_GPIO &pcfg_pull_up>, + <2 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>, + <2 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>, -+ <2 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>, -+ <2 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>, + <2 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>, + <2 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>, + <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>, @@ -976,8 +1073,8 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2-v11.dts lin +}; diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts linux/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts --- linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts 2023-05-10 16:31:20.675981100 +0000 -+++ linux/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts 2023-05-10 21:00:52.038053260 +0000 -@@ -2,55 +2,176 @@ ++++ linux/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts 2023-05-13 19:35:17.004254690 +0000 +@@ -2,55 +2,185 @@ /* * Copyright (c) 2019 Hardkernel Co., Ltd * Copyright (c) 2020 Theobroma Systems Design und Consulting GmbH @@ -998,12 +1095,28 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts linux/a - aliases { - mmc0 = &sdmmc; - }; ++ gpio_keys: volume-keys { ++ compatible = "gpio-keys-polled"; ++ poll-interval = <5>; ++ autorepeat; ++ ++ volume-up-button { ++ label = "VOLUME-UP"; ++ linux,code = ; ++ gpios = <&gpio2 RK_PA3 GPIO_ACTIVE_LOW>; ++ ++ }; ++ volume-down-button { ++ label = "VOLUME-DOWN"; ++ linux,code = ; ++ gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_LOW>; ++ ++ }; ++ }; ++ + joypad: odroidgo2-joypad { + compatible = "odroidgo2-joypad"; - -- chosen { -- stdout-path = "serial2:115200n8"; -- }; ++ + /* + - odroidgo2-joypad sysfs list - + * for poll device interval(ms) @@ -1027,6 +1140,12 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts linux/a + io-channel-names = "joy_x", "joy_y"; + io-channels = <&saradc 1>, <&saradc 2>; +- chosen { +- stdout-path = "serial2:115200n8"; +- }; ++ /* adc channel count */ ++ button-adc-count = <2>; + - adc-joystick { - compatible = "adc-joystick"; - io-channels = <&saradc 1>, @@ -1050,17 +1169,14 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts linux/a - linux,code = ; - }; - }; -+ /* adc channel count */ -+ button-adc-count = <2>; ++ /* adc calculate scale */ ++ button-adc-scale = <2>; - backlight: backlight { - compatible = "pwm-backlight"; - power-supply = <&vcc_bl>; - pwms = <&pwm1 0 25000 0>; - }; -+ /* adc calculate scale */ -+ button-adc-scale = <2>; -+ + /* adc deadzone range */ + button-adc-deadzone = <20>; + @@ -1101,7 +1217,7 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts linux/a + | sw2 | LCD Display | sw6 | + | | | | + | |-------------------| | -+ | sw9 sw10 sw11 sw12 sw13 sw14 | ++ | sw9 sw10 vol- vol+ sw13 sw14 | + |------------------------------------------------| + */ + /* @@ -1158,16 +1274,6 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts linux/a + label = "GPIO F2"; + linux,code = ; // 0x2c1 + }; -+ sw11 { -+ gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_LOW>; -+ label = "GPIO F3"; -+ linux,code = ; // 0x2c2 -+ }; -+ sw12 { -+ gpios = <&gpio2 RK_PA3 GPIO_ACTIVE_LOW>; -+ label = "GPIO F4"; -+ linux,code = ; // 0x2c3 -+ }; + sw13 { + gpios = <&gpio2 RK_PA4 GPIO_ACTIVE_LOW>; + label = "GPIO F5"; @@ -1192,7 +1298,7 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts linux/a battery: battery { compatible = "simple-battery"; -@@ -63,606 +184,21 @@ +@@ -63,606 +193,42 @@ voltage-min-design-microvolt = <3500000>; ocv-capacity-celsius = <20>; @@ -1431,17 +1537,13 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts linux/a - -&dsi_dphy { - status = "okay"; - }; - +-}; +- -&gpu { - mali-supply = <&vdd_logic>; - status = "okay"; -+&internal_display { -+ compatible = "elida,kd35t133"; -+ iovcc-supply = <&vcc_lcd>; -+ vdd-supply = <&vcc_lcd>; - }; - +-}; +- -&i2c0 { - clock-frequency = <400000>; - i2c-scl-falling-time-ns = <16>; @@ -1725,15 +1827,19 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts linux/a - -&usb20_otg { - status = "okay"; --}; -- + }; + -/* EXT Header(P2): 2(RXD:GPIO1.C0),3(TXD:.C1),4(CTS:.C2),5(RTS:.C3) */ -&uart1 { - pinctrl-names = "default"; - pinctrl-0 = <&uart1_xfer &uart1_cts>; - status = "okay"; --}; -- ++&internal_display { ++ compatible = "elida,kd35t133"; ++ iovcc-supply = <&vcc_lcd>; ++ vdd-supply = <&vcc_lcd>; + }; + -&uart2 { - pinctrl-names = "default"; - pinctrl-0 = <&uart2m1_xfer>; @@ -1746,9 +1852,11 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts linux/a - -&vopb_mmu { - status = "okay"; --}; -- --&pinctrl { ++&rk817_charger { ++ monitored-battery = <&battery>; + }; + + &pinctrl { - btns { - btn_pins: btn-pins { - rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>, @@ -1803,8 +1911,24 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts linux/a - rockchip,pins = <0 RK_PA4 1 &pcfg_pull_none>; - }; - }; -+&rk817_charger { -+ monitored-battery = <&battery>; ++ btns { ++ btn_pins: btn-pins { ++ rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>, ++ <1 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>, ++ <1 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>, ++ <1 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>, ++ <1 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>, ++ <1 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up>, ++ <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_up>, ++ <1 RK_PB7 RK_FUNC_GPIO &pcfg_pull_up>, ++ <2 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>, ++ <2 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>, ++ <2 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>, ++ <2 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>, ++ <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>, ++ <2 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>; ++ }; ++ }; }; diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go3.dts linux/arch/arm64/boot/dts/rockchip/rk3326-odroid-go3.dts --- linux.orig/arch/arm64/boot/dts/rockchip/rk3326-odroid-go3.dts 1970-01-01 00:00:00.000000000 +0000 From 454ef022d63b1d01ab620a7bf5d7cfa0aa54c816 Mon Sep 17 00:00:00 2001 From: mason Date: Sun, 14 May 2023 13:53:23 +0000 Subject: [PATCH 2/3] rk3326 updates --- .../RK3326/mappings/SDL_odroidgo2__joypad.cfg | 32 ++++++++++++++++ .../mappings/SDL_odroidgo2_v11_joypad.cfg | 32 ++++++++++++++++ .../config/device/RK3326/es_systems.cfg | 4 +- .../devices/RK3326/linux/linux.aarch64.conf | 37 ++++++++++++++++--- projects/Rockchip/devices/RK3326/options | 2 +- 5 files changed, 99 insertions(+), 8 deletions(-) create mode 100644 packages/emulators/standalone/flycast-sa/config/RK3326/mappings/SDL_odroidgo2__joypad.cfg create mode 100644 packages/emulators/standalone/flycast-sa/config/RK3326/mappings/SDL_odroidgo2_v11_joypad.cfg diff --git a/packages/emulators/standalone/flycast-sa/config/RK3326/mappings/SDL_odroidgo2__joypad.cfg b/packages/emulators/standalone/flycast-sa/config/RK3326/mappings/SDL_odroidgo2__joypad.cfg new file mode 100644 index 000000000..e0f04b97e --- /dev/null +++ b/packages/emulators/standalone/flycast-sa/config/RK3326/mappings/SDL_odroidgo2__joypad.cfg @@ -0,0 +1,32 @@ +[analog] +bind0 = 0-:btn_analog_left +bind1 = 0+:btn_analog_right +bind2 = 1-:btn_analog_up +bind3 = 1+:btn_analog_down +bind4 = 2-:axis2_left +bind5 = 2+:axis2_right +bind6 = 3-:axis2_up +bind7 = 3+:axis2_down + +[digital] +bind0 = 0:btn_a +bind1 = 1:btn_b +bind10 = 12:btn_escape +bind11 = 13:btn_menu +bind12 = 14:btn_fforward +bind13 = 15:btn_start +bind2 = 2:btn_x +bind3 = 3:btn_y +bind4 = 4:btn_trigger_left +bind5 = 5:btn_trigger_right +bind6 = 8:btn_dpad1_up +bind7 = 9:btn_dpad1_down +bind8 = 10:btn_dpad1_left +bind9 = 11:btn_dpad1_right + +[emulator] +dead_zone = 10 +mapping_name = ODROID Go 2 +rumble_power = 100 +version = 3 + diff --git a/packages/emulators/standalone/flycast-sa/config/RK3326/mappings/SDL_odroidgo2_v11_joypad.cfg b/packages/emulators/standalone/flycast-sa/config/RK3326/mappings/SDL_odroidgo2_v11_joypad.cfg new file mode 100644 index 000000000..e0f04b97e --- /dev/null +++ b/packages/emulators/standalone/flycast-sa/config/RK3326/mappings/SDL_odroidgo2_v11_joypad.cfg @@ -0,0 +1,32 @@ +[analog] +bind0 = 0-:btn_analog_left +bind1 = 0+:btn_analog_right +bind2 = 1-:btn_analog_up +bind3 = 1+:btn_analog_down +bind4 = 2-:axis2_left +bind5 = 2+:axis2_right +bind6 = 3-:axis2_up +bind7 = 3+:axis2_down + +[digital] +bind0 = 0:btn_a +bind1 = 1:btn_b +bind10 = 12:btn_escape +bind11 = 13:btn_menu +bind12 = 14:btn_fforward +bind13 = 15:btn_start +bind2 = 2:btn_x +bind3 = 3:btn_y +bind4 = 4:btn_trigger_left +bind5 = 5:btn_trigger_right +bind6 = 8:btn_dpad1_up +bind7 = 9:btn_dpad1_down +bind8 = 10:btn_dpad1_left +bind9 = 11:btn_dpad1_right + +[emulator] +dead_zone = 10 +mapping_name = ODROID Go 2 +rumble_power = 100 +version = 3 + diff --git a/packages/ui/emulationstation/config/device/RK3326/es_systems.cfg b/packages/ui/emulationstation/config/device/RK3326/es_systems.cfg index 3767057e6..f7ff83fba 100644 --- a/packages/ui/emulationstation/config/device/RK3326/es_systems.cfg +++ b/packages/ui/emulationstation/config/device/RK3326/es_systems.cfg @@ -1785,12 +1785,12 @@ - yabasanshiro-sa + yabasanshiro-sa - yabasanshiro + yabasanshiro beetle_saturn diff --git a/projects/Rockchip/devices/RK3326/linux/linux.aarch64.conf b/projects/Rockchip/devices/RK3326/linux/linux.aarch64.conf index 81e7769dd..f01866bb7 100644 --- a/projects/Rockchip/devices/RK3326/linux/linux.aarch64.conf +++ b/projects/Rockchip/devices/RK3326/linux/linux.aarch64.conf @@ -1969,19 +1969,46 @@ CONFIG_RT2X00_LIB_CRYPTO=y CONFIG_RT2X00_LIB_LEDS=y # CONFIG_RT2X00_DEBUG is not set CONFIG_WLAN_VENDOR_REALTEK=y +CONFIG_RTL8180=m CONFIG_RTL8187=m CONFIG_RTL8187_LEDS=y CONFIG_RTL_CARDS=m +CONFIG_RTL8192CE=m +CONFIG_RTL8192SE=m +CONFIG_RTL8192DE=m +CONFIG_RTL8723AE=m +CONFIG_RTL8723BE=m +CONFIG_RTL8188EE=m +CONFIG_RTL8192EE=m +CONFIG_RTL8821AE=m CONFIG_RTL8192CU=m CONFIG_RTLWIFI=m +CONFIG_RTLWIFI_PCI=m CONFIG_RTLWIFI_USB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTL8192C_COMMON=m -# CONFIG_RTL8XXXU is not set +CONFIG_RTL8723_COMMON=m +CONFIG_RTLBTCOEXIST=m +CONFIG_RTL8XXXU=m +# CONFIG_RTL8XXXU_UNTESTED is not set CONFIG_RTW88=m -# CONFIG_RTW89 is not set -# CONFIG_WLAN_VENDOR_RSI is not set -CONFIG_WLAN_VENDOR_SILABS=y +CONFIG_RTW88_CORE=m +CONFIG_RTW88_PCI=m +CONFIG_RTW88_8822B=m +CONFIG_RTW88_8822C=m +CONFIG_RTW88_8723D=m +CONFIG_RTW88_8821C=m +CONFIG_RTW88_8822BE=m +CONFIG_RTW88_8822CE=m +CONFIG_RTW88_8723DE=m +CONFIG_RTW88_8821CE=m +# CONFIG_RTW88_DEBUG is not set +# CONFIG_RTW88_DEBUGFS is not set +CONFIG_RTW89=m +# CONFIG_RTW89_8852AE is not set +# CONFIG_RTW89_8852CE is not set +CONFIG_WLAN_VENDOR_RSI=y +# CONFIG_RSI_91X is not setCONFIG_WLAN_VENDOR_SILABS=y # CONFIG_WFX is not set CONFIG_WLAN_VENDOR_ST=y # CONFIG_CW1200 is not set @@ -4563,7 +4590,7 @@ CONFIG_STAGING=y # CONFIG_RTLLIB is not set CONFIG_RTL8723BS=m # CONFIG_R8712U is not set -# CONFIG_R8188EU is not set +CONFIG_R8188EU=y # CONFIG_VT6656 is not set # diff --git a/projects/Rockchip/devices/RK3326/options b/projects/Rockchip/devices/RK3326/options index b9a814ddd..f158c86ad 100644 --- a/projects/Rockchip/devices/RK3326/options +++ b/projects/Rockchip/devices/RK3326/options @@ -84,7 +84,7 @@ # for a list of additional drivers see packages/linux-drivers # Space separated list is supported, # e.g. ADDITIONAL_DRIVERS="DRIVER1 DRIVER2" - ADDITIONAL_DRIVERS="RTL8812AU RTL8814AU RTL8821AU RTL8821CU RTL88x2BU" + ADDITIONAL_DRIVERS="RTL8821CU RTL88x2BU" # build and install driver addons (yes / no) DRIVER_ADDONS_SUPPORT="no" From c5ef2b4c6445692f4c4a5e9b766705e725af3e9e Mon Sep 17 00:00:00 2001 From: mason Date: Sun, 14 May 2023 14:15:18 +0000 Subject: [PATCH 3/3] Update SA cores and fix oops --- packages/emulators/standalone/cemu-sa/package.mk | 2 +- packages/emulators/standalone/duckstation-sa/package.mk | 2 +- packages/emulators/standalone/yuzu-sa/package.mk | 2 +- projects/Rockchip/devices/RK3326/options | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/emulators/standalone/cemu-sa/package.mk b/packages/emulators/standalone/cemu-sa/package.mk index 109d0d0b0..671565656 100644 --- a/packages/emulators/standalone/cemu-sa/package.mk +++ b/packages/emulators/standalone/cemu-sa/package.mk @@ -3,7 +3,7 @@ # Copyright (C) 2022-present Fewtarius PKG_NAME="cemu-sa" -PKG_VERSION="80953fe6030c4c00001f4d58cdbb724a086e97b2" +PKG_VERSION="eda4cf4b241d56c5c16f6aa4d135b8a269676a76" PKG_ARCH="x86_64" PKG_LICENSE="MPL-2.0" PKG_SITE="https://github.com/cemu-project/Cemu" diff --git a/packages/emulators/standalone/duckstation-sa/package.mk b/packages/emulators/standalone/duckstation-sa/package.mk index 266966709..6f96c2d9e 100644 --- a/packages/emulators/standalone/duckstation-sa/package.mk +++ b/packages/emulators/standalone/duckstation-sa/package.mk @@ -16,7 +16,7 @@ case ${DEVICE} in PKG_CMAKE_OPTS_TARGET+=" -DUSE_DRMKMS=ON -DENABLE_EGL=ON -DUSE_MALI=OFF" ;; *) - PKG_VERSION="eb778943153cee9dcadca227f3b4fdae6f50ab84" + PKG_VERSION="7681551544c39294369d0f0366971a0d76cf045c" PKG_PATCH_DIRS+=" wayland" ;; esac diff --git a/packages/emulators/standalone/yuzu-sa/package.mk b/packages/emulators/standalone/yuzu-sa/package.mk index 716e6c203..4045c03b5 100644 --- a/packages/emulators/standalone/yuzu-sa/package.mk +++ b/packages/emulators/standalone/yuzu-sa/package.mk @@ -2,7 +2,7 @@ # Copyright (C) 2022-present BrooksyTech (https://github.com/brooksytech) PKG_NAME="yuzu-sa" -PKG_VERSION="47938541c25528d1122e15b87dc0113bbbe94d13" +PKG_VERSION="29c7176f559e41ee09e2a030d95c41c89f01d3a0" PKG_ARCH="x86_64" PKG_LICENSE="GPLv3" PKG_SITE="https://github.com/yuzu-emu/yuzu" diff --git a/projects/Rockchip/devices/RK3326/options b/projects/Rockchip/devices/RK3326/options index f158c86ad..7b637234c 100644 --- a/projects/Rockchip/devices/RK3326/options +++ b/projects/Rockchip/devices/RK3326/options @@ -84,7 +84,7 @@ # for a list of additional drivers see packages/linux-drivers # Space separated list is supported, # e.g. ADDITIONAL_DRIVERS="DRIVER1 DRIVER2" - ADDITIONAL_DRIVERS="RTL8821CU RTL88x2BU" + ADDITIONAL_DRIVERS="RTL8812AU RTL8821CU RTL88x2BU" # build and install driver addons (yes / no) DRIVER_ADDONS_SUPPORT="no"