Remove another reference to unused base2current.json
This commit is contained in:
28
Utils.py
28
Utils.py
@@ -8,6 +8,7 @@ import urllib.parse
|
|||||||
import urllib.request
|
import urllib.request
|
||||||
import xml.etree.ElementTree as ET
|
import xml.etree.ElementTree as ET
|
||||||
from collections import defaultdict
|
from collections import defaultdict
|
||||||
|
from hashlib import md5
|
||||||
from itertools import count
|
from itertools import count
|
||||||
from math import factorial
|
from math import factorial
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
@@ -102,31 +103,13 @@ def close_console():
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
def make_new_base2current(old_rom='Zelda no Densetsu - Kamigami no Triforce (Japan).sfc', new_rom='working.sfc'):
|
def get_new_romhash(new_rom='working.sfc'):
|
||||||
import hashlib
|
|
||||||
import json
|
|
||||||
from collections import OrderedDict
|
|
||||||
with open(old_rom, 'rb') as stream:
|
|
||||||
old_rom_data = bytearray(stream.read())
|
|
||||||
with open(new_rom, 'rb') as stream:
|
with open(new_rom, 'rb') as stream:
|
||||||
new_rom_data = bytearray(stream.read())
|
new_rom_data = bytearray(stream.read())
|
||||||
# extend to 2 mb
|
|
||||||
old_rom_data.extend(bytearray([0x00] * (2097152 - len(old_rom_data))))
|
|
||||||
|
|
||||||
out_data = OrderedDict()
|
basemd5 = md5()
|
||||||
for idx, old in enumerate(old_rom_data):
|
|
||||||
new = new_rom_data[idx]
|
|
||||||
if old != new:
|
|
||||||
out_data[idx] = [int(new)]
|
|
||||||
for offset in reversed(list(out_data.keys())):
|
|
||||||
if offset - 1 in out_data:
|
|
||||||
out_data[offset-1].extend(out_data.pop(offset))
|
|
||||||
with open('data/base2current.json', 'wt') as outfile:
|
|
||||||
json.dump([{key: value} for key, value in out_data.items()], outfile, separators=(",", ":"))
|
|
||||||
|
|
||||||
basemd5 = hashlib.md5()
|
|
||||||
basemd5.update(new_rom_data)
|
basemd5.update(new_rom_data)
|
||||||
return "New Rom Hash: " + basemd5.hexdigest()
|
return basemd5.hexdigest()
|
||||||
|
|
||||||
|
|
||||||
def kth_combination(k, l, r):
|
def kth_combination(k, l, r):
|
||||||
@@ -787,12 +770,11 @@ class bidict(dict):
|
|||||||
class HexInt(int): pass
|
class HexInt(int): pass
|
||||||
|
|
||||||
def hex_representer(dumper, data):
|
def hex_representer(dumper, data):
|
||||||
import yaml
|
|
||||||
return yaml.ScalarNode('tag:yaml.org,2002:int', f"{data:#0{4}x}")
|
return yaml.ScalarNode('tag:yaml.org,2002:int', f"{data:#0{4}x}")
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
print(make_new_base2current())
|
print("New Rom Hash:", get_new_romhash())
|
||||||
# read_entrance_data(old_rom=sys.argv[1])
|
# read_entrance_data(old_rom=sys.argv[1])
|
||||||
# room_palette_data(old_rom=sys.argv[1])
|
# room_palette_data(old_rom=sys.argv[1])
|
||||||
# extract_data_from_us_rom(sys.argv[1])
|
# extract_data_from_us_rom(sys.argv[1])
|
||||||
|
|||||||
Reference in New Issue
Block a user