Skip to content

Instantly share code, notes, and snippets.

View xerpi's full-sized avatar

Sergi Granell・セルジ xerpi

View GitHub Profile
https://github.com/xerpi/GhidraVitaLoader
@xerpi
xerpi / 0001-arm-Add-initial-PSVita-support.patch
Created December 19, 2018 18:10
Linux PSVita initial support (over Linux 62393dbcbe0f3001691e4bd479a25beb5941f2ed)
From ecba9fec7aa4bac172addd78a468a87b06b5b0da Mon Sep 17 00:00:00 2001
From: Sergi Granell <xerpi.g.12@gmail.com>
Date: Wed, 19 Dec 2018 19:04:27 +0100
Subject: [PATCH] arm: Add initial PSVita support
Signed-off-by: Sergi Granell <xerpi.g.12@gmail.com>
---
arch/arm/Kconfig | 2 ++
arch/arm/Kconfig.debug | 23 ++++++++++---
arch/arm/Makefile | 1 +
#!/usr/bin/env python3
import sys
import re
def usage():
print("idc-offset by xerpi")
print("Usage:\n\t" + sys.argv[0] + " new_text_addr new_data_addr")
def patch_idc(idc, new_text_addr, new_data_addr):
@xerpi
xerpi / dmac_test.c
Last active June 22, 2018 07:59
Vita DMAC test
#include <psp2kern/kernel/modulemgr.h>
#include <psp2kern/kernel/threadmgr.h>
#include <psp2kern/kernel/sysmem.h>
#include <psp2kern/kernel/cpu.h>
#include <psp2kern/io/fcntl.h>
#include <psp2kern/sblauthmgr.h>
#include "log.h"
#include "draw.h"
#define LOG(s, ...) \
#!/usr/bin/env python3
import sys
import yaml
def usage():
print("ps3-libs-gen by xerpi")
print("Usage:\n\t" + sys.argv[0] + " file.yaml")
def generate_lib_resident(name):
@xerpi
xerpi / nidreader.py
Last active July 2, 2021 18:42
PS3 NID reader
#!/usr/bin/env python3
import sys
import construct
from collections import namedtuple
from elftools.elf.elffile import ELFFile
from elftools.elf.relocation import RelocationSection
from construct import Struct, Int8ub, Int16ub, Int32ub, PaddedString, CString, Array
@xerpi
xerpi / json2yml.py
Created November 10, 2017 08:35
Vita NIDs json2yml.py
#!/usr/bin/python3
import sys
import json
def main():
if len(sys.argv) < 2:
print("Usage:\n\t", sys.argv[0], "db.json")
exit(1)
#include "hdmi.h"
#include "libc.h"
#include "utils.h"
#include "adv7511.h"
#include "i2c.h"
#include "gpio.h"
#include "pervasive.h"
#include "syscon.h"
#include "log.h"
@xerpi
xerpi / uart.c
Last active July 11, 2017 20:23
Vita UART
#define PERVASIVERESET_BASE_ADDR 0xE3101000
#define PERVASIVEGATE_BASE_ADDR 0xE3102000
static inline void pervasive_mask_or(unsigned int addr, unsigned int val)
{
volatile unsigned long tmp;
asm volatile(
"ldr %0, [%1]\n\t"
"orr %0, %2\n\t"
@xerpi
xerpi / vitafunctiondefs.py
Last active July 22, 2018 16:26
vitafunctiondefs.py
'''
vitafunctiondefs.py by xerpi
arm-vita-eabi-gcc -E $VITASDK/arm-vita-eabi/include/vitasdk.h -D"__attribute__(x)=" -D"__extension__(x)=" > preprocessor_user.h
arm-vita-eabi-gcc -E $VITASDK/arm-vita-eabi/include/vitasdkkern.h -D"__attribute__(x)=" -D"__extension__(x)=" > preprocessor_kern.h
'''
import sys
import os.path
import struct