|
|
| version 1.1, 2004/03/31 19:23:38 | version 1.2, 2004/04/01 13:19:00 |
|---|---|
| Line 2 | Line 2 |
| vect09: sti | vect09: sti |
| push ax | push ax |
| push ds | push ds |
| xor ax, ax | |
| mov ds, ax | |
| in al, 0x43 | in al, 0x43 |
| test al, 0x38 | test al, 0x38 |
| jne short .err | jne short .err |
| Line 9 vect09: sti | Line 11 vect09: sti |
| out 0x43, al | out 0x43, al |
| mov byte [0x0529], 0 | mov byte [0x0529], 0 |
| in al, 0x41 | in al, 0x41 |
| mov ah, al | |
| call bios09 | call bios09 |
| .eoi: mov al, 0x20 | .eoi: pop ds |
| cli | cli |
| out 00h, al | mov al, 0x20 |
| pop ds | out 0x00, al |
| cmp ah, 0x60 | |
| je short .int5 | |
| cmp ah, 0x61 | |
| je short .int6 | |
| pop ax | pop ax |
| iret | iret |
| .err: push ds | .err: cmp byte [0x0529], 3 |
| xor ax, ax | |
| cmp byte [0x0529], 3 | |
| jae short .force | jae short .force |
| inc byte [0x0529] | inc byte [0x0529] |
| mov al, 0x14 | mov al, 0x14 |
| Line 26 vect09: sti | Line 31 vect09: sti |
| in al, 0x41 | in al, 0x41 |
| jmp short .eoi | jmp short .eoi |
| .int5: pop ax | |
| int 0x05 | |
| iret | |
| .int6: pop ax | |
| int 0x06 | |
| iret | |