diff --git a/labs/lab1-kernel_display/lab1-kernel_display.md b/labs/lab1-kernel_display/lab1-kernel_display.md index 08c437eebdb74ef67931a5625c53083a760318ae..bd5fa7055c1900df648adddc785a27fd30a9928b 100644 --- a/labs/lab1-kernel_display/lab1-kernel_display.md +++ b/labs/lab1-kernel_display/lab1-kernel_display.md @@ -237,6 +237,19 @@ Le fichier `colors.h` fourni des couleurs prédéfinies et la macro `RGB(r,g,b)` [^2]: D'autres exemples de formats : R8:G8:B8:A8, R5:G5:B5, B5:G6:R5, etc. +<!-- +Voici la description des macros implémentées dans `colors.h`\ : + +Macro Description +------------ ---------------------------------------------------------- +`COL8TO5(x)` réduit une composante de 8 bits à 5 bits +`COL8TO6(x)` réduit une composante de 8 bits à 6 bits +`RGB(r,g,b)` converti une couleur encodée sur 24-bit (8:8:8) en une couleur encodée + sur 16 bits (5:6:5) +`COLTO32(x)` *broadcast* une couleur sur 16 bits dans un entier 32 bits +------------ ---------------------------------------------------------- +--> + ### Code boostrap et multiboot Ce code se trouve dans `kernel/boot`\ : @@ -290,7 +303,7 @@ Il est important que votre code se base sur ces champs et que rien lié à l'aff **Rappel théorique** : il n'y a **aucune garantie** que le *pitch* du framebuffer corresponde à la largeur du framebuffer, donc tenez-en compte dans votre code d'affichage. -Afin de vous aider avec l'affichage de texte, les fichiers `font.c` et `font.h` fournis vous mettent à disposition une police de caractères de taille 8x16 où chaque ligne du tableau `font_8x16` représente un caractère et chaque pixel est représenté sur 1 bit. +Afin de vous aider avec l'affichage de texte, les fichiers `font.c` et `font.h` fournis vous mettent à disposition une police de caractères de taille 8x16 où chaque ligne du tableau `font_8x16` représente un caractère et chaque pixel est représenté sur 1 bit. Attention, la table de la police de caractères est de type ASCII étendus et correspondant à la table 8-bit Code Page 437 de l'IBM PC d'origine, décrite ici: [https://en.wikipedia.org/wiki/Code_page_437](https://en.wikipedia.org/wiki/Code_page_437). ### Code lié à la gestion mémoire diff --git a/labs/lab1-kernel_display/lab1-kernel_display.pdf b/labs/lab1-kernel_display/lab1-kernel_display.pdf index e2df37da66397b822fa76dd7372bcf3960bc8a51..cd179e1339b279c114846f2dcb9798ce26ea2ae2 100644 Binary files a/labs/lab1-kernel_display/lab1-kernel_display.pdf and b/labs/lab1-kernel_display/lab1-kernel_display.pdf differ