Skip to content

Instantly share code, notes, and snippets.

@luckytyphlosion
luckytyphlosion / lz77_uncomp_wram.s
Created October 13, 2023 03:04
Faster LZ77UnCompWRAM
LZ77UnCompWRAMOptimized: @ 0x000010FC
push {r4, r5, r6, lr}
// read in data header in r5
// Data header (32bit)
// Bit 0-3 Reserved
// Bit 4-7 Compressed type (must be 1 for LZ77)
// Bit 8-31 Size of decompressed data
ldr r5, [r0], #4
// store decompressed size in r2
lsr r2, r5, #8
#ifndef GUARD_GBA_MACRO_H
#define GUARD_GBA_MACRO_H
#define CPU_FILL(value, dest, size, bit) \
{ \
vu##bit tmp = (vu##bit)(value); \
CpuSet((void *)&tmp, \
dest, \
CPU_SET_##bit##BIT | CPU_SET_SRC_FIXED | ((size)/(bit/8) & 0x1FFFFF)); \
}