У нас вы можете посмотреть бесплатно MASTER BOOT RECORD BIOS RULES 7C00 & AA55 IN 512KB или скачать в максимальном доступном качестве, которое было загружено на ютуб. Для скачивания выберите вариант из формы ниже:
Если кнопки скачивания не
загрузились
НАЖМИТЕ ЗДЕСЬ или обновите страницу
Если возникают проблемы со скачиванием, пожалуйста напишите в поддержку по адресу внизу
страницы.
Спасибо за использование сервиса ClipSaver.ru
;IT LIKE YOU HAVE YOUR OWN OPERATING SYSTEM :) ; COMPILE USING NASM WHAT MY YOUTUBE VIDEO ;COMMAND nasm -f bin -o bootloader.bin bootloader.asm [BITS 16] ; 16-bit mode [ORG 0x7C00] ; Bootloader loads at memory address start: ; Clear the screen mov ah, 0x00 mov al, 0x03 int 0x10 ; BIOS interrupt for video services ; Display a message mov si, msg ; Point SI to the message mov bh, 0x00 ; Video page (always 0) mov bl, 0x04 ; Text attribute (red on black) print_char: lodsb ; Load the byte at [SI] into AL and increment SI cmp al, 0 ; Check if it's the null terminator je halt ; If null terminator, end program mov ah, 0x0E ; BIOS teletype output function int 0x10 ; Print the character in AL jmp print_char ; Repeat for the next character P halt: hlt ; Halt the CPU ; Data msg db "Hello, Bootloader World I am 0x7C00 and 0xAA55! FROM TEACHYOURSELF BLOG!", 0 ; Padding to make the file 512 bytes ; ;magic signature times 510 - ($ - $$) db 0 dw 0xAA55 ; Boot signature (required) *********************************** ;NAME YOUR FILE "BOOTLOADER_GREEN.ASM" ; YOU CAN PLAY WITH THE TEXT COLOR ; SEE THE COLOR TABLE BELOW [BITS 16] ; 16-bit mode [ORG 0x7C00] ; Bootloader loads at memory address 0x7C00 start: ; Clear the screen (optional, fills video memory with spaces) mov ax, 0xB800 mov es, ax ; ES points to video memory mov di, 0 ; Start at offset 0 mov cx, 2000 ; Clear 80x25 screen (2000 characters) mov al, 0x20 ; ASCII code for space mov ah, 0x07 ; White text on black background clear_screen: stosw ; Write AL (char) and AH (attribute) to video memory loop clear_screen ; Display message directly to video memory mov si, msg ; Point SI to the message mov ax, 0xB800 ; Video memory segment mov es, ax ; ES points to video memory mov di, 0 ; Start writing at the top-left corner mov ah, 0x02 ; 7YELLOW 4 RED 2 GREEN text on black background print_char: lodsb ; Load the byte at [SI] into AL and increment SI cmp al, 0 ; Check if it's the null terminator je halt ; If null terminator, end program stosw ; Write AL (character) and AH (attribute) to video memory jmp print_char ; Repeat for the next character halt: hlt ; Halt the CPU ; Data msg db "Hello, Bootloader World! I am 0x7C00 and 0xAA55! TEACH YOUR SELF", 0 ; Padding to make the file 512 bytes times 510 - ($ - $$) db 0 dw 0xAA55 ; Boot signature (required) ;Full VGA Text Mode Color Table (Foreground/Background) ;Color Value Bright Variant ;Black 0x0 N/A ;Blue 0x1 Bright Blue (0x09) ;Green 0x2 Bright Green (0x0A) ;Cyan 0x3 Bright Cyan (0x0B) ;Red 0x4 Bright Red (0x0C) ;Magenta 0x5 Bright Magenta (0x0D) ;Brown (Dark Yellow) 0x6 Yellow (0x0E) ;White 0x7 Bright White (0x0F) ************************ 1. COMPILE IN NASM: nasm -f bin -o BOOTLOADER_GREEN.bin BOOTLOADER_GREEN.asm 3. RUN IN QEMU: qemu-system-i386 -drive format=raw,file=BOOTLOADER_YELLOW.bin HAPPY CODING!!