* Copyright (c) 2001,2003,2004 David H. Hovemeyer <daveho@cs.umd.edu>
* Copyright (c) 2003, Jeffrey K. Hollingsworth <hollings@cs.umd.edu>
* Copyright (c) 2004, Iulian Neamtiu <neamtiu@cs.umd.edu>
- * $Revision: 1.31 $
+ * $Revision: 1.37 $
*
* This is free software. You are permitted to use,
* redistribute, and modify it as specified in the file "COPYING".
#include <geekos/vm.h>
#include <geekos/gdt.h>
+#include <geekos/vmm_stubs.h>
+
+#include <geekos/pci.h>
*/
void Main(struct Boot_Info* bootInfo)
{
- struct Kernel_Thread * key_thread;
- struct Kernel_Thread * spkr_thread;
- ulong_t doIBuzz = 0;
+
+ Out_Byte(0x1234,5);
+ Out_Byte(0x1234,5);
Init_BSS();
Init_Screen();
-
Init_Serial();
Init_Mem(bootInfo);
Init_CRC32();
Init_Keyboard();
Init_VM(bootInfo);
Init_Paging();
+
+ Init_PCI();
+
+ Init_Stubs();
// Init_IDE();
-#if 1
+#if 0
SerialPrint("Dumping VM kernel Code (first 128 bytes @ 0x%x)\n", 0x100000);
SerialMemDump((unsigned char *)0x100000, 256);
/*
#endif
#if 0
- SerialPrint("Dumping BIOS code f0000-fffff\n\n");
- SerialMemDump((unsigned char *)0xf0000, 65536);
+ {
+
+ struct Kernel_Thread * key_thread;
+ struct Kernel_Thread * spkr_thread;
+
+ ulong_t doIBuzz = 0;
+
+ SerialPrint("Dumping BIOS code ffff0-fffff\n\n");
+ SerialMemDump((unsigned char *)0x10fff0, 16);
/*
SerialPrint("Dumping kernel Code (first 512 bytes @ 0x%x)\n",KERNEL_START);
SerialMemDump((unsigned char *)VM_KERNEL_START, 512);
*/
-#endif
-#if 1
- SerialPrintLevel(1000,"Launching Noisemaker and keyboard listener threads\n");
+ SerialPrint("Noisemaker and keyboard listener threads\n");
key_thread = Start_Kernel_Thread(Keyboard_Listener, (ulong_t)&doIBuzz, PRIORITY_NORMAL, false);
spkr_thread = Start_Kernel_Thread(Buzzer, (ulong_t)&doIBuzz, PRIORITY_NORMAL, false);
-
+ }
#endif
{
- RunVMM();
+ RunVMM(bootInfo);
}