Well, now that you mentions things that does not seems to make sense in Console_VGA constructor, it ends with: enable() which I would presume is enable interruptions (did not check). But Idt::build(); (Interrupt Descriptor Table) will be called only after Hip::build too in init.