diff --git a/14-checkpoint/README.md b/14-checkpoint/README.md index 8d9958e..7a04ed9 100644 --- a/14-checkpoint/README.md +++ b/14-checkpoint/README.md @@ -11,7 +11,9 @@ and think on a strategy. Take a look at the new folder structure. Most of the files have been symlinked from previous lessons, so if we have to change them at some point, it will be -a better idea to remove the symlink and create a new file. +a better idea to remove the symlink and create a new file. Open `boot/bootsect.asm` +and note that since our kernel will be larger, the number of sectors to read when +loading it from disk has increased from `2` to `16`. Furthermore, since from now on we will use mostly C to code, we'll take advantage of qemu's ability to open a connection to gdb. First, let's install a cross-compiled `gdb` since diff --git a/14-checkpoint/boot/32bit_print.asm b/14-checkpoint/boot/32bit_print.asm index 4169a17..e940aa9 100644 --- a/14-checkpoint/boot/32bit_print.asm +++ b/14-checkpoint/boot/32bit_print.asm @@ -2,7 +2,7 @@ ; this is how constants are defined VIDEO_MEMORY equ 0xb8000 -WHITE_OB_BLACK equ 0x0f ; the color byte for each character +WHITE_ON_BLACK equ 0x0f ; the color byte for each character print_string_pm: pusha @@ -10,7 +10,7 @@ print_string_pm: print_string_pm_loop: mov al, [ebx] ; [ebx] is the address of our character - mov ah, WHITE_OB_BLACK + mov ah, WHITE_ON_BLACK cmp al, 0 ; check if end of string je print_string_pm_done diff --git a/15-video-ports/boot/32bit_print.asm b/15-video-ports/boot/32bit_print.asm index 4169a17..e940aa9 100644 --- a/15-video-ports/boot/32bit_print.asm +++ b/15-video-ports/boot/32bit_print.asm @@ -2,7 +2,7 @@ ; this is how constants are defined VIDEO_MEMORY equ 0xb8000 -WHITE_OB_BLACK equ 0x0f ; the color byte for each character +WHITE_ON_BLACK equ 0x0f ; the color byte for each character print_string_pm: pusha @@ -10,7 +10,7 @@ print_string_pm: print_string_pm_loop: mov al, [ebx] ; [ebx] is the address of our character - mov ah, WHITE_OB_BLACK + mov ah, WHITE_ON_BLACK cmp al, 0 ; check if end of string je print_string_pm_done diff --git a/16-video-driver/boot/32bit_print.asm b/16-video-driver/boot/32bit_print.asm index 4169a17..e940aa9 100644 --- a/16-video-driver/boot/32bit_print.asm +++ b/16-video-driver/boot/32bit_print.asm @@ -2,7 +2,7 @@ ; this is how constants are defined VIDEO_MEMORY equ 0xb8000 -WHITE_OB_BLACK equ 0x0f ; the color byte for each character +WHITE_ON_BLACK equ 0x0f ; the color byte for each character print_string_pm: pusha @@ -10,7 +10,7 @@ print_string_pm: print_string_pm_loop: mov al, [ebx] ; [ebx] is the address of our character - mov ah, WHITE_OB_BLACK + mov ah, WHITE_ON_BLACK cmp al, 0 ; check if end of string je print_string_pm_done diff --git a/17-video-scroll/boot/32bit_print.asm b/17-video-scroll/boot/32bit_print.asm index 4169a17..e940aa9 100644 --- a/17-video-scroll/boot/32bit_print.asm +++ b/17-video-scroll/boot/32bit_print.asm @@ -2,7 +2,7 @@ ; this is how constants are defined VIDEO_MEMORY equ 0xb8000 -WHITE_OB_BLACK equ 0x0f ; the color byte for each character +WHITE_ON_BLACK equ 0x0f ; the color byte for each character print_string_pm: pusha @@ -10,7 +10,7 @@ print_string_pm: print_string_pm_loop: mov al, [ebx] ; [ebx] is the address of our character - mov ah, WHITE_OB_BLACK + mov ah, WHITE_ON_BLACK cmp al, 0 ; check if end of string je print_string_pm_done diff --git a/18-interrupts/boot/32bit_print.asm b/18-interrupts/boot/32bit_print.asm index 4169a17..e940aa9 100644 --- a/18-interrupts/boot/32bit_print.asm +++ b/18-interrupts/boot/32bit_print.asm @@ -2,7 +2,7 @@ ; this is how constants are defined VIDEO_MEMORY equ 0xb8000 -WHITE_OB_BLACK equ 0x0f ; the color byte for each character +WHITE_ON_BLACK equ 0x0f ; the color byte for each character print_string_pm: pusha @@ -10,7 +10,7 @@ print_string_pm: print_string_pm_loop: mov al, [ebx] ; [ebx] is the address of our character - mov ah, WHITE_OB_BLACK + mov ah, WHITE_ON_BLACK cmp al, 0 ; check if end of string je print_string_pm_done diff --git a/23-fixes/boot/32bit_print.asm b/23-fixes/boot/32bit_print.asm index 4169a17..e940aa9 100644 --- a/23-fixes/boot/32bit_print.asm +++ b/23-fixes/boot/32bit_print.asm @@ -2,7 +2,7 @@ ; this is how constants are defined VIDEO_MEMORY equ 0xb8000 -WHITE_OB_BLACK equ 0x0f ; the color byte for each character +WHITE_ON_BLACK equ 0x0f ; the color byte for each character print_string_pm: pusha @@ -10,7 +10,7 @@ print_string_pm: print_string_pm_loop: mov al, [ebx] ; [ebx] is the address of our character - mov ah, WHITE_OB_BLACK + mov ah, WHITE_ON_BLACK cmp al, 0 ; check if end of string je print_string_pm_done