Hello.com を動くようにする

yang20052005-06-08



MS-DOSでは INT 21h (AH=機能番号)
でほとんどの機能を実行しています。


初期の頃に作った
 Hello.com プログラムでは、
 
 INT 21h の内の

  機能番号  機能

  1. 09h  文字列の表示 (←DS:DX=表示文字ポインタ。'$'まで)
  2. 08h  キー入力  (→ALにキーコード、キー待ち、エコーなし)
  3. 4Ch  DOSへ戻る  (←AL DOSに戻すコード)

の 3つの機能を使っています。

これをまずは作ってみましょう。



同じ機能が BIOS にもあります。 手を抜いてこれを使ってしまいましょう。

 INT 16h が BIOSのキー入力。(AH=00h)

 戻り値: AL=アスキーコード、 AH=スキャンコード または
     AL=0 なら AH=拡張キーコード

 キーコードの詳細表は、OADGリファレンスに載ってます。





さて、先の HeboOSの ソースに少し手を加えて、再アセンブル
 FDにイメージを書き、さらに Hello.com をFDにコピーして
 起動します。
 >dir      で Helloファイルも見えますね。
 >Hello  で実行してみて下さい。


 MS-DOSプログラム Hello.com を動かしてみた証拠が上の写真です。
 (暗くて見えづらいですが・・・)


 その、ソースリストが ↓ です。
    id:yang2005:20050103


DOSやWin上で起動したのと同様、画面に”Hello!”と表示され、
何かキーを押すと、OSに戻ります。