Skip to content

Instantly share code, notes, and snippets.

View shinyquagsire23's full-sized avatar
💭
Fiddling with emulation/patching between schoolwork.

Max Thomas shinyquagsire23

💭
Fiddling with emulation/patching between schoolwork.
View GitHub Profile
@shinyquagsire23
shinyquagsire23 / FPGBC_update.py
Last active January 30, 2024 01:48
FPGBC updater script for macOS (and maybe Linux) using Python
# pip3 install pyusb
# Requires root on macOS to kick the kernel driver off the device.
import usb.core
import usb.util
import struct
import time
import base64
import sys
@shinyquagsire23
shinyquagsire23 / gist:e431887f755df2e23851e62270896b11
Last active December 22, 2023 07:29
VIVE ultimate trackers lsusb -v
Bus 001 Device 007: ID 0bb4:0350 HTC (High Tech Computer Corp.) VIVE Wireless Dongle
Device Descriptor:
bcdUSB 2.00
bDeviceClass 0 UseInterfaceDescriptor
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x0bb4 HTC (High Tech Computer Corp.)
idProduct 0x0350
bcdDevice 1.00
@shinyquagsire23
shinyquagsire23 / recover_drive.py
Created October 12, 2023 16:12
Directly talking SCSI with a USB mass storage devices on Linux, to (attempt to) recover raw NAND data from a drive which lost configuration
import usb.core
import usb.util
import struct
import time
import os
# echo 1-1:1.0 > /sys/bus/usb/drivers/usb-storage/unbind
os.system("/bin/bash -c \"echo 1-1:1.0 > /sys/bus/usb/drivers/usb-storage/unbind\"")
@shinyquagsire23
shinyquagsire23 / gist:ab6f7c0f9b6514b6b54d69b9a57646be
Created July 26, 2023 20:24
Enabling USB device mode on Intel devices (Tweet archive)
https://twitter.com/ShinyQuagsire/status/1536432635643211777 12:37 PM · Jun 13, 2022
-----
I figured out how to enable USB device mode on my XPS 13 (9350) 🎉
Though for some ungodly reason, it uses the right-side full USB port. So a crossover cable is required.
-----
https://twitter.com/ShinyQuagsire/status/1536434057671716864 12:43 PM · Jun 13, 2022
-----
@shinyquagsire23
shinyquagsire23 / fixup.sh
Created July 18, 2023 02:20
Fixup iOS apps to run on visionOS sim
#!/bin/zsh
PWD=$(pwd)
app_path=$1
app_basename="${app_path%.*}"
if [ "$#" -ne 1 ]; then
echo "Usage: ./fixup.sh YourApp.app"
exit -1
fi
@shinyquagsire23
shinyquagsire23 / slc_unwrap.py
Created April 26, 2023 19:17
Convert Wii(U) NANDs with ECC to NAND images w/o ECC.
#!/usr/bin/python3
f = open("SLC.RAW", "rb")
f_out = open("SLC.partial.bin", "wb")
while True:
contents = f.read(0x840)
if len(contents) < 0x800:
break
unwrap = contents[:0x800]
f_out.write(unwrap)
@shinyquagsire23
shinyquagsire23 / gist:7ddd17d1569acb21920683866570cb35
Created February 23, 2023 07:43
LG MStar firmware disorganized notes -- Hotwords: AEON B2, MStar, LG DualUp Firmware, MST9W00V4, MST9U
DDC/CI Command Codes (antiquated MStar function, not real):
------
0xCC, 0xF1, 0xF0 - LG special? Only CC actually used.
3
1
0xC6
0xC8
0xF3
0xF5
0xB1
@shinyquagsire23
shinyquagsire23 / lg_switch_inputs.py
Last active February 11, 2024 14:21
LG DDC/CI control via python hidapi
import struct
import time
import hid
import sys
import argparse
#
# Constants
#
@shinyquagsire23
shinyquagsire23 / Linux_building.txt
Last active April 2, 2024 09:19
Monado macOS and Linux Quest Link Build Guide
#
# Installing dependencies (Tested on Ubuntu 22.04 LTS)
#
# Monado
sudo apt install cmake ninja-build
sudo apt install build-essential git wget unzip cmake ninja-build libeigen3-dev curl patch python3 pkg-config libx11-dev libx11-xcb-dev libxxf86vm-dev libxrandr-dev libxcb-randr0-dev libvulkan-dev glslang-tools libglvnd-dev libgl1-mesa-dev ca-certificates libusb-1.0-0-dev libudev-dev libhidapi-dev libwayland-dev libuvc-dev libavcodec-dev libopencv-dev libv4l-dev libcjson-dev libsdl2-dev libegl1-mesa-dev libbsd-dev
# XRSP (Quest Link USB)
sudo apt install capnproto libcapnp-dev libx264-dev nlohmann-json3-dev
@shinyquagsire23
shinyquagsire23 / openxr-sdk-loader-macos.patch
Created November 26, 2022 06:39
OpenXR-SDK macOS loader Patches
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 3da42ae..2f54680 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -410,7 +410,7 @@ if(NOT MSVC)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${FLAG}")
endif()
endforeach()
- set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined")
+ #set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined")