Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 8089 → Rev 8091

/kernel/trunk/boot/bootcode.inc
667,7 → 667,7
jnz .show_remarks
; e) preboot_device = from where to boot?
if defined extended_primary_loader
_ask_question bdev,'12',preboot_device ; range accepted for answer: 1-2
_ask_question bdev,'13',preboot_device ; range accepted for answer: 1-3
else
_ask_question bdev,'14',preboot_device ; range accepted for answer: 1-4
end if
970,9 → 970,25
; BOOT DEVICE
 
mov al, [preboot_device]
dec al
if defined extended_primary_loader
cmp al, RD_LOAD_FROM_MEMORY
jnz @f
mov al, RD_LOAD_FROM_NONE
@@:
end if
mov [es:BOOT_LO.rd_load_from], al
 
; /sys path
mov eax, dword[preboot_syspath+0]
mov dword[es:BOOT_LO.syspath+0], eax
mov eax, dword[preboot_syspath+4]
mov dword[es:BOOT_LO.syspath+4], eax
mov eax, dword[preboot_syspath+8]
mov dword[es:BOOT_LO.syspath+8], eax
mov eax, dword[preboot_syspath+12]
mov dword[es:BOOT_LO.syspath+12], eax
 
 
; GET MEMORY MAP
include '../detect/biosmem.inc'
 
/kernel/trunk/boot/booten.inc
30,7 → 30,7
ask_bd db "Add disks visible by BIOS emulated in V86-mode? [1-yes, 2-no]: ",0
 
if defined extended_primary_loader
bdev db "Load ramdisk from [1-floppy; 2-kolibri.img]: ",0
bdev db "Load ramdisk from [1-floppy; 2-kolibri.img; 3-don't load]: ",0
else
bdev db "Load ramdisk from [1-floppy; 2-C:\kolibri.img (FAT32);"
db 13,10,186," "
75,9 → 75,10
preboot_device_msg db " [e] Floppy image: ",0
 
if defined extended_primary_loader
preboot_device_msgs dw 0,pdm1,pdm2,0
preboot_device_msgs dw 0,pdm1,pdm2,pdm3,0
pdm1 db "real floppy",13,10,0
pdm2 db "C:\kolibri.img (FAT32)",13,10,0
pdm3 db "do not use floppy image",13,10,0
else
preboot_device_msgs dw 0,pdm1,pdm2,pdm3,pdm4,0
pdm1 db "real floppy",13,10,0
/kernel/trunk/boot/bootru.inc
30,7 → 30,8
ask_bd cp866 "Добавить диски, видимые через BIOS в режиме V86? [1-да, 2-нет]: ",0
 
if defined extended_primary_loader
bdev cp866 "Загрузить образ из [1-дискета; 2-kolibri.img из папки загрузки]: ",0
bdev cp866 "Загрузить образ из [1-дискета; 2-kolibri.img из папки загрузки;",13,10
cp866 "║ 3-не загружать]: ",0
else
bdev cp866 "Загрузить образ из [1-дискета; 2-C:\kolibri.img (FAT32);",13,10
cp866 "║ 3-использовать уже загруженный образ;",13,10
73,9 → 74,10
preboot_device_msg cp866 " [e] Образ дискеты: ",0
 
if defined extended_primary_loader
preboot_device_msgs dw 0,pdm1,pdm2,0
preboot_device_msgs dw 0,pdm1,pdm2,pdm3,0
pdm1 cp866 "настоящая дискета",13,10,0
pdm2 cp866 "kolibri.img из папки загрузки",13,10,0
pdm3 cp866 "не загружать образ рамдиска",13,10,0
else
preboot_device_msgs dw 0,pdm1,pdm2,pdm3,pdm4,0
pdm1 cp866 "настоящая дискета",13,10,0
/kernel/trunk/boot/parsers.inc
74,12 → 74,25
jc .nothing
cmp al, 1
jb .nothing
cmp al, 2
cmp al, 3
ja .nothing
mov [es:preboot_device], al
.nothing:
ret
 
parse_syspath:
; everything except spaces
mov bx, preboot_syspath
.next_char:
call parse_char
jc .done
mov [es:bx], al
inc bx
jmp .next_char
.done:
mov byte[es:bx], 0 ; terminator
ret
 
parse_char:
; skip spaces and return the next character or CF if EOF.
cmp si, dx
/kernel/trunk/boot/preboot.inc
27,9 → 27,12
preboot_launcher db 0 ; start launcher after kernel is loaded? (1-yes, 2-no)
preboot_dma db 0 ; use DMA for access to HDD (1-always, 2-only for read, 3-never)
preboot_device db 0 ; device to load ramdisk from
; 0-floppy 1-harddisk 2-kernel restart
; 3-format ram disk 4-don't use ramdisk
; 1-floppy 2-harddisk 3-kernel restart
; 4-format ram disk 5-don't use ramdisk
; !!!! 0 - autodetect !!!!
preboot_biosdisk db 0 ; use V86 to access disks through BIOS (1-yes, 2-no)
preboot_syspath db '/RD/1',0 ; path to /sys dir
rb 20-($-preboot_syspath)
if defined extended_primary_loader
; timeout in 1/18th of second for config settings screen
preboot_timeout dw PREBOOT_TIMEOUT*18
/kernel/trunk/boot/rdload.inc
75,13 → 75,6
call register_ramdisk
jmp yes_sys_on_hd
;-----------------------------------------------------------------------------
; Register ramdisk file system
register_ramdisk:
mov esi, boot_initramdisk
call boot_log
call ramdisk_init
ret
;-----------------------------------------------------------------------------
iglobal
align 4
read_image_fsinfo:
/kernel/trunk/boot/uefi4kos.asm
204,14 → 204,14
 
cli
 
mov rsi, kernel_bin_data_begin
mov rsi, kernel_data_begin
mov rdi, KERNEL_BASE
mov rcx, (kernel_bin_data_end - kernel_bin_data_begin + 7) / 8
mov rcx, (kernel_data_end - kernel_data_begin + 7) / 8
rep movsq
 
mov rsi, kolibri_img_data_begin
mov rsi, ramdisk_data_begin
mov rdi, RAMDISK_BASE
mov rcx, (kolibri_img_data_end - kolibri_img_data_begin + 7 ) / 8
mov rcx, (ramdisk_data_end - ramdisk_data_begin + 7 ) / 8
rep movsq
 
xor esi, esi
232,9 → 232,11
mov word[esi + BOOT_LO.apm_code_16], 0
mov word[esi + BOOT_LO.apm_data_16], 0
mov byte[esi + BOOT_LO.bios_hd_cnt], 0
mov word[esi + BOOT_LO.sys_disk], 'r1' ; boot from /rd/1
mov rsi, syspath
mov rdi, BOOT_LO.syspath
mov ecx, 32
rep movsb
 
 
lgdt [cs:GDTR]
 
mov ax, DATA_32_SELECTOR
428,17 → 430,19
msg_error du 'Error!',13,10,0
msg du 79 dup ' ',13,10,0
 
syspath db '/RD/1',0
 
memory_map rb MEMORY_MAP_SIZE
gop_buffer rb GOP_BUFFER_SIZE
 
 
kernel_bin_data_begin:
file '../kernel.bin'
kernel_bin_data_end:
kernel_data_begin:
file '../kernel.bin.ext_loader'
kernel_data_end:
kolibri_img_data_begin:
ramdisk_data_begin:
file '../../../data/kolibri.img'
kolibri_img_data_end:
ramdisk_data_end:
 
align 16
data fixups