資料集め
OSを創るにあたっての必要な資料を探す。
まず、BIOSの資料:
OSが無いので、当然、MS-DOSの INT 21hなどは使えない。 その代わりとなる、基本的なキー入力やDISKアクセスの機能を提供する、PCにもともと組み込まれているプログラムの資料が必要となる。
ここのページの テクニカル・リファレンス が非常にまとまっている。
(多少の抜けもあるが)
DOSのINT割り込みやマウスの解説もある。
BIOSのみなら
http://hp.vector.co.jp/authors/VA003720/lpproj/int10h/int10h.htm
もおもしろい。
NASMの解説は、先の
http://ryujin.kuis.kyoto-u.ac.jp/~nobu/study/nasm/chap2.html
か、英文の原本
http://alien.dowling.edu/~rohit/nasmdoc0.html
FDの FATの解説は、
http://www.geocities.co.jp/SiliconValley-PaloAlto/2038/fat.html
が詳しい。
アセンブラ 8086〜80580詳細
http://hp.vector.co.jp/authors/VA003988/asm.htm
もちろん、OSASK関連の
http://sf.osask.jp/wiki/pukiwiki.php
も非常に参考になる。
ついでに 何かと使う アスキーコード表 も載せておきます。
アスキーコード表
00 10 20 30 40 50 60 70 00 DE 0 @ P p 01 SH D1 ! 1 A Q a q 02 SX D2 ” 2 B R b r 03 EX D3 # 3 C S c s 04 ET D4 $ 4 D T d t 05 EQ NK % 5 E U e u 06 AK SN & 6 F V f v 07 BL EB ’ 7 G W g w 08 BS CN ( 8 H X h x 09 HT EM ) 9 I Y i y 0A LF SB * : J Z j z 0B HM EC + ; K [ k { 0C CL → , < L \ l | 0D CR ← − = M ] m } 0E SO ↑ . > N ^ n  ̄ 0F SI ↓ / ? O _ o
制御コードに微妙な違い。 半角カタカナ割付。
00 | 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90 | A0 | B0 | C0 | D0 | E0 | F0 | |
00 | NUL | DLE | SP | 0 | @ | P | p | ー | タ | ミ | ||||||
01 | SOH | DC1 | ! | 1 | A | Q | a | q | 。 | ア | チ | ム | ||||
02 | STX | DC2 | ” | 2 | B | R | b | r | 「 | イ | ツ | メ | ||||
03 | ETX | DC3 | # | 3 | C | S | c | s | 」 | ウ | テ | モ | ||||
04 | EOT | DC4 | $ | 4 | D | T | d | t | 、 | エ | ト | ヤ | ||||
05 | ENQ | NAK | % | 5 | E | U | e | u | ・ | オ | ナ | ユ | ||||
06 | ACK | SYN | & | 6 | F | V | f | v | ヲ | カ | ニ | ヨ | ||||
07 | BEL | ETB | ’ | 7 | G | W | g | w | ァ | キ | ヌ | ラ | ||||
08 | BS | CAN | ( | 8 | H | X | h | x | ィ | ク | ネ | リ | ||||
09 | HT | EM | ) | 9 | I | Y | i | y | ゥ | ケ | ノ | ル | ||||
0A | LF | SUB | * | : | J | Z | j | z | ェ | コ | ハ | レ | ||||
0B | VT | ESC | + | ; | K | [ | k | { | ォ | サ | ヒ | ロ | ||||
0C | FF | FS | , | < | L | ¥ | l | | | ャ | シ | フ | ワ | ||||
0D | CR | GS | − | = | M | ] | m | } | ュ | ス | ヘ | ン | ||||
0E | SO | RS | . | > | N | ^ | n |  ̄ | ョ | セ | ホ | ゛ | ||||
0F | SI | US | / | ? | O | _ | o | ッ | ソ | マ | ゜ |