Working on x86_64 build
[tpg/acess2.git] / Kernel / arch / x86_64 / main.c
index 6388d1b..4e6001d 100644 (file)
@@ -9,7 +9,7 @@ extern void     Desctab_Init(void);
 extern void    MM_InitVirt(void);
 extern void    Heap_Install(void);
 extern void    Threads_Init(void);
-//extern void  Time_Setup(void);
+extern int     Time_Setup(void);
 extern void    System_Init(char *Commandline);
 
 extern void    MM_InitPhys_Multiboot(tMBoot_Info *MBoot);
@@ -35,7 +35,8 @@ void kmain(Uint MbMagic, void *MbInfoPtr)
        case MULTIBOOT_MAGIC:
                // Adjust Multiboot structure address
                mbInfo = (void*)( (Uint)MbInfoPtr + KERNEL_BASE );
-               gsBootCmdLine = (char*)(mbInfo->CommandLine + KERNEL_BASE);
+               gsBootCmdLine = (char*)( (Uint)mbInfo->CommandLine + KERNEL_BASE);
+               Log("gsBootCmdLine = '%s'", gsBootCmdLine);
                
                MM_InitPhys_Multiboot( mbInfo );        // Set up physical memory manager
                break;
@@ -45,6 +46,8 @@ void kmain(Uint MbMagic, void *MbInfoPtr)
                return ;
        }
        
+       Log("gsBootCmdLine = '%s'", gsBootCmdLine);
+       
        *(Uint16*)(0xB8000) = 0x1F00|'D';
        Heap_Install();
        
@@ -52,14 +55,17 @@ void kmain(Uint MbMagic, void *MbInfoPtr)
        Log_Log("Arch", "Starting threading...");
        Threads_Init();
        
-       //Time_Setup();
+       Time_Setup();
        *(Uint16*)(0xB8000) = 0x1F00|'F';
        
        Log_Log("Arch", "Starting VFS...");
        // Load Virtual Filesystem
        VFS_Init();
        
-       *(Uint16*)(0xB8000) = 0x1F00|'G';
+       *(Uint16*)(0xB8000) = 0x1F00|'Z';
+       *(Uint16*)(0xB8002) = 0x1F00|'Z';
+       *(Uint16*)(0xB8004) = 0x1F00|'Z';
+       *(Uint16*)(0xB8006) = 0x1F00|'Z';
        
        // Pass on to Independent Loader
        Log_Log("Arch", "Starting system");

UCC git Repository :: git.ucc.asn.au