TextToOpenmptClipboard.sdlbas 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. finp$="bitpack.txt"
  2. nteb=0:octb=3:alnts=10
  3. scle$="X.X.XX.X.X.X"
  4. if argc>2 then:finp$=argv(2):end if
  5. 'if argc>3 then:nteb=val(argv(3)):end if
  6. 'if argc>4 then:octb=val(argv(4)):end if
  7. 'if argc>5 then:alnts=val(argv(5)):end if
  8. 'if argc>6 then:scle$=argv(6):end if
  9. stf=(octb*12)+nteb
  10. dim ffs[256]
  11. function nttfrqnte$(nte)
  12. e$= "C-1C#1D-1D#1E-1F-1F#1G-1G#1A-1A#1B-1"
  13. e$=e$+"C-2C#2D-2D#2E-2F-2F#2G-2G#2A-2A#2B-2"
  14. e$=e$+"C-3C#3D-3D#3E-3F-3F#3G-3G#3A-3A#3B-3"
  15. e$=e$+"C-4C#4D-4D#4E-4F-4F#4G-4G#4A-4A#4B-4"
  16. e$=e$+"C-5C#5D-5D#5E-5F-5F#5G-5G#5A-5A#5B-5"
  17. e$=e$+"C-6C#6D-6D#6E-6F-6F#6G-6G#6A-6A#6B-6"
  18. e$=e$+"C-7C#7D-7D#7E-7F-7F#7G-7G#7A-7A#7B-7"
  19. e$=e$+"B-7B-7B-7B-7B-7B-7B-7B-7B-7B-7B-7B-7"
  20. e$=e$+"B-7B-7B-7B-7B-7B-7B-7B-7B-7B-7B-7B-7..."
  21. tmq=nte-11
  22. if tmq<1 then:tmq=1:end if
  23. if tmq>97 then:tmq=97:end if
  24. return mid$(e$,(tmq*3)-2,3)
  25. end function
  26. cct=0:sct=0
  27. while sct<=31
  28. if mid$(scle$+"............",(cct mod 12)+1,1)<>"." then
  29. ffs[sct]=stf+cct:sct+=1
  30. end if
  31. cct+=1
  32. end while
  33. print "ModPlug Tracker XM"
  34. print "Orders: 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20"
  35. cntr=0
  36. i=0:odn1=0:odn2=0
  37. open finp$ for input as #1
  38. while eof(1)=0
  39. if cntr mod 64=0 then: print"Rows: 64":end if
  40. odn2=odn1:odn1=i:i=readbyte(1) mod alnts
  41. if rnd(50)<40 then:
  42. print "|"+nttfrqnte$(ffs[i])+"01......"
  43. cntr+=1
  44. else
  45. print "|"+nttfrqnte$(ffs[i])+"01......|"+nttfrqnte$(ffs[odn1])+"01......|"+nttfrqnte$(ffs[odn2])+"01......"
  46. cntr+=1
  47. end if
  48. if rnd(50)<25 then:
  49. print "|...........":
  50. cntr+=1
  51. end if
  52. end while
  53. close #1
  54. '----------------------------------------------
  55. '- "inspired" on langorhythm
  56. '----------------------------------------------
  57. '-church modes
  58. ' scle$="X.X.XX.X.X.X" '- ionian
  59. ' scle$="X.XX.X.X.XX." '- dorian
  60. ' scle$="XX.X.X.XX.X." '- phrygian
  61. ' scle$="X.X.X.XX.X.X" '- lydian
  62. ' scle$="X.X.XX.X.XX." '- mixolydian
  63. ' scle$="X.XX.X.XX.X." '- aeolian
  64. ' scle$="XX.X.XX.X.X." '- locrian
  65. '-------
  66. ' scle$="X.XX...XX..." '- Hirajoshi, Traditional Japanese '- c d d+ g g+
  67. ' scle$="XX..XX.XX..X" '- Double Harmonic, Persian, Byzantine, Gypsy '- c c+ e f g g+ b
  68. ' scle$="XX.XX.X.X.X." '- Super Locrian '- c c+ d+ e f+ g+ a+
  69. ' scle$="XX.X.X.XX..X" '- Neopolitan Minor '- c c+ d+ f g g+ b
  70. ' scle$="XX.X.X.X.X.X" '- Neopolitan Major '- c c+ d+ f g a b
  71. ' scle$="XX.XXX.XX.XX" '- Moorish Phrygian '- c c+ d+ e f g g+ a+ b
  72. ' scle$="X.X.X.X.X.XX" '- Leading Whole Tone '- c d e f+ g+ a+ b
  73. ' scle$="X.X.X.XXX.X." '- Lydian Minor '- c d e f+ g g+ a+
  74. ' scle$="XX...XX...X." '- Iwato - c c# f f# a# - https://www.chordsscales.com/scales/guitar/type/iwato
  75. ' scle$="X.X.X.X...X." '- Prometheus '- c d e f+ a+
  76. ' scle$="X.X..X.X.XX." '- Piongio '- c d f g a a+
  77. ' scle$="XX...X.X.X.." '- Scriabin '- c c+ f g a
  78. ' scle$="X.X..X.X..X." '- Egyptian, Madhyamavati '- c d f g a+
  79. ' scle$="X.XX...X.X.." '- Kumoi '- c d d+ g a
  80. ' scle$="X.XXX.XXXX.X" '- 9 Tone' c d d+ e f+ g g+ a b
  81. ' scle$="X.XX..XXX.X." '- Hungarian Gypsy '- c d d+ f+ g g+ a+
  82. ' scle$="X.XXX..XXX.." '- 3rd mode of Pantuvarali '- c d d+ e g g+ a
  83. ' scle$="XX.X.X.X.XX." '- Javaneese '- c c+ d+ f g a a+
  84. ' scle$="X.XX..XXX..X" '- Algerian '- c d d+ f+ g g+ b
  85. ' scle$="X..X..X..X.." '- Diminished (thirds) '- c d+ f+ a
  86. ' scle$="X..XX.XXXX.." '- Rasikapriya '- c d# e f# g g# a
  87. ' scle$="X..X.XXX..X." '- Blues '- c d+ f f+ g a+
  88. ' scle$="XX..XX..XX.." '- Six Tone Symmetrical '- c c+ e f g+ a
  89. ' scle$="XX.XX.X.XX.." '- Ultra Locrian '- c c+ d+ e f+ g+ a
  90. ' scle$="X.X.X.X.X.X." '- Whole Tone '- c d e f# g# a#
  91. ' scle$="XXXXXXXXXXXX" '- Chromatic '- c c+ d d+ e f f+ g g+ a a+ b
  92. ' scle$="X...XX.X...X" '- Okinawa '- c e f g b
  93. ' scle$="X.XX..XXX..X" '- Hungarian Minor '- c d d+ f+ g g+ b
  94. ' scle$="X.X.XXX.X.X." '- Locrian Major '- c d e f f+ g+ a+
  95. ' scle$="X.X.XX.XX.X." '- Acoustic, Hindustan, Charukesi '- c d e f g g+ a+
  96. ' scle$="X.X..X.X.X.." '- Ritusen '- c d f g a
  97. ' scle$="XX.XX.XX.XX." '- Auxiliary Diminished Blues, Diminished (half/whole) '- c c+ d+ e f+ g a a+
  98. ' scle$="X.XX.XX.XX.X" '- Arabian, Diminished (whole/half) '- c d d+ f f+ g+ a b
  99. ' scle$="XX..XX.XX.X." '- Phrygian Major, Jewish, Gypsy (variation) '- c c+ e f g g+ a+
  100. ' scle$="X.XX.X.XX.X." '- Ethiopian, Minor '- c d d+ f g g+ a+
  101. ' scle$="XX.XXXX.X.X." '- Spanish 8 Tone '- c c+ d+ e f f+ g+ a+
  102. ' scle$="X..X.XXX..XX" '- 7 Tone Blues '- c d+ f f+ g a+ b
  103. ' scle$="X.XX...X.X.X" '- Hawaiian '- c d d+ g a b
  104. ' scle$="X...X.XX...X" '- Chinese '- c e f+ g b
  105. ' scle$="XX..X.X.X.XX" '- Enigmatic '- c c+ e f+ g+ a+ b
  106. ' scle$="XX..X.XXX..X" '- Pantuvarali '- c c+ e f+ g g+ b
  107. ' scle$="XXX..X.XXX.X" '- Kanakangi '- c c+ d f g g+ a
  108. ' scle$="X.XX..XX.XX." '- Romanian Minor '- c d d+ f+ g a a+
  109. ' scle$="XX.X...XX..." '- Balenesian, Pelog '- c c+ d+ g g+
  110. ' scle$="X.X.X.XX.XX." '- Lydian Dominant, Overtone '- c d e f+ g a a+
  111. ' scle$="X.XX.X.XX..X" '- Harmonic Minor, Mohammedan '- c d d+ f g g+ b
  112. ' scle$="XX..XXX..XX." '- Oriental '- c c+ e f f+ a a+
  113. ' scle$="X..X.X.X..X." '- Minor Pentatonic '- c d+ f g a+
  114. ' scle$="X.X.X..X.X.." '- Major Pentatonic '- c d e g a
  115. ' scle$="XX..XX.X.X.X" '- Suryakantham '- c c+ e f g a b
  116. ' scle$="X.XXX..XX.X." '- 3rd mode of Suryakantham '- c d d+ e g g+ a+
  117. ' scle$="X.XX.X.X.X.X" '- Melodic Minor (ascending) '- c d d+ f g a b
  118. ' scle$="X.XX.X.XX.X." '- Melodic Minor (descending) '- c d d+ f g g+ a+
  119. ' scle$="X.XX.X.XXXXX" '- Melodic Minor (whole) '- c d d+ f g g+ a a+ b
  120. ' scle$="X..XXX.X..XX" '- Chalanata '- c d+ e f g a+ b
  121. ' scle$="X...X.X..X.X" '- Hindol '- c e f+ a b
  122. ' scle$="XX..X.X..X.X" '- Marva '- c c+ e f+ a b
  123. ' scle$="X.X...XX...X" '- Multani (ascending) '- c d f+ g b
  124. ' scle$="XX.X..XXX..X" '- Multani (descending) '- c c+ d+ f+ g g+ b
  125. ' scle$="XXXX..XXX..X" '- Multani (whole) '- c c+ d d+ f+ g g+ b
  126. ' scle$="XX.X..XXX..X" '- Todi '- c c+ d+ f+ g g+ b
  127. ' 0 1 2 3 4 5 6 7 8
  128. ' g g+ a a+ b c c+ d d+
  129. ' d d+ e f f+ g g+ a a+
  130. ' a a+ b c c+ d d+ e f
  131. ' 0 1 2 3 4 5 6 7 8
  132. ' e e f f+ g g+ a a+ b
  133. ' b c c+ d d+ e f f+ g
  134. ' g g+ a a+ b c c+ d d+
  135. ' d d+ e f f+ g g+ a a+
  136. ' a a+ b c c+ d d+ e f
  137. ' e f f+ g g+ a a+ b c
  138. ' scle$="X.X...XXX..." - 'c d f+ g g+ '- ?
  139. ' scle$="X...XX...X.X" - c e f a b '- ?