Hoj,
mám takový problém, mám bootloader jež má vypisovat řetězec, ale on ho ňák nevypisuje a opravdu netuším čím to je.
{
x86 real mode [16 bit]
GNU binutils [AS , LD]
emulováno pomocí BOCHS
}
// <------------------------------------->
.intel_syntax noprefix
.code16
// <------------------------------------->
.macro printStr strAdr , lenght
mov cx , \lenght
mov si , \strAdr
printStrLoop:
mov al , byte ptr [si] // tady bude zakopanej pes ...
mov ah , 0xe
int 0x10
inc si
loop printStrLoop
.endm
.globl entryPoint
entryPoint:
printStr welcomeString , 26
endls:
nop
jmp endls
welcomeString: .string "Hello world from low level!"
// <------------------------------------->
.org 510
.byte 0x55
.byte 0xaa
.att_syntax noprefix
// <------------------------------------->
linker skript (jo já vím, je blbě, ale aspoň to už nevyhazuje takovej jeden divnej error ... )
SECTIONS
{
.text : { *(.text) }
.data : { *(.data) }
.bss : { *(.bss) }
}