●第1章
▲p.7 表2中
I/Oサイクル | I/Oライト | “L”“L”“H”“H” |
●第3章
▲p.69 図11右上 矢印の位置
●第5章
▲p.86 リスト3 CFG_Int_Lineの代入部分
(中略) when "001111" => -- 割り込み関連レジスタ PCIAD_Port(31 downto 16) <= (others => '0'); PCIAD_Port(15 downto 8) <= CFG_Int_Pin;PCIAD_Port( 7 downto 4) <= (others => '0');←この行削除 PCIAD_Port(37 downto 0) <= CFG_Int_Line; ←7 downto 0に
●特別講座2
▲p.116 リスト10 (b) 矢印の位置
●第7章
▲p.129 表1
・5VシステムのサイドAの8番ピンは“+5V(I/O)”ではなくて“+5V”
・3.3VシステムのサイドAの8番ピンは“+3.3V(I/O)”ではなくて“+5V”
●第10章
▲p.189 表11(a)
表11(a)は5V品のDCスペックのみ掲載されている。
(a-1)5V品のDCスペック
(a-2)3.3V品のDCスペック
●第11章
▲p.194 図2左下 CPUメモリ空間の上位部分
▲p.201 右側上から2行目以下の部分の文章中の(リスト1のA)の位置
まずそのマシンがコンフィグレーションメカニズム1に対応しているかを調べます.コンフィグレーション情報表示ツールREDPCI.COMを実行すればわかります(リスト1のA).
次にIO.COMを起動して,0CF8hに読み出したいPCIデバイスのコンフィグレーションアドレスを設定します.リスト1の例でバス番号0,デバイス番号7,ファンクション番号3のデバイスのベンダIDを読む場合は,80003B00hを設定します.
IO>CF8 L 80003B00[リターン]
そして0CFChをワードサイズで読み出すと,ベンダIDが取得できます(リスト1のA). ←ここに追加
IO>CFC W[リターン]
0CFC=8086
インテル製チップセットのデバイスなので,インテルのベンダIDを示す8086hが読み出せました.
▲p.202 リスト1 Aの指示部分を追加
C:\>REDPCI Special Cycle Generation on Configuration Mechanism #2 : Not Supported Special Cycle Generation on Configuration Mechanism #1 : Not Supported Configuration Mechanism #2 : Not Supported Configuration Mechanism #1 : Supported PCI BIOS Interface Level Version : 02.10 Number of Last PCI bus : 1 Bus Dev Fnc VendorID DevID Rev 0 0 0 8086h 7180h 03h Intel 82443LX PCI System Controller 0 1 0 8086h 7181h 03h Intel 82443LX PCI-PCI(AGP) bridge +1 0 7 0 8086h 7110h 01h Intel 82371AB PIIX4 PCI-ISA bridge 0 7 1 8086h 7111h 01h Intel 82371AB PIIX4 IDE Controller 0 7 2 8086h 7112h 01h Intel 82371AB PIIX4 USB Controller 0 7 3 8086h 7113h 01h Intel 82371AB PIIX4 Power management Controller 0 10 0 104Eh 0611h B3h Oak Technology Inc Audio 3D OTI610 Audio Device 0 20 0 8086h 1229h 04h Intel 82557 100/10Base Ethernet Controller 1 0 0 12D2h 0018h 10h Nvidia/SGS Thomson Riva128 (AGP) VGA Controller C:\>IO I/O INDEX ACCESS version 1.30 1997/07/25 by SUGAWARA IO>CF8 L 80003B00 0CF8=8000_3B00 IO>CFC W 0CFC=8086 ←A ←ここにAを追加 IO>
▲p.208 リスト2(a)と(b) PCIバスバージョンチェック部分
MOV AX,0B101H INT 1AH JB (PCI BIOSが無い場合の処理へ) CMP AH,0 JNE (PCI BIOSが無い場合の処理へ) CMP EDX,20494350H ;'PCI 'ASCII文字列 JNE (PCI BIOSが無い場合の処理へ)CMP BX,3230H ;'0200'CMP BX,0200H ; Ver 02.00 ←ASCIIコードではなくBCDで JB (PCIバス仕様 Rer2.0より前の場合の処理へ) 〜 (PCIバス仕様 Rev2.0以降の場合の処理) (a)PCI BIOSの存在確認(32ビット対応アセンブラ) MOV AX,0B101H INT 1AH JB (PCI BIOSが無い場合の処理へ) CMP AH,0 JNE (PCI BIOSが無い場合の処理へ) DB 66h ;以下3行で CMP EDX,20494350H CMP DX,4350h DW 2049h JNE (PCI BIOSが無い場合の処理へ)CMP BX,3230H ;'0200'CMP BX,0200H ; Ver 02.00 ←ASCIIコードではなくBCDで JB (PCIバス仕様 Rer2.0より前の場合の処理へ) 〜 (PCIバス仕様 Rev2.0以降の場合の処理) (b)PCI BIOSの存在確認(16ビット対応アセンブラ)
●第12章
▲p.217 リスト4 ダンプ表示コマンド
(中略) IO>0-FFL←I/Oポート00h〜FFhまでダブルワードでダンプ表示 ←ダンプ表示はバイトサイズのみ +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +A +B +C +D +E +F 0000 00 7F 64 05 D0 FF 80 80 06 00 00 00 00 00 00 00 0010 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 0020 00 B8 FF FF FF FF FF FF FF FF FF FF FF FF FF FF 0030 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF (中略)