🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fj.os.msdos
Article #1

Q. Interrupt vector table

#1
From: WAKAI Hirohisa
Date: Tue, 27 Oct 1992 10:27
53 lines
2999 bytes
若井@シャープ と申します。
DOSに関しては(も!?)、まだまだ若輩ものです。

“DOS”のソフトウェアで、ソフトウェア割り込みを使って、
プログラム間のリンクをとることがよくあるようですが、
その際、割り込み番号がぶつかってトラブルを起こすということを
たまに聞きます。
これは、割り込み番号を決めうちしているためかと思うのですが、
いずれにせよ、あまり好ましいことではないような気がします。
このようなことを回避するには、ある割り込み番号を
使ってもよいか否かを判断すべきだと思うのですが....

そこで、質問なんですが、

1) ある割り込み番号が与えられた時に、それが既に使用されているか
   否かのチェックは可能か
2) もし可能ならば、どのような方法が有効(もしくは一般的)か
   → 下記、c)参照
3) 割り込みベクタが、0000:0000 に特別な意味はあるのか
4) 割り込み番号の割り振りは“DOS”の仕様として決まっているのか
   また、それは公開されているのか
5) 1)~4)について記述されている参考資料・書籍等はあるか

を、DOSエキスパートの皆様に、是非お聞きしたいと思います。

ちょこっと調べた、もしくは聞いた話では、

a) 60h~66h は各種プログラムで使ってよいらしい
b) 60h~66h は 0000:0000 に初期化されている
   → 近くにある、IBM-DOS J5.0/V, DR-DOS 6.0, MS-DOS 3.X で、
      調べてみた結果、いずれも60h~66h は 0000:0000 であった

よって、仮に、いろんなソフトウェアが使用可能な割り込み番号が
60h~66h ならば、

c) INT 21(AH=35,AL=??)でとってきた 割り込みベクタ(ES:BX)が、
   0000:0000 ならば、少なくともその割り込み番号は使われて
   いないので、使って良い

というのは、正しいのでしょうか?? 
もっとも、使われていないものは、IRETするだけのルーチンに飛んで行く
べきで、本来ならば、0000:0000 に初期化するなんぞは、
あまりよくないような気はしますが....

ASCIIの応用MS-DOSや、MS-DOSエンサイクロペディアなどを
斜め読みしてみたのですが、残念ながら、知りたい情報は
得られませんでした。

何卒、宜しくお願いします。
--
(DOSの文化をもっと知りたいような、知りたくないような....)
シャープ株式会社 技術本部 情報技術開発センター 第4開発部 若井 裕久
E-Mail wakai@shpcsl.sharp.co.jp   Nifty PDD02452
Technical Details
Message-ID: <gxH6X.wakai@shpcsl.sharp.co.jp>
Path: arc1-ca.pugleaf.net!sparky!uunet!munnari.oz.au!news.hawaii.edu!sh.wide!wnoc-kyo!shpwide!shpcsl!wakai

Show Full Headers
Complete Article Headers
Newsgroups: fj.os.msdos
Path: arc1-ca.pugleaf.net!sparky!uunet!munnari.oz.au!news.hawaii.edu!sh.wide!wnoc-kyo!shpwide!shpcsl!wakai
From: wakai@shpcsl.sharp.co.jp (WAKAI Hirohisa)
Subject: Q. Interrupt vector table
Content-Type: text/plain; charset=ISO-2022-JP
Message-ID: <gxH6X.wakai@shpcsl.sharp.co.jp>
Sender: news@shpcsl.sharp.co.jp
Nntp-Posting-Host: buddha
Reply-To: wakai@shpcsl.sharp.co.jp (WAKAI Hirohisa)
Organization: Info. Sys. R&D Center Dept.4, SHARP Corporation
Mime-Version: 1.0
Distribution: fj
Date: Tue, 27 Oct 1992 10:27:19 GMT
Lines: 53