void _E32Startup_Body(TLinAddr aRomHeader, TLinAddr aSuperPage) // // The main startup program // aRomHeader is address of ROM header passed in by bootstrap // aSuperPage is address of super page passed in by bootstrap // { RomHeaderAddress = aRomHeader; SuperPageAddress = aSuperPage; HwInit0(); KPrintf("RomHeaderAddress = %08x", RomHeaderAddress); KPrintf("SuperPageAddress = %08x", SuperPageAddress); KPrintf("Calling global constructors..."); constructStatics(); KPrintf("Calling KernelMain()..."); KernelMain(); }
void kmain( void* mdb,u32i magic ) { if( magic != 0x2BADB002 ) { while(1); } InitDescriptorTables(); VideoInit(); SetColor(BLACK,BRIGHT_WHITE); KPrintf("This is Atomic Kernel 12715A\n"); KPrintf("Starting Timer..."); InitTimer(100); KPrintf("Done.\n"); KPrintf("Starting Keyboard..."); InitKeyboard(); KPrintf("Done.\n"); KPrintf("Starting Paging..."); InitialisePaging(); KPrintf("Done.\n"); KPrintf("Starting Heap..."); HeapInit(); KPrintf("Done.\n"); u32i *A,*B,*C; A = Kmalloc(8); B = Kmalloc(8); KPrintf("A:%x,B:%x",A,B); KFree(A); KFree(B); C = Kmalloc(16); KPrintf("C:%x\n",C); while(1); }