papermario/tools/sort_symbol_addrs.py
alex a4e1c2f522
Add versioning (#187)
* fix vscode cpp extension messing with files.associations

* move stuff

* it builds!

* symlink papermario.us.z64

* ci: put baserom in right place

* add jp

* fix splat dir

* ignore starrod dump

* .s deps

* update jenkins

* add dsl back

* configure.py versions

* wups

* fine ethan

* fix paths

* configure: default to only the version(s) with existing baseroms

* fix coverage

* fix progress.py

* progress.py verisoning

* remove format.sh from CONTRIBUTING

* update CONTRIBUTING

* fix first_diff

* diff.py: use ver/current/

* update splat.yaml

* trying to fix subrepo

* git subrepo pull tools/splat

subrepo:
  subdir:   "tools/splat"
  merged:   "06a737f02d"
upstream:
  origin:   "https://github.com/ethteck/splat.git"
  branch:   "master"
  commit:   "06a737f02d"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "2f68596"

* configure fix

* git subrepo pull tools/splat

subrepo:
  subdir:   "tools/splat"
  merged:   "41786effd3"
upstream:
  origin:   "https://github.com/ethteck/splat.git"
  branch:   "master"
  commit:   "41786effd3"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "2f68596"

Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2021-02-22 18:21:23 +09:00

28 lines
682 B
Python
Executable File

#!/usr/bin/python3
from collections import OrderedDict
import os
import sys
script_dir = os.path.dirname(os.path.realpath(__file__))
syms = {}
for version in ["us", "jp"]:
file_path = os.path.join(script_dir, f"ver/{version}/symbol_addrs.txt")
with open(file_path) as f:
symbol_lines = f.readlines()
for line in symbol_lines:
addr_text = line.split(" = ")[1][:10]
addr = int(addr_text, 0)
if addr in syms:
print("Duplicate address: " + addr_text)
sys.exit(55)
syms[addr] = line
with open(file_path, newline="\n", mode="w") as f:
for addr in sorted(syms):
f.write(syms[addr])