mirror of
https://github.com/notwa/mm
synced 2024-05-03 07:43:24 -07:00
Compare commits
2 Commits
0da2663d23
...
f09d6a162b
Author | SHA1 | Date | |
---|---|---|---|
Connor Olding | f09d6a162b | ||
Connor Olding | eb980b061b |
1
Lua/lib/addrs/O/EUDB.lua
Normal file
1
Lua/lib/addrs/O/EUDB.lua
Normal file
|
@ -0,0 +1 @@
|
||||||
|
return {}
|
|
@ -108,6 +108,12 @@ return {
|
||||||
actor = 0x1D93B0,
|
actor = 0x1D93B0,
|
||||||
LLsize = 0x10,
|
LLsize = 0x10,
|
||||||
},
|
},
|
||||||
|
["O EUDB"] = {
|
||||||
|
save = 0x15E680,
|
||||||
|
global = 0x212060,
|
||||||
|
actor = 0x2245F0,
|
||||||
|
LLsize = 0x30,
|
||||||
|
},
|
||||||
["O JPGC"] = {
|
["O JPGC"] = {
|
||||||
save = 0x11B168,
|
save = 0x11B168,
|
||||||
global = 0x1C9660,
|
global = 0x1C9660,
|
||||||
|
|
|
@ -1,4 +1,7 @@
|
||||||
return { -- md5 and sha1 hashes of .z64s
|
return { -- md5 and sha1 hashes of .z64s
|
||||||
|
-- NOTE: OoT debug ROMs have two entries; one for the original NZLP
|
||||||
|
-- in the ROM header, and one for the more commonly hacked NZLE.
|
||||||
|
|
||||||
-- Majora's Mask
|
-- Majora's Mask
|
||||||
["2A0A8ACB61538235BC1094D297FB6556"] = "M US10",
|
["2A0A8ACB61538235BC1094D297FB6556"] = "M US10",
|
||||||
["8F281800FBA5DDCB1D2B377731FC0215"] = "M USDE",
|
["8F281800FBA5DDCB1D2B377731FC0215"] = "M USDE",
|
||||||
|
@ -35,6 +38,8 @@ return { -- md5 and sha1 hashes of .z64s
|
||||||
["E040DE91A74B61E3201DB0E2323F768A"] = "O EU10",
|
["E040DE91A74B61E3201DB0E2323F768A"] = "O EU10",
|
||||||
["D714580DD74C2C033F5E1B6DC0AEAC77"] = "O EU11",
|
["D714580DD74C2C033F5E1B6DC0AEAC77"] = "O EU11",
|
||||||
["2C27B4E000E85FD78DBCA551F1B1C965"] = "O EUGC",
|
["2C27B4E000E85FD78DBCA551F1B1C965"] = "O EUGC",
|
||||||
|
["3C10B67A76616AE2C162DEF7528724CF"] = "O EUDB", -- NZLP
|
||||||
|
["EFB755B4A9B33FF85E857CFA599D520D"] = "O EUDB", -- NZLE
|
||||||
["9F04C8E68534B870F707C247FA4B50FC"] = "O JP10",
|
["9F04C8E68534B870F707C247FA4B50FC"] = "O JP10",
|
||||||
["1BF5F42B98C3E97948F01155F12E2D88"] = "O JP11",
|
["1BF5F42B98C3E97948F01155F12E2D88"] = "O JP11",
|
||||||
["2258052847BDD056C8406A9EF6427F13"] = "O JP12",
|
["2258052847BDD056C8406A9EF6427F13"] = "O JP12",
|
||||||
|
@ -47,6 +52,8 @@ return { -- md5 and sha1 hashes of .z64s
|
||||||
["328A1F1BEBA30CE5E178F031662019EB32C5F3B5"] = "O EU10",
|
["328A1F1BEBA30CE5E178F031662019EB32C5F3B5"] = "O EU10",
|
||||||
["CFBB98D392E4A9D39DA8285D10CBEF3974C2F012"] = "O EU11",
|
["CFBB98D392E4A9D39DA8285D10CBEF3974C2F012"] = "O EU11",
|
||||||
["0227D7C0074F2D0AC935631990DA8EC5914597B4"] = "O EUGC",
|
["0227D7C0074F2D0AC935631990DA8EC5914597B4"] = "O EUGC",
|
||||||
|
["CEE6BC3C2A634B41728F2AF8DA54D9BF8CC14099"] = "O EUDB", -- NZLP
|
||||||
|
["F5FBCEBF1E00397EFFB83163FC97E463A815CCE9"] = "O EUDB", -- NZLE
|
||||||
["C892BBDA3993E66BD0D56A10ECD30B1EE612210F"] = "O JP10",
|
["C892BBDA3993E66BD0D56A10ECD30B1EE612210F"] = "O JP10",
|
||||||
["DBFC81F655187DC6FEFD93FA6798FACE770D579D"] = "O JP11",
|
["DBFC81F655187DC6FEFD93FA6798FACE770D579D"] = "O JP11",
|
||||||
["FA5F5942B27480D60243C2D52C0E93E26B9E6B86"] = "O JP12",
|
["FA5F5942B27480D60243C2D52C0E93E26B9E6B86"] = "O JP12",
|
||||||
|
@ -56,11 +63,13 @@ return { -- md5 and sha1 hashes of .z64s
|
||||||
-- Ocarina of Time: Master Quest
|
-- Ocarina of Time: Master Quest
|
||||||
["DA35577FE54579F6A266931CC75F512D"] = "O USGC MQ",
|
["DA35577FE54579F6A266931CC75F512D"] = "O USGC MQ",
|
||||||
["1618403427E4344A57833043DB5CE3C3"] = "O EUGC MQ",
|
["1618403427E4344A57833043DB5CE3C3"] = "O EUGC MQ",
|
||||||
["8CA71E87DE4CE5E9F6EC916202A623E9"] = "O EUDB MQ",
|
["09AE099051BDF6377D482D1944171DFC"] = "O EUDB MQ", -- NZLP
|
||||||
|
["8CA71E87DE4CE5E9F6EC916202A623E9"] = "O EUDB MQ", -- NZLE
|
||||||
["69895C5C78442260F6EAFB2506DC482A"] = "O JPGC MQ",
|
["69895C5C78442260F6EAFB2506DC482A"] = "O JPGC MQ",
|
||||||
["8B5D13AAC69BFBF989861CFDC50B1D840945FC1D"] = "O USGC MQ",
|
["8B5D13AAC69BFBF989861CFDC50B1D840945FC1D"] = "O USGC MQ",
|
||||||
["F46239439F59A2A594EF83CF68EF65043B1BFFE2"] = "O EUGC MQ",
|
["F46239439F59A2A594EF83CF68EF65043B1BFFE2"] = "O EUGC MQ",
|
||||||
["50BEBEDAD9E0F10746A52B07239E47FA6C284D03"] = "O EUDB MQ",
|
["CFECFDC58D650E71A200C81F033DE4E6D617A9F6"] = "O EUDB MQ", -- NZLP
|
||||||
|
["50BEBEDAD9E0F10746A52B07239E47FA6C284D03"] = "O EUDB MQ", -- NZLE
|
||||||
["DD14E143C4275861FE93EA79D0C02E36AE8C6C2F"] = "O JPGC MQ",
|
["DD14E143C4275861FE93EA79D0C02E36AE8C6C2F"] = "O JPGC MQ",
|
||||||
|
|
||||||
-- Hacks
|
-- Hacks
|
||||||
|
|
33
z64dump.py
33
z64dump.py
|
@ -38,6 +38,25 @@ dma_sig_ique = b"\x00\x00\x00\x00\x00\x00\x10\x50\x00\x00\x00\x00\x00\x00\x00\x0
|
||||||
heresay = os.path.split(sys.argv[0])[0]
|
heresay = os.path.split(sys.argv[0])[0]
|
||||||
oot_filenames_src = os.path.join(heresay, "fn O US10.txt")
|
oot_filenames_src = os.path.join(heresay, "fn O US10.txt")
|
||||||
|
|
||||||
|
oot_gc_debug = (
|
||||||
|
'cfecfdc58d650e71a200c81f033de4e6d617a9f6',
|
||||||
|
'50bebedad9e0f10746a52b07239e47fa6c284d03',
|
||||||
|
'cee6bc3c2a634b41728f2af8da54d9bf8cc14099',
|
||||||
|
'f5fbcebf1e00397effb83163fc97e463a815cce9',
|
||||||
|
)
|
||||||
|
|
||||||
|
oot_n64_ntsc = (
|
||||||
|
# NTSC 1.0 (U) and (J)
|
||||||
|
'ad69c91157f6705e8ab06c79fe08aad47bb57ba7',
|
||||||
|
'c892bbda3993e66bd0d56a10ecd30b1ee612210f',
|
||||||
|
# NTSC 1.1 (U) and (J)
|
||||||
|
'd3ecb253776cd847a5aa63d859d8c89a2f37b364',
|
||||||
|
'dbfc81f655187dc6fefd93fa6798face770d579d',
|
||||||
|
# NTSC 1.2 (U) and (J)
|
||||||
|
'41b3bdc48d98c48529219919015a1af22f5057c2',
|
||||||
|
'fa5f5942b27480d60243c2d52c0e93e26b9e6b86',
|
||||||
|
)
|
||||||
|
|
||||||
def dump_wrap(data, fn, size):
|
def dump_wrap(data, fn, size):
|
||||||
try:
|
try:
|
||||||
kind = detect_format(BytesIO(data), fn)
|
kind = detect_format(BytesIO(data), fn)
|
||||||
|
@ -173,22 +192,12 @@ def dump_rom(fn, decompress=True):
|
||||||
romhash = sha1(f.read()).hexdigest()
|
romhash = sha1(f.read()).hexdigest()
|
||||||
|
|
||||||
names = None
|
names = None
|
||||||
if romhash == '50bebedad9e0f10746a52b07239e47fa6c284d03':
|
if romhash in oot_gc_debug:
|
||||||
# OoT debug rom filenames
|
# OoT debug rom filenames
|
||||||
f.seek(0xBE80)
|
f.seek(0xBE80)
|
||||||
names = f.read(0x6490).split(b'\x00')
|
names = f.read(0x6490).split(b'\x00')
|
||||||
names = [str(n, 'utf-8') for n in names if n != b'']
|
names = [str(n, 'utf-8') for n in names if n != b'']
|
||||||
if romhash in (
|
elif romhash in oot_n64_ntsc:
|
||||||
# NTSC 1.0 (U) and (J)
|
|
||||||
'ad69c91157f6705e8ab06c79fe08aad47bb57ba7',
|
|
||||||
'c892bbda3993e66bd0d56a10ecd30b1ee612210f',
|
|
||||||
# NTSC 1.1 (U) and (J)
|
|
||||||
'd3ecb253776cd847a5aa63d859d8c89a2f37b364',
|
|
||||||
'dbfc81f655187dc6fefd93fa6798face770d579d',
|
|
||||||
# NTSC 1.2 (U) and (J)
|
|
||||||
'41b3bdc48d98c48529219919015a1af22f5057c2',
|
|
||||||
'fa5f5942b27480d60243c2d52c0e93e26b9e6b86',
|
|
||||||
):
|
|
||||||
# filenames inferred from debug rom
|
# filenames inferred from debug rom
|
||||||
with open(oot_filenames_src) as f2:
|
with open(oot_filenames_src) as f2:
|
||||||
names = f2.readlines()
|
names = f2.readlines()
|
||||||
|
|
Loading…
Reference in New Issue
Block a user