2012年4月4日投稿 / 投稿者 : いったん / タグ : 投稿プログラム 電子楽器 音楽 ツール QRコード mkII専用
MML音源を鍵盤で演奏・録音・再生できるプログラムです。 MMLに変換することはできません。
プチコンmkII 向けの QR コードです。
- ’ケンハ゛ン エンソウソフト by ittan
- ’(real keyboard V1.2)
- VISIBLE 1,1,0,0,1,1
- ACLS:CLEAR
- SYSBEEP=FALSE
- GPAGE 0:GCLS 10
- GPAGE 1:GCLS 10
- SPPAGE 0:SPCLR
- SPPAGE 1:SPCLR
- PNLTYPE”OFF”
- ’ホ゛タンサクセイ
- RESTORE @BTDATA
- FOR I=0 TO 2
- FOR J=0 TO 3
- C$=””
- FOR K=0 TO 3
- READ A$
- C$=C$+A$
- NEXT K
- CHRSET”SPS0”,I*4+J,C$
- NEXT J
- NEXT I
- FOR I=0 TO 2
- SPSET I+1,I,0,0,0,0
- SPOFS I+1,240,I*20
- GFILL 239,I*20+1,253,I*20+13,244+I
- NEXT
- SPSET 0,12,0,0,0,0
- SPSCALE 0,40
- SPOFS 0,−16,0
- L=16
- ’ケンハ゛ンサクセイ
- GLINE 0,95,224,95,14
- FOR G=0 TO 96 STEP 96
- FOR I=0 TO 13:L1=(I+1)*L
- GLINE L1,G,L1,96+G,14
- GPAINT L1−1,G,15:A=0
- S=I%7
- IF S<=1 THEN A=1
- IF S>=3 AND S!=6 THEN A=1
- IF A==0 THEN @SKIP
- L2=I*L+L−6
- GFILL L2,G,L2+L−4,55+G,31
- @SKIP
- NEXT I
- NEXT G
- GFILL 225,0,240,94,30
- ’オンカイサクセイ
- @O
- DATA 0,2,4,5,7,9,11
- DATA 1,3,6,8,10
- RESTORE @O
- DIM MNOTE(7),MNOTE2(5)
- FOR I=0 TO 6
- READ MNOTE(I)
- NEXT
- FOR I=0 TO 4
- READ MNOTE2(I)
- NEXT
- ’キソセッテイ
- MN=0 ’オンテイ
- MO=48 ’オンショク
- MV=100 ’ホ゛リュ−ム
- MP=65 ’ハ゜ンホ゛ット
- ’Music player サクセイ
- DIM M$(50)
- MI=0 ’ファイルスウ
- O=−1
- ’0―48 MN
- ’49―118 MO
- ’119―143 MV
- ’144―168 MP
- ’169 キュウフ
- ’170 ノハ゛シ
- ’179―255 ナカ゛サ(コンマ)
- T2=3 ’コンマスウ(3スイショウ)
- @TYTL
- TYTL=0
- LOCATE 0,0
- ?”┌─────────────────┐”
- ?”│Real keybord v1.2│”
- ?”└─────────────────┘”
- @LOOP ケンハ゛ンモ−ト゛
- IF TYTL==1 THEN GOTO@TYTL
- LOCATE 0,3
- ?”АБ :TONE:”MO” ”
- ?”↑↓ :VOL.:”MV” ”
- ?”←→ :PAN.:”MP” ”
- ?”Ф :ヘ゜タ゛ル
- BT=NOT(OB) AND BUTTON()
- OB=BUTTON()
- IF BT THEN GOSUB@BT
- IF TCHST==0 THEN GOSUB@STOPBG
- IF U THEN GOTO@LOOP
- IF TCHST THEN GOSUB@PLAY
- GOTO@LOOP
- END
- @STOPBG
- U=0
- IF BUTTON() AND 64 THEN RETURN
- BGMSTOP
- RETURN
- @BT ホ゛タンチェック
- IF BT==1 THEN MV=MV+5
- IF BT==2 THEN MV=MV−5
- IF BT==4 THEN MP=MP−5
- IF BT==8 THEN MP=MP+5
- IF BT==16 THEN MO=MO+1
- IF BT==32 THEN MO=MO−1
- IF MV>125 THEN MV=125
- IF MV<0 THEN MV=0
- IF MP>125 THEN MP=125
- IF MP<0 THEN MP=0
- IF MO>128 THEN MO=0
- IF MO<0 THEN MO=128
- RETURN
- @PLAY オトヲナラス
- U=1:X=TCHX:Y=TCHY
- C=GSPOIT(X,Y)
- IF C==10 OR C==14 THEN RETURN
- IF C>240 THEN @P
- IF C==30 THEN C=47
- C=((C+1)/16)−1
- ON C GOSUB @WH,@BR
- IF C>1 THEN M0=48:SX=230:SY=84
- MN=(M0−24)*(4096/12)
- SPOFS 0,SX−2,SY
- A$=”V”+STR$(MV)+”P”+STR$(MP)+”L1@”+STR$(MO)+”N”+STR$(M0+48)
- BGMPLAY A$
- GOSUB @P0
- RETURN
- @WH
- M0=FLOOR(X/L)
- M0=M0+(1−FLOOR(Y/96))*14
- M0=FLOOR(M0/7)*12+MNOTE(M0%7)
- X=FLOOR(X/L)
- Y=FLOOR(Y/96)
- SX=X*16+6
- SY=84+Y*96
- RETURN
- @BR
- M2=0
- M1=FLOOR((X−8)/L)
- IF M1%7>2 THEN M2=1
- M3=FLOOR(M1/7)
- M4=10−FLOOR(Y/96)*10
- M1=M1−M3*2−M2+M4
- M0=MNOTE2(M1%5)
- M0=M0+FLOOR(M1/5)*12
- X=FLOOR((X−8)/L)
- Y=FLOOR(Y/96)
- SX=X*16+14
- SY=46+Y*96
- RETURN
- @P
- P=C
- IF P>=249 THEN P=249
- IF P==247 THEN M0=169
- ON P−244 GOSUB @PFILE,@PSTOP,@PREC
- RETURN
- @PFILE
- CLS
- TYTL=1
- LOCATE 0,0
- ?”―FILEMENU―”
- ?”L:musicロ−ト゛
- ?”S:musicセ−フ゛
- ?”P:musicフ゜レイ
- ?”N:シンキサクセイ
- ?”Q:ファイルメニュ−オワリ
- ?”E:ツ−ルオワリ
- INPUT FM$
- IF FM$==”L” THEN GOSUB @PFL
- IF FM$==”S” THEN GOSUB @PFS
- IF FM$==”P” THEN GOSUB @PFP
- IF FM$==”N” THEN GOSUB @PFN
- IF FM$==”Q” THEN CLS:RETURN
- IF FM$==”E” THEN GOTO @PFE
- GOTO@PFILE
- @PFL
- MEM$=””
- INPUT”ロ−ト゛スルナマエハ”;FM$
- FOR I=0 TO 99
- F$=”MEM:”+FM$+STR$(I)
- LOAD F$
- M$(I)=MEM$
- MXI=I
- IF RESULT==FALSE THEN I=100
- NEXT
- MI=MXI
- RETURN
- @PFS
- INPUT”セ−フ゛スルナマエハ”;FM$
- FOR I=0 TO MI
- MEM$=M$(MI)
- F$=”MEM:”+FM$+STR$(I)
- SAVE F$
- NEXT
- RETURN
- @PFN
- FOR I=0 TO MI
- M$(I)=””
- NEXT
- MI=0
- ?”テ゛−タカ゛ ショウキョサレマシタ。”
- WAIT 120
- RETURN
- @PFP
- ?”エンソウチュウ...”
- MXI=MI
- GOSUB @MPLAY
- ?”エンソウシュウリョウ”
- WAIT 120
- RETURN
- @PFE
- ACLS
- CLEAR
- ?”オツカレ―”
- END
- @PSTOP
- REC=0
- SPCHR 3,2,0,0,0,0
- LOCATE 0,CSRY
- ?” ”
- RETURN
- @PREC
- SPCHR 3,2,7,0,0,0
- REC=1:T0=MAINCNTL
- OP=−1
- OS=−1
- OL=−1:OO=−1:OV=−1
- LOCATE 0,CSRY
- ?”RECチュウ..”
- RETURN
- @P0 オト
- F$=””
- IF OV!=MV THEN F$=F$+CHR$(119+MV/5)
- IF OO!=MO THEN F$=F$+CHR$(49+MO)
- IF OP!=MP THEN F$=F$+CHR$(144+MP/5)
- OL=PL
- OV=MV
- OO=MO
- OP=MP
- GOSUB @P02
- F$=F$+CHR$(M0)
- IF 256−LEN(M$(MI))−LEN(F$)<0 THEN MI=MI+1
- IF REC THEN M$(MI)=M$(MI)+F$
- PSP=−1
- IF M0==169 THEN PSP=4
- GOSUB @PSP
- RETURN
- @P02
- T1=(MAINCNTL−T0)/T2
- T0=MAINCNTL
- IF T1>77 THEN T1=77
- T1=FLOOR(T1)
- F$=F$+CHR$(178+T1)
- RETURN
- @PSP
- IF PSP==−1 THEN @PSP2
- SPCHR PSP,PSP−1,1,0,0,0
- @PSP2
- IF O==−1 THEN @PSP3
- SPCHR O,O−1,0,0,0,0
- @PSP3
- O=PSP
- RETURN
- @MPLAY
- MS=0
- MD=0
- @MLOOP
- IF MXI<MD THEN RETURN
- M$=MID$(M$(MD),MS,1)
- MS=MS+1
- IF M$==”” THEN MD=MD+1:MS=0:GOTO@MLOOP
- M=ASC(M$)
- IF M<49 THEN @MN
- IF M<119 THEN @MO
- IF M<144 THEN @MV
- IF M<169 THEN @MP
- IF M==169 THEN @MR
- IF M==170 THEN @M_
- IF M>=178 THEN @ML2
- @ML
- PL=M−171
- PL2=1
- FOR I=0 TO PL−1
- PL2=PL2*2
- NEXT
- GOTO@MLOOP
- @ML2
- PL=M−178
- PL2=PL*T2
- GOTO@MR
- @MO
- MO=M−49
- GOTO@MLOOP
- @MV
- MV=(M−119)*5
- GOTO@MLOOP
- @MP
- MP=(M−144)*5
- GOTO@MLOOP
- @MN
- MN=(4096/12)*(M−24)
- A$=”V”+STR$(MV)+”P”+STR$(MP)+”L1@”+STR$(MO)+”N”+STR$(M+48)
- BGMPLAY A$
- ’BEEP MO,MN,MV,MP
- GOTO@MLOOP
- @M_
- @MR
- IF PL2==0 THEN GOTO@MLOOP
- WAIT PL2:GOTO@MLOOP
- ’−−−−−−−−−−−−−−−−−−−−−−−−−−−−
- @BTDATA
- ’0
- DATA”EEEEEEEEEBBBBBBB”
- DATA”EBEEEBEEEBEBBBBE”
- DATA”EBEEBBBEEBEBBBBE”
- DATA”EBEBBBEEEBBBBBBB”
- DATA”EEEEEEEEBBBBBBBE”
- DATA”EBBBBBBEBBBBBBBE”
- DATA”BBBBBBBEBBBBBBBE”
- DATA”EBBBBBBEBBBBBBBE”
- DATA”EBBBBEBBEBBBBEBB”
- DATA”EBBBBEBBEBBBBEBB”
- DATA”EBBBBEEEEBBBBBBB”
- DATA”EEEEEEEE00000000”
- DATA”BEEEBBBEBEBBBBBE”
- DATA”BEEEBBBEBEBBBBBE”
- DATA”BEEEBBBEBBBBBBBE”
- DATA”EEEEEEEE00000000”
- ’1
- DATA”EEEEEEEEE6666666”
- DATA”E66EE6EEE6E6666E”
- DATA”E66E666EE666E66E”
- DATA”E6EE666EE6666666”
- DATA”EEEEEEEE6666666E”
- DATA”E666666E6666666E”
- DATA”6666666E6666666E”
- DATA”6666666E6666666E”
- DATA”E66666E6E6666E6E”
- DATA”E6666E6EE6666E6E”
- DATA”E66666E6E6666666”
- DATA”EEEEEEEE00000000”
- DATA”6EE6666E6E6E666E”
- DATA”6EE6666E6E66666E”
- DATA”6E66666E6666666E”
- DATA”EEEEEEEE00000000”
- ’2
- DATA”EEEEEEEEE2222222”
- DATA”E2222222E2222222”
- DATA”E2222222E2EEE22E”
- DATA”E2E22E2EE2EEE22E”
- DATA”EEEEEEEE2222222E”
- DATA”2222222E2222222E”
- DATA”2222222EEE22E22E”
- DATA”222E2E2EE22E222E”
- DATA”E2E2E22EE2E22E2E”
- DATA”E2222222E2222222”
- DATA”E2222222E2222222”
- DATA”EEEEEEEE00000000”
- DATA”222E2E2EEE22E22E”
- DATA”2222222E2222222E”
- DATA”2222222E2222222E”
- DATA”EEEEEEEE00000000”
この作品に対するコメントがあれば一言どうぞ。(作品に直接関係ない質問や雑談は掲示板へ)
表示モード : [ スマホ・3DS対応表示 | クラシック表示 ]
PukiWiki 1.4.7 Copyright © 2001-2006 PukiWiki Developers Team. License is GPL. Based on "PukiWiki" 1.3 by yu-ji
ページの処理時間 : 0.124 秒 | このページの最終更新 : 2022/09/20 (火) 12:44:14 (565d) | ログイン
Copyright(C) 2011-2014 プチコンまとめWiki ◆1sxkymI8ji30