From 1235882e3f9466a8bc3ae62b3fac7731c52cb293 Mon Sep 17 00:00:00 2001 From: Smiril Date: Thu, 21 Mar 2024 17:57:24 +0100 Subject: [PATCH 01/11] Update CueMakerPy2.py fix truncated and raw cue string --- CueMaker/CueMakerPy2/CueMakerPy2.py | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/CueMaker/CueMakerPy2/CueMakerPy2.py b/CueMaker/CueMakerPy2/CueMakerPy2.py index 52a66b5..91cc74a 100755 --- a/CueMaker/CueMakerPy2/CueMakerPy2.py +++ b/CueMaker/CueMakerPy2/CueMakerPy2.py @@ -23,10 +23,21 @@ trecursive = raw_input("Search Recursive? ["+str(recursive)+"]:").strip().title() or recursive recursive = trecursive in trues -# Define cue file -cue = r"""FILE "%FILENAME%" BINARY -TRACK 01 MODE1/2352 -INDEX 01 00:00:00""" +# Get input +rawor = ("Raw", "R", True) +rawno = ("Truncated","T", False) +mary = input("Please enter Raw or Truncated [R/T]:") +if (mary, not rawno): + # Define cue file + cue = r"""FILE "%FILENAME%" BINARY + TRACK 01 MODE1/2352 + INDEX 01 00:00:00""" +else: + # Define cue file + cue = r"""FILE "%FILENAME%" BINARY + TRACK 01 MODE1/2336 + INDEX 01 00:00:00""" + # For each (sub)folder for (dirpath, dirnames, filenames) in walk(mypath): From 775740f2fadfb9c86b552300fcef2fb20a3dcd99 Mon Sep 17 00:00:00 2001 From: Smiril Date: Fri, 22 Mar 2024 11:03:55 +0100 Subject: [PATCH 02/11] Update CueMakerPy2.py two track fix for cue file --- CueMaker/CueMakerPy2/CueMakerPy2.py | 62 ++++++++++++++++------------- 1 file changed, 35 insertions(+), 27 deletions(-) diff --git a/CueMaker/CueMakerPy2/CueMakerPy2.py b/CueMaker/CueMakerPy2/CueMakerPy2.py index 91cc74a..b95572c 100755 --- a/CueMaker/CueMakerPy2/CueMakerPy2.py +++ b/CueMaker/CueMakerPy2/CueMakerPy2.py @@ -4,10 +4,14 @@ import os import sys from os import walk +from os.path import exists +import re +patterns1 = ['Track 1'] +patterns2 = ['Track 2'] # Define path to search # mypath is a literal string so you dont have to escape path -mypath = r"/home/pi/RetroPie/roms"; +mypath = r"./roms"; recursive = True # Get input @@ -16,28 +20,24 @@ #py3 code mypath = input("Please enter path to scan ["+mypath+"]:") or mypath trecursive = input("Search Recursive? ["+str(recursive)+"]:").strip().title() or recursive + filenamex = input("Please enter Project Name [filename]:") recursive = trecursive in trues else: #py2 code mypath = raw_input("Please enter path to scan ["+mypath+"]:") or mypath trecursive = raw_input("Search Recursive? ["+str(recursive)+"]:").strip().title() or recursive + filenamex = input("Please enter Project Name [filename]:") recursive = trecursive in trues -# Get input -rawor = ("Raw", "R", True) -rawno = ("Truncated","T", False) -mary = input("Please enter Raw or Truncated [R/T]:") -if (mary, not rawno): - # Define cue file - cue = r"""FILE "%FILENAME%" BINARY - TRACK 01 MODE1/2352 - INDEX 01 00:00:00""" -else: - # Define cue file - cue = r"""FILE "%FILENAME%" BINARY - TRACK 01 MODE1/2336 - INDEX 01 00:00:00""" - +# Define cue file +cue1 = r"""FILE "%TRACK1%" BINARY +TRACK 01 MODE1/2352 +INDEX 01 00:00:00""" +cue2 = r""" +FILE "%TRACK2%" BINARY +TRACK 02 AUDIO +INDEX 00 00:00:00 +INDEX 01 00:02:00""" # For each (sub)folder for (dirpath, dirnames, filenames) in walk(mypath): @@ -47,20 +47,28 @@ filename, file_extension = os.path.splitext(file) # If its a bin - if file_extension.lower()==".bin" or file_extension.lower()==".iso" or file_extension.lower()==".img": - + if (exists((file_extension.lower()==".bin" or file_extension.lower()==".iso" or file_extension.lower()==".img"))): # Search for a cue - if (filename + ".cue").lower() not in (name.lower() for name in filenames): - + if (filenamex + ".cue").lower() not in (name.lower() for name in filenames): # None found, create one - savePath = os.path.join(dirpath,filename+ ".cue") - fileHandle = open(savePath, "w") - fileHandle.write(cue.replace("%FILENAME%", file)) - fileHandle.close() - + savePath = os.path.join(dirpath,filenamex+ ".cue") + fileHandle = open(savePath, "a") + for i in patterns1: + if re.search (i, file): + fileHandle.write(cue1.replace("%TRACK1%", file)) + else: + print("no match!") + + for k in patterns2: + if re.search (k, file): + fileHandle.write(cue2.replace("%TRACK2%", file)) + else: + print("no match!") + + fileHandle.close() # Output write - print("Cue created: " + savePath) - + print("Cue created: " + savePath) + # If they dont want to go recursive, get out if not recursive: break From 595ace86c1e5d43ff0aec9a46083120451522771 Mon Sep 17 00:00:00 2001 From: Smiril Date: Fri, 22 Mar 2024 11:08:32 +0100 Subject: [PATCH 03/11] Update CueMakerPy2.py bug fix cue1 cue2 --- CueMaker/CueMakerPy2/CueMakerPy2.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/CueMaker/CueMakerPy2/CueMakerPy2.py b/CueMaker/CueMakerPy2/CueMakerPy2.py index b95572c..f650cc4 100755 --- a/CueMaker/CueMakerPy2/CueMakerPy2.py +++ b/CueMaker/CueMakerPy2/CueMakerPy2.py @@ -31,13 +31,13 @@ # Define cue file cue1 = r"""FILE "%TRACK1%" BINARY -TRACK 01 MODE1/2352 -INDEX 01 00:00:00""" + TRACK 01 MODE1/2352 + INDEX 01 00:00:00""" cue2 = r""" FILE "%TRACK2%" BINARY -TRACK 02 AUDIO -INDEX 00 00:00:00 -INDEX 01 00:02:00""" + TRACK 02 AUDIO + INDEX 00 00:00:00 + INDEX 01 00:02:00""" # For each (sub)folder for (dirpath, dirnames, filenames) in walk(mypath): From c3a3be1c92193a9e17aecddf2aea751b1003f791 Mon Sep 17 00:00:00 2001 From: Smiril Date: Fri, 22 Mar 2024 11:29:01 +0100 Subject: [PATCH 04/11] Update CueMakerPy2.py fix truncated psx cue file --- CueMaker/CueMakerPy2/CueMakerPy2.py | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/CueMaker/CueMakerPy2/CueMakerPy2.py b/CueMaker/CueMakerPy2/CueMakerPy2.py index f650cc4..8c20211 100755 --- a/CueMaker/CueMakerPy2/CueMakerPy2.py +++ b/CueMaker/CueMakerPy2/CueMakerPy2.py @@ -16,23 +16,35 @@ # Get input trues = ("Y", "Yes", "True", "T", True) +rawt = ("Y", "Yes", "True", "T", True) +rawf = ("N", "No", "False", "F", False) if (sys.version_info > (3, 0)): #py3 code mypath = input("Please enter path to scan ["+mypath+"]:") or mypath trecursive = input("Search Recursive? ["+str(recursive)+"]:").strip().title() or recursive + traw = input("Raw or Truncated? [R/T]:") or rawt filenamex = input("Please enter Project Name [filename]:") recursive = trecursive in trues else: #py2 code mypath = raw_input("Please enter path to scan ["+mypath+"]:") or mypath trecursive = raw_input("Search Recursive? ["+str(recursive)+"]:").strip().title() or recursive - filenamex = input("Please enter Project Name [filename]:") + traw = raw_input("Raw or Truncated? [R/T]:") or rawt + filenamex = raw_input("Please enter Project Name [filename]:") recursive = trecursive in trues -# Define cue file -cue1 = r"""FILE "%TRACK1%" BINARY - TRACK 01 MODE1/2352 - INDEX 01 00:00:00""" + +if (traw , not rawf): + # Define cue file + cue1 = r"""FILE "%TRACK1%" BINARY + TRACK 01 MODE1/2352 + INDEX 01 00:00:00""" +else: + # Define cue file + cue1 = r"""FILE "%TRACK1%" BINARY + TRACK 01 MODE1/2336 + INDEX 01 00:00:00""" + cue2 = r""" FILE "%TRACK2%" BINARY TRACK 02 AUDIO From 742e104b1fe605f6c4eaa02c2fba12a1e2bbcdbb Mon Sep 17 00:00:00 2001 From: Smiril Date: Fri, 22 Mar 2024 11:30:18 +0100 Subject: [PATCH 05/11] Update CueMakerPy2.py --- CueMaker/CueMakerPy2/CueMakerPy2.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CueMaker/CueMakerPy2/CueMakerPy2.py b/CueMaker/CueMakerPy2/CueMakerPy2.py index 8c20211..7292558 100755 --- a/CueMaker/CueMakerPy2/CueMakerPy2.py +++ b/CueMaker/CueMakerPy2/CueMakerPy2.py @@ -16,8 +16,8 @@ # Get input trues = ("Y", "Yes", "True", "T", True) -rawt = ("Y", "Yes", "True", "T", True) -rawf = ("N", "No", "False", "F", False) +rawt = ("Y", "Yes", "True", "R", True) +rawf = ("N", "No", "False", "T", False) if (sys.version_info > (3, 0)): #py3 code mypath = input("Please enter path to scan ["+mypath+"]:") or mypath From 852c0ac9df0bd63dc73e2f3a746f13783e132446 Mon Sep 17 00:00:00 2001 From: Smiril Date: Fri, 22 Mar 2024 11:34:02 +0100 Subject: [PATCH 06/11] Update CueMakerPy2.py type fix --- CueMaker/CueMakerPy2/CueMakerPy2.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/CueMaker/CueMakerPy2/CueMakerPy2.py b/CueMaker/CueMakerPy2/CueMakerPy2.py index 7292558..9d4e66f 100755 --- a/CueMaker/CueMakerPy2/CueMakerPy2.py +++ b/CueMaker/CueMakerPy2/CueMakerPy2.py @@ -34,16 +34,16 @@ recursive = trecursive in trues -if (traw , not rawf): +if (not rawf): # Define cue file cue1 = r"""FILE "%TRACK1%" BINARY - TRACK 01 MODE1/2352 - INDEX 01 00:00:00""" + TRACK 01 MODE1/2352 + INDEX 01 00:00:00""" else: # Define cue file cue1 = r"""FILE "%TRACK1%" BINARY - TRACK 01 MODE1/2336 - INDEX 01 00:00:00""" + TRACK 01 MODE1/2336 + INDEX 01 00:00:00""" cue2 = r""" FILE "%TRACK2%" BINARY From f4df1a5cb9beafeca2a1662900478b1f53901a6a Mon Sep 17 00:00:00 2001 From: Smiril Date: Fri, 22 Mar 2024 11:46:08 +0100 Subject: [PATCH 07/11] Update CueMakerPy2.py bug fix --- CueMaker/CueMakerPy2/CueMakerPy2.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/CueMaker/CueMakerPy2/CueMakerPy2.py b/CueMaker/CueMakerPy2/CueMakerPy2.py index 9d4e66f..89a627e 100755 --- a/CueMaker/CueMakerPy2/CueMakerPy2.py +++ b/CueMaker/CueMakerPy2/CueMakerPy2.py @@ -22,19 +22,19 @@ #py3 code mypath = input("Please enter path to scan ["+mypath+"]:") or mypath trecursive = input("Search Recursive? ["+str(recursive)+"]:").strip().title() or recursive - traw = input("Raw or Truncated? [R/T]:") or rawt + traw = input("Raw or Truncated? [R/T]:") filenamex = input("Please enter Project Name [filename]:") recursive = trecursive in trues else: #py2 code mypath = raw_input("Please enter path to scan ["+mypath+"]:") or mypath trecursive = raw_input("Search Recursive? ["+str(recursive)+"]:").strip().title() or recursive - traw = raw_input("Raw or Truncated? [R/T]:") or rawt + traw = raw_input("Raw or Truncated? [R/T]:") filenamex = raw_input("Please enter Project Name [filename]:") recursive = trecursive in trues -if (not rawf): +if (traw == rawt): # Define cue file cue1 = r"""FILE "%TRACK1%" BINARY TRACK 01 MODE1/2352 @@ -44,7 +44,7 @@ cue1 = r"""FILE "%TRACK1%" BINARY TRACK 01 MODE1/2336 INDEX 01 00:00:00""" - + cue2 = r""" FILE "%TRACK2%" BINARY TRACK 02 AUDIO From b1e170b45c8909f3b85802094400073dcbc905b2 Mon Sep 17 00:00:00 2001 From: Smiril Date: Fri, 22 Mar 2024 15:59:34 +0100 Subject: [PATCH 08/11] Update CueMakerPy2.py typo fix on loop --- CueMaker/CueMakerPy2/CueMakerPy2.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CueMaker/CueMakerPy2/CueMakerPy2.py b/CueMaker/CueMakerPy2/CueMakerPy2.py index 89a627e..779eb60 100755 --- a/CueMaker/CueMakerPy2/CueMakerPy2.py +++ b/CueMaker/CueMakerPy2/CueMakerPy2.py @@ -77,9 +77,9 @@ else: print("no match!") - fileHandle.close() - # Output write - print("Cue created: " + savePath) + fileHandle.close() + # Output write + print("Cue created: " + savePath) # If they dont want to go recursive, get out if not recursive: From 7d549a367e8e45db79cb926197d5f0685461242a Mon Sep 17 00:00:00 2001 From: Smiril Date: Fri, 22 Mar 2024 16:02:57 +0100 Subject: [PATCH 09/11] Update CueMakerPy2.py set break points --- CueMaker/CueMakerPy2/CueMakerPy2.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CueMaker/CueMakerPy2/CueMakerPy2.py b/CueMaker/CueMakerPy2/CueMakerPy2.py index 779eb60..8ae9632 100755 --- a/CueMaker/CueMakerPy2/CueMakerPy2.py +++ b/CueMaker/CueMakerPy2/CueMakerPy2.py @@ -69,13 +69,13 @@ if re.search (i, file): fileHandle.write(cue1.replace("%TRACK1%", file)) else: - print("no match!") + break for k in patterns2: if re.search (k, file): fileHandle.write(cue2.replace("%TRACK2%", file)) else: - print("no match!") + break fileHandle.close() # Output write From 3165b8b8a255931b77e90e576792e0ca4b05e756 Mon Sep 17 00:00:00 2001 From: Smiril Date: Fri, 22 Mar 2024 16:24:54 +0100 Subject: [PATCH 10/11] Update CueMakerPy2.py multi track update --- CueMaker/CueMakerPy2/CueMakerPy2.py | 66 ++++++++++++++++++++++++++--- 1 file changed, 60 insertions(+), 6 deletions(-) diff --git a/CueMaker/CueMakerPy2/CueMakerPy2.py b/CueMaker/CueMakerPy2/CueMakerPy2.py index 8ae9632..2a31d1e 100755 --- a/CueMaker/CueMakerPy2/CueMakerPy2.py +++ b/CueMaker/CueMakerPy2/CueMakerPy2.py @@ -9,6 +9,10 @@ patterns1 = ['Track 1'] patterns2 = ['Track 2'] +patterns3 = ['Track 3'] +patterns4 = ['Track 4'] +patterns5 = ['Track 5'] +patterns6 = ['Track 6'] # Define path to search # mypath is a literal string so you dont have to escape path mypath = r"./roms"; @@ -51,6 +55,31 @@ INDEX 00 00:00:00 INDEX 01 00:02:00""" +cue3 = r""" +FILE "%TRACK3%" BINARY + TRACK 03 AUDIO + INDEX 00 00:00:00 + INDEX 01 00:02:00""" + +cue4 = r""" +FILE "%TRACK4%" BINARY + TRACK 04 AUDIO + INDEX 00 00:00:00 + INDEX 01 00:02:00""" + +cue5 = r""" +FILE "%TRACK5%" BINARY + TRACK 05 AUDIO + INDEX 00 00:00:00 + INDEX 01 00:02:00""" + +cue6 = r""" +FILE "%TRACK6%" BINARY + TRACK 06 AUDIO + INDEX 00 00:00:00 + INDEX 01 00:02:00""" + + # For each (sub)folder for (dirpath, dirnames, filenames) in walk(mypath): # For each file @@ -65,20 +94,45 @@ # None found, create one savePath = os.path.join(dirpath,filenamex+ ".cue") fileHandle = open(savePath, "a") - for i in patterns1: - if re.search (i, file): + for k1 in patterns1: + if re.search (k1, file): fileHandle.write(cue1.replace("%TRACK1%", file)) else: break - - for k in patterns2: - if re.search (k, file): + + for k2 in patterns2: + if re.search (k2, file): fileHandle.write(cue2.replace("%TRACK2%", file)) else: break + for k3 in patterns3: + if re.search (k3, file): + fileHandle.write(cue3.replace("%TRACK3%", file)) + else: + break + + for k4 in patterns4: + if re.search (k4, file): + fileHandle.write(cue4.replace("%TRACK4%", file)) + else: + break + + for k5 in patterns5: + if re.search (k5, file): + fileHandle.write(cue5.replace("%TRACK5%", file)) + else: + break + + for k6 in patterns6: + if re.search (k6, file): + fileHandle.write(cue6.replace("%TRACK6%", file)) + else: + break + + fileHandle.close() - # Output write + # Output write print("Cue created: " + savePath) # If they dont want to go recursive, get out From 145cb5647e3097f76d2f961ccfd89ff1ed5d448c Mon Sep 17 00:00:00 2001 From: Smiril Date: Fri, 22 Mar 2024 17:11:02 +0100 Subject: [PATCH 11/11] Update CueMakerPy2.py --- CueMaker/CueMakerPy2/CueMakerPy2.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/CueMaker/CueMakerPy2/CueMakerPy2.py b/CueMaker/CueMakerPy2/CueMakerPy2.py index 2a31d1e..e3e50f1 100755 --- a/CueMaker/CueMakerPy2/CueMakerPy2.py +++ b/CueMaker/CueMakerPy2/CueMakerPy2.py @@ -98,37 +98,37 @@ if re.search (k1, file): fileHandle.write(cue1.replace("%TRACK1%", file)) else: - break + continue for k2 in patterns2: if re.search (k2, file): fileHandle.write(cue2.replace("%TRACK2%", file)) else: - break + continue for k3 in patterns3: if re.search (k3, file): fileHandle.write(cue3.replace("%TRACK3%", file)) else: - break + continue for k4 in patterns4: if re.search (k4, file): fileHandle.write(cue4.replace("%TRACK4%", file)) else: - break + continue for k5 in patterns5: if re.search (k5, file): fileHandle.write(cue5.replace("%TRACK5%", file)) else: - break + continue for k6 in patterns6: if re.search (k6, file): fileHandle.write(cue6.replace("%TRACK6%", file)) else: - break + continue fileHandle.close()