int main(void) { static console_command_t commands[2]; commands[0].callback = command_callback; commands[1].callback = branch_hub_command_callback; commands[1].help_callback = branch_hub_help_callback; ADCON1 = 0x0F; CMCON = 0x07; TRISA = 0x00; PORTA = 0x00; interrupt_initialize(); timer_initialize(); timer_register(timer_callback, 1000, &timer_id); timer_enable(timer_id); console_initialize(); console_register_command(commands[0], "main"); console_register_command(commands[1], "hub"); hub_init(HUB_ADDRESS); while(1) { console_process_tasks(); } }
noreturn void _main(void) { VesaInfo *v = (VesaInfo*)VESA_INFO_ADDR; pic_mask_all(); #ifndef USE_VESA console_initialize(); #endif paging_initialize(); lfq_initialize((volatile lfq_t*)KERNEL_LOG_ADDR, (void*)((unsigned int)KERNEL_LOG_ADDR + sizeof(lfq_t)), sizeof(int), KERNLOG_UNITS); printk("Starter has woken up.\n"); mpu_initialize(); memory_initialize(); printk("VESA mode=%x fb=%p width=%d height=%d bpl=%d bpp=%d\n", v->mode_attr, v->buffer_addr, v->width, v->height, v->bytes_per_line, v->bits_per_pixel); printk("VESA mm=%d, red=%d,%d green=%d,%d blue=%d,%d dcm=%d\n", v->memory_model, v->red_position, v->red_size, v->green_position, v->green_size, v->blue_position, v->blue_size, v->direct_color_mode); kick((ModuleHeader*)MODULES_ADDR); for (;;); }
void kernel_main(){ console_initialize(); gdt_install(); idt_install(); isrs_install(); irq_install(); timer_install(); keyboard_install(); __asm__ __volatile__ ("sti"); console_putString("Hello, kernel World!\n"); for (;;){ } }
bool app_start(char *err_str) { // initialize timing game_time_initialize(); // physics ray tracing if (!ray_trace_initialize(err_str)) return(FALSE); // OS network initialization net_initialize(); // read setup preferences setup_xml_read(); // client network defaults net_setup.mode=net_mode_none; // initialize server if (!server_initialize(err_str)) return(FALSE); // initialize view // if not running in dedicated host mode if (!app.dedicated_host) { if (!view_initialize(err_str)) { server_shutdown(); return(FALSE); } console_initialize(); } return(TRUE); }