From 8a5fbdabb24250a76feed770bce64d7e3e4f61de Mon Sep 17 00:00:00 2001 From: Miguel Date: Tue, 21 Aug 2018 01:24:14 +0200 Subject: adding new pit code --- asm/pit.h | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 asm/pit.h (limited to 'asm/pit.h') diff --git a/asm/pit.h b/asm/pit.h new file mode 100644 index 0000000..0bec3c4 --- /dev/null +++ b/asm/pit.h @@ -0,0 +1,25 @@ +/** + * @file + * + * PIT - Programmable Interval Timer + * + * config out timer on channel 0 : mode 2 (sys timer) + * * http://en.wikipedia.org/wiki/Intel_8253#Control_Word_Register + * * http://www.brokenthorn.com/Resources/OSDevPit.html + * int0 will be triggered ~25 times a second. + * + * The most magic is performed in pit_interrupt_handler which calls + * the c function responsible for task switching doing vary bad ass + * magic... + */ + +#include + +/** Init PIT - 25 times a second*/ +void pit_init(); + +/** install this interrupt handler to your Interrupt Vector Table */ +void pit_interrupt_handler(); + +/** get number of ticks */ +uint32_t pit_get_ticks(); -- cgit v1.2.3