3

この例では、いくつかの古い VGA コードを使用してシーケンス コントローラ レジスタがどのように設定されているか理解できません。

 mov     dx,SC_INDEX
 mov     ax,0604h
 out     dx,ax   ;disable chain4 mode

この例は、Michael Abrash の VGA 本からのものです: https://www.phatcode.net/res/224/files/html/ch47/47-02.html

説明によると、彼はインデックス 4 にあるメモリ モード レジスタを設定したいと考えています。彼は、ビット インデックス 3 にある chain4 を無効にしたいと考えています (すべて、Richard F. Ferraro による EGA、VGA、およびスーパー VGA カードのプログラマーズ ガイドによると)。 )。

なぜ彼が 06 と 04outの 2 バイトを ax に入れ、それらを . out レジスタは 1 バイトのみであり、アドレス指定のためにレジスタのインデックスを明示的に設定していません。私が理解できない魔法が起こっているのでしょうか?

4

1 に答える 1