Dr.Godfried-Willem RAES
Kursus Experimentele Muziek: Boekdeel 5: Notatie - DARMS
Hogeschool Gent : Departement Muziek & Drama
5910:
Filekonversie: MKDARMS
Het hiernavolgende programma maakt automatisch DARMS-files aan vanuit binaire muziekbestanden (zoals voortgebracht door algoritmische kompositiesoftware). Voor elke afzonderlijke stem, wordt een afzonderlijke DARMS-file aangemaakt. Deze DARMS-files kunnen door noteprocessor rechtstreeks worden ingelezen en in muziekschrift omgezet.
Omdat het vrij eenvoudig mogelijk is allerlei extra's aan dit programma toe te voegen leek het ons nuttig de volledige bron-kode hierbij af te drukken.
' DARMS.BAS
'$DYNAMIC
DEFINT A-Z :DEFLNG E, I, K : CONST FALSE = 0, TRUE = 1, DEBUG = -1
CLS
MAIN:
GOSUB MENU1:
OPEN C$ FOR BINARY AS #1
ENDCOUNT = LOF(1) \ 15 : K = 1: I = 0: J = 0: L = 0
DIM P(ENDCOUNT, 14) AS INTEGER
GOSUB BLANK1
LOCATE 12, 10: PRINT " Reading "; C$; " ... "
WHILE NOT EOF(1)
IF L < 15 THEN
J = J + 1 : J = J MOD 15
GET #1, K, P(I, J): K = K + 1
IF P(I, J) > 255 THEN
P(I, J) = P(I, J) \ 256
ELSE
IF J > 0 THEN P(I, J) = 0
END IF
IF J = 0 THEN I = I + 1
L = L + 1: L = L MOD 16
ELSE
GET #1, K, DUMMY
IF K MOD 16 = 0 THEN
IF DUMMY >= 0 THEN P(I, J) = DUMMY \ 256 ELSE P(I, J) = DUMMY
END IF
K = K + 1: L = L + 1: L = L MOD 16
END IF
WEND
CLOSE #1 : GOSUB BLANK1
LOCATE 12, 10: PRINT C$; " written to array ... "
SLEEP 2 : GOSUB BLANK1 : ENDCOUNT = I
ANT:
GOSUB BLANK1 : GOSUB MENU2
LOCATE 12, 5: PRINT "Writing DARMS-code to "; XFILE$;
OPEN XFILE$ FOR OUTPUT AS #1
S = (V * 2) - 1
H$ = "!I" + MID$(STR$(V), 2) + " " + CLEF$ + " !M" + BAR$ + " "
PRINT #1, H$;
'Adjusting different clefs
IF CLEF$ = "!G" THEN CLEF = 0
IF CLEF$ = "!F" THEN CLEF = 12
IF CLEF$ = "5!C" THEN CLEF = 6
IF CLEF$ = "7!C" THEN CLEF = 8
IF CLEF$ = "!G-8" THEN CLEF = 7
'Adjusting different time signatures
IF BAR$ = "2:16" THEN BAR = RITV / 8
IF BAR$ = "3:16" THEN BAR = RITV * (3 / 16)
IF BAR$ = "4:16" THEN BAR = RITV / 4
IF BAR$ = "5:16" THEN BAR = RITV * (5 / 16)
IF BAR$ = "6:16" THEN BAR = RITV * (6 / 16)
IF BAR$ = "7:16" THEN BAR = RITV * (7 / 16)
IF BAR$ = "9:16" THEN BAR = RITV * (3 / 16)
IF BAR$ = "12:16" THEN BAR = RITV * (6 / 16)
IF BAR$ = "2:8" THEN BAR = RITV / 4
IF BAR$ = "3:8" THEN BAR = RITV * (3 / 8)
IF BAR$ = "4:8" THEN BAR = RITV / 2
IF BAR$ = "5:8" THEN BAR = RITV * (5 / 8)
IF BAR$ = "6:8" THEN BAR = RITV * (6 / 8)
IF BAR$ = "7:8" THEN BAR = RITV * (7 / 8)
IF BAR$ = "9:8" THEN BAR = RITV * (3 / 8)
IF BAR$ = "12:8" THEN BAR = RITV * (6 / 8)
IF BAR$ = "11:8" THEN BAR = RITV * (1 / 8)
IF BAR$ = "13:8" THEN BAR = RITV * (1 / 8)
IF BAR$ = "2:4" THEN BAR = RITV / 2
IF BAR$ = "3:4" THEN BAR = RITV * (3 / 4)
IF BAR$ = "4:4" THEN BAR = RITV
IF BAR$ = "5:4" THEN BAR = RITV / 4
IF BAR$ = "6:4" THEN BAR = RITV * (3 / 4)
IF BAR$ = "7:4" THEN BAR = RITV / 4
IF BAR$ = "27:32" THEN BAR = RITV * (27 / 32)
IF BAR$ = "2:2" THEN BAR = RITV
IF BAR$ = "5:2" THEN BAR = RITV / 2
IF BAR$ = "9:16" OR BAR$ = "9:8" THEN
L = 3
ELSEIF BAR$ = "12:16" OR BAR$ = "12:8" OR BAR$ = "6:4" THEN
L = 2
ELSEIF BAR$ = "5:4" THEN
L = 5
ELSEIF BAR$ = "5:2" THEN
L = 5
ELSEIF BAR$ = "7:4" THEN
L = 7
ELSEIF BAR$ = "13:8" THEN
L = 13
ELSEIF BAR$ = "11:8" THEN
L = 11
ELSE
L = 1
END IF
TAKT = 0
LB = 0
FOR I = 0 TO ENDCOUNT
IF P(I, S) > 0 AND P(I, S + 1) > 0 THEN
IF I < 1 THEN
OLD = P(I, S)
DUUR = 0
TAKT = 0
END IF
IF I > 0 THEN
DUUR = DUUR + 1
TAKT = TAKT + 1
IF TAKT < BAR THEN
GOSUB CVERT: PRINT #1, NT$; DR$; " ";
OLD = P(I, S)
DUUR = 0
TAKT = TAKT
END IF
IF TAKT = BAR THEN
LB = LB + 1
IF LB = L THEN
GOSUB CVERT: PRINT #1, NT$; DR$; " "; "/"
LB = 0
ELSE
GOSUB CVERT: PRINT #1, NT$; DR$; " ";
LB = LB
END IF
OLD = P(I, S)
DUUR = 0
TAKT = 0
END IF
END IF
END IF
IF P(I, S) > 0 AND P(I, S + 1) = 0 THEN
DUUR = DUUR + 1
TAKT = TAKT + 1
IF OLD > 0 THEN
IF TAKT < BAR THEN
GOSUB CVERT: PRINT #1, NT$; DR$; " ";
OLD = 0
DUUR = 0
TAKT = TAKT
END IF
IF TAKT = BAR THEN
LB = LB + 1
IF LB = L THEN
GOSUB CVERT: PRINT #1, NT$; DR$; " "; "/"
LB = 0
ELSE
GOSUB CVERT: PRINT #1, NT$; DR$; " ";
LB = LB
END IF
OLD = 0
DUUR = 0
TAKT = 0
END IF
END IF
IF OLD = 0 THEN
IF TAKT < BAR THEN
OLD = OLD
DUUR = DUUR
TAKT = TAKT
END IF
IF TAKT = BAR THEN
LB = LB + 1
IF LB = L THEN
GOSUB CVERT: PRINT #1, NT$; DR$; " "; "/"
LB = 0
ELSE
GOSUB CVERT: PRINT #1, NT$; DR$; " ";
LB = LB
END IF
OLD = OLD
DUUR = 0
TAKT = 0
END IF
END IF
END IF
IF P(I, S) = 0 AND P(I, S + 1) = 0 THEN
IF I < 1 THEN
OLD = P(I, S)
DUUR = 0
TAKT = 0
END IF
IF I > 0 THEN
DUUR = DUUR + 1
TAKT = TAKT + 1
IF TAKT < BAR THEN
OLD = OLD
DUUR = DUUR
TAKT = TAKT
END IF
IF TAKT = BAR THEN
LB = LB + 1
IF LB = L THEN
IF OLD > 0 THEN
GOSUB CVERT: PRINT #1, NT$; DR$; "J "; "/"
ELSE
GOSUB CVERT: PRINT #1, NT$; DR$; " "; "/"
END IF
LB = 0
ELSE
IF OLD > 0 THEN
GOSUB CVERT: PRINT #1, NT$; DR$; "J ";
ELSE
GOSUB CVERT: PRINT #1, NT$; DR$; " ";
END IF
LB = LB
END IF
OLD = OLD
DUUR = 0
TAKT = 0
END IF
END IF
END IF
NEXT I
CLOSE #1
L = 0
GOSUB BLANK1
LOCATE 12, 5: PRINT "One part converted and written to "; XFILE$;
SLEEP 2
GOSUB BLANK1
K$ = ""
LOCATE 12, 5: PRINT "Do you want to convert another part ? (Y/N)"
WHILE K$ = "": K$ = INKEY$: WEND
IF K$ = "Y" OR K$ = "y" THEN
GOSUB BLANK1
GOTO ANT
ELSE
END
END IF
CVERT:
REST = (TAKT - DUUR)
GOSUB NTCVERT
IF RITV = 32 THEN GOSUB RITDIV1
IF RITV = 16 THEN GOSUB RITDIV2
RETURN
RITDIV1:
IF DUUR MOD RITV = 0 THEN
NT$ = NTT$
DR$ = "W"
END IF
IF DUUR MOD RITV = 31 THEN
IF REST MOD 2 = 0 THEN
NT$ = NTT$ + "H." + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 2 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$
DR$ = "H."
END IF
END IF
IF DUUR MOD RITV = 30 THEN
IF REST MOD 3 = 0 THEN
NT$ = NTT$ + "H." + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 3 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 3 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$
DR$ = "H."
END IF
END IF
IF DUUR MOD RITV = 29 THEN
IF REST MOD 4 = 0 THEN
NT$ = NTT$ + "H" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 4 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 4 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 4 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "H."
END IF
END IF
IF DUUR MOD RITV = 28 THEN
IF REST MOD 5 = 0 THEN
NT$ = NTT$ + "H." + J$ + NTT$
DR$ = "E"
END IF
IF REST MOD 5 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$ + "H" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 5 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 5 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 5 = 4 THEN
NT$ = NTT$ + "E" + J$ + NTT$
DR$ = "H."
END IF
END IF
IF DUUR MOD RITV = 27 THEN
IF REST MOD 6 = 0 THEN
NT$ = NTT$ + "H." + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 6 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E"
END IF
IF REST MOD 6 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "H" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 6 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 6 = 4 THEN
NT$ = NTT$ + "E" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 6 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$
DR$ = "H."
END IF
END IF
IF DUUR MOD RITV = 26 THEN
IF REST MOD 7 = 0 THEN
NT$ = NTT$ + "H." + J$ + NTT$
DR$ = "S"
END IF
IF REST MOD 7 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 7 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E"
END IF
IF REST MOD 7 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$ + "H"
NT$ = NT$ + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 7 = 4 THEN
NT$ = NTT$ + "E" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 7 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 7 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$
DR$ = "H."
END IF
END IF
IF DUUR MOD RITV = 25 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$ + "H." + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "S"
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E"
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$ + "E" + J$ + NTT$ + "H" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$
DR$ = "H."
END IF
END IF
IF DUUR MOD RITV = 24 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$
DR$ = "H."
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "S"
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$ + "E" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E"
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$ + "H" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E.."
END IF
END IF
IF DUUR MOD RITV = 23 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$ + "H" + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$
DR$ = "H"
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "S"
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$ + "E" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E"
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "H" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E."
END IF
END IF
IF DUUR MOD RITV = 22 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$ + "H" + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$
DR$ = "H"
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$ + "E" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "S"
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E"
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "H" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
END IF
IF DUUR MOD RITV = 21 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$ + "H" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "H"
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$ + "E" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "S"
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "E"
END IF
END IF
IF DUUR MOD RITV = 20 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$ + "H" + J$ + NTT$
DR$ = "E"
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$ + "Q" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$ + "E" + J$ + NTT$
DR$ = "H"
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "S"
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "S."
END IF
END IF
IF DUUR MOD RITV = 19 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$ + "H" + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$
DR$ = "Q."
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "Q" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$ + "Q." + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$
DR$ = "H"
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "S"
END IF
END IF
IF DUUR MOD RITV = 18 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$ + "H" + J$ + NTT$
DR$ = "S"
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$
DR$ = "Q."
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$ + "Q"
NT$= NT$ + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$ + "Q." + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$
DR$ = "H"
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "H" + J$ + NTT$
DR$ = "T"
END IF
END IF
IF DUUR MOD RITV = 17 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$ + "H" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "S"
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "Q."
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$ + "Q." + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$
DR$ = "H"
END IF
END IF
IF DUUR MOD RITV = 16 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$
DR$ = "H"
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "S"
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$ + "E" + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "E"
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$ + "Q" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "E.."
END IF
END IF
IF DUUR MOD RITV = 15 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$ + "Q" + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$
DR$ = "Q"
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "S"
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$ + "Q." + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$
DR$ = "Q."
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "Q" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "E."
END IF
END IF
IF DUUR MOD RITV = 14 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$ + "Q" + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$
DR$ = "Q"
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$ + "Q." + J$ + NTT$
DR$ = "S"
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$
DR$ = "Q."
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "Q" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
END IF
IF DUUR MOD RITV = 13 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$ + "Q" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "Q"
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$ + "Q." + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "S"
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "E"
END IF
END IF
IF DUUR MOD RITV = 12 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$
DR$ = "Q."
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$
DR$ = "Q."
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "S"
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "S."
END IF
END IF
IF DUUR MOD RITV = 11 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$ + "Q" + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$
DR$ = "E"
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$ + "E" + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$
DR$ = "Q"
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "S"
END IF
END IF
IF DUUR MOD RITV = 10 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$ + "Q" + J$ + NTT$
DR$ = "S"
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$
DR$ = "E"
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$ + "E" + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$
DR$ = "E.."
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$
DR$ = "Q"
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "Q" + J$ + NTT$
DR$ = "T"
END IF
END IF
IF DUUR MOD RITV = 9 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$ + "Q" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$
DR$ = "S"
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "E"
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$ + "E" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "E." + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$
DR$ = "Q"
END IF
END IF
IF DUUR MOD RITV = 8 THEN
IF REST MOD 8 = 0 THEN
NT$ = NTT$
DR$ = "Q"
END IF
IF REST MOD 8 = 1 THEN
NT$ = NTT$ + "E.." + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$
DR$ = "S"
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "S."
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$
DR$ = "Q"
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$ + "E" + J$ + NTT$
DR$ = "T"
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$
DR$ = "E."
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$: DR$ = "E.."
END IF
END IF
IF DUUR MOD RITV = 7 THEN
IF REST MOD 8 = 0 OR REST MOD 8 = 1 THEN
NT$ = NTT$ : DR$ = "E.."
END IF
IF REST MOD 8 = 2 THEN
NT$ = NTT$ + "E." + J$ + NTT$: DR$ = "T"
END IF
IF REST MOD 8 = 3 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$: DR$ = "S"
END IF
IF REST MOD 8 = 4 THEN
NT$ = NTT$ + "E" + J$ + NTT$: DR$ = "S."
END IF
IF REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$: DR$ = "E"
END IF
IF REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "E" + J$ + NTT$: DR$ = "T"
END IF
IF REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$ : DR$ = "E."
END IF
END IF
IF DUUR MOD RITV = 6 THEN
IF REST MOD 8 = 0 OR REST MOD 8 = 2 THEN
NT$ = NTT$ :DR$ = "E."
END IF
IF REST MOD 8 = 1 OR REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$:DR$ = "S."
END IF
IF REST MOD 8 = 3 OR REST MOD 8 = 7 THEN
NT$ = NTT$ + "T" + J$ + NTT$ + "E" + J$ + NTT$:DR$ = "T"
END IF
IF REST MOD 8 = 4 OR REST MOD 8 = 6 THEN
NT$ = NTT$ + "E" + J$ + NTT$:DR$ = "S"
END IF
END IF
IF DUUR MOD RITV = 5 THEN
IF REST MOD 8 = 0 OR REST MOD 8 = 4 THEN
NT$ = NTT$ + "E" + J$ + NTT$:DR$ = "T"
END IF
IF REST MOD 8 = 1 OR REST MOD 8 = 5 THEN
NT$ = NTT$ + "S." + J$ + NTT$: DR$ = "S"
END IF
IF REST MOD 8 = 2 OR REST MOD 8 = 6 THEN
NT$ = NTT$ + "S" + J$ + NTT$:DR$ = "S."
END IF
IF REST MOD 8 = 3 OR REST MOD 8 = 7 THEN NT$ = NTT$ + "T" + J$ + NTT$: DR$ = "E"
IF DUUR MOD RITV = 4 THEN
IF REST MOD 4 = 0 OR REST MOD 4 = 2 THEN NT$ = NTT$ :DR$ = "E"
IF REST MOD 4 = 1 THEN NT$ = NTT$ + "S." + J$ + NTT$: DR$ = "T"
IF REST MOD 4 = 3 THEN NT$ = NTT$ + "T" + J$ + NTT$: DR$ = "S."
END IF
IF DUUR MOD RITV = 3 THEN
IF REST MOD 4 = 0 OR REST MOD 4 = 1 THEN NT$ = NTT$: DR$ = "S."
IF REST MOD 4 = 2 THEN NT$ = NTT$ + "S" + J$ + NTT$: DR$ = "T"
IF REST MOD 4 = 3 THEN NT$ = NTT$ + "T" + J$ + NTT$: DR$ = "S"
END IF
IF DUUR MOD RITV = 2 THEN NT$ = NTT$: DR$ = "S"
IF DUUR MOD RITV = 1 THEN NT$ = NTT$: DR$ = "T"
REST = 0
RETURN
RITDIV2:
IF DUUR MOD RITV = 0 THEN NT$ = NTT$: DR$ = "W"
IF DUUR MOD RITV = 15 THEN
IF REST MOD 2 = 0 THEN NT$ = NTT$ + "H." + J$ + NTT$: DR$ = "E."
IF REST MOD 2 = 1 THEN NT$ = NTT$ + "E." + J$ + NTT$: DR$ = "H."
END IF
IF DUUR MOD RITV = 14 THEN
IF REST MOD 3 = 0 THEN NT$ = NTT$ + "H." + J$ + NTT$: DR$ = "E"
IF REST MOD 3 = 1 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "H" + J$ + NTT$: DR$ = "E."
END IF
IF REST MOD 3 = 2 THEN NT$ = NTT$ + "E" + J$ + NTT$ : DR$ = "H."
END IF
IF DUUR MOD RITV = 13 THEN
IF REST MOD 4 = 0 THEN NT$ = NTT$ + "H." + J$ + NTT$: DR$ = "S"
IF REST MOD 4 = 1 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "H" + J$ + NTT$ : DR$ = "E"
END IF
IF REST MOD 4 = 2 THEN
NT$ = NTT$ + "E" + J$ + NTT$ + "H" + J$ + NTT$: DR$ = "E."
END IF
IF REST MOD 4 = 3 THEN NT$ = NTT$ + "S" + J$ + NTT$: DR$ = "H"
END IF
IF DUUR MOD RITV = 12 THEN
IF REST MOD 4 = 0 THEN NT$ = NTT$ : DR$ = "H."
IF REST MOD 4 = 1 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "H" + J$ + NTT$: DR$ = "S"
END IF
IF REST MOD 4 = 2 THEN
NT$ = NTT$ + "E" + J$ + NTT$ + "H" + J$ + NTT$: DR$ = "E"
END IF
IF REST MOD 4 = 3 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "H" + J$ + NTT$ : DR$ = "E."
END IF
END IF
IF DUUR MOD RITV = 11 THEN
IF REST MOD 4 = 0 THEN NT$ = NTT$ + "H" + J$ + NTT$: DR$ = "E."
IF REST MOD 4 = 1 THEN NT$ = NTT$ + "E." + J$ + NTT$ :DR$ = "H"
IF REST MOD 4 = 2 THEN
NT$ = NTT$ + "E" + J$ + NTT$ + "H" + J$ + NTT$: DR$ = "S"
END IF
IF REST MOD 4 = 3 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "H" + J$ + NTT$ :DR$ = "E"
END IF
END IF
IF DUUR MOD RITV = 10 THEN
IF REST MOD 4 = 0 THEN NT$ = NTT$ + "H" + J$ + NTT$ : DR$ = "E"
IF REST MOD 4 = 1 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "Q" + J$ + NTT$ : DR$ = "E."
END IF
IF REST MOD 4 = 2 THEN NT$ = NTT$ + "E" + J$ + NTT$ : DR$ = "H"
IF REST MOD 4 = 3 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "H" + J$ + NTT$ : DR$ = "S"
END IF
END IF
IF DUUR MOD RITV = 9 THEN
IF REST MOD 4 = 0 THEN NT$ = NTT$ + "H" + J$ + NTT$ : DR$ = "S"
IF REST MOD 4 = 1 THEN NT$ = NTT$ + "E." + J$ + NTT$ : DR$ = "Q."
IF REST MOD 4 = 2 THEN
NT$ = NTT$ + "E" + J$ + NTT$ + "Q" + J$ + NTT$ : DR$ = "E."
END IF
IF REST MOD 4 = 3 THEN NT$ = NTT$ + "S" + J$ + NTT$: DR$ = "H"
END IF
IF DUUR MOD RITV = 8 THEN
IF REST MOD 4 = 0 THEN NT$ = NTT$: DR$ = "H"
IF REST MOD 4 = 1 THEN
NT$ = NTT$ + "E." + J$ + NTT$ + "Q" + J$ + NTT$ : DR$ = "S"
END IF
IF REST MOD 4 = 2 THEN NT$ = NTT$ + "E" + J$ + NTT$ :DR$ = "Q."
IF REST MOD 4 = 3 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "Q" + J$ + NTT$ : DR$ = "E."
END IF
END IF
IF DUUR MOD RITV = 7 THEN
IF REST MOD 4 = 0 THEN NT$ = NTT$ + "Q" + J$ + NTT$:DR$ = "E."
IF REST MOD 4 = 1 THEN NT$ = NTT$ + "E." + J$ + NTT$:DR$ = "Q"
IF REST MOD 4 = 2 THEN NT$ = NTT$ + "Q." + J$ + NTT$:DR$ = "S"
IF REST MOD 4 = 3 THEN NT$ = NTT$ + "S" + J$ + NTT$:DR$ = "Q."
END IF
IF DUUR MOD RITV = 6 THEN
IF REST MOD 4 = 0 THEN NT$ = NTT$ :DR$ = "Q."
IF REST MOD 4 = 1 THEN NT$ = NTT$ + "E." + J$ + NTT$ :DR$ = "E."
IF REST MOD 4 = 2 THEN NT$ = NTT$ :DR$ = "Q."
IF REST MOD 4 = 3 THEN
NT$ = NTT$ + "S" + J$ + NTT$ + "Q" + J$ + NTT$ : DR$ = "S"
END IF
END IF
IF DUUR MOD RITV = 5 THEN
IF REST MOD 4 = 0 THEN NT$ = NTT$ + "Q" + J$ + NTT$:DR$ = "S"
IF REST MOD 4 = 1 THEN NT$ = NTT$ + "E." + J$ + NTT$ :DR$ = "E"
IF REST MOD 4 = 2 THEN NT$ = NTT$ + "E" + J$ + NTT$: DR$ = "E."
IF REST MOD 4 = 3 THEN NT$ = NTT$ + "S" + J$ + NTT$ :DR$ = "Q"
END IF
IF DUUR MOD RITV = 4 THEN
IF REST MOD 4 = 0 OR REST MOD 4 = 2 THEN
NT$ = NTT$ : DR$ = "Q"
END IF
IF REST MOD 4 = 1 THEN NT$ = NTT$ + "E." + J$ + NTT$ :DR$ = "S"
IF REST MOD 4 = 3 THEN NT$ = NTT$ + "S" + J$ + NTT$: DR$ = "E."
END IF
IF DUUR MOD RITV = 3 THEN
IF REST MOD 4 = 0 OR REST MOD 4 = 1 THEN NT$ = NTT$ : DR$ = "E."
IF REST MOD 4 = 2 THEN NT$ = NTT$ + "E" + J$ + NTT$: DR$ = "S"
IF REST MOD 4 = 3 THEN NT$ = NTT$ + "S" + J$ + NTT$ :DR$ = "E"
END IF
IF DUUR MOD RITV = 2 THEN NT$ = NTT$ :DR$ = "E"
IF DUUR MOD RITV = 1 THEN NT$ = NTT$ : DR$ = "S"
REST = 0
RETURN
NTCVERT:
IF OLD > 0 THEN
IF OLD MOD 12 = 0 THEN NTT$ = STR$(6 + (((OLD - 72) \ 12) * 7) + CLEF)
IF OLD MOD 12 = 1 THEN NTT$ = STR$(6 + ((((OLD - 1) - 72) \ 12) * 7) + CLEF) + "#"
IF OLD MOD 12 = 2 THEN NTT$ = STR$(0 + (((OLD - 62) \ 12) * 7) + CLEF)
IF OLD MOD 12 = 3 THEN NTT$ = STR$(0 + ((((OLD - 1) - 62) \ 12) * 7) + CLEF) + "#"
IF OLD MOD 12 = 4 THEN NTT$ = STR$(1 + (((OLD - 64) \ 12) * 7) + CLEF)
IF OLD MOD 12 = 5 THEN NTT$ = STR$(2 + (((OLD - 65) \ 12) * 7) + CLEF)
IF OLD MOD 12 = 6 THEN NTT$ = STR$(2 + ((((OLD - 1) - 65) \ 12) * 7) + CLEF) + "#"
IF OLD MOD 12 = 7 THEN NTT$ = STR$(3 + (((OLD - 67) \ 12) * 7) + CLEF)
IF OLD MOD 12 = 8 THEN NTT$ = STR$(3 + ((((OLD - 1) - 67) \ 12) * 7) + CLEF) + "#"
IF OLD MOD 12 = 9 THEN NTT$ = STR$(4 + (((OLD - 69) \ 12) * 7) + CLEF)
IF OLD MOD 12 = 10 THEN NTT$ = STR$(5 + ((((OLD + 1) - 71) \ 12) * 7) + CLEF) + "-"
IF OLD MOD 12 = 11 THEN NTT$ = STR$(5 + (((OLD - 71) \ 12) * 7) + CLEF)
IF VAL(NTT$) >= 0 THEN NTT$ = MID$(NTT$, 2)
END IF
IF OLD = 0 THEN NTT$ = "R"
IF NTT$ = "R" THEN J$ = " " ELSE J$ = "J "
RETURN
MENU1:
CLS
LOCATE 3, 20: PRINT "* DARMS - MUSIC NOTATION FILE-CONVERTOR *"
LOCATE 4, 20: PRINT "******************************************"
LOCATE 5, 20: PRINT "A binary-file to DARMS-code converter (V. 2.1)"
LOCATE 6, 60: PRINT "Geert Logghe & Godfried-Willem Raes 1991/1992"
LOCATE 10, 20: PRINT "Enter file-specs (full path) of binary file ... ":
LOCATE 11, 20: INPUT C$
RETURN
MENU2:
LOCATE 12, 5:
INPUT "Which part: Sop(1); Alt(2); Ten(3); Bas(4); etc... ? "; STEM
IF STEM = 0 THEN
V = V + 1: STEM = V
ELSE
V = STEM
END IF
IF V = 0 THEN V = 1
IF V > 8 THEN
LOCATE 12, 5: PRINT " Bad choice ... do it again ";: SLEEP 2
GOTO MENU2
END IF
LOCATE 13, 20
PRINT " Converting voice number "; V;
LOCATE 14, 5
INPUT "Type of clef: Sop(!G); Bas(!F); Tenor(!G-8); Alt(5!C); Tenor(7!C) ?", SLEUTEL$
IF SLEUTEL$ <> "" THEN CLEF$ = SLEUTEL$
IF CLEF$ = "" THEN
LOCATE 14, 5
PRINT " Bad Choice... do it again ";
SLEEP 2: GOTO MENU2
END IF
LOCATE 15, 20 : PRINT " Using the "; CLEF$; " clef.";
IF BAR$ = "" THEN
LOCATE 16, 5: PRINT "Type of time-signature:";
LOCATE 17, 10:
PRINT " 2:16 3:16 4:16 5:16 6:16 7:16 9:16 12:16";
LOCATE 18, 10:
PRINT " 2:8 3:8 4:8 5:8 6:8 7:8 9:8 12:8";
LOCATE 19, 10: PRINT " 2:4 3:4 4:4 5:4 6:4 7:4 27:32 ";
LOCATE 20, 10: PRINT " 2:2 11:8 13:8 5:2 ";
LOCATE 21, 10: INPUT BAR$
END IF
IF RITV = 0 THEN
LOCATE 22, 5: INPUT "Smallest rhythmic value (32, 16) ?"; RITV
END IF
IF RITV = 0 THEN RITV = 32: ' konstante voor GWR's fuga's
LOCATE 23, 10: INPUT "Destination path & file ?:"; XFILE$
GOSUB BLANK2
RETURN
BLANK1:
LOCATE 12, 1:PRINT ;
RETURN
BLANK2:
FOR I = 0 TO 14 :LOCATE 10 + I, 1 : PRINT ;: NEXT I
RETURN
Filedate: 900928
Terug naar inhoudstafel kursus: <Index Kursus> |
Naar homepage dr.Godfried-Willem RAES |