aboutsummaryrefslogtreecommitdiffstats
path: root/tools/sym_comments.py
diff options
context:
space:
mode:
authorRangi42 <remy.oukaour+rangi42@gmail.com>2024-10-07 16:48:18 -0400
committerRangi42 <remy.oukaour+rangi42@gmail.com>2024-10-07 16:48:18 -0400
commitb52b44f8834fd64d7f279804585e0a554cf61d5b (patch)
tree7081a0f36d4bcb82786cb97361da03f48bb1e0e6 /tools/sym_comments.py
parentComment wave5 garbage data (#474) (diff)
downloadpokeyellow-b52b44f8834fd64d7f279804585e0a554cf61d5b.tar.gz
pokeyellow-b52b44f8834fd64d7f279804585e0a554cf61d5b.tar.xz
pokeyellow-b52b44f8834fd64d7f279804585e0a554cf61d5b.zip
Remove independent tools and link to pokemon-asm-tools
Diffstat (limited to 'tools/sym_comments.py')
-rwxr-xr-xtools/sym_comments.py52
1 files changed, 0 insertions, 52 deletions
diff --git a/tools/sym_comments.py b/tools/sym_comments.py
deleted file mode 100755
index 0f060e5c..00000000
--- a/tools/sym_comments.py
+++ /dev/null
@@ -1,52 +0,0 @@
-#!/usr/bin/env python3
-# -*- coding: utf-8 -*-
-
-"""
-Usage: python sym_comments.py file.asm [pokered.sym] > file_commented.asm
-
-Comments each label in file.asm with its bank:address from the sym file.
-"""
-
-import sys
-import re
-
-def main():
- if len(sys.argv) not in {2, 3}:
- print(f'Usage: {sys.argv[0]} file.asm [pokered.sym] > file_commented.asm', file=sys.stderr)
- sys.exit(1)
-
- wram_name = sys.argv[1]
- sym_name = sys.argv[2] if len(sys.argv) == 3 else 'pokered.sym'
-
- sym_def_rx = re.compile(r'(^{sym})(:.*)|(^\.{sym})(.*)'.format(sym=r'[A-Za-z_][A-Za-z0-9_#@]*'))
-
- sym_addrs = {}
- with open(sym_name, 'r', encoding='utf-8') as file:
- for line in file:
- line = line.split(';', 1)[0].rstrip()
- parts = line.split(' ', 1)
- if len(parts) != 2:
- continue
- addr, sym = parts
- sym_addrs[sym] = addr
-
- with open(wram_name, 'r', encoding='utf-8') as file:
- cur_label = None
- for line in file:
- line = line.rstrip()
- if (m = re.match(sym_def_rx, line)):
- sym, rest = m.group(1), m.group(2)
- if sym is None and rest is None:
- sym, rest = m.group(3), m.group(4)
- key = sym
- if not sym.startswith('.'):
- cur_label = sym
- elif cur_label:
- key = cur_label + sym
- if key in sym_addrs:
- addr = sym_addrs[key]
- line = sym + rest + ' ; ' + addr
- print(line)
-
-if __name__ == '__main__':
- main()