1 ;----------------------------------------------------------;
2 ; BOS kernel Christoffer Bubach, 2003-2005. ;
3 ;----------------------------------------------------------;
5 ; Initiation function for BOS ;
7 ;----------------------------------------------------------;
12 ;----------------------;
14 ;----------------------;
23 mov esi, pmode_load_ok
27 ;----------------------;
29 ;----------------------;
38 mov esi, kernel_load_ok
45 mov cl, 0x20 ; PIC 1, irq0-irq7 -> int 0x20-27.
46 mov ch, 0x28 ; PIC 2, irq8-irq15 -> int 0x28-30.
65 mov edi, u_isr ; isr.inc
66 call init_idt ; idt.inc
67 mov esi, idt_list ; idt.inc
68 call set_idt_list ; idt.inc
70 sti ; Interrupts back..
85 ;---------------------------------------------;
86 ; enable IRQs (one after one as i code it) ;
87 ;---------------------------------------------;
89 call enable_irq ; Enable IRQ 1.
103 ;------------------------------------;
104 ; get CMOS data, set PIT to 100Hz ;
106 ;------------------------------------;
107 call get_cmos_data ; cmos.inc
108 call set_pit_freq ; timer.inc
110 call enable_irq ; Enable IRQ 0.
112 ;-------------------;
114 ;-------------------;
115 mov ebx, 0x100000 ; address of first free
116 mov ecx, [ram_amount] ; RAM. everything before
117 call init_mem ; that is reserved.
119 ;--------------------;
121 ;--------------------;
122 call fdc_init ; fdc.inc
125 ;-------------------------;
126 ; return to kernel.asm ;
127 ;-------------------------;