Thanks, I've now got:
Code: Select all
OUTPUT_FORMAT("binary")
ENTRY(start)
phys = 0x00100000;
SECTIONS
{
.text phys : AT(phys) {
code = .;
*(.text)
. = ALIGN(4096);
}
.data : AT(phys + (rodata - code))
{
data = .;
*(.data)
. = ALIGN(4096);
}
.bss : AT(phys + (bss - code))
{
bss = .;
*(.bss)
. = ALIGN(4096);
}
end = .;
}
as my linker script, and for the sake of attempting to keep things tidy, my code is all as shown on the site.
If I use the above linker script, I get the multiboot kludge header as I should, then the screen clears and I get a (non-flashing) cursor in the top left of the screen. So that's two steps in the right direction - the third would be nice - printing the hello world message.
If I switch the .data section to a .rodata section, I get the multiboot kludge header then the clear screen, but no cursor, flashing or otherwise. That's just the one step in that direction.