forked from KolibriOS/kolibrios
modify for compile fasm 1.68 and add build.bat
git-svn-id: svn://kolibrios.org@1132 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
d165a4f143
commit
69eaca2fef
2
kernel/trunk/sec_loader/trunk/boot/after_win/build.bat
Normal file
2
kernel/trunk/sec_loader/trunk/boot/after_win/build.bat
Normal file
@ -0,0 +1,2 @@
|
||||
@fasm -m 65535 kordldr.win.asm kordldr.win
|
||||
@pause
|
16
kernel/trunk/sec_loader/trunk/boot/build.bat
Normal file
16
kernel/trunk/sec_loader/trunk/boot/build.bat
Normal file
@ -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
|
@ -42,11 +42,11 @@ real_start:
|
||||
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 @@ pvd_scan_loop:
|
||||
jnc @f
|
||||
fatal_read_err:
|
||||
mov si, aReadError
|
||||
err:
|
||||
err_:
|
||||
call out_string
|
||||
mov si, aPressAnyKey
|
||||
call out_string
|
||||
@ -84,7 +84,7 @@ err:
|
||||
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 @@ pvd_found:
|
||||
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 @@ nopathtable:
|
||||
|
||||
noloader:
|
||||
mov si, aKernelNotFound
|
||||
jmp err
|
||||
jmp err_
|
||||
|
||||
read_sectors:
|
||||
; es:bx = pointer to data
|
||||
|
2
kernel/trunk/sec_loader/trunk/boot/cdfs/build.bat
Normal file
2
kernel/trunk/sec_loader/trunk/boot/cdfs/build.bat
Normal file
@ -0,0 +1,2 @@
|
||||
@fasm -m 65535 bootsect.asm bootsect.bin
|
||||
@pause
|
@ -68,11 +68,11 @@ if use_lba
|
||||
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 @@ end if
|
||||
jz kordldr_ok
|
||||
noloader:
|
||||
mov si, aLoaderNotFound
|
||||
err:
|
||||
err_:
|
||||
call out_string
|
||||
mov si, aPressAnyKey
|
||||
call out_string
|
||||
@ -185,7 +185,7 @@ do_read_sectors:
|
||||
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 @@ do_read_sectors:
|
||||
dec si
|
||||
jnz @b
|
||||
mov si, aReadError
|
||||
jmp err
|
||||
jmp err_
|
||||
@@:
|
||||
pop ax
|
||||
mov ax, es
|
||||
@ -389,4 +389,4 @@ macro show [procedure]
|
||||
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
|
||||
|
3
kernel/trunk/sec_loader/trunk/boot/fat1x/build.bat
Normal file
3
kernel/trunk/sec_loader/trunk/boot/fat1x/build.bat
Normal file
@ -0,0 +1,3 @@
|
||||
@fasm -m 65535 bootsect.asm bootsect.bin
|
||||
@fasm -m 65535 kordldr.f1x.asm kordldr.f1x
|
||||
@pause
|
@ -53,7 +53,7 @@ read_sectors dw ?
|
||||
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 @@ chs_noloader = 7CAEh
|
||||
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 @@ kordldr_full:
|
||||
mov di, secondary_loader_info
|
||||
call load_file
|
||||
test bx, bx
|
||||
mov bx, [err]
|
||||
mov bx, [err_]
|
||||
jz @f
|
||||
mov si, aKernelNotFound
|
||||
jmp bx
|
||||
|
@ -73,11 +73,11 @@ if use_lba
|
||||
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 @@ end if
|
||||
jnc kordldr_ok
|
||||
noloader:
|
||||
mov si, aLoaderNotFound
|
||||
err:
|
||||
err_:
|
||||
call out_string
|
||||
mov si, aPressAnyKey
|
||||
call out_string
|
||||
@ -170,7 +170,7 @@ do_read_sectors:
|
||||
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 @@ do_read_sectors:
|
||||
dec si
|
||||
jnz @b
|
||||
mov si, aReadError
|
||||
jmp err
|
||||
jmp err_
|
||||
@@:
|
||||
pop ax
|
||||
mov ax, es
|
||||
@ -355,4 +355,4 @@ macro show [procedure]
|
||||
display 13,10
|
||||
}
|
||||
|
||||
show read_sectors32, read_sectors2, err, noloader
|
||||
show read_sectors32, read_sectors2, err_, noloader
|
||||
|
3
kernel/trunk/sec_loader/trunk/boot/fat32/build.bat
Normal file
3
kernel/trunk/sec_loader/trunk/boot/fat32/build.bat
Normal file
@ -0,0 +1,3 @@
|
||||
@fasm -m 65535 bootsect.asm bootsect.bin
|
||||
@fasm -m 65535 kordldr.f32.asm kordldr.f32
|
||||
@pause
|
@ -59,7 +59,7 @@ BS_DrvNum db ?
|
||||
; 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 @@ chs_noloader = 7CA3h ; = chs_err - 3
|
||||
; 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 @@ chs_noloader = 7CA3h ; = chs_err - 3
|
||||
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 @@ nomem:
|
||||
call get_next_cluster
|
||||
jc @f
|
||||
; jmp [noloader]
|
||||
mov ax, [err]
|
||||
mov ax, [err_]
|
||||
sub ax, 3
|
||||
jmp ax
|
||||
@@:
|
||||
@ -173,7 +173,7 @@ kordldr_full:
|
||||
mov di, secondary_loader_info
|
||||
call load_file
|
||||
test bx, bx
|
||||
mov bx, [err]
|
||||
mov bx, [err_]
|
||||
jz @f
|
||||
mov si, aKernelNotFound
|
||||
jmp bx
|
||||
|
Loading…
Reference in New Issue
Block a user