Skip to content

Instantly share code, notes, and snippets.

View uyjulian's full-sized avatar

Julian Uy uyjulian

View GitHub Profile
View How to install Homebrew package manager Steam

How to install Homebrew package manager on Steam Deck

(See also installing Distrobox: )
(See also installing Nix package manager: )

You can install Homebrew (a package manager for macOS and Linux) without disabling the read-only partition with sudo steamos-readonly disable.
The package manager can be used alongside Flatpaks. Some software is only available on Flathub, and some software is only available on Homebrew.

  1. Switch to desktop mode (hold power button until a menu appears, then select "Switch to desktop mode")
  2. Click the logo at the bottom left, go to System, then go to Konsole
View PS2 OSDSYS permissively licensed

Here's a contest for OSDSYS/BIOS/ROM/Menu permissively licensed assets.
The voting page will go up once enough submissions are made.
The goal of this contest is to select the best assets for a brand new OSDSYS program, which will be launched from a Memory Card (using the exploited Memory Card Update feature of the original OSDSYS) or from a brand new ROM reimplementation.
All assets submitted must be licensed under a permissive license such as Apache, BSD, MIT, CC0, etc.
Please submit your own original works, not those copied or modified from the original ROM.
Feel free to submit assets in the format that you prefer.
Also, feel free to submit short descriptions for each asset that does not have a description. For icon/3D assets, try uploading in the PS2 icon format, but if you can't, upload the original project file along with the name of the software that you are using so I can take a crack at it.
For image assets, try uploading in the PNG format.
For audio assets, any format that is readable

uyjulian / benrg.cpp
Created March 10, 2015 09:30
s3rc cleaned up
View benrg.cpp
#include "dbpf.h"
#define assert(expr)
struct word
byte lo, hi;
struct dword
View osdsys_decompress.c
#include <stdint.h>
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
uint32_t decompress_osdsys(uint8_t *src, uint8_t *dst)
uint32_t run = 0;

OSDSYS image resource image information

The information in this documentation does not apply to the early Protokernel consoles which has a very different OSDSYS program.

The images stored in the ROM are in a compressed format, so decompress before use. The following is the implementation of the decompression routine:

The images stored in the ROM are raw image formats with no information attached, so the following table describes the extra information required to display the image.

| Filename | Size | Offset | Image format |

View arm64_crosscompile_ubuntu_snippet.bash
podman run --name ubuntu-arm-dev -d --network=host -v /mnt/data:/mnt/data:rw /bin/sleep infinity
podman exec -it ubuntu-arm-dev /bin/bash
sed -i -e 's/^deb/deb [arch=amd64]/g' /etc/apt/sources.list
dpkg --add-architecture arm64
apt-get update
apt-get -y upgrade
apt-get -y install gcc-aarch64-linux-gnu g++-aarch64-linux-gnu
apt-get -y install qemu-user qemu-user-static
cat /etc/apt/sources.list | sed -e 's/amd64/arm64/g' | sed -e 's/security\./ports./g' | sed -e 's/archive\./ports./g' | sed -e 's/\/ubuntu\//\/ubuntu-ports\//g' | sed -e 's/# deb-src /deb-src /g' > /etc/apt/sources.list.d/arm64.list
# SPDX-License-Identifier: MIT
# Quick script for changing material
# Run the script with "--help" as the argument for descriptions of these options.
def save_unity_mat(config_struct):
import os
import pathlib

How to run Open PS2 Loader on DTL-T systems

You can run Open PS2 Loader on DTL-T systems.

Pre-compiled Open PS2 Loader for DTL-T

Use any build containing DTL_T10000 in the filename from the following archive:

Compiling Open PS2 Loader

For compiling Open PS2 Loader for general usage on DTL-T the following should steps should be applied:
Follow the instructions with modifications in

# SPDX-License-Identifier: MIT
# Falcom YamaNeko engine on PSP ISO format extraction.
# Uses the information contained in PSP_GAME/USRDIR/data.lst
# Also recursively unpacks cclm archive/group files
# See also:
import struct
import io
# SPDX-License-Identifier: MIT
# Falcom YamaNeko engine it3 format reversing.
# For researching the file format structure.
# Doesn't do anything useful for the end user right now.
# For something useful for the end user, see or
# This script is a work in progress and does not output anything useful right now
# See also: