blob: f31e47fe2bdaa8695307dcb75709ab032fc02664 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
//! PIT Initialization
const constants = @import("constants.zig");
const asm_io = @import("../../asm/io/io.zig");
pub fn init(frequency: u32) void {
const divisor: u16 = @truncate(constants.base_frequency / frequency);
asm_io.outb(constants.command, constants.mode_square_wave);
asm_io.outb(constants.channel0_data, @truncate(divisor));
asm_io.outb(constants.channel0_data, @truncate(divisor >> 8));
}
pub fn init_default() void {
init(constants.target_frequency);
}
|