2012.4.26
前へ
次へ
ホームページトップへ戻る

復活!CP/M ワンボードマイコンでCP/Mを!
CP/MがTK−80互換のワンボードマイコンの上で復活します
ND80ZVとMYCPU80の上でCP/Mが走ります

[第103回]


●ランダムファイルの中味

前回はファンクションコール22Hを使ったテストプログラムを実行して、ランダムアクセスファイルを作成しました。
今回はそのランダムアクセスファイルの中味を見て、ランダムファイルがどのような仕組みになっているのかを調べてみることにします。

下はAドライブのディレクトリエリアのダンプリストです。
テストプログラムFTST20.COMとランダムファイルTEST.RAFのFCB(File Control Block)の部分です。
ディレクトリエリアのFCBはファイル毎に32バイトずつに区切られています。
その後半の16バイト(下の行)には、データやプログラム本体が書かれたブロックのbェ置かれます。

>dm 8800,883f
8800  00 46 54 53 54 32 30 20-20 43 4F 4D 00 00 00 02  .FTST20  COM....
8810  01 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................
8820  00 54 45 53 54 20 20 20-20 52 41 46 00 00 00 2A  .TEST    RAF...*
8830  08 00 00 03 06 07 00 00-04 02 05 00 00 00 00 00  ................

AドライブとBドライブに分割した仮RAMディスクのディレクトリはブロック00の4セクタを占有しています。
ですからデータブロックは01からになります。
FTST20.COMのブロックb記入するアローケーションエリアを見ると、そこには01が書かれています。
FTST20.COMのプログラム本体はブロック01に書かれていることを示しています。

それではその次のTEST.RAFはどうなっているでしょうか。
そのブロックアローケーションエリアには、02〜08のブロックbェ書かれていますが、順序はばらばらで、しかも間が空いています。
これはどういうことを意味しているのでしょうか。

そのことを説明するために、工夫をしてみました。
先に[第101回]を読んでいただくと、以下の説明がわかりやすくなると思います。

テストプログラムFTST20.COMはあらかじめ作成したランダムなレコード番号表を読み込んで、そのbフデータをランダムに書き込んで、ランダムファイルを作成しました。
下がそのもとになったランダムなレコード番号表データです。
あらかじめアドレス8300〜に作成しました。

>dm 8300,830f
8300  26 0F 22 27 29 0E 11 12-16 03 0D FF EB 65 B7 DF  &."')........eキ゚

そのデータを16進数から10進数に直して、その下に並べました。
さらにその下に有る、色のついた数字については、あとで説明をします。

26 0F 22 27 29 0E 11 12 16 03 0D FF ←16進数
38 15 34 39 41 14 17 18 22  3 13    ←10進数
02 03 04 02 05 03 06 06 07 08 03

下はさきほどお見せしたランダムファイルTEST.TXTのブロックアローケーションエリアを取り出して表にしたものです。
一番下の行がアドレス8830〜883Fの内容です。
その上には1マスに4個ずつ順に数字が並んでいます。
ここはブロックの先頭から順に、その中にセクタb配置した番号表です。
実際のブロック番号、セクタ番号ではありません。
ただの番号表です(キー配列表と呼ぶことにします)。
仮RAMディスクは1ブロックが4セクタですから、先頭のブロックはセクタ0〜3になります。
これがそのままレコード番号になります。

 0
 1
 2
 3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
08 00  00 03 06 07 00 00 04 02 05 00 00 00 00 00


さてそこで、さきほどのレコード番号表を見てください。
最初に作成されるレコードのレコードbヘ26H(38)です。
このレコードは最初のデータです。
Aドライブは、ブロック00をディレクトリに割り当てていて、ブロック01にはFTST20.COM本体が書かれています。
ですからレコードbR8のデータは未使用のブロックのうちの最初のブロックbO2に書き込まれます。

ところでそのレコードbR8は、キー配列表のどこにあるかを捜してみると、前から10番目のアローケーション(位置)にあります。
そこで、その位置にブロックbO2を示す02を書き込みます。
その意味は、レコードbR6〜39のデータはブロック02にあります、ということです。
そしてそのレコードbR8のデータはブロック02の3番目のセクタに書き込まれます(その番号がキー配列表の上から3番目にあるということは、そのブロックの前から3番目のセクタがそのレコードが書かれるべきセクタである、ということを示しています)。

さきほどのレコード番号表の下の色のついた数字はそのようにして決定されたブロックbそこに置いてみたものです。
赤はそのレコードbェ最初にそのブロックに書き込まれたことを示しています。
緑、ピンクは、そのブロックbヘそれよりも前にすでに一部のセクタが書き込まれたブロックであることを示しています。

次のレコード番号は0FH(15)です。
このレコードbヘブロック02には入りません(ブロック02は36〜39しか置けません)。
そこで次のブロック03に入れることになります。
bP5をキー配列表からさがしてみますと前から4番目のアローケーション(位置)にあります。
そこで、その位置にブロックbO3を示す03を書き込みます。
そしてレコードbP5のデータはブロック03の4番目のセクタに書き込まれます。

以下同じように割り当てていきますが、4番目のレコードbノ注目してください。
4番目のレコードbヘ27H(39)です。
キー配列表で見ると、bR9は前から10番目のアローケーション(位置)にありますが、そこにはすでにブロック02が割り当てられています。
そこで、レコードbR9のデータはブロック02の4番目のセクタに書き込まれます。

数字の赤は新規ブロックを割り当てることになったレコード番号を示し、緑、ピンクはすでに割り当て済みのブロックに書き込まれることになったレコード番号を示しています。

下はそのようにして、レコード番号をブロック、セクタに割り当てていった結果を、実際のブロック番号、セクタai先頭から連番で示す)と、そこに書き込まれるレコードのbニの対応表として示したものです。
RAMディスクに書き込まれたデータを確認するために、各セクタがRAM上に位置するアドレスを表の最後に示してあります。

水色で着色したセクタはデータが書き込まれたセクタで、着色されていないセクタはまだ書き込まれていませんが、この時点で書き込まれるべきレコードbヘブロック内の位置の関係ですでにリザーブされています。

ここではブロック08(セクタ35)までが使われていますが、それ以後は未使用のまま残っています。

ブロック セクタ レコード RAMアドレス
0 0 8800-887F
0 1 8880-88FF
0 2 8900-897F
0 3 8980-89FF
1 4 8A00-8A7F
1 5 8A80-8AFF
1 6 8B00-8B7F
1 7 8B80-8BFF
2 8 36 8C00-8C7F
2 9 37 8C80-8CFF
2 10 38 8D00-8D7F
2 11 39 8D80-8DFF
3 12 12 8E00-8E7F
3 13 13 8E80-8EFF
3 14 14 8F00-8F7F
3 15 15 8F80-8FFF
4 16 32 9000-907F
4 17 33 9080-90FF
4 18 34 9100-917F
4 19 35 9180-91FF
5 20 40 9200-927F
5 21 41 9280-92FF
5 22 42 9300-937F
5 23 43 9380-93FF
6 24 16 9400-947F
6 25 17 9480-94FF
6 26 18 9500-957F
6 27 19 9580-95FF
7 28 20 9600-967F
7 29 21 9680-96FF
7 30 22 9700-977F
7 31 23 9780-97FF
8 32 0 9800-987F
8 33 1 9880-98FF
8 34 2 9900-997F
8 35 3 9980-99FF

この表にしたがってレコードのデータが書き込まれているはずのRAMアドレスをDMコマンドを使って表示させてみた結果を下に示します。
上の表の通りにデータが書き込まれていることが理解できると思います。

8D00  26 26 26 26 26 26 26 26-26 26 26 26 26 26 26 26  &&&&&&&&&&&&&&&&   26H=38
8D10  26 26 26 26 26 26 26 26-26 26 26 26 26 26 26 26  &&&&&&&&&&&&&&&&
8D20  26 26 26 26 26 26 26 26-26 26 26 26 26 26 26 26  &&&&&&&&&&&&&&&&
8D30  26 26 26 26 26 26 26 26-26 26 26 26 26 26 26 26  &&&&&&&&&&&&&&&&  
8D40  26 26 26 26 26 26 26 26-26 26 26 26 26 26 26 26  &&&&&&&&&&&&&&&&
8D50  26 26 26 26 26 26 26 26-26 26 26 26 26 26 26 26  &&&&&&&&&&&&&&&&
8D60  26 26 26 26 26 26 26 26-26 26 26 26 26 26 26 26  &&&&&&&&&&&&&&&&
8D70  26 26 26 26 26 26 26 26-26 26 26 26 26 26 26 26  &&&&&&&&&&&&&&&&
8D80  27 27 27 27 27 27 27 27-27 27 27 27 27 27 27 27  ''''''''''''''''    27H=39
8D90  27 27 27 27 27 27 27 27-27 27 27 27 27 27 27 27  ''''''''''''''''
8DA0  27 27 27 27 27 27 27 27-27 27 27 27 27 27 27 27  ''''''''''''''''
8DB0  27 27 27 27 27 27 27 27-27 27 27 27 27 27 27 27  ''''''''''''''''
8DC0  27 27 27 27 27 27 27 27-27 27 27 27 27 27 27 27  ''''''''''''''''
8DD0  27 27 27 27 27 27 27 27-27 27 27 27 27 27 27 27  ''''''''''''''''
8DE0  27 27 27 27 27 27 27 27-27 27 27 27 27 27 27 27  ''''''''''''''''
8DF0  27 27 27 27 27 27 27 27-27 27 27 27 27 27 27 27  ''''''''''''''''

8E80  0D 0D 0D 0D 0D 0D 0D 0D-0D 0D 0D 0D 0D 0D 0D 0D  ................    0DH=13
8E90  0D 0D 0D 0D 0D 0D 0D 0D-0D 0D 0D 0D 0D 0D 0D 0D  ................
8EA0  0D 0D 0D 0D 0D 0D 0D 0D-0D 0D 0D 0D 0D 0D 0D 0D  ................
8EB0  0D 0D 0D 0D 0D 0D 0D 0D-0D 0D 0D 0D 0D 0D 0D 0D  ................
8EC0  0D 0D 0D 0D 0D 0D 0D 0D-0D 0D 0D 0D 0D 0D 0D 0D  ................
8ED0  0D 0D 0D 0D 0D 0D 0D 0D-0D 0D 0D 0D 0D 0D 0D 0D  ................
8EE0  0D 0D 0D 0D 0D 0D 0D 0D-0D 0D 0D 0D 0D 0D 0D 0D  ................
8EF0  0D 0D 0D 0D 0D 0D 0D 0D-0D 0D 0D 0D 0D 0D 0D 0D  ................
8F00  0E 0E 0E 0E 0E 0E 0E 0E-0E 0E 0E 0E 0E 0E 0E 0E  ................    0EH=14
8F10  0E 0E 0E 0E 0E 0E 0E 0E-0E 0E 0E 0E 0E 0E 0E 0E  ................
8F20  0E 0E 0E 0E 0E 0E 0E 0E-0E 0E 0E 0E 0E 0E 0E 0E  ................
8F30  0E 0E 0E 0E 0E 0E 0E 0E-0E 0E 0E 0E 0E 0E 0E 0E  ................
8F40  0E 0E 0E 0E 0E 0E 0E 0E-0E 0E 0E 0E 0E 0E 0E 0E  ................
8F50  0E 0E 0E 0E 0E 0E 0E 0E-0E 0E 0E 0E 0E 0E 0E 0E  ................
8F60  0E 0E 0E 0E 0E 0E 0E 0E-0E 0E 0E 0E 0E 0E 0E 0E  ................
8F70  0E 0E 0E 0E 0E 0E 0E 0E-0E 0E 0E 0E 0E 0E 0E 0E  ................
8F80  0F 0F 0F 0F 0F 0F 0F 0F-0F 0F 0F 0F 0F 0F 0F 0F  ................    0FH=15
8F90  0F 0F 0F 0F 0F 0F 0F 0F-0F 0F 0F 0F 0F 0F 0F 0F  ................
8FA0  0F 0F 0F 0F 0F 0F 0F 0F-0F 0F 0F 0F 0F 0F 0F 0F  ................
8FB0  0F 0F 0F 0F 0F 0F 0F 0F-0F 0F 0F 0F 0F 0F 0F 0F  ................
8FC0  0F 0F 0F 0F 0F 0F 0F 0F-0F 0F 0F 0F 0F 0F 0F 0F  ................
8FD0  0F 0F 0F 0F 0F 0F 0F 0F-0F 0F 0F 0F 0F 0F 0F 0F  ................
8FE0  0F 0F 0F 0F 0F 0F 0F 0F-0F 0F 0F 0F 0F 0F 0F 0F  ................
8FF0  0F 0F 0F 0F 0F 0F 0F 0F-0F 0F 0F 0F 0F 0F 0F 0F  ................

9100  22 22 22 22 22 22 22 22-22 22 22 22 22 22 22 22  """"""""""""""""    22H=34
9110  22 22 22 22 22 22 22 22-22 22 22 22 22 22 22 22  """"""""""""""""
9120  22 22 22 22 22 22 22 22-22 22 22 22 22 22 22 22  """"""""""""""""
9130  22 22 22 22 22 22 22 22-22 22 22 22 22 22 22 22  """"""""""""""""
9140  22 22 22 22 22 22 22 22-22 22 22 22 22 22 22 22  """"""""""""""""
9150  22 22 22 22 22 22 22 22-22 22 22 22 22 22 22 22  """"""""""""""""
9160  22 22 22 22 22 22 22 22-22 22 22 22 22 22 22 22  """"""""""""""""
9170  22 22 22 22 22 22 22 22-22 22 22 22 22 22 22 22  """"""""""""""""

9280  29 29 29 29 29 29 29 29-29 29 29 29 29 29 29 29  ))))))))))))))))    29H=41
9290  29 29 29 29 29 29 29 29-29 29 29 29 29 29 29 29  ))))))))))))))))
92A0  29 29 29 29 29 29 29 29-29 29 29 29 29 29 29 29  ))))))))))))))))
92B0  29 29 29 29 29 29 29 29-29 29 29 29 29 29 29 29  ))))))))))))))))
92C0  29 29 29 29 29 29 29 29-29 29 29 29 29 29 29 29  ))))))))))))))))
92D0  29 29 29 29 29 29 29 29-29 29 29 29 29 29 29 29  ))))))))))))))))
92E0  29 29 29 29 29 29 29 29-29 29 29 29 29 29 29 29  ))))))))))))))))
92F0  29 29 29 29 29 29 29 29-29 29 29 29 29 29 29 29  ))))))))))))))))

9480  11 11 11 11 11 11 11 11-11 11 11 11 11 11 11 11  ................    11H=17
9490  11 11 11 11 11 11 11 11-11 11 11 11 11 11 11 11  ................
94A0  11 11 11 11 11 11 11 11-11 11 11 11 11 11 11 11  ................
94B0  11 11 11 11 11 11 11 11-11 11 11 11 11 11 11 11  ................
94C0  11 11 11 11 11 11 11 11-11 11 11 11 11 11 11 11  ................
94D0  11 11 11 11 11 11 11 11-11 11 11 11 11 11 11 11  ................
94E0  11 11 11 11 11 11 11 11-11 11 11 11 11 11 11 11  ................
94F0  11 11 11 11 11 11 11 11-11 11 11 11 11 11 11 11  ................
9500  12 12 12 12 12 12 12 12-12 12 12 12 12 12 12 12  ................    12H=18
9510  12 12 12 12 12 12 12 12-12 12 12 12 12 12 12 12  ................
9520  12 12 12 12 12 12 12 12-12 12 12 12 12 12 12 12  ................
9530  12 12 12 12 12 12 12 12-12 12 12 12 12 12 12 12  ................
9540  12 12 12 12 12 12 12 12-12 12 12 12 12 12 12 12  ................
9550  12 12 12 12 12 12 12 12-12 12 12 12 12 12 12 12  ................
9560  12 12 12 12 12 12 12 12-12 12 12 12 12 12 12 12  ................
9570  12 12 12 12 12 12 12 12-12 12 12 12 12 12 12 12  ................

9700  16 16 16 16 16 16 16 16-16 16 16 16 16 16 16 16  ................    16H=22
9710  16 16 16 16 16 16 16 16-16 16 16 16 16 16 16 16  ................
9720  16 16 16 16 16 16 16 16-16 16 16 16 16 16 16 16  ................
9730  16 16 16 16 16 16 16 16-16 16 16 16 16 16 16 16  ................
9740  16 16 16 16 16 16 16 16-16 16 16 16 16 16 16 16  ................
9750  16 16 16 16 16 16 16 16-16 16 16 16 16 16 16 16  ................
9760  16 16 16 16 16 16 16 16-16 16 16 16 16 16 16 16  ................
9770  16 16 16 16 16 16 16 16-16 16 16 16 16 16 16 16  ................

9980  03 03 03 03 03 03 03 03-03 03 03 03 03 03 03 03  ................
9990  03 03 03 03 03 03 03 03-03 03 03 03 03 03 03 03  ................
99A0  03 03 03 03 03 03 03 03-03 03 03 03 03 03 03 03  ................
99B0  03 03 03 03 03 03 03 03-03 03 03 03 03 03 03 03  ................
99C0  03 03 03 03 03 03 03 03-03 03 03 03 03 03 03 03  ................
99D0  03 03 03 03 03 03 03 03-03 03 03 03 03 03 03 03  ................
99E0  03 03 03 03 03 03 03 03-03 03 03 03 03 03 03 03  ................
99F0  03 03 03 03 03 03 03 03-03 03 03 03 03 03 03 03  ................

●同じことをBドライブのファイルで検証してみます

前回のテストではAドライブと同じランダムファイルをBドライブにも作成しました。
Bドライブはファイルが何もないところにTEST.RAFだけを作成しました。
Aドライブに作成されたTEST.RAFとでは書き込まれるブロックaAセクタbェずれてきます。
両者を比較してみることも、ランダムアクセスファイルの仕組みを理解する助けになると思います。

基本的にはAドライブと同じ内容ですから、詳しい説明は省きます。

下はBドライブのディレクトリ部分(A000H〜A01FH)です。
あるのはTEST.RAFだけです。

A000  00 54 45 53 54 20 20 20-20 52 41 46 00 00 00 2A  .TEST    RAF...*
A010  07 00 00 02 05 06 00 00-03 01 04 00 00 00 00 00  ................

下は、もとになるレコード番号のデータを10進数に置き換えて示したものです。
上の行が16進数で、下の行はそれを10進数に置き換えたものです。
その下に着色した数字が、そのレコードが保存されたセクタの属するブロックbナす。
さきほどのAドライブでの場合と比較すると番号が1番若くなっています。

26 0F 22 27 29 0E 11 12 16 03 0D FF
38 15 34 39 41 14 17 18 22  3 13
01 02 03 01 04 02 05 05 06 07 02

下の表は、TEST.RAFのFCBのブロックアローケーションにランダムファイルのレコードbあてはめたものです。

 0
 1
 2
 3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
07 00  00 02 05 06 00 00 03 01 04 00 00 00 00 00

表の下の行がアローケーションエリアです。
RAMディスクアドレスのA010H〜A01FHの内容と同じになっています。
Aドライブではブロック00、ブロック01が使用済みのため、データを格納するブロックbヘ02からになりましたが、Bドライブでは使用済みブロックはディレクトリ用の00だけですから、データはブロック01から格納されます。

下は、レコード番号をブロック、セクタに割り当てていった結果を、実際のブロック番号、セクタai先頭から連番で示す)と、そこに書き込まれるレコードのbニの対応表として示したものです。

水色で着色したセクタはデータが書き込まれたセクタで、着色されていないセクタはまだ書き込まれていませんが、この時点で書き込まれるべきレコードbヘブロック内の位置の関係ですでにリザーブされています。

ここではブロック07(セクタ31)までが使われていますが、それ以後は未使用のまま残っています。

ブロック セクタ レコード RAMアドレス
0 0 A000-A07F
0 1 A080-A0FF
0 2 A100-A17F
0 3 A180-A1FF
1 4 36 A200-A27F
1 5 37 A280-A2FF
1 6 38 A300-A37F
1 7 39 A380-A3FF
2 8 12 A400-A47F
2 9 13 A480-A4FF
2 10 14 A500-A57F
2 11 15 A580-A5FF
3 12 32 A600-A67F
3 13 33 A680-A6FF
3 14 34 A700-A77F
3 15 35 A780-A7FF
4 16 40 A800-A87F
4 17 41 A880-A8FF
4 18 42 A900-A97F
4 19 43 A980-A9FF
5 20 16 AA00-AA7F
5 21 17 AA80-AAFF
5 22 18 AB00-AB7F
5 23 19 AB80-ABFF
6 24 20 AC00-AC7F
6 25 21 AC80-ACFF
6 26 22 AD00-AD7F
6 27 23 AD80-ADFF
7 28 0 AE00-AE7F
7 29 1 AE80-AEFF
7 30 2 AF00-AF7F
7 31 3 AF80-AFFF

この表にしたがってレコードのデータが書き込まれているはずのRAMアドレスをDMコマンドを使って表示させてみた結果を下に示します。
上の表の通りにデータが書き込まれていることが理解できると思います。

A300  26 26 26 26 26 26 26 26-26 26 26 26 26 26 26 26  &&&&&&&&&&&&&&&&
A310  26 26 26 26 26 26 26 26-26 26 26 26 26 26 26 26  &&&&&&&&&&&&&&&&
A320  26 26 26 26 26 26 26 26-26 26 26 26 26 26 26 26  &&&&&&&&&&&&&&&&
A330  26 26 26 26 26 26 26 26-26 26 26 26 26 26 26 26  &&&&&&&&&&&&&&&&
A340  26 26 26 26 26 26 26 26-26 26 26 26 26 26 26 26  &&&&&&&&&&&&&&&&
A350  26 26 26 26 26 26 26 26-26 26 26 26 26 26 26 26  &&&&&&&&&&&&&&&&
A360  26 26 26 26 26 26 26 26-26 26 26 26 26 26 26 26  &&&&&&&&&&&&&&&&
A370  26 26 26 26 26 26 26 26-26 26 26 26 26 26 26 26  &&&&&&&&&&&&&&&&
A380  27 27 27 27 27 27 27 27-27 27 27 27 27 27 27 27  ''''''''''''''''
A390  27 27 27 27 27 27 27 27-27 27 27 27 27 27 27 27  ''''''''''''''''
A3A0  27 27 27 27 27 27 27 27-27 27 27 27 27 27 27 27  ''''''''''''''''
A3B0  27 27 27 27 27 27 27 27-27 27 27 27 27 27 27 27  ''''''''''''''''
A3C0  27 27 27 27 27 27 27 27-27 27 27 27 27 27 27 27  ''''''''''''''''
A3D0  27 27 27 27 27 27 27 27-27 27 27 27 27 27 27 27  ''''''''''''''''
A3E0  27 27 27 27 27 27 27 27-27 27 27 27 27 27 27 27  ''''''''''''''''
A3F0  27 27 27 27 27 27 27 27-27 27 27 27 27 27 27 27  ''''''''''''''''

A480  0D 0D 0D 0D 0D 0D 0D 0D-0D 0D 0D 0D 0D 0D 0D 0D  ................
A490  0D 0D 0D 0D 0D 0D 0D 0D-0D 0D 0D 0D 0D 0D 0D 0D  ................
A4A0  0D 0D 0D 0D 0D 0D 0D 0D-0D 0D 0D 0D 0D 0D 0D 0D  ................
A4B0  0D 0D 0D 0D 0D 0D 0D 0D-0D 0D 0D 0D 0D 0D 0D 0D  ................
A4C0  0D 0D 0D 0D 0D 0D 0D 0D-0D 0D 0D 0D 0D 0D 0D 0D  ................
A4D0  0D 0D 0D 0D 0D 0D 0D 0D-0D 0D 0D 0D 0D 0D 0D 0D  ................
A4E0  0D 0D 0D 0D 0D 0D 0D 0D-0D 0D 0D 0D 0D 0D 0D 0D  ................
A4F0  0D 0D 0D 0D 0D 0D 0D 0D-0D 0D 0D 0D 0D 0D 0D 0D  ................
A500  0E 0E 0E 0E 0E 0E 0E 0E-0E 0E 0E 0E 0E 0E 0E 0E  ................
A510  0E 0E 0E 0E 0E 0E 0E 0E-0E 0E 0E 0E 0E 0E 0E 0E  ................
A520  0E 0E 0E 0E 0E 0E 0E 0E-0E 0E 0E 0E 0E 0E 0E 0E  ................
A530  0E 0E 0E 0E 0E 0E 0E 0E-0E 0E 0E 0E 0E 0E 0E 0E  ................
A540  0E 0E 0E 0E 0E 0E 0E 0E-0E 0E 0E 0E 0E 0E 0E 0E  ................
A550  0E 0E 0E 0E 0E 0E 0E 0E-0E 0E 0E 0E 0E 0E 0E 0E  ................
A560  0E 0E 0E 0E 0E 0E 0E 0E-0E 0E 0E 0E 0E 0E 0E 0E  ................
A570  0E 0E 0E 0E 0E 0E 0E 0E-0E 0E 0E 0E 0E 0E 0E 0E  ................
A580  0F 0F 0F 0F 0F 0F 0F 0F-0F 0F 0F 0F 0F 0F 0F 0F  ................
A590  0F 0F 0F 0F 0F 0F 0F 0F-0F 0F 0F 0F 0F 0F 0F 0F  ................
A5A0  0F 0F 0F 0F 0F 0F 0F 0F-0F 0F 0F 0F 0F 0F 0F 0F  ................
A5B0  0F 0F 0F 0F 0F 0F 0F 0F-0F 0F 0F 0F 0F 0F 0F 0F  ................
A5C0  0F 0F 0F 0F 0F 0F 0F 0F-0F 0F 0F 0F 0F 0F 0F 0F  ................
A5D0  0F 0F 0F 0F 0F 0F 0F 0F-0F 0F 0F 0F 0F 0F 0F 0F  ................
A5E0  0F 0F 0F 0F 0F 0F 0F 0F-0F 0F 0F 0F 0F 0F 0F 0F  ................
A5F0  0F 0F 0F 0F 0F 0F 0F 0F-0F 0F 0F 0F 0F 0F 0F 0F  ................

A700  22 22 22 22 22 22 22 22-22 22 22 22 22 22 22 22  """"""""""""""""
A710  22 22 22 22 22 22 22 22-22 22 22 22 22 22 22 22  """"""""""""""""
A720  22 22 22 22 22 22 22 22-22 22 22 22 22 22 22 22  """"""""""""""""
A730  22 22 22 22 22 22 22 22-22 22 22 22 22 22 22 22  """"""""""""""""
A740  22 22 22 22 22 22 22 22-22 22 22 22 22 22 22 22  """"""""""""""""
A750  22 22 22 22 22 22 22 22-22 22 22 22 22 22 22 22  """"""""""""""""
A760  22 22 22 22 22 22 22 22-22 22 22 22 22 22 22 22  """"""""""""""""
A770  22 22 22 22 22 22 22 22-22 22 22 22 22 22 22 22  """"""""""""""""

A880  29 29 29 29 29 29 29 29-29 29 29 29 29 29 29 29  ))))))))))))))))
A890  29 29 29 29 29 29 29 29-29 29 29 29 29 29 29 29  ))))))))))))))))
A8A0  29 29 29 29 29 29 29 29-29 29 29 29 29 29 29 29  ))))))))))))))))
A8B0  29 29 29 29 29 29 29 29-29 29 29 29 29 29 29 29  ))))))))))))))))
A8C0  29 29 29 29 29 29 29 29-29 29 29 29 29 29 29 29  ))))))))))))))))
A8D0  29 29 29 29 29 29 29 29-29 29 29 29 29 29 29 29  ))))))))))))))))
A8E0  29 29 29 29 29 29 29 29-29 29 29 29 29 29 29 29  ))))))))))))))))
A8F0  29 29 29 29 29 29 29 29-29 29 29 29 29 29 29 29  ))))))))))))))))

AA80  11 11 11 11 11 11 11 11-11 11 11 11 11 11 11 11  ................
AA90  11 11 11 11 11 11 11 11-11 11 11 11 11 11 11 11  ................
AAA0  11 11 11 11 11 11 11 11-11 11 11 11 11 11 11 11  ................
AAB0  11 11 11 11 11 11 11 11-11 11 11 11 11 11 11 11  ................
AAC0  11 11 11 11 11 11 11 11-11 11 11 11 11 11 11 11  ................
AAD0  11 11 11 11 11 11 11 11-11 11 11 11 11 11 11 11  ................
AAE0  11 11 11 11 11 11 11 11-11 11 11 11 11 11 11 11  ................
AAF0  11 11 11 11 11 11 11 11-11 11 11 11 11 11 11 11  ................
AB00  12 12 12 12 12 12 12 12-12 12 12 12 12 12 12 12  ................
AB10  12 12 12 12 12 12 12 12-12 12 12 12 12 12 12 12  ................
AB20  12 12 12 12 12 12 12 12-12 12 12 12 12 12 12 12  ................
AB30  12 12 12 12 12 12 12 12-12 12 12 12 12 12 12 12  ................
AB40  12 12 12 12 12 12 12 12-12 12 12 12 12 12 12 12  ................
AB50  12 12 12 12 12 12 12 12-12 12 12 12 12 12 12 12  ................
AB60  12 12 12 12 12 12 12 12-12 12 12 12 12 12 12 12  ................
AB70  12 12 12 12 12 12 12 12-12 12 12 12 12 12 12 12  ................

AD00  16 16 16 16 16 16 16 16-16 16 16 16 16 16 16 16  ................
AD10  16 16 16 16 16 16 16 16-16 16 16 16 16 16 16 16  ................
AD20  16 16 16 16 16 16 16 16-16 16 16 16 16 16 16 16  ................
AD30  16 16 16 16 16 16 16 16-16 16 16 16 16 16 16 16  ................
AD40  16 16 16 16 16 16 16 16-16 16 16 16 16 16 16 16  ................
AD50  16 16 16 16 16 16 16 16-16 16 16 16 16 16 16 16  ................
AD60  16 16 16 16 16 16 16 16-16 16 16 16 16 16 16 16  ................
AD70  16 16 16 16 16 16 16 16-16 16 16 16 16 16 16 16  ................

AF80  03 03 03 03 03 03 03 03-03 03 03 03 03 03 03 03  ................
AF90  03 03 03 03 03 03 03 03-03 03 03 03 03 03 03 03  ................
AFA0  03 03 03 03 03 03 03 03-03 03 03 03 03 03 03 03  ................
AFB0  03 03 03 03 03 03 03 03-03 03 03 03 03 03 03 03  ................
AFC0  03 03 03 03 03 03 03 03-03 03 03 03 03 03 03 03  ................
AFD0  03 03 03 03 03 03 03 03-03 03 03 03 03 03 03 03  ................
AFE0  03 03 03 03 03 03 03 03-03 03 03 03 03 03 03 03  ................
AFF0  03 03 03 03 03 03 03 03-03 03 03 03 03 03 03 03  ................

ワンボードマイコンでCP/Mを![第103回]
2012.4.26upload

前へ
次へ
ホームページトップへ戻る