From bc811daa7c6cf320677e095cc563c0666e093a34 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 18 Jun 2020 16:11:56 -0400 Subject: Drop baserom dependency --- explode_incbins.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 explode_incbins.py (limited to 'explode_incbins.py') diff --git a/explode_incbins.py b/explode_incbins.py new file mode 100644 index 00000000..4e1af1b5 --- /dev/null +++ b/explode_incbins.py @@ -0,0 +1,21 @@ +import sys +import re + +with open(sys.argv[1], 'rb') as rom: + for fname in sys.argv[2:]: + with open(fname, 'r+') as fp: + lines = [] + for line in fp: + m = re.search(r'\.incbin "baserom.nds", (0x\w+), (0x\w+)', line) + if m is not None: + addr = int(m[1], 16) + size = int(m[2], 16) + rom.seek(addr) + for i in range(0, size, 16): + data = rom.read(min(size - i, 16)) + lines.append('\t.byte ' + ', '.join(f'0x{k:02X}' for k in data) + '\n') + else: + lines.append(line) + fp.seek(0) + fp.truncate() + fp.write(''.join(lines)) -- cgit v1.2.3