カシオトーン・・・名前の響きがいいよね。
バーコードリーダーの資料
独自のバーコード規格
Casiotone701 Key Matrix |
420 INPUT C$: LET C=LEN C$
430 LET F=3: LET A$="00": FOR B =1 TO C+3: LET D=CODE C$(B)-55+7*(C$(B)<"A"): LET F=F+D
440 IF B=C THEN LET F=F-INT (F/16)*16: LET C$=C$+"F"+CHR$ (63+2*(8*(F>7)-F))+CHR$ (48+8+(F>7))
さらに分解すると
420 INPUT C$
421 LET C=LEN C$
430 LET F=3
431 LET A$="00"
432 FOR B =1 TO C+3
433 LET D=CODE C$(B)-55+7*(C$(B)<"A")
434 LET F=F+D
440 IF B=C THEN LET F=F-INT (F/16)*16
441 LET C$=C$+"F"+CHR$ (63+2*(8*(F>7)-F))+CHR$ (48+8+(F>7))
0001(R) = 1(H) = 1(C) = Line NO.1
0010(R) = 2(H) = 2(C) = Line NO.2
0011(R) = 3(H) = 3(C) = Line NO.3
0100(R) = 4(H) = 4(C) = Line NO.4
0101(R) = 5(H) = 5(C) = Line NO.5
0110(R) = 6(H) = 6(C) = Line NO.6
0111(R) = 7(H) = 7(C) = Line NO.7
1000(R) = 8(H) = 8(C) = Line NO.8
1001(R) = 9(H) = 9(C) = Line NO.9
1010(R) = A(H) = A(C) = Line NO.10
1011(R) = B(H) = B(C) = Line NO.11
1100(R) = C(H) = C(C) = Line NO.12
1101(R) = D(H) = D(C) = Line NO.13
1110(R) = E(H) = E(C) = Line NO.14
1111(R) = F(H) = F(C) = Line NO.15
0000(R) = 0(H) = 0(C) = Line NO.16
1000(R) = 8(H) = 8(C) = Line NO.17
0100(R) = 4(H) = 4(C) = Line NO.18
1100(R) = C(H) = C(C) = Line NO.19
0010(R) = 2(H) = 2(C) = Line NO.20
1010(R) = A(H) = A(C) = Line NO.21
0110(R) = 6(H) = 6(C) = Line NO.22
1110(R) = E(H) = E(C) = Line NO.23
0001(R) = 1(H) = 1(C) = Line NO.24
1001(R) = 9(H) = 9(C) = Line NO.25
0101(R) = 5(H) = 5(C) = Line NO.26
1101(R) = D(H) = D(C) = Line NO.27
0011(R) = 3(H) = 3(C) = Line NO.28
1011(R) = B(H) = B(C) = Line NO.29
0111(R) = 7(H) = 7(C) = Line NO.30
1111(R) = F(H) = F(C) = Line NO.31
00001101(R) = B0(H) = D(C) = Accompaniment Start.
00001110(R) = 70(H) = E(C) = Return 1. (Repeat Start/End)
00010000(R) = 08(H) = 1(C) = Return 2. (1st ending)
音程はO4CからO7Bまでの48種類。
01000001(R) = 82(H) = 5(C) = O4C
01000010(R) = 42(H) = 6(C) = O4C#
01000011(R) = C2(H) = 7(C) = O4D
01000100(R) = 22(H) = 8(C) = O4D#
01000101(R) = A2(H) = 9(C) = O4E
01000110(R) = 62(H) = A(C) = O4F
01000111(R) = E2(H) = B(C) = O4F#
01001000(R) = 12(H) = C(C) = O4G
01001001(R) = 92(H) = D(C) = O4G#
01001010(R) = 52(H) = E(C) = O4A
01001011(R) = D2(H) = F(C) = O4A#
01001100(R) = 32(H) = 0(C) = O4B
01010001(R) = 8A(H) = 6(C) = O5C
01010010(R) = 4A(H) = 7(C) = O5C#
01010011(R) = CA(H) = 8(C) = O5D
01010100(R) = 2A(H) = 9(C) = O5D#
01010101(R) = AA(H) = A(C) = O5E
01010110(R) = 6A(H) = B(C) = O5F
01010111(R) = EA(H) = C(C) = O5F#
01011000(R) = 1A(H) = D(C) = O5G
01011001(R) = 9A(H) = E(C) = O5G#
01011010(R) = 5A(H) = F(C) = O5A
01011011(R) = DA(H) = 0(C) = O5A#
01011100(R) = 3A(H) = 1(C) = O5B
01100001(R) = 86(H) = 7(C) = O6C
01100010(R) = 46(H) = 8(C) = O6C#
01100011(R) = C6(H) = 9(C) = O6D
01100100(R) = 26(H) = A(C) = O6D#
01100101(R) = A6(H) = B(C) = O6E
01100110(R) = 66(H) = C(C) = O6F
01100111(R) = E6(H) = D(C) = O6F#
01101000(R) = 16(H) = E(C) = O6G
01101001(R) = 96(H) = F(C) = O6G#
01101010(R) = 56(H) = 0(C) = O6A
01101011(R) = D6(H) = 1(C) = O6A#
01101100(R) = 36(H) = 2(C) = O6B
01110001(R) = 8E(H) = 8(C) = O7C
01110010(R) = 4E(H) = 9(C) = O7C#
01110011(R) = CE(H) = A(C) = O7D
01110100(R) = 2E(H) = B(C) = O7D#
01110101(R) = AE(H) = C(C) = O7E
01110110(R) = 6E(H) = D(C) = O7F
01110111(R) = EE(H) = E(C) = O7F#
01111000(R) = 1E(H) = F(C) = O7G
01111001(R) = 9E(H) = 0(C) = O7G#
01111010(R) = 5E(H) = 1(C) = O7A
01111011(R) = DE(H) = 2(C) = O7A#
01111100(R) = 3E(H) = 3(C) = O7B
この後に6.7.が来て、問題のCheckSumです。3.4.5.6.7.の範囲を計算するようです。6.7.の計算は6.で15。7.で0か1。
コメント
コメントを投稿