4k - Mini-Keyboard - Polyphon mit 128 Instrumenten

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    Unsere Datenschutzerklärung wurde aktualisiert. Mit der Nutzung unseres Forums akzeptierst Du unsere Datenschutzerklärung. Du bestätigst zudem, dass Du mindestens 16 Jahre alt bist.

    • 4k - Mini-Keyboard - Polyphon mit 128 Instrumenten

      Damit dieses Programm korrekt funktioniert, wird die neueste Version des Wettbewerbs-Interpreters oder die neueste FreeProfan-Version (32 oder 64 Bit) benötigt. Mit dem kommenden XProfan X2.1 klappt es natürlich auch:

      [Blockierte Grafik: http://s15.postimg.org/k7a6jh4p3/Screen_22_03_2013_20_Uhr_29_24_Sek.jpg]

      Quellcode

      1. Declare dr%,du%,dd%
      2. Declare t%[127],i%[12],pu%,pd%,iu%,id%,sk%
      3. Var okt%=3
      4. Var instr%=1
      5. i%[1]=0
      6. i%[2]=6
      7. i%[3]=14
      8. i%[4]=18
      9. i%[5]=19
      10. i%[6]=42
      11. i%[7]=43
      12. i%[8]=48
      13. i%[9]=56
      14. i%[10]=58
      15. i%[11]=62
      16. i%[12]=71
      17. Proc Tasten
      18. Parameters x%,y%,l%,t$,c%
      19. UseBrush 1,c%
      20. UsePen 0,1,0
      21. WhileLoop 1,len(t$)
      22. If substr$(t$,&loop)>" "
      23. Rectangle x%,y%-x%+50,y%+l%
      24. DrawText x%+20,y%+l%-30,substr$(t$,&loop)
      25. EndIf
      26. x%=x%+56
      27. EndWhile
      28. EndProc
      29. Proc TonEin
      30. Parameters Ton%
      31. IfNot t%[Ton%]
      32. If dr%
      33. Play 0;0;0;Ton%,0,0
      34. Else
      35. Play Ton%,0,0
      36. EndIf
      37. t%[Ton%]=1
      38. EndIf
      39. EndProc
      40. Proc TonAus
      41. Parameters Ton%
      42. CaseNot dr% : Play -Ton%,0,0
      43. t%[Ton%]=0
      44. EndProc
      45. Proc Testkey
      46. Parameters k%, t%
      47. If isKey(k%)
      48. TonEin(12*okt%+t%)
      49. Else
      50. TonAus(12*okt%+t%)
      51. EndIf
      52. EndProc
      53. Proc Instrument
      54. Parameters in%
      55. instr% = in%
      56. Display
      57. Play i%[instr%],-1,0
      58. EndProc
      59. Proc Display
      60. UseBrush 1,$FFFF00
      61. UsePen 0,1,0
      62. Rectangle 320,10-620,140
      63. TextColor 0,-1
      64. DrawText 330,15,"Oktave: " + Str$(okt%)
      65. DrawText 330,35,"Instrument F" + str$(instr%) + ": "+ Str$(i%[instr%])
      66. DrawText 330,55,"Drumpad-Modus: " + if(dr%=1,"EIN","AUS")
      67. EndProc
      68. WindowTitle "RGHs Mini-Keyboard V2"
      69. WindowStyle 16
      70. cls $3030
      71. TextColor $8080,-1
      72. Tasten(0,310,140,"<YXCVBNM,.-",$FFFFFF)
      73. Tasten(16,150,140,"QWERTZUIOPÜ",$FFFFFF)
      74. Tasten(28,310,100,"ASD GH KLÖ",$2020)
      75. Tasten(44,150,100,"23 567 90",$2020)
      76. DrawText 10,10,"ESC = Ende"
      77. DrawText 10,30,"Bild hoch / Bild runter = Oktave ändern"
      78. DrawText 10,50,"F1 - F12 = Instrument auswählen"
      79. DrawText 10,70,"Pos1 / Ende = aktuelles Instrument ändern"
      80. DrawText 10,90,"Einfg = Drumpad-Modus ein/aus"
      81. Display
      82. Play i%[instr%],-1,0
      83. SetTimer 10
      84. While 1
      85. Waitinput
      86. If getFocus(%hWnd)
      87. Case isKey(27) : Break
      88. TestKey(226,5)
      89. TestKey(ord("A"),6)
      90. TestKey(ord("Y"),7)
      91. TestKey(ord("S"),8)
      92. TestKey(ord("X"),9)
      93. TestKey(ord("D"),10)
      94. TestKey(ord("C"),11)
      95. TestKey(ord("V"),12)
      96. TestKey(ord("G"),13)
      97. TestKey(ord("B"),14)
      98. TestKey(ord("H"),15)
      99. TestKey(ord("N"),16)
      100. TestKey(ord("M"),17)
      101. TestKey(ord("K"),18)
      102. TestKey(188,19)
      103. TestKey(ord("L"),20)
      104. TestKey(190,21)
      105. TestKey(192,22)
      106. TestKey(189,23)
      107. TestKey(ord("Q"),24)
      108. TestKey(ord("2"),25)
      109. TestKey(ord("W"),26)
      110. TestKey(ord("3"),27)
      111. TestKey(ord("E"),28)
      112. TestKey(ord("R"),29)
      113. TestKey(ord("5"),30)
      114. TestKey(ord("T"),31)
      115. TestKey(ord("6"),32)
      116. TestKey(ord("Z"),33)
      117. TestKey(ord("7"),34)
      118. TestKey(ord("U"),35)
      119. TestKey(ord("I"),36)
      120. TestKey(ord("9"),37)
      121. TestKey(ord("O"),38)
      122. TestKey(ord("0"),39)
      123. TestKey(ord("P"),40)
      124. TestKey(186,41)
      125. Case isKey(112) : Instrument(1)
      126. Case isKey(113) : Instrument(2)
      127. Case isKey(114) : Instrument(3)
      128. Case isKey(115) : Instrument(4)
      129. Case isKey(116) : Instrument(5)
      130. Case isKey(117) : Instrument(6)
      131. Case isKey(118) : Instrument(7)
      132. Case isKey(119) : Instrument(8)
      133. Case isKey(120) : Instrument(9)
      134. Case isKey(121) : Instrument(10)
      135. Case isKey(122) : Instrument(11)
      136. Case isKey(123) : Instrument(12)
      137. If isKey(45) and (du% = 0)
      138. du% = 1
      139. dr% = 1 - dr%
      140. Display
      141. Else
      142. CaseNot Iskey(45) : du% = 0
      143. EndIf
      144. If isKey(33) and (pu% = 0)
      145. pu% = 1
      146. case okt% < 7 : inc okt%
      147. Display
      148. Else
      149. CaseNot Iskey(33) : pu% = 0
      150. EndIf
      151. If isKey(34) and (pd% = 0)
      152. pd% = 1
      153. Case okt% > 0 : dec okt%
      154. Display
      155. Else
      156. CaseNot Iskey(34) : pd% = 0
      157. EndIf
      158. If isKey(36) and (iu% = 0)
      159. iu% = 1
      160. case i%[instr%] < 127 : i%[instr%] = i%[instr%] + 1
      161. Instrument(instr%)
      162. Else
      163. CaseNot Iskey(36) : iu% = 0
      164. EndIf
      165. If isKey(35) and (id% = 0)
      166. id% = 1
      167. case i%[instr%] > 0 : i%[instr%] = i%[instr%] - 1
      168. Instrument(instr%)
      169. Else
      170. CaseNot Iskey(35) : id% = 0
      171. EndIf
      172. Endif
      173. EndWhile
      174. End
      Alles anzeigen


      Es sind noch Bytes bis zur 4k-Grenze übrig und Einiges läßt sich auch noch einsparen. Wenn ich Zeit finde, versuche ich noch, eine schlichte Rhythmusgruppe mit einigen gängigen Rhythmen einzubauen.

      Gruß
      Roland
      (Intel Duo E8400 3,0 GHz / 4 GB RAM / 250 GB HDD / ATI Radeon HD4770 512 MB / Windows Vista - ausgemustert zum Verkauf)
      AMD Athlon II X2 2,9 GHz / 8 GB RAM / 500 + 1000 GB HDD / ATI Radeon 3000 (onboard) / Windows 10(64) - XProfan X4


      http://www.xprofan.de
    • Klasse, Roland. Ganz mein Geschmack! :-)
      Besonders gut ist, dass bei gehaltener Taste der Ton weiter erklingt (je nach Instument eben) und bei losgelassener Taste der Ton recht schnell ausklingt. Das ist für Blasinstumente zumindest sehr realistisch. Ist die Sache, die mich z.B. an gleichartigen Handy-Apps immer tierisch nervt und dort kommt noch hinzu, dass helle Töne kürzer spielen als dunkle. Du hast das aber ausgezeichnet gelöst.

      Verbesserungsvorschläge von mir wären Töne per Mausklick auf die Klaviertasten, sowie ein grafisches Reagieren der Tasten (gedrückt oder nicht) und dann noch eine richtige Anzeige des verwendeten Instuments: "Oboe" z.B.
      Gruß, Frank
    • Frabbing;965390 schrieb:

      Verbesserungsvorschläge von mir wären Töne per Mausklick auf die Klaviertasten, sowie ein grafisches Reagieren der Tasten (gedrückt oder nicht) und dann noch eine richtige Anzeige des verwendeten Instuments: "Oboe" z.B.


      Das wird in 4k aber schwierig! ;-) Mal schauen, was ich noch unterbringe. Aber mit Akkorden ist es dann aus mit der Maus. Interessanter wäre fast Touchscreen-Bedienung (Win 8) zu unterstützen, nur habe ich noch keinerlei Infos, wie man mehrere gleichzeitige Berührungen ermittelt.

      Gruß
      Roland
      (Intel Duo E8400 3,0 GHz / 4 GB RAM / 250 GB HDD / ATI Radeon HD4770 512 MB / Windows Vista - ausgemustert zum Verkauf)
      AMD Athlon II X2 2,9 GHz / 8 GB RAM / 500 + 1000 GB HDD / ATI Radeon 3000 (onboard) / Windows 10(64) - XProfan X4


      http://www.xprofan.de
    • Meinen Spielebeitrag hatte ich von 6500 Bytes runtergequetscht. Kurze Variablennamen, keine Leerzeilen, mögliche Leerzeichen entfernen, mehrere Zeilen in einer Zeile usw. Da ist noch einiges drin. :-)
      Du kannst ja durchaus den originalen (des besseren Verständnisses wegen) und den gekürzten Beitrag posten.
      Gruß, Frank
    • Hier mal eine Anregung für die Einsparung etlicher Bytes:


      Quellcode

      1. Var Tasten$ = "AYSXDCVGBHNHK"
      2. WhileLoop 6,18,1
      3. TestKey(ord(SubStr$(Tasten$,(&Loop))),&Loop)
      4. Wend
      5. 'noch besser geht es wahrscheinlich mit einem Array, in das man einmalig die Ord-Zahlen auf die gleiche Weise eingibt
      6. WhileLoop 112,123,1
      7. Case isKey(&Loop) : Instrument(&Loop - 111)
      8. Wend
      Anhören lohnt sich wuestensand.info
    • Da alle Bytespartricks weder ausreichten, die Instrumente mit Namen zu versehen, noch eine sinnvolle Rhythmus-Begleitung einzubauen, habe ich das Keyboard lediglich um die Möglichkeit erweitert, durch Drücken der "Einfg"-Taste in ein Drumpad verwandelt zu werden. Hier machen die Oktaven 2 bis 4 Sinn, um die verschiedenen Schlagzeug- und Percussion-Sounds zu spielen.
      Auch sehr lustig: Das Keyboard im Drumpad-Modus laufen zu lassen und dann in einem anderen Programm einen Text schreiben. ;-)

      Quellcode

      1. Declare dr%,du%,dd%
      2. Declare t%[127],i%[12],pu%,pd%,iu%,id%,sk%
      3. Var okt%=3
      4. Var instr%=1
      5. i%[1]=0
      6. i%[2]=6
      7. i%[3]=14
      8. i%[4]=18
      9. i%[5]=19
      10. i%[6]=42
      11. i%[7]=43
      12. i%[8]=48
      13. i%[9]=56
      14. i%[10]=58
      15. i%[11]=62
      16. i%[12]=71
      17. Proc Tasten
      18. Parameters x%,y%,l%,t$,c%
      19. UseBrush 1,c%
      20. UsePen 0,1,0
      21. WhileLoop 1,len(t$)
      22. If substr$(t$,&loop)>" "
      23. Rectangle x%,y%-x%+50,y%+l%
      24. DrawText x%+20,y%+l%-30,substr$(t$,&loop)
      25. EndIf
      26. x%=x%+56
      27. EndWhile
      28. EndProc
      29. Proc TonEin
      30. Parameters Ton%
      31. IfNot t%[Ton%]
      32. If dr%
      33. Play 0;0;0;Ton%,0,0
      34. Else
      35. Play Ton%,0,0
      36. EndIf
      37. t%[Ton%]=1
      38. EndIf
      39. EndProc
      40. Proc TonAus
      41. Parameters Ton%
      42. CaseNot dr% : Play -Ton%,0,0
      43. t%[Ton%]=0
      44. EndProc
      45. Proc Testkey
      46. Parameters k%, t%
      47. If isKey(k%)
      48. TonEin(12*okt%+t%)
      49. Else
      50. TonAus(12*okt%+t%)
      51. EndIf
      52. EndProc
      53. Proc Instrument
      54. Parameters in%
      55. instr% = in%
      56. Display
      57. Play i%[instr%],-1,0
      58. EndProc
      59. Proc Display
      60. UseBrush 1,$FFFF00
      61. UsePen 0,1,0
      62. Rectangle 320,10-620,140
      63. TextColor 0,-1
      64. DrawText 330,15,"Oktave: " + Str$(okt%)
      65. DrawText 330,35,"Instrument F" + str$(instr%) + ": "+ Str$(i%[instr%])
      66. DrawText 330,55,"Drumpad-Modus: " + if(dr%=1,"EIN","AUS")
      67. EndProc
      68. WindowTitle "RGHs Mini-Keyboard V2"
      69. WindowStyle 16
      70. cls $3030
      71. TextColor $8080,-1
      72. Tasten(0,310,140,"<YXCVBNM,.-",$FFFFFF)
      73. Tasten(16,150,140,"QWERTZUIOPÜ",$FFFFFF)
      74. Tasten(28,310,100,"ASD GH KLÖ",$2020)
      75. Tasten(44,150,100,"23 567 90",$2020)
      76. DrawText 10,10,"ESC = Ende"
      77. DrawText 10,30,"Bild hoch / Bild runter = Oktave ändern"
      78. DrawText 10,50,"F1 - F12 = Instrument auswählen"
      79. DrawText 10,70,"Pos1 / Ende = aktuelles Instrument ändern"
      80. DrawText 10,90,"Einfg = Drumpad-Modus ein/aus"
      81. Display
      82. Play i%[instr%],-1,0
      83. SetTimer 10
      84. While 1
      85. Waitinput
      86. Case isKey(27) : Break
      87. TestKey(226,5)
      88. TestKey(ord("A"),6)
      89. TestKey(ord("Y"),7)
      90. TestKey(ord("S"),8)
      91. TestKey(ord("X"),9)
      92. TestKey(ord("D"),10)
      93. TestKey(ord("C"),11)
      94. TestKey(ord("V"),12)
      95. TestKey(ord("G"),13)
      96. TestKey(ord("B"),14)
      97. TestKey(ord("H"),15)
      98. TestKey(ord("N"),16)
      99. TestKey(ord("M"),17)
      100. TestKey(ord("K"),18)
      101. TestKey(188,19)
      102. TestKey(ord("L"),20)
      103. TestKey(190,21)
      104. TestKey(192,22)
      105. TestKey(189,23)
      106. TestKey(ord("Q"),24)
      107. TestKey(ord("2"),25)
      108. TestKey(ord("W"),26)
      109. TestKey(ord("3"),27)
      110. TestKey(ord("E"),28)
      111. TestKey(ord("R"),29)
      112. TestKey(ord("5"),30)
      113. TestKey(ord("T"),31)
      114. TestKey(ord("6"),32)
      115. TestKey(ord("Z"),33)
      116. TestKey(ord("7"),34)
      117. TestKey(ord("U"),35)
      118. TestKey(ord("I"),36)
      119. TestKey(ord("9"),37)
      120. TestKey(ord("O"),38)
      121. TestKey(ord("0"),39)
      122. TestKey(ord("P"),40)
      123. TestKey(186,41)
      124. Case isKey(112) : Instrument(1)
      125. Case isKey(113) : Instrument(2)
      126. Case isKey(114) : Instrument(3)
      127. Case isKey(115) : Instrument(4)
      128. Case isKey(116) : Instrument(5)
      129. Case isKey(117) : Instrument(6)
      130. Case isKey(118) : Instrument(7)
      131. Case isKey(119) : Instrument(8)
      132. Case isKey(120) : Instrument(9)
      133. Case isKey(121) : Instrument(10)
      134. Case isKey(122) : Instrument(11)
      135. Case isKey(123) : Instrument(12)
      136. If isKey(45) and (du% = 0)
      137. du% = 1
      138. dr% = 1 - dr%
      139. Display
      140. Else
      141. CaseNot Iskey(45) : du% = 0
      142. EndIf
      143. If isKey(33) and (pu% = 0)
      144. pu% = 1
      145. case okt% < 7 : inc okt%
      146. Display
      147. Else
      148. CaseNot Iskey(33) : pu% = 0
      149. EndIf
      150. If isKey(34) and (pd% = 0)
      151. pd% = 1
      152. Case okt% > 0 : dec okt%
      153. Display
      154. Else
      155. CaseNot Iskey(34) : pd% = 0
      156. EndIf
      157. If isKey(36) and (iu% = 0)
      158. iu% = 1
      159. case i%[instr%] < 127 : i%[instr%] = i%[instr%] + 1
      160. Instrument(instr%)
      161. Else
      162. CaseNot Iskey(36) : iu% = 0
      163. EndIf
      164. If isKey(35) and (id% = 0)
      165. id% = 1
      166. case i%[instr%] > 0 : i%[instr%] = i%[instr%] - 1
      167. Instrument(instr%)
      168. Else
      169. CaseNot Iskey(35) : id% = 0
      170. EndIf
      171. EndWhile
      172. End
      Alles anzeigen
      Gruß
      Roland
      (Intel Duo E8400 3,0 GHz / 4 GB RAM / 250 GB HDD / ATI Radeon HD4770 512 MB / Windows Vista - ausgemustert zum Verkauf)
      AMD Athlon II X2 2,9 GHz / 8 GB RAM / 500 + 1000 GB HDD / ATI Radeon 3000 (onboard) / Windows 10(64) - XProfan X4


      http://www.xprofan.de
    • Ach ja, wenn man obigen Effekt nicht wünscht, kann man mit der Abfrage getFocus(%hWnd) sicher stellen, dass die Tastatur nur abgefragt wird, wenn die Keyboard-App den Focus hat:

      Quellcode

      1. Declare dr%,du%,dd%
      2. Declare t%[127],i%[12],pu%,pd%,iu%,id%,sk%
      3. Var okt%=3
      4. Var instr%=1
      5. i%[1]=0
      6. i%[2]=6
      7. i%[3]=14
      8. i%[4]=18
      9. i%[5]=19
      10. i%[6]=42
      11. i%[7]=43
      12. i%[8]=48
      13. i%[9]=56
      14. i%[10]=58
      15. i%[11]=62
      16. i%[12]=71
      17. Proc Tasten
      18. Parameters x%,y%,l%,t$,c%
      19. UseBrush 1,c%
      20. UsePen 0,1,0
      21. WhileLoop 1,len(t$)
      22. If substr$(t$,&loop)>" "
      23. Rectangle x%,y%-x%+50,y%+l%
      24. DrawText x%+20,y%+l%-30,substr$(t$,&loop)
      25. EndIf
      26. x%=x%+56
      27. EndWhile
      28. EndProc
      29. Proc TonEin
      30. Parameters Ton%
      31. IfNot t%[Ton%]
      32. If dr%
      33. Play 0;0;0;Ton%,0,0
      34. Else
      35. Play Ton%,0,0
      36. EndIf
      37. t%[Ton%]=1
      38. EndIf
      39. EndProc
      40. Proc TonAus
      41. Parameters Ton%
      42. CaseNot dr% : Play -Ton%,0,0
      43. t%[Ton%]=0
      44. EndProc
      45. Proc Testkey
      46. Parameters k%, t%
      47. If isKey(k%)
      48. TonEin(12*okt%+t%)
      49. Else
      50. TonAus(12*okt%+t%)
      51. EndIf
      52. EndProc
      53. Proc Instrument
      54. Parameters in%
      55. instr% = in%
      56. Display
      57. Play i%[instr%],-1,0
      58. EndProc
      59. Proc Display
      60. UseBrush 1,$FFFF00
      61. UsePen 0,1,0
      62. Rectangle 320,10-620,140
      63. TextColor 0,-1
      64. DrawText 330,15,"Oktave: " + Str$(okt%)
      65. DrawText 330,35,"Instrument F" + str$(instr%) + ": "+ Str$(i%[instr%])
      66. DrawText 330,55,"Drumpad-Modus: " + if(dr%=1,"EIN","AUS")
      67. EndProc
      68. WindowTitle "RGHs Mini-Keyboard V2"
      69. WindowStyle 16
      70. cls $3030
      71. TextColor $8080,-1
      72. Tasten(0,310,140,"<YXCVBNM,.-",$FFFFFF)
      73. Tasten(16,150,140,"QWERTZUIOPÜ",$FFFFFF)
      74. Tasten(28,310,100,"ASD GH KLÖ",$2020)
      75. Tasten(44,150,100,"23 567 90",$2020)
      76. DrawText 10,10,"ESC = Ende"
      77. DrawText 10,30,"Bild hoch / Bild runter = Oktave ändern"
      78. DrawText 10,50,"F1 - F12 = Instrument auswählen"
      79. DrawText 10,70,"Pos1 / Ende = aktuelles Instrument ändern"
      80. DrawText 10,90,"Einfg = Drumpad-Modus ein/aus"
      81. Display
      82. Play i%[instr%],-1,0
      83. SetTimer 10
      84. While 1
      85. Waitinput
      86. If getFocus(%hWnd)
      87. Case isKey(27) : Break
      88. TestKey(226,5)
      89. TestKey(ord("A"),6)
      90. TestKey(ord("Y"),7)
      91. TestKey(ord("S"),8)
      92. TestKey(ord("X"),9)
      93. TestKey(ord("D"),10)
      94. TestKey(ord("C"),11)
      95. TestKey(ord("V"),12)
      96. TestKey(ord("G"),13)
      97. TestKey(ord("B"),14)
      98. TestKey(ord("H"),15)
      99. TestKey(ord("N"),16)
      100. TestKey(ord("M"),17)
      101. TestKey(ord("K"),18)
      102. TestKey(188,19)
      103. TestKey(ord("L"),20)
      104. TestKey(190,21)
      105. TestKey(192,22)
      106. TestKey(189,23)
      107. TestKey(ord("Q"),24)
      108. TestKey(ord("2"),25)
      109. TestKey(ord("W"),26)
      110. TestKey(ord("3"),27)
      111. TestKey(ord("E"),28)
      112. TestKey(ord("R"),29)
      113. TestKey(ord("5"),30)
      114. TestKey(ord("T"),31)
      115. TestKey(ord("6"),32)
      116. TestKey(ord("Z"),33)
      117. TestKey(ord("7"),34)
      118. TestKey(ord("U"),35)
      119. TestKey(ord("I"),36)
      120. TestKey(ord("9"),37)
      121. TestKey(ord("O"),38)
      122. TestKey(ord("0"),39)
      123. TestKey(ord("P"),40)
      124. TestKey(186,41)
      125. Case isKey(112) : Instrument(1)
      126. Case isKey(113) : Instrument(2)
      127. Case isKey(114) : Instrument(3)
      128. Case isKey(115) : Instrument(4)
      129. Case isKey(116) : Instrument(5)
      130. Case isKey(117) : Instrument(6)
      131. Case isKey(118) : Instrument(7)
      132. Case isKey(119) : Instrument(8)
      133. Case isKey(120) : Instrument(9)
      134. Case isKey(121) : Instrument(10)
      135. Case isKey(122) : Instrument(11)
      136. Case isKey(123) : Instrument(12)
      137. If isKey(45) and (du% = 0)
      138. du% = 1
      139. dr% = 1 - dr%
      140. Display
      141. Else
      142. CaseNot Iskey(45) : du% = 0
      143. EndIf
      144. If isKey(33) and (pu% = 0)
      145. pu% = 1
      146. case okt% < 7 : inc okt%
      147. Display
      148. Else
      149. CaseNot Iskey(33) : pu% = 0
      150. EndIf
      151. If isKey(34) and (pd% = 0)
      152. pd% = 1
      153. Case okt% > 0 : dec okt%
      154. Display
      155. Else
      156. CaseNot Iskey(34) : pd% = 0
      157. EndIf
      158. If isKey(36) and (iu% = 0)
      159. iu% = 1
      160. case i%[instr%] < 127 : i%[instr%] = i%[instr%] + 1
      161. Instrument(instr%)
      162. Else
      163. CaseNot Iskey(36) : iu% = 0
      164. EndIf
      165. If isKey(35) and (id% = 0)
      166. id% = 1
      167. case i%[instr%] > 0 : i%[instr%] = i%[instr%] - 1
      168. Instrument(instr%)
      169. Else
      170. CaseNot Iskey(35) : id% = 0
      171. EndIf
      172. Endif
      173. EndWhile
      174. End
      Alles anzeigen


      Gruß
      Roland
      (Intel Duo E8400 3,0 GHz / 4 GB RAM / 250 GB HDD / ATI Radeon HD4770 512 MB / Windows Vista - ausgemustert zum Verkauf)
      AMD Athlon II X2 2,9 GHz / 8 GB RAM / 500 + 1000 GB HDD / ATI Radeon 3000 (onboard) / Windows 10(64) - XProfan X4


      http://www.xprofan.de