home *** CD-ROM | disk | FTP | other *** search
/ Large Pack of OldSkool DOS MOD Trackers / gth003b.zip / TRACKER.BAS < prev   
BASIC Source File  |  1999-02-18  |  5KB  |  119 lines

  1. DIM nuotit(12)
  2. DIM RUUTU(20)
  3. DIM PITUUDET(20)
  4. pituus = 1
  5. FOR n = 1 TO 12
  6.         nuotit(n) = n * 100
  7. NEXT n
  8. CLS
  9. paikka = 1
  10. FOR n = 1 TO 20
  11. LOCATE 3 + n, 1: PRINT HEX$(n)
  12. NEXT n
  13. COLOR 15, 1
  14. xx$ = " groovetrackah v0.03beta [kodename tero0x12f] (c)1999 lObStAh/mEGAkYRbAs! (mG!)"
  15. xx$ = xx$ + STRING$(80 - LEN(xx$), " ")
  16. LOCATE 1, 1: PRINT xx$
  17.  
  18. GOTO 33
  19.  
  20. 11
  21. LOCATE 2, 1: INPUT "ENTER FILENAME: ", AA$
  22. OPEN AA$ FOR OUTPUT AS #1
  23. FOR NN = 1 TO 20
  24. PRINT #1, RUUTU(NN)
  25. PRINT #1, PITUUDET(NN)
  26. NEXT NN
  27. CLOSE
  28. LOCATE 2, 1: PRINT "                              "
  29. GOTO 55
  30. 22
  31. LOCATE 2, 1: INPUT "ENTER FILENAME: ", AA$
  32. OPEN AA$ FOR INPUT AS #1
  33. FOR NN = 1 TO 20
  34. INPUT #1, RUUTU(NN)
  35. INPUT #1, PITUUDET(NN)
  36. NEXT NN
  37. CLOSE
  38. LOCATE 2, 1: PRINT "                              "
  39. GOTO 55
  40.  
  41. 33
  42.  
  43. DO
  44. 55 :
  45.         COLOR 7, 0
  46.         LOCATE 3, 4: PRINT "Current tempo: "; pituus
  47.         A$ = UCASE$(INKEY$)
  48.         IF A$ = "1" THEN GOTO 11
  49.         IF A$ = "2" THEN GOTO 22
  50.         IF A$ = "R" THEN
  51.                 FOR n = 1 TO 20
  52.                         RUUTU(n) = INT(RND * 12) + 1
  53.                 NEXT n
  54.         END IF
  55.        
  56.         IF RIGHT$(A$, 1) = "S" THEN RUUTU(paikka) = 0: IF paikka < 20 THEN paikka = paikka + 1
  57.         IF RIGHT$(A$, 1) = "P" THEN IF paikka < 20 THEN paikka = paikka + 1
  58.         IF RIGHT$(A$, 1) = "H" THEN IF paikka > 1 THEN paikka = paikka - 1
  59.        
  60.         IF A$ = CHR$(13) THEN
  61.                 DO
  62.                 FOR n = 1 TO 20
  63.                         COLOR 7, 0
  64.                         LOCATE 2 + n, 15: PRINT "  "
  65.                         LOCATE 3 + 20, 15: PRINT "  "
  66.                         LOCATE 3 + n, 15: PRINT "<-"
  67.                         IF RUUTU(n) = 0 THEN
  68.                         FOR NN = 1 TO 9000
  69.                         NEXT NN
  70.                         END IF
  71.                        
  72.                         SOUND nuotit(RUUTU(n)), PITUUDET(n)
  73.                        
  74.                         FOR NN = 1 TO 8000
  75.                         NEXT NN
  76.                 NEXT n
  77.                 LOOP UNTIL INKEY$ = CHR$(13)
  78.         END IF
  79.         
  80.         FOR n = 1 TO 20
  81.                 jeps = 0
  82.                 IF RUUTU(n) = 1 THEN nuatti$ = "C-3": jeps = 1
  83.                 IF RUUTU(n) = 2 THEN nuatti$ = "C#3": jeps = 1
  84.                 IF RUUTU(n) = 3 THEN nuatti$ = "D-3": jeps = 1
  85.                 IF RUUTU(n) = 4 THEN nuatti$ = "D#3": jeps = 1
  86.                 IF RUUTU(n) = 5 THEN nuatti$ = "E-3": jeps = 1
  87.                 IF RUUTU(n) = 6 THEN nuatti$ = "F-3": jeps = 1
  88.                 IF RUUTU(n) = 7 THEN nuatti$ = "F#3": jeps = 1
  89.                 IF RUUTU(n) = 8 THEN nuatti$ = "G-3": jeps = 1
  90.                 IF RUUTU(n) = 9 THEN nuatti$ = "G#3": jeps = 1
  91.                 IF RUUTU(n) = 10 THEN nuatti$ = "A-3": jeps = 1
  92.                 IF RUUTU(n) = 11 THEN nuatti$ = "A#3": jeps = 1
  93.                 IF RUUTU(n) = 12 THEN nuatti$ = "B-3": jeps = 1
  94.                 IF jeps = 0 THEN nuatti$ = "---"
  95.                 COLOR 15, 1
  96.                 IF PITUUDET(n) < 10 THEN nakkix$ = "0" + RIGHT$(STR$(PITUUDET(n)), 1) ELSE
  97.                 IF PITUUDET(n) = 10 THEN nakkix$ = STR$(PITUUDET(n))
  98.                 IF paikka = n THEN COLOR 14, 2
  99.                 LOCATE 3 + n, 4: PRINT " " + nuatti$ + "  "
  100.                 IF PITUUDET(n) < 10 THEN LOCATE 3 + n, 10: PRINT " " + nakkix$ + " " ELSE LOCATE 3 + n, 9: PRINT " " + nakkix$ + " "
  101.         NEXT n
  102.         IF A$ = "+" THEN IF pituus < 10 THEN pituus = pituus + 1
  103.         IF A$ = "-" THEN IF pituus > 1 THEN pituus = pituus - 1
  104.         IF A$ = "<" THEN RUUTU(paikka) = 1: PITUUDET(paikka) = pituus: SOUND nuotit(1), pituus: paikka = paikka + 1: IF paikka > 20 THEN paikka = 1
  105.         IF A$ = "Z" THEN RUUTU(paikka) = 2: PITUUDET(paikka) = pituus: SOUND nuotit(2), pituus: paikka = paikka + 1: IF paikka > 20 THEN paikka = 1
  106.         IF A$ = "X" THEN RUUTU(paikka) = 3: PITUUDET(paikka) = pituus: SOUND nuotit(3), pituus: paikka = paikka + 1: IF paikka > 20 THEN paikka = 1
  107.         IF A$ = "C" THEN RUUTU(paikka) = 4: PITUUDET(paikka) = pituus: SOUND nuotit(4), pituus: paikka = paikka + 1: IF paikka > 20 THEN paikka = 1
  108.         IF A$ = "V" THEN RUUTU(paikka) = 5: PITUUDET(paikka) = pituus: SOUND nuotit(5), pituus: paikka = paikka + 1: IF paikka > 20 THEN paikka = 1
  109.         IF A$ = "B" THEN RUUTU(paikka) = 6: PITUUDET(paikka) = pituus: SOUND nuotit(6), pituus: paikka = paikka + 1: IF paikka > 20 THEN paikka = 1
  110.         IF A$ = "N" THEN RUUTU(paikka) = 7: PITUUDET(paikka) = pituus: SOUND nuotit(7), pituus: paikka = paikka + 1: IF paikka > 20 THEN paikka = 1
  111.         IF A$ = "M" THEN RUUTU(paikka) = 8: PITUUDET(paikka) = pituus: SOUND nuotit(8), pituus: paikka = paikka + 1: IF paikka > 20 THEN paikka = 1
  112.         IF A$ = "," THEN RUUTU(paikka) = 9: PITUUDET(paikka) = pituus: SOUND nuotit(9), pituus: paikka = paikka + 1: IF paikka > 20 THEN paikka = 1
  113.         IF A$ = "." THEN RUUTU(paikka) = 10: PITUUDET(paikka) = pituus: SOUND nuotit(10), pituus: paikka = paikka + 1: IF paikka > 20 THEN paikka = 1
  114.         IF A$ = "-" THEN RUUTU(paikka) = 11: PITUUDET(paikka) = pituus: SOUND nuotit(11), pituus: paikka = paikka + 1: IF paikka > 20 THEN paikka = 1
  115.         IF A$ = "'" THEN RUUTU(paikka) = 12: PITUUDET(paikka) = pituus: SOUND nuotit(12), pituus: paikka = paikka + 1: IF paikka > 20 THEN paikka = 1
  116. LOOP
  117.  
  118.  
  119.