REM > MakePScr REM REM Build a Cubase patch script from lists of patch names in%=0 ou%=0 ON ERROR PROCclose: PRINT REPORT$; " at line ";ERL: END REM Base path of patch name files basepath$="hostfs::HardDisc4.$.MyFiles.Supernova." REM Leaf name of Cubase secript script$="Supernova-2" REM Comment, creators first and last name, device manufacturer, REM device name, script name, script version RESTORE +1 DATA "Made by Pond: http://pond.org.uk" DATA "Andrew" DATA "Hodgkinson" DATA "Novation" DATA "Supernova 2 OS 2" DATA "Supernova-2" DATA "Version 1.00" REM Bank number, associated patch file, bank name DATA 01, "OS2 perf bank A", "Performance A" DATA 02, "OS2 perf bank B", "Performance B" DATA 05, "OS2 prog bank A", "Program A" DATA 06, "OS2 prog bank B", "Program B" DATA 07, "OS2 prog bank C", "Program C" DATA 08, "OS2 prog bank D", "Program D" DATA 09, "OS2 prog bank E", "Program E" DATA 10, "OS2 prog bank F", "Program F" DATA 11, "OS2 prog bank G", "Program G" DATA 12, "OS2 prog bank H", "Program H" DATA -1, "", "" REM Output the header ou%=OPENOUT(basepath$+script$) READ comment$ BPUT#ou%,"[cubase parse file]"+CHR$(13) BPUT#ou%,"[parser version 0001]"+CHR$(13) BPUT#ou%,"[comment] "+comment$+CHR$(13) BPUT#ou%,CHR$(13) READ firstname$, lastname$, maker$ READ dname$, sname$, version$ BPUT#ou%,"[creators first name] "+firstname$+CHR$(13) BPUT#ou%,"[creators last name] "+lastname$+CHR$(13) BPUT#ou%,"[device manufacturer] "+maker$+CHR$(13) BPUT#ou%,"[device name] "+dname$+CHR$(13) BPUT#ou%,"[script name] "+sname$+CHR$(13) BPUT#ou%,"[script version] "+version$+CHR$(13) BPUT#ou%,CHR$(13) BPUT#ou%,"[define patchnames]"+CHR$(13) REM Run through all of the patch name scripts REPEAT READ bank%, namefile$, name$ IF bank% >= 0 THEN BPUT#ou%,"[g1] "+name$+CHR$(13) PRINT "Processing "+namefile$+"..." in%=OPENIN(basepath$+namefile$) patch%=0 REPEAT patch$=GET$#in% IF patch$<>"" THEN output$=STRING$(20, " ") LEFT$(output$)="[p2, "+STR$(patch%)+", -1, "+STR$(bank%)+"]" patch%+=1 output$+=patch$ BPUT#ou%,output$+CHR$(13) ENDIF UNTIL EOF#in% ENDIF UNTIL bank% < 0 BPUT#ou%,"[end]"+CHR$(13) BPUT#ou%,CHR$(13) PROCclose OSCLI "SetType "+basepath$+script$+" FFF" PRINT "Done! Output to '"+basepath$+script$+"'." END : DEFPROCclose IF in%<>0 THEN CLOSE#in%: in%=0 IF ou%<>0 THEN CLOSE#ou%: ou%=0 ENDPROC :