cli
mov esp, stack_space
call ;как????
hlt
section .text
align 4
dd 0x1BADB002
dd 0x00
dd - (0x1BADB002 + 0x00)
global start
stack_space:
times 510 - ($ - $$) db 0
DW 0xAA55
загрузчик должен запустить другой файл по адресу 0х8000
Вот этот файл должен загрузиться:
[bits 16]
section .text
align 4
dd 0x1BADB002
dd 0x00
dd - (0x1BADB002 + 0x00)
global start
extern main
start:
cli
mov esp, stack_space
jmp main
hlt
stack_space:
По идее я должен записать загрузку через адреса, но я не могу добавить org 0x0010 условно так как я использую загрузку внешней функции
Ты компилируешь обьектные файлы - значит для управления сборкой ты должен использовать конфиг для линковщика ld. Создаёшь конфиг, там прописываешь для каждого обьектника адреса загрузки, и всю остальную информацию, запускаешь ld, и готово.
Обсуждают сегодня