Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 1065 → Rev 1132

/kernel/trunk/sec_loader/trunk/boot/after_win/build.bat
0,0 → 1,2
@fasm -m 65535 kordldr.win.asm kordldr.win
@pause
/kernel/trunk/sec_loader/trunk/boot/build.bat
0,0 → 1,16
echo off
cls
echo ** bulding after win loader **
@fasm -m 65535 after_win/kordldr.win.asm after_win/kordldr.win
echo ==============================
echo ** building first loader for cd/dvd **
@fasm -m 65535 cdfs/bootsect.asm cdfs/bootsect.bin
echo ==============================
echo ** building first loader for fat12/fat16 **
@fasm -m 65535 fat1x/bootsect.asm fat1x/bootsect.bin
@fasm -m 65535 fat1x/kordldr.f1x.asm fat1x/kordldr.f1x
echo ==============================
echo ** building firs loader for fat32 **
@fasm -m 65535 fat32/bootsect.asm fat32/bootsect.bin
@fasm -m 65535 fat32/kordldr.f1x.asm fat32/kordldr.f1x
@pause
/kernel/trunk/sec_loader/trunk/boot/cdfs/bootsect.asm
42,11 → 42,11
mov bx, 55AAh
int 13h
mov si, aNoLBA
jc err
jc err_
cmp bx, 0AA55h
jnz err
jnz err_
test cl, 1
jz err
jz err_
; get file system information
; scan for Primary Volume Descriptor
db 66h
60,7 → 60,7
jnc @f
fatal_read_err:
mov si, aReadError
err:
err_:
call out_string
mov si, aPressAnyKey
call out_string
84,7 → 84,7
jnz pvd_scan_loop
; Volume Descriptor Set Terminator reached, no PVD found - fatal error
mov si, no_pvd
jmp err
jmp err_
pvd_found:
add bx, 80h
mov ax, [bx]
103,7 → 103,7
int 12h
mov si, nomem_str
cmp ax, 71000h / 400h
jb err
jb err_
shr ax, 1
sub ax, 60000h / 800h
mov [size_rest], ax
159,7 → 159,7
 
noloader:
mov si, aKernelNotFound
jmp err
jmp err_
 
read_sectors:
; es:bx = pointer to data
/kernel/trunk/sec_loader/trunk/boot/cdfs/build.bat
0,0 → 1,2
@fasm -m 65535 bootsect.asm bootsect.bin
@pause
/kernel/trunk/sec_loader/trunk/boot/fat1x/bootsect.asm
68,11 → 68,11
mov bx, 55AAh
int 13h
mov si, aNoLBA
jc err
jc err_
cmp bx, 0AA55h
jnz err
jnz err_
test cx, 1
jz err
jz err_
else
mov ah, 8
int 13h
122,7 → 122,7
jz kordldr_ok
noloader:
mov si, aLoaderNotFound
err:
err_:
call out_string
mov si, aPressAnyKey
call out_string
185,7 → 185,7
mov ah, 42h
int 13h
mov si, aReadError
jc err
jc err_
; restore stack
add sp, 10h
; increase current sector & buffer; decrease number of sectors
257,7 → 257,7
dec si
jnz @b
mov si, aReadError
jmp err
jmp err_
@@:
pop ax
mov ax, es
389,4 → 389,4
display 13,10
}
 
show read_sectors, read_sectors2, lookup_in_root_dir, scan_for_filename, err, noloader
show read_sectors, read_sectors2, lookup_in_root_dir, scan_for_filename, err_, noloader
/kernel/trunk/sec_loader/trunk/boot/fat1x/build.bat
0,0 → 1,3
@fasm -m 65535 bootsect.asm bootsect.bin
@fasm -m 65535 kordldr.f1x.asm kordldr.f1x
@pause
/kernel/trunk/sec_loader/trunk/boot/fat1x/kordldr.f1x.asm
53,7 → 53,7
read_sectors2 dw ?
lookup_in_root_dir dw ?
scan_for_filename dw ?
err dw ?
err_ dw ?
noloader dw ?
cachelimit dw ?
filesize: ; will be used to save file size
116,7 → 116,7
jae @f
nomem:
mov si, nomem_str
jmp [err]
jmp [err_]
@@:
shr ax, 3
mov [cachelimit], ax ; size of cache - 1
182,7 → 182,7
mov di, secondary_loader_info
call load_file
test bx, bx
mov bx, [err]
mov bx, [err_]
jz @f
mov si, aKernelNotFound
jmp bx
/kernel/trunk/sec_loader/trunk/boot/fat32/bootsect.asm
73,11 → 73,11
mov bx, 55AAh
int 13h
mov si, aNoLBA
jc err
jc err_
cmp bx, 0AA55h
jnz err
jnz err_
test cl, 1
jz err
jz err_
else
mov ah, 8
int 13h
106,7 → 106,7
jnc kordldr_ok
noloader:
mov si, aLoaderNotFound
err:
err_:
call out_string
mov si, aPressAnyKey
call out_string
170,7 → 170,7
mov ah, 42h
int 13h
mov si, aReadError
jc err
jc err_
; restore stack
add sp, 10h
; increase current sector & buffer; decrease number of sectors
236,7 → 236,7
dec si
jnz @b
mov si, aReadError
jmp err
jmp err_
@@:
pop ax
mov ax, es
355,4 → 355,4
display 13,10
}
 
show read_sectors32, read_sectors2, err, noloader
show read_sectors32, read_sectors2, err_, noloader
/kernel/trunk/sec_loader/trunk/boot/fat32/build.bat
0,0 → 1,3
@fasm -m 65535 bootsect.asm bootsect.bin
@fasm -m 65535 kordldr.f32.asm kordldr.f32
@pause
/kernel/trunk/sec_loader/trunk/boot/fat32/kordldr.f32.asm
59,7 → 59,7
; rb 5 ; BS_FilSysType, first 5 bytes
read_sectors32 dw ?
read_sectors2 dw ?
err dw ?
err_ dw ?
noloader dw ?
cachelimit dw ?
fatcachehead rw 2
87,12 → 87,12
; determine version of bootsector (LBA vs CHS)
mov [read_sectors2], chs_read_sectors2
mov bx, chs_err
mov [err], bx
mov [err_], bx
; mov [noloader], chs_noloader
cmp byte [bx], 0xE8 ; [chs_err] = 0xE8 for CHS version, 0x14 for LBA version
jz @f
add [read_sectors2], lba_read_sectors2 - chs_read_sectors2
add [err], lba_err - chs_err
add [err_], lba_err - chs_err
; mov [noloader], lba_noloader
@@:
xor bx, bx
102,7 → 102,7
jae @f
nomem:
mov si, nomem_str
jmp [err]
jmp [err_]
@@:
shr ax, 3
mov [cachelimit], ax ; size of cache - 1
141,7 → 141,7
call get_next_cluster
jc @f
; jmp [noloader]
mov ax, [err]
mov ax, [err_]
sub ax, 3
jmp ax
@@:
173,7 → 173,7
mov di, secondary_loader_info
call load_file
test bx, bx
mov bx, [err]
mov bx, [err_]
jz @f
mov si, aKernelNotFound
jmp bx