|
|
| version 1.1, 2004/01/22 01:11:29 | version 1.3, 2004/01/31 20:05:23 |
|---|---|
| Line 1 | Line 1 |
| .186 | |
| CODE SEGMENT | CODE SEGMENT |
| ASSUME CS:CODE,DS:nothing,ES:nothing,SS:nothing | ASSUME CS:CODE,DS:nothing,ES:nothing,SS:nothing |
| Line 53 sasi_init1: mov byte ptr [bx], 0d9h | Line 52 sasi_init1: mov byte ptr [bx], 0d9h |
| retf | retf |
| sasi_init2: mov ax, cs | sasi_init2: mov ax, cs |
| mov word ptr ds:[0044h], offset sasiint | |
| mov ds:[0046h], ax | |
| mov ds:[04b0h], ah | mov ds:[04b0h], ah |
| mov ds:[04b8h], ah | mov ds:[04b8h], ah |
| mov ax, 0300h | mov ax, 0300h |
| Line 66 sasi_bios: cld | Line 67 sasi_bios: cld |
| mov si, offset sasibiosstr | mov si, offset sasibiosstr |
| mov dx, 07efh | mov dx, 07efh |
| cli | cli |
| rep outsb | if 1 |
| @@: lodsb | |
| out dx, al | |
| loop short @b | |
| else | |
| rep outsb | |
| endif | |
| sti | sti |
| pop ax | pop ax |
| pop bx | pop bx |
| Line 106 sasi_boot2: sub al, 9 | Line 113 sasi_boot2: sub al, 9 |
| dw 1fc0h | dw 1fc0h |
| boot_exit: retf | boot_exit: retf |
| sasibiosstr db "scsibios" | |
| ; MS-DOSがこの割り込みを使用する... | |
| sasiint: push ax | |
| in al, 82h | |
| and al, 0fdh | |
| cmp al, 0adh | |
| je short sasireadstat | |
| and al, 0f9h | |
| cmp al, 0a1h | |
| jne short sasiinteoi | |
| sasireadstat: push ds | |
| xor ax, ax | |
| mov ds, ax | |
| or byte ptr ds:[055fh], 1 | |
| mov al, 0c0h | |
| out 82h, al | |
| pop ds | |
| sasiinteoi: mov al, 20h | |
| out 08h, al | |
| mov al, 0bh | |
| out 08h, al | |
| in al, 08h | |
| test al, al | |
| jne short sasiintexit | |
| mov al, 20h | |
| out 00h, al | |
| sasiintexit: pop ax | |
| iret | |
| sasibiosstr db "sasibios" | |
| CODE ENDS | CODE ENDS |
| END START | END START |