diff --git a/Architecture/amd64/cpu/AdvancedProgrammableInterruptController.cpp b/Architecture/amd64/cpu/AdvancedProgrammableInterruptController.cpp index 3249413..ad7c1f4 100644 --- a/Architecture/amd64/cpu/AdvancedProgrammableInterruptController.cpp +++ b/Architecture/amd64/cpu/AdvancedProgrammableInterruptController.cpp @@ -300,7 +300,10 @@ namespace APIC LVTTimer timer = {.raw = 0}; timer.Vector = Vector; timer.TimerMode = 0; - this->lapic->Write(APIC_TDCR, DivideBy128); + if (strcmp(CPU::Hypervisor(), x86_CPUID_VENDOR_TCG) != 0) + this->lapic->Write(APIC_TDCR, DivideBy128); + else + this->lapic->Write(APIC_TDCR, DivideBy16); this->lapic->Write(APIC_TICR, Ticks * Miliseconds); this->lapic->Write(APIC_TIMER, timer.raw); }