Skip to content

Instantly share code, notes, and snippets.

View nicholatian's full-sized avatar
📀
please do not swear on my profile. thanks

Alexander Nicholi‮ nicholatian

📀
please do not swear on my profile. thanks
View GitHub Profile
@nicholatian
nicholatian / ups.c
Created September 17, 2015 14:53
UPS Patcher in C
#include <stdio.h>
#include <string.h>
#include <stdint.h>
#include <stdlib.h>
#include "crc32.h"
/*
* Max file sizes that this patcher can support
*/
#define MAX_ROM_SIZE 0x2000000
@nicholatian
nicholatian / arm-thumb.xml
Created November 5, 2015 14:37
Detecting ARM and Thumb code in binaries
<~Alex> Touched: are branch opcodes discernable without knowing whether we're in thumb or arm mode? how can I find all of the thumb code without first recursively traversing branches I can't see?
<~Alex> like, do I have to do both as I go along or what
<+Touched> you can't
<~Alex> then how does the processor even know
<+Touched> it has a mode
<+Touched> in the CPSR there is a bit
<~Alex> the Counter Pointer Stack Register?
<+Touched> Current Program Status Register
<~Alex> how would IDA presumably do it
@nicholatian
nicholatian / coo-speedtest.md
Last active November 18, 2015 05:38
A realistic bandwidth evaluation (speed test) of the Cave of Origin website

Internet Speed Test Report

This report is a record of the average achieved bandwidth between a client and the Cave of Origin web server.

Important: These test results are non-optimal due to distance! However, they are a good gauge of speeds for the common or average user, as they are not too far apart or too close together, and the client is in an internet-heavy country.

Environment and Settings

@nicholatian
nicholatian / extmeta-1.0.asm
Last active November 23, 2015 06:43
GBA ROM Hack Extended Metadata Assembly
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@ Standard GBA ROM Hack Metadata @@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@ Copyright (C) 2015 Alexander Nicholi @@@@@@@@@@@@@@@@
@@@@@@@@@@ Released under the GNU General Public License v2 @@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@ @@
@@ Welcome! @@
@@ @@
@@ This is the assembly for the metadata block read by Lapis and @@
@@ Sapphire, and by other tools who opt to use it. For you, it @@
@nicholatian
nicholatian / extmeta-1.1.asm
Last active November 25, 2015 01:31
extMeta ROM Metadata Assembly
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@ Standard GBA ROM Hack Metadata @@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@ Copyright (C) 2015 Alexander Nicholi @@@@@@@@@@@@@@@@
@@@@@@@@@@ Released under the GNU General Public License v2 @@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@ @@
@@ Welcome! @@
@@ @@
@@ This is the assembly for the metadata block read by Lapis and @@
@@ Sapphire, and by other tools who opt to use it. For you, it @@
@nicholatian
nicholatian / touched-ui.log
Last active December 1, 2015 10:41
Touched and computer UIs
<Touched> visual studio code is built on electron
<Touched> everything is a lie
<~Alex> lol
<~Alex> Touched: Why aren't you as critical of web applications as you are of the current graphical desktop state?
<Touched> what do you mean?
<~Alex> Surely the world of program-as-a-service applications was the worse fear of proponents of Free Software
<~Alex> why do you have so much disdain for the fragmented graphical programming options but don't mind graphical web programming really?
<Touched> who said I don't
<~Alex> I didn't
<~Alex> I said you don't seem to hate it as much, or at least that's what I was trying to get at
@nicholatian
nicholatian / setup-postfix.md
Last active December 12, 2015 02:44
Install and configure Postfix for outgoing mail on CentOS 6

Install and configure Postfix on CentOS 6

This document explains how to completely install and configure Postfix for outgoing (SMTP) mail on CentOS 6.

Install the packages

# yum install postfix
# yum install cyrus-sasl
# yum install cyrus-imapd

Configure Postfix

@nicholatian
nicholatian / citbox_tilemap.c
Last active January 23, 2016 07:40
Runtime tilemap generator for “citboxes” my C implementation of Game Freak's rbox system in Emerald.
/*****************************************************************************\
* Main Menu Hack (partial)
* Part of Pokémon Citrite Version
*
* Copyright © 2015-2016 Alexander Nicholi, all rights reserved.
\*****************************************************************************/
#include <gba.h>
#include "bordertset_png.h"
@nicholatian
nicholatian / assembly.pks
Created February 8, 2016 04:30
Citrite's dynamic PokéScript assembly
//
// +-------------------------------------------------------------------------+
// | This file has been hand-written by Alexander Nicholi |
// | and is a bytecode disassembly of all PokeScript code and data |
// | for Pokemon Citrite Version |
// +-------------------------------------------------------------------------+
//
// Processor: Game Freak PokeScript Engine
// Architecture: Proprietary bytecode
// Target assembler: PKSV-UI
@nicholatian
nicholatian / engine_function_wrapper.c
Created February 22, 2016 01:31
A C wrapper for engine functions made by Game Freak.
void yourFunction()
{
int (*func)(void) = (int (*)(void))0xDEADBEEF;
func();
}