Carlos e821650f8e updated README 20 10 vuotta sitten
..
cpu 7797630a24 Lesson 20 step 1, the timer 10 vuotta sitten
drivers 1a98cab56b lesson 20, preliminar 10 vuotta sitten
kernel 7797630a24 Lesson 20 step 1, the timer 10 vuotta sitten
Makefile 1a98cab56b lesson 20, preliminar 10 vuotta sitten
README.md e821650f8e updated README 20 10 vuotta sitten
boot 1a98cab56b lesson 20, preliminar 10 vuotta sitten

README.md

Concepts you may want to Google beforehand: CPU timer, keyboard interrupts

Goal: Implement our first IRQ handlers: the CPU timer and the keyboard

Everything is now ready to test our hardware interrupts.

Timer

The timer is easy to configure. First we'll declare an init_timer() on cpu/timer.h and implement it on cpu/timer.c. It is just a matter of computing the clock frequency and sending the bytes to the appropriate ports.

We will now fix kernel/utils.c int_to_ascii() to print the numbers in the correct order. For that, we need to implement reverse() and strlen().

Finally, go back to the kernel/kernel.c and do two things. Enable interrupts again (very important!) and then initialize the timer interrupt.

Go make run and you'll see the clock ticking!