summaryrefslogtreecommitdiff
path: root/rom_chooser.py
diff options
context:
space:
mode:
Diffstat (limited to 'rom_chooser.py')
-rw-r--r--rom_chooser.py22
1 files changed, 14 insertions, 8 deletions
diff --git a/rom_chooser.py b/rom_chooser.py
index 5e79add..bdee088 100644
--- a/rom_chooser.py
+++ b/rom_chooser.py
@@ -2,12 +2,13 @@ import os, sys, glob
from rom_info import Z64Rom
-def chooseROM(non_interactive=False):
+def chooseROM(verbose=False, non_interactive=False):
roms = []
for file in glob.glob("*.z64"):
- if Z64Rom.isValidRom(file):
- roms.append(file)
+ rom = Z64Rom(file)
+ if rom.is_valid:
+ roms.append(rom)
if not (roms):
print("Error: No roms located, place one in the OTRExporter directory", file=os.sys.stderr)
@@ -21,23 +22,28 @@ def chooseROM(non_interactive=False):
foundMq = False
foundOot = False
for rom in roms:
- isMq = Z64Rom.isMqRom(rom)
- if isMq and not foundMq:
+ if rom.isMq and not foundMq:
romsToExtract.append(rom)
foundMq = True
- elif not isMq and not foundOot:
+ elif not rom.isMq and not foundOot:
romsToExtract.append(rom)
foundOot = True
return romsToExtract
- print(str(len(roms))+ " roms found, please select one by pressing 1-"+str(len(roms)))
+ print(f"{len(roms)} roms found, please select one by pressing 1-{len(roms)}")
+ print()
for i in range(len(roms)):
- print(str(i+1)+ ". " + roms[i])
+ print(f"[{i+1:>2d}] {roms[i].file_path}")
+ if verbose:
+ print(f" Checksum: {roms[i].checksum.value}, Version XML: {roms[i].version.xml_ver}")
+ print()
while(1):
try:
selection = int(input())
+ except KeyboardInterrupt:
+ sys.exit(1)
except:
print("Bad input. Try again with the number keys.")
continue