/kernel/trunk/boot/bootcode.inc |
---|
274,6 → 274,8 |
pop ds |
else |
cld |
push 0 |
pop es |
; \begin{diamond}[02.12.2005] |
; if bootloader sets ax = 'KL', then ds:si points to loader block |
cmp ax, 'KL' |
280,16 → 282,18 |
jnz @f |
mov word [cs:cfgmanager.loader_block], si |
mov word [cs:cfgmanager.loader_block+2], ds |
mov word [es:BOOT_KERNEL_RESTART], kernel_restart_bootblock |
@@: |
; \end{diamond}[02.12.2005] |
; if bootloader sets cx = 'HA' and dx = 'RD', then bx contains identifier of source hard disk |
; (see comment to bx_from_load) |
; if bootloader sets cx = 'HA' and dx = 'RD', then bx contains identifier of source disk |
; (see comment to BOOT_BX_FROM_LOAD and loader_doc.txt) |
mov word [es:BOOT_BX_FROM_LOAD], 'r1' ; default value: /rd/1 |
cmp cx, 'HA' |
jnz no_hd_load |
cmp dx, 'RD' |
jnz no_hd_load |
mov word [cs:bx_from_load], bx ; {SPraid}[13.03.2007] |
mov [es:BOOT_BX_FROM_LOAD], bx |
no_hd_load: |
; set up stack |
966,7 → 970,7 |
mov al, [preboot_device] |
dec al |
mov [boot_dev], al |
mov [es:BOOT_DEV], al |
; GET MEMORY MAP |
include '../detect/biosmem.inc' |
973,7 → 977,7 |
; READ DISKETTE TO MEMORY |
cmp [boot_dev], 0 |
cmp byte [es:BOOT_DEV], 0 |
jne no_sys_on_floppy |
mov si, diskload |
call print |
1300,7 → 1304,7 |
out dx, al |
if defined extended_primary_loader |
cmp [boot_dev], 1 |
cmp [es:BOOT_DEV], 1 |
jne no_sys_from_primary |
; load kolibri.img using callback from primary loader |
and word [movedesc + 24 + 2], 0 |
/kernel/trunk/boot/bootstr.inc |
---|
31,18 → 31,9 |
} |
d80x25_top: |
line_full_top |
if __REV__ > 0 |
cur_line_pos = 75 |
store byte ' ' at d80x25_top+cur_line_pos+1 |
rev_var = __REV__ |
while rev_var > 0 |
store byte rev_var mod 10 + '0' at d80x25_top+cur_line_pos |
cur_line_pos = cur_line_pos - 1 |
rev_var = rev_var / 10 |
end while |
store byte ' ' at d80x25_top+cur_line_pos |
store dword ' SVN' at d80x25_top+cur_line_pos-4 |
end if |
cur_line_pos = 72 |
; this signature will be replaced with revision number (in kernel.asm) |
store dword '****' at d80x25_top + cur_line_pos |
space_msg: |
line_space |
/kernel/trunk/boot/preboot.inc |
---|
29,7 → 29,6 |
preboot_device db 0 ; boot device |
; (1-floppy 2-harddisk 3-kernel restart 4-format ram disk) |
;!!!! 0 - autodetect !!!! |
preboot_blogesc = 0 ; start immediately after bootlog |
preboot_biosdisk db 0 ; use V86 to access disks through BIOS (1-yes, 2-no) |
if defined extended_primary_loader |
preboot_timeout dw 5*18 ; timeout in 1/18th of second for config settings screen |
/kernel/trunk/boot/rdload.inc |
---|
11,7 → 11,7 |
read_ramdisk: |
; READ RAMDISK IMAGE FROM HD (only for IDE0, IDE1, IDE2, IDE3) |
cmp [boot_dev+OS_BASE+0x10000], 1 |
cmp byte [BOOT_DEV+OS_BASE+0x10000], 1 |
jne no_sys_on_hd.1 |
xor ebp, ebp |
112,7 → 112,7 |
DEBUGF 1, "K : RD not found\n" |
.1: |
; test_to_format_ram_disk (need if not using ram disk) |
cmp [boot_dev+OS_BASE+0x10000], 3 |
cmp byte [BOOT_DEV+OS_BASE+0x10000], 3 |
jne not_format_ram_disk |
; format_ram_disk |
mov edi, RAMDISK |
/kernel/trunk/boot/shutdown.inc |
---|
348,7 → 348,9 |
; bootloader interface |
push 0x1000 |
pop ds |
mov si, kernel_restart_bootblock |
push 0 |
pop es |
mov si, [es:BOOT_KERNEL_RESTART] |
mov ax, 'KL' |
jmp 0x1000:0000 |