AX キーボードBIOS 追加機能

グローバルエリア AX拡張部分

アドレス Word 内容
0040:00E4 Byte AX日本語ステータス
(※BIOS以外のプログラムが直接変更すべきでない)
D7 (CRT BIOSで使用)  
D6 key日本語/英語 1: 日本語
0: 英語
D5 x (予約ビット)
D4
D3
D2 (CRT BIOSで使用)  
D1
D0
0040:00EB Byte キーボードカナステータス
D2 カナホールド 1: 英数/カナキーが押されている
0: 英数/カナキーが押されていない
D1 カナロック 1: カナ
0: 英数
D0 カナLED 1: LED ON
0: LED OFF

INT 16h/AX=5000h : 日本語・英語モードの切り替え

入力
AH=50H, AL=00H
BX=カントリーコード(01h:英語, 51h(81):日本語)
出力
AL=0:正しく設定された、1:無効なカントリーコード、2:その他のエラー
注意事項
英語モード時にAX固有のキーの入力データが下記のように変換される。
キーNo 日本語モード 英語モード
62 漢字 Right Alt
70 無変換 Space
71 変換 Space
101 AX (無視される)
モードの切換はキー操作によっても行える。
Ctrl+Alt+F1:英語モード、Ctrl+Alt+F2:日本語モード

INT 16h/AX=5001h : 日本語・英語モードの読み取り

入力
AH=50H, AL=01H
出力
AL=0:正しく読み取った、2:エラー
BX=カントリーコード(01h:英語, 51h(81):日本語)

INT 16h/AH=51h : シフトステータスの読み出し(AXキー日本語対応)

入力
AH=51H
出力
AL=シフトステータス
bit  
7 Ins
6 Caps Lock LED
5 Num Lock LED
4 Scroll Lock LED
3 Alt
2 Ctrl
1 Left-Shift
0 Right-Shift
AH=シフトステータス
bit  
7-2 0
1 Kana-Shift
0 0
注意事項
このファンクション以外(INT 16h/AH=02h,12h)ではカナシフトキーはサポートされていない。