i try to complain it, but it is quiet difficult in english....
at the end i have 2 files:
Code: Select all
filename size sectors
------------------------------------------------
boot.bin 512b #1
kernel.bin ? #2 -?
boot.bin
this one load the kernel into the memory and exec that
kernel.bin
this one is in fact 3 files.
Code: Select all
filename size task
------------------------------------------------
kernel16.asm 512b enable pm32, a20 gate
kernel32.asm ? jump to the c part
kernel.c ? real kernel writen in c
the two files kernel32.asm (kernel32.o) and kernel.c (kernel.o) are both 32bit code, so i can easily link them together (result kernel32.bin). at the end i copy the kernel16.bin file at the begining of the kernel32.bin (result kernel.bin).
thats why i jump after enableing pmode at the end of the kernel16.bin file.
i hope so that you understand my text :S
greez zack
@bregma
i have programmed the two pics.
that what you are saying about irq0, thats what i mean to. how can i dismask the irq0 (for checking)?
outb(PIC_1_1, 0x01);??
->interrupt_0 is in the system.c file (if the function wouldn't exists, it would appear a error at linking... )