Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 747 → Rev 748

/kernel/trunk/boot/shutdown.inc
71,13 → 71,11
 
nbw:
in al,0x60
call pause_key
cmp al,6
jae nbw
mov bl,al
nbw2:
in al,0x60
call pause_key
cmp al,bl
je nbw2
cmp al,240 ;ax,240
93,13 → 91,7
 
nbw32:
 
dec ax ; 1 = write floppy
js nbw
jnz no_floppy_write
call floppy_write
jmp temp_3456 ;nbw
no_floppy_write:
 
dec ax
dec ax ; 2 = power off
jnz no_apm_off
call APM_PowerOff
113,74 → 105,10
mov word[0x0072],0x1234
jmp 0xF000:0xFFF0
 
pause_key:
mov cx,100
pause_key_1:
loop pause_key_1
ret
 
rdelay:
ret
 
floppy_write: ; write diskette image to physical floppy
 
cmp [flm],byte 1
je fwwritedone
mov [flm],byte 1
 
xor ax, ax ; reset drive
xor dx, dx
int 0x13
 
mov cx,0x0001 ; startcyl,startsector
xor dx, dx ; starthead,drive
mov ax, 80*2 ; read no of sect
 
fwwrites:
push ax
 
; move 1mb+ -> 0:a000
 
pusha
mov si, fwmovedesc
mov cx,256*18
mov ah,0x87
push ds
pop es
int 0x15
add dword [fwmovedesc+0x12], 512*18
popa
 
xor si,si
mov es,si
fwnewwrite:
mov bx,0xa000 ; es:bx -> data area
mov ax,0x0300+18 ; read, no of sectors to read
int 0x13
 
test ah, ah
jz fwgoodwrite
 
inc si
cmp si,10
jnz fwnewwrite
 
; can't access diskette - return
pop ax
ret
 
fwgoodwrite:
inc dh
cmp dh,2
jnz fwbb2
mov dh,0
inc ch
fwbb2:
pop ax
dec ax
jnz fwwrites
ret
 
APM_PowerOff:
mov ax, 5304h
xor bx, bx
220,7 → 148,6
mov cx,3
int 0x15
;!!!!!!!!!!!!!!!!!!!!!!!!
fwwritedone:
ret
 
restart_kernel: