キーボードレッスン プログラム

 

プログラムのグラフィックキャラクターが問題で、上手く表示できません。


TERA TERMでは、プログラムの枠線が読み込めません。

プリンターで出力しようとしましたが、プリンター側に枠のグラフィック表示がないので、

全て漢字になって出力されています。

 

 

 

そこで、表示できない枠を’+’、’ー’、’|’で表示することにしました。

一度、IchigoJam上で作って、Tera Termで読み込んで貼り付けました。

読み込み時、入れたスペースが合ったりなかったりしているので、

再書き込み時にグラフィックキャラクターに戻すのと、スペースの調整が必要です。

 

プログラムは、メモリー容量制限から止む無く、2つで1つのプログラムになっています。

BLIND TOUCH TRAINERが、プログラム0と1

KEYBOARD LESSONが、プログラム2と3

です。

 

プログラム0と2は、それぞれキーボード枠と、キーボードを表示するだけのプログラムで、

プログラム1と3が、入力・判定などのメインルーチンで、画が映らないで良ければ、

プログラムは1,3だけでも動作します。

 

 

*SAVE0*

1 @ARUN
10 CLS
15 ?" BLIND TOUCH TRAINER"
16 ?
20 ?"+-------------------------+"
30 ?"| |"
40 ?"| COUNT: |"
50 ?"| MISS: |"
60 ?"| |"
70 ?"| |"
80 ?"| |"
90 ?"+-------------------------+"
95 ?
100 ?"+-+-+-+-+-+-+-+-+-+-+-+-+"
110 ?"| | | | | | | | | | | | | |"
120 ?"+-+-+-+-+-+-+-+-+-+-+-+-+-+"
130 ?" | | | | | | | | | | | | |"
140 ?" +-+-+-+-+-+-+-+-+-+-+-+-+-"
150 ?" | | | | | | | | | | | | |"
160 ?" +-+-+-+-+-+-+-+-+-+-+-+-+"
170 ?" | | | | | | | | | | | |"
180 ?" +-+-+-+-+-+-+-+-+-+-+-+"
190 ?" | |"
200 ?" +-------+"
210 LRUN(1)

 

*SAVE1*

1 @arun
2 e=0
3 LOCATE 6,7:PRINT "PUSH START";
4 K=INKEY():C=RND(26):IF K=0 THEN GOTO 4
5 LOCATE 6,7:PRINT " ";
10 LET[1],22,3,12,8,7,6,9,11,13,16,15,17,19,16,14,18,20,2,8,5,10,14,10,4,6,12,4
20 LET[31],14,16,18,18,16,14,16,16,16,14,16,16,16,18,18,14,14,14,14,16,14,14,18,14,18,14,18
100 FOR I=1 TO 30
105 c=rnd(26)+65
110 LOCATE12,5:PRINT CHR$(C);
120 K=INKEY():IF k=0 THEN GOTO 120
123 IF k<65 THEN GOTO 120
124 IF k>90 THEN GOTO 120
125 X=[0+K-63]:Y=[K+30-63]
126 LOCATE X,Y:PRINT CHR$(K);:WAIT15:LOCATE X,Y:PRINT" ";
130 IF K<>C THEN BE
135 LOCATE 23,5:PRINT e;
140 BEEP5,3:WAILT5
150 LOCATE 23,4:PRINT I;
155 BEEP15,3:WAIT5
160 NEXT
170 LOCATE 10,5:PRINT "END";
175 LLOCATE 9,7:PRINT "RETRY?";
180 K=INKEY():IF K=0 TSHEN GOTO 180
190 LRUN(0)1 @arun

*SAVE2*

1 @ARUN
10 CLS
15 ?" KEYBOARD LESSON"
16 ?
20 ?"+-------------------------+"
30 ?"|             |"
40 ?"|         COUNT: |"
50 ?"|          MISS: |"
60 ?"|             |"
70 ?"|             |"
80 ?"|             |"
90 ?"+-------------------------+"
95 ?
100 ?"+-+-+-+-+-+-+-+-+-+-+-+-+-+"
110 ?" |1|2|3|4|5|6|7|8|9|0|-| | |"
120 ?" +-+-+-+-+-+-+-+-+-+-+-+-+-+"
130 ?"   |Q|W|E|R|T|Y|U|I|O|P|@|[|"
140 ?"   +-+-+-+-+-+-+-+-+-+-+-+-+-"
150 ?"    |A|S|D|F|G|H|J|K|L|;| | |"
160 ?"    +-+-+-+-+-+-+-+-+-+-+-+-+"
170 ?"    |Z|X|C|V|B|N|M|,|.|/|/|"
180 ?"    +-+-+-+-+-+-+-+-+-+-+-+"
190 ?"        |     |"
200 ?"        +-------+"
210 LRUN(3)

*SAVE3*

1 @arun
2 e=0
3 LOCATE 6,7:PRINT "PUSH START";
4 K=INKEY():C=RND(26):IF K=0 THEN GOTO 4
5 LOCATE 6,7:PRINT " ";
10 LET[1],22,3,12,8,7,6,9,11,13,16,15,17,19,16,14,18,20,2,8,5,10,14,10,4,6,12,4
20 LET[31],14,16,18,18,16,14,16,16,16,14,16,16,16,18,18,14,14,14,14,16,14,14,18,14,18,14,18
100 FOR I=1 TO 30
105 c=rnd(26)+65
110 LOCATE12,5:PRINT CHR$(C);
120 K=INKEY():IF k=0 THEN GOTO 120
123 IF k<65 THEN GOTO 120
124 IF k>90 THEN GOTO 120
125 X=[0+K-63]:Y=[K+30-63]
126 LOCATE X,Y,1:WAIT15:LOCATE X,Y:PRINT CHR$(K);
130 IF K<>C THEN BEEP 40,20:E=E+1:LOCATE X,Y,1:WAIT15:LOCATE X,Y:PRINT CHR$(K);:GOTO 120
135 LOCATE 23,5:PRINT e;
140 BEEP5,3:WAIT5
150 LOCATE 23,4:PRINT I;
155 BEEP15,3:WAIT5
160 NEXT
170 LOCATE 10,5:PRINT "END";
175 LOCATE 9,7:PRINT "RETRY?";
180 K=INKEY():IF K=0 THEN GOTO 180
190 LRUN(2)

 

 

2024年12月29日