|
|
| version 1.2, 2003/12/10 14:56:17 | version 1.5, 2004/03/19 00:30:01 |
|---|---|
| Line 1 | Line 1 |
| .186 | |
| CODE SEGMENT | ORG 0 |
| ASSUME CS:CODE,DS:nothing,ES:nothing,SS:nothing | USE16 |
| ORG 0000H | CPU 8086 |
| FIXCS equ 2eh | FIXCS equ 2eh |
| START: mov cx, 1000h | segment .hddboot start=0x0000 |
| mov bx, 8000h | |
| mov ss, cx | |
| mov sp, bx | |
| add bh, 20h | |
| mov es, bx | |
| xor di, di | START: jmp short main |
| nop | |
| nop | |
| db "IPL1", 0, 0, 0, 0x1e | |
| main: mov ax, 0x0a04 | |
| int 0x18 | |
| mov ah, 0x16 | |
| mov dx, 0xe120 | |
| int 0x18 | |
| cli | |
| cld | cld |
| lea ax, [di + 20h] | mov ax, 0xa000 |
| rep stosw | mov es, ax |
| mov al, 0e1h | mov si, nosysmsg |
| mov cx, 1fe0h | |
| atrclr: stosb | |
| inc di | |
| loop atrclr | |
| mov si, offset nosysmsg | |
| xor di, di | xor di, di |
| call putmsg | call putmsg |
| mov di, 160 | mov di, 160 |
| call putmsg | call putmsg |
| mine: cli | .hlt: hlt |
| hlt | jmp short .hlt |
| jmp mine | |
| putmsg: db FIXCS | putmsg: db FIXCS |
| lodsw | lodsw |
| test ax, ax | test ax, ax |
| je short putmsgend | je short .end |
| stosw | stosw |
| inc di | inc di |
| inc di | inc di |
| jmp short putmsg | jmp short putmsg |
| putmsgend: ret | .end: ret |
| ; このハードディスクイメージはフォーマットされていません. | ; このハードディスクイメージはフォーマットされていません. |
| Line 54 nosysmsg dw 3304h,4e04h,4f05h,3c01h,4905 | Line 51 nosysmsg dw 3304h,4e04h,4f05h,3c01h,4905 |
| dw 7204h,5e21h,7e26h,6518h,2401h,6a05h,3b05h,4305h | dw 7204h,5e21h,7e26h,6518h,2401h,6a05h,3b05h,4305h |
| dw 4805h,3704h,4604h,3c12h,3504h,2404h,2501h,0 | dw 4805h,3704h,4604h,3c12h,3504h,2404h,2501h,0 |
| CODE ENDS | ends |
| END START | |