From adc84633832d6645618ae57225349a0f090b62cc Mon Sep 17 00:00:00 2001 From: Carlos Fenollosa Date: Thu, 9 Oct 2014 11:41:23 +0200 Subject: [PATCH] lessons 8, 9, 10, entering 32-bit mode --- 08-32bit-print/README.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/08-32bit-print/README.md b/08-32bit-print/README.md index 7af777d..213eb78 100644 --- a/08-32bit-print/README.md +++ b/08-32bit-print/README.md @@ -4,14 +4,16 @@ memory* **Goal: Print on the screen when on 32-bit protected mode** 32-bit mode allows us to use 32 bit registers and memory addressing, -protected memory, virtual memory and other advangades, but we will lose +protected memory, virtual memory and other advantages, but we will lose BIOS interrupts and we'll need to code the GDT (more on this later) -In this lesson we will write a print string routine by directly manipulating +In this lesson we will write a new print string routine which works in +32-bit mode, where we don't have BIOS interrupts, by directly manipulating the VGA video memory instead of calling `int 0x10`. The VGA memory starts at address `0xb8000` and it has a text mode which is useful to avoid manipulating direct pixels. + The formula for accessing a specific character on the 80x25 grid is: `0xb8000 + 2 * (row * 80 + col)`