diff --git a/src/sys/boot/bootsec.asm b/src/sys/boot/bootsec.asm index 241efb1..fb25b58 100755 --- a/src/sys/boot/bootsec.asm +++ b/src/sys/boot/bootsec.asm @@ -156,19 +156,18 @@ ; Re-enter protected mode ! A20 is already enabled -;mov ax, 0x4f0a -;xor bx,bx -;int 0x10 -;xor eax,eax -;mov ax,es -;shl eax,4 -;and edi, 0xFFFF -;add edi,ebx -;xor bx,bx -;mov es,bx -;mov si, 0x2000 -;mov [es:si],eax -;mov [es:si+4],cx +mov ax, 0x4f0a +xor bx,bx +int 0x10 +xor eax,eax +mov ax,es +mov bx,di +xor dx,dx +mov es,dx +mov si, 0x3000 +mov [es:si],ax +mov [es:si+4],bx +mov [es:si+8],cx cli ; No interrupts please at all lgdt [gdtinfo] mov ecx, cr0 diff --git a/src/sys/init/main.c b/src/sys/init/main.c index f58e1df..ccbe64f 100755 --- a/src/sys/init/main.c +++ b/src/sys/init/main.c @@ -74,6 +74,9 @@ } int main() { + int i = 0; + uShort *vesaInfo = (uShort*) 0x3000; + uChar *vesaData; clearScreen(); outputVersion(); //Display Version Info init8259(); //Initialize PIC @@ -84,6 +87,12 @@ initScheduler(); //Initialize Scheduler initFloppy(); //Initialize Floppy Controller initUbixFS(); + kprintf("[%i][%i][%i][%i][%i][%i]\n",vesaInfo[0],vesaInfo[1],vesaInfo[2],vesaInfo[3],vesaInfo[4],vesaInfo[5]); + vesaData = (uChar *) vesaInfo[0]; + for (i=0;i