A more detailed log of the boot in a black screen.

git-svn-id: svn://kolibrios.org@2642 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Marat Zakiyanov (Mario79) 2012-04-21 11:41:37 +00:00
parent 78009806ab
commit 2643d953b1
3 changed files with 93 additions and 42 deletions

View File

@ -677,24 +677,22 @@ term9:
ret ret
restore .slot restore .slot
iglobal ;iglobal
if lang eq ru ;if lang eq ru
boot_sched_1 db '‘®§¤ ­¨¥ GDT TSS 㪠§ â¥«ï',0 ; boot_sched_1 db '‘®§¤ ­¨¥ GDT TSS 㪠§ â¥«ï',0
boot_sched_2 db '‘®§¤ ­¨¥ IDT â ¡«¨æë',0 ; boot_sched_2 db '‘®§¤ ­¨¥ IDT â ¡«¨æë',0
else ;else
boot_sched_1 db 'Building gdt tss pointer',0 ; boot_sched_1 db 'Building gdt tss pointer',0
boot_sched_2 db 'Building IDT table',0 ; boot_sched_2 db 'Building IDT table',0
end if ;end if
endg ;endg
build_scheduler: ;build_scheduler:
; mov esi, boot_sched_1
; call boot_log
; call build_process_gdt_tss_pointer
mov esi, boot_sched_1 ; mov esi,boot_sched_2
call boot_log ; call boot_log
; call build_process_gdt_tss_pointer ; ret
; mov esi,boot_sched_2
; call boot_log
ret

View File

@ -49,11 +49,23 @@ keymap_alt:
if lang eq ru if lang eq ru
; boot_fonts db '˜à¨äâë § £à㦥­ë',0 boot_initirq db 'ˆ­¨æ¨ «¨§ æ¨ï IRQ',0
boot_picinit db 'ˆ­¨æ¨ «¨§ æ¨ï PIC',0
boot_v86machine db 'ˆ­¨æ¨ «¨§ æ¨ï á¨á⥬ë V86 ¬ è¨­ë',0
boot_inittimer db 'ˆ­¨æ¨ «¨§ æ¨ï á¨á⥬­®£® â ©¬¥à  (IRQ0)',0
boot_initapic db '<27>®¯ë⪠ ¨­¨æ¨ «¨§ æ¨¨ APIC',0
boot_enableirq db '‚ª«îç¨âì ¯à¥à뢠­¨ï 2, 6, 13, 14, 15',0
boot_enablint_ide db '<27> §à¥è¥­¨¥ ¯à¥à뢠­¨© ¢ ª®­â஫«¥à¥ IDE',0
boot_detectfloppy db '<27>®¨áª floppy ¤¨áª®¢®¤®¢',0
boot_detecthdcd db '<27>®¨áª ¦¥áâª¨å ¤¨áª®¢ ¨ ATAPI ¯à¨¢®¤®¢',0
boot_getcache db '<27>®«ã祭¨¥ ¯ ¬ï⨠¤«ï ªíè ',0
boot_detectpart db '<27>®¨áª à §¤¥«®¢ ­  ¤¨áª®¢ëå ãáâனá⢠å',0
boot_init_sys db 'ˆ­¨æ¨ «¨§ æ¨ï á¨á⥬­®£® ª â «®£  /sys',0
boot_loadlibs db '‡ £à㧪  ¡¨¡«¨®â¥ª (.obj)',0
boot_memdetect db 'Š®«¨ç¥á⢮ ®¯¥à â¨¢­®© ¯ ¬ïâ¨',' ',' Œ¡',0 boot_memdetect db 'Š®«¨ç¥á⢮ ®¯¥à â¨¢­®© ¯ ¬ïâ¨',' ',' Œ¡',0
boot_tss db '“áâ ­®¢ª  TSSs',0 boot_tss db '“áâ ­®¢ª  TSSs',0
boot_cpuid db '—⥭¨¥ CPUIDs',0 boot_cpuid db '—⥭¨¥ CPUIDs',0
boot_devices db '<27>®¨áª ãáâனáâ¢',0 ; boot_devices db '<27>®¨áª ãáâனáâ¢',0
boot_timer db '“áâ ­®¢ª  â ©¬¥à ',0 boot_timer db '“áâ ­®¢ª  â ©¬¥à ',0
boot_irqs db '<27>¥à¥®¯à¥¤¥«¥­¨¥ IRQ',0 boot_irqs db '<27>¥à¥®¯à¥¤¥«¥­¨¥ IRQ',0
boot_setmouse db '“áâ ­®¢ª  ¬ëè¨',0 boot_setmouse db '“áâ ­®¢ª  ¬ëè¨',0
@ -69,15 +81,30 @@ if lang eq ru
boot_pal_vga db '“áâ ­®¢ª  VGA 640x480 ¯ «¨âàë',0 boot_pal_vga db '“áâ ­®¢ª  VGA 640x480 ¯ «¨âàë',0
boot_failed db '‡ £à㧪  ¯¥à¢®£® ¯à¨«®¦¥­¨ï ­¥ 㤠« áì',0 boot_failed db '‡ £à㧪  ¯¥à¢®£® ¯à¨«®¦¥­¨ï ­¥ 㤠« áì',0
boot_mtrr db '“áâ ­®¢ª  MTRR',0 boot_mtrr db '“áâ ­®¢ª  MTRR',0
boot_APIC_found db 'APIC ¢ª«î祭', 0
boot_APIC_nfound db 'APIC ­¥ ­ ©¤¥­', 0
if preboot_blogesc if preboot_blogesc
boot_tasking db '‚ᥠ£®â®¢® ¤«ï § ¯ã᪠, ­ ¦¬¨âॠESC ¤«ï áâ àâ ',0 boot_tasking db '‚ᥠ£®â®¢® ¤«ï § ¯ã᪠, ­ ¦¬¨âॠESC ¤«ï áâ àâ ',0
end if end if
else else
; boot_fonts db 'Fonts loaded',0 boot_initirq db 'Initialize IRQ',0
boot_picinit db 'Initialize PIC',0
boot_v86machine db 'Initialize system V86 machine',0
boot_inittimer db 'Initialize system timer (IRQ0)',0
boot_initapic db 'Try to initialize APIC',0
boot_enableirq db 'Enable interrupts 2, 6, 13, 14, 15',0
boot_enablint_ide db 'Enable interrupts in IDE controller',0
boot_detectfloppy db 'Search floppy drives',0
boot_detecthdcd db 'Search hard drives and ATAPI drives',0
boot_getcache db 'Get memory for cache',0
boot_detectpart db 'Search partitions on disk devices',0
boot_init_sys db 'Initialize system directory /sys',0
boot_loadlibs db 'Loading librares (.obj)',0
boot_memdetect db 'Determining amount of memory',0 boot_memdetect db 'Determining amount of memory',0
boot_tss db 'Setting TSSs',0 boot_tss db 'Setting TSSs',0
boot_cpuid db 'Reading CPUIDs',0 boot_cpuid db 'Reading CPUIDs',0
boot_devices db 'Detecting devices',0 ; boot_devices db 'Detecting devices',0
boot_setmouse db 'Setting mouse',0 boot_setmouse db 'Setting mouse',0
boot_windefs db 'Setting window defaults',0 boot_windefs db 'Setting window defaults',0
boot_bgr db 'Calculating background',0 boot_bgr db 'Calculating background',0
@ -90,14 +117,14 @@ else
boot_pal_vga db 'Setting VGA 640x480 palette',0 boot_pal_vga db 'Setting VGA 640x480 palette',0
boot_failed db 'Failed to start first app',0 boot_failed db 'Failed to start first app',0
boot_mtrr db 'Setting MTRR',0 boot_mtrr db 'Setting MTRR',0
boot_APIC_found db 'APIC enabled', 0
boot_APIC_nfound db 'APIC not found', 0
if preboot_blogesc if preboot_blogesc
boot_tasking db 'All set - press ESC to start',0 boot_tasking db 'All set - press ESC to start',0
end if end if
end if end if
boot_APIC_found db 'APIC enabled', 0
boot_APIC_nfound db 'APIC not found', 0
;new_process_loading db 'K : New Process - loading',13,10,0 ;new_process_loading db 'K : New Process - loading',13,10,0
;new_process_running db 'K : New Process - done',13,10,0 ;new_process_running db 'K : New Process - done',13,10,0
start_not_enough_memory db 'K : New Process - not enough memory',13,10,0 start_not_enough_memory db 'K : New Process - not enough memory',13,10,0

View File

@ -447,6 +447,10 @@ v20ga24:
mov [GETPIXEL], dword Vesa20_getpixel32 mov [GETPIXEL], dword Vesa20_getpixel32
no_mode_0x12: no_mode_0x12:
mov [MOUSE_PICTURE], dword mousepointer
mov [_display.check_mouse], check_mouse_area_for_putpixel
mov [_display.check_m_pixel], check_mouse_area_for_getpixel
; -------- Fast System Call init ---------- ; -------- Fast System Call init ----------
; Intel SYSENTER/SYSEXIT (AMD CPU support it too) ; Intel SYSENTER/SYSEXIT (AMD CPU support it too)
bt [cpu_caps], CAPS_SEP bt [cpu_caps], CAPS_SEP
@ -610,19 +614,31 @@ no_mode_0x12:
rep stosd rep stosd
; REDIRECT ALL IRQ'S TO INT'S 0x20-0x2f ; REDIRECT ALL IRQ'S TO INT'S 0x20-0x2f
mov esi, boot_initirq
call boot_log
call init_irqs call init_irqs
mov esi, boot_picinit
call boot_log
call PIC_init call PIC_init
mov esi, boot_v86machine
call boot_log
; Initialize system V86 machine ; Initialize system V86 machine
call init_sys_v86 call init_sys_v86
mov esi, boot_inittimer
call boot_log
; Initialize system timer (IRQ0) ; Initialize system timer (IRQ0)
call PIT_init call PIT_init
mov esi, boot_initapic
call boot_log
; Try to Initialize APIC ; Try to Initialize APIC
call APIC_init call APIC_init
mov esi, boot_enableirq
call boot_log
; Enable timer IRQ (IRQ0) and hard drives IRQs (IRQ14, IRQ15) ; Enable timer IRQ (IRQ0) and hard drives IRQs (IRQ14, IRQ15)
; they are used: when partitions are scanned, hd_read relies on timer ; they are used: when partitions are scanned, hd_read relies on timer
call unmask_timer call unmask_timer
@ -632,6 +648,8 @@ no_mode_0x12:
stdcall enable_irq, 14 stdcall enable_irq, 14
stdcall enable_irq, 15 stdcall enable_irq, 15
mov esi, boot_enablint_ide
call boot_log
; Enable interrupts in IDE controller ; Enable interrupts in IDE controller
mov al, 0 mov al, 0
mov dx, 0x3F6 mov dx, 0x3F6
@ -640,9 +658,25 @@ no_mode_0x12:
out dx, al out dx, al
;!!!!!!!!!!!!!!!!!!!!!!!!!! ;!!!!!!!!!!!!!!!!!!!!!!!!!!
include 'detect/disks.inc' ; mov esi, boot_detectdisks
; call boot_log
;include 'detect/disks.inc'
mov esi, boot_detectfloppy
call boot_log
include 'detect/dev_fd.inc'
mov esi, boot_detecthdcd
call boot_log
include 'detect/dev_hdcd.inc'
mov esi, boot_getcache
call boot_log
include 'detect/getcache.inc'
mov esi, boot_detectpart
call boot_log
include 'detect/sear_par.inc'
;!!!!!!!!!!!!!!!!!!!!!!!!!! ;!!!!!!!!!!!!!!!!!!!!!!!!!!
mov esi, boot_init_sys
call boot_log
call Parser_params call Parser_params
if ~ defined extended_primary_loader if ~ defined extended_primary_loader
@ -662,6 +696,9 @@ if 0
mov ax, [OS_BASE+0x10000+bx_from_load] mov ax, [OS_BASE+0x10000+bx_from_load]
cmp ax, 'r1'; if using not ram disk, then load librares and parameters {SPraid.simba} cmp ax, 'r1'; if using not ram disk, then load librares and parameters {SPraid.simba}
je no_lib_load je no_lib_load
mov esi, boot_loadlibs
call boot_log
; LOADING LIBRARES ; LOADING LIBRARES
stdcall dll.Load, @IMPORT ; loading librares for kernel (.obj files) stdcall dll.Load, @IMPORT ; loading librares for kernel (.obj files)
call load_file_parse_table ; prepare file parse table call load_file_parse_table ; prepare file parse table
@ -669,24 +706,13 @@ if 0
no_lib_load: no_lib_load:
end if end if
; LOAD FONTS I and II
; stdcall read_file, char, FONT_I, 0, 2304
; stdcall read_file, char2, FONT_II, 0, 2560
mov [MOUSE_PICTURE], dword mousepointer
mov [_display.check_mouse], check_mouse_area_for_putpixel
mov [_display.check_m_pixel], check_mouse_area_for_getpixel
; mov esi, boot_fonts
; call boot_log
; Display APIC status ; Display APIC status
mov esi, boot_APIC_found mov esi, boot_APIC_found
cmp [irq_mode], IRQ_APIC cmp [irq_mode], IRQ_APIC
je @f je @f
mov esi, boot_APIC_nfound mov esi, boot_APIC_nfound
@@: @@:
call boot_log
; PRINT AMOUNT OF MEMORY ; PRINT AMOUNT OF MEMORY
mov esi, boot_memdetect mov esi, boot_memdetect
@ -709,10 +735,10 @@ end if
; BUILD SCHEDULER ; BUILD SCHEDULER
call build_scheduler; sys32.inc ; call build_scheduler; sys32.inc
mov esi, boot_devices ; mov esi, boot_devices
call boot_log ; call boot_log
mov [pci_access_enabled], 1 mov [pci_access_enabled], 1