jdm:pc9801:int18h
Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| jdm:pc9801:int18h [2021/12/25 12:08] – created asie | jdm:pc9801:int18h [2022/02/18 22:44] (current) – asie | ||
|---|---|---|---|
| Line 12: | Line 12: | ||
| The keystroke is removed from the input buffer. | The keystroke is removed from the input buffer. | ||
| + | |||
| + | TODO: Blocks until a keystroke is received? | ||
| ===== AH = 01h - Check Keystroke ===== | ===== AH = 01h - Check Keystroke ===== | ||
| Line 40: | Line 42: | ||
| * bit 3 - GRPH (pressed) | * bit 3 - GRPH (pressed) | ||
| * bit 4 - CTRL (pressed) | * bit 4 - CTRL (pressed) | ||
| - | * | + | |
| ===== AH = 03h - Initialize Keyboard Interface ===== | ===== AH = 03h - Initialize Keyboard Interface ===== | ||
| Line 55: | Line 57: | ||
| **Output** | **Output** | ||
| - | * AH = keystroke bitmap value | + | * AH = keystroke bitmap value (byte at '' |
| + | |||
| + | TODO | ||
| + | |||
| + | ===== AH = 05h - Get and Check Keystroke ===== | ||
| + | |||
| + | **Input: | ||
| + | |||
| + | * AH = 00h | ||
| + | |||
| + | **Output: | ||
| + | |||
| + | * AX = keystroke | ||
| + | * BH = 1 if keystroke in buffer, 0 otherwise. | ||
| + | |||
| + | The keystroke is removed from the input buffer. | ||
| + | |||
| + | Non-blocking. Seems to be a combination of AH = 01h and AH = 00h. | ||
| + | |||
| + | ===== AH = 0Ah - Set GDC Display Mode ==== | ||
| + | |||
| + | TODO | ||
| + | |||
| + | ===== AH = 0Bh - Get GDC Display Mode ==== | ||
| + | |||
| + | TODO | ||
| + | |||
| + | ===== AH = 0Ch - Enable GDC Text Layer ==== | ||
| + | |||
| + | TODO | ||
| + | |||
| + | ===== AH = 0Dh - Disable GDC Text Layer ==== | ||
| + | |||
| + | TODO | ||
| + | |||
| + | ===== AH = 0Eh - Set GDC Text Display Area ==== | ||
| + | |||
| + | **Input: | ||
| + | |||
| + | * AH = 0Eh | ||
| + | * DX = offset | ||
| + | |||
| + | TODO | ||
| + | |||
| + | ===== AH = 11h - Show Cursor ==== | ||
| + | |||
| + | **Input: | ||
| + | |||
| + | * AH = 11h | ||
| + | |||
| + | ===== AH = 12h - Hide Cursor ==== | ||
| + | |||
| + | **Input: | ||
| + | |||
| + | * AH = 12h | ||
| + | |||
| + | ===== AH = 13h - Set Cursor Position ==== | ||
| + | |||
| + | **Input: | ||
| + | |||
| + | * AH = 13h | ||
| + | * DX = offset | ||
| + | |||
| + | TODO | ||
| + | |||
| + | ===== AH = 14h - Read Custom Glyph ===== | ||
| + | |||
| + | Input: | ||
| + | |||
| + | * AH = 14h | ||
| + | * BX:CX = glyph data destination (34 bytes, 16x16) | ||
| + | * DX = glyph code | ||
| + | |||
| + | TODO | ||
| + | |||
| + | ===== AH = 16h - Fill Text Display ===== | ||
| + | |||
| + | **Input: | ||
| + | |||
| + | * AH = 16h | ||
| + | * DH = attribute | ||
| + | * DL = character | ||
| + | |||
| + | ===== AH = 17h ===== | ||
| + | |||
| + | TODO | ||
| + | |||
| + | ===== AH = 18h ===== | ||
| + | |||
| + | TODO | ||
| + | |||
| + | ===== AH = 1Ah - Write Custom Glyph ===== | ||
| + | |||
| + | Input: | ||
| + | |||
| + | * AH = 1Ah | ||
| + | * BX:CX = glyph data (34 bytes, 16x16) | ||
| + | * DX = glyph code (must be 0x76xx or 0x77xx, count of custom glyphs limited) | ||
| + | |||
| + | TODO | ||
| + | |||
| + | ===== AH = 31h ===== | ||
| + | |||
| + | TODO | ||
| + | |||
| + | ===== AH = 40h - Enable Graphics Layer ===== | ||
| + | |||
| + | Input: | ||
| + | |||
| + | * AH = 40h | ||
| + | |||
| + | TODO | ||
| + | |||
| + | ===== AH = 41h - Disable Graphics Layer ===== | ||
| + | |||
| + | Input: | ||
| + | |||
| + | * AH = 41h | ||
| + | |||
| + | TODO | ||
| + | |||
| + | ===== AH = 42h - Configure Graphics Mode ===== | ||
| + | |||
| + | TODO | ||
| + | |||
| + | ===== AH = 43h ===== | ||
| + | |||
| + | TODO | ||
| + | |||
| + | ===== AH = 4Dh ===== | ||
| TODO | TODO | ||
jdm/pc9801/int18h.1640434108.txt.gz · Last modified: by asie
