она уже не влезает в 512 байт. Я хочу чтобы в самом mbr был лаунчер, а начиная со второго сектора уже сама ос. Я нашёл такой код:
loadingOS: ; <= Function 'loadingOS'
mov ah, 02h ; <= Set function 'Reading' of 13h interrupt
mov al, 2 ; <= Set 'How many sesctors reading'
mov ch, 0 ; <= Set hard drive cylinder
mov cl, 1 ; <= Set pointer for start reading
mov dh, 0 ; <= Set hard drive header
mov dl, 0 ; <= Set number of hard drive
mov bx, 0x1000 ; <=\/
mov es, bx ; <=== Set offset and momory address
mov bx, 0 ; <=/\
int 0x13 ; <= Use 13h interrupt
jc loadingOS
jmp 0x1000:0 ; <= Jump to OS memory address [SEGMENT:OFFSET]
для загрузки и передачи управления на код, который находится во втором и третьем секторе, но она не работает. Можете подсказать что не так?
NASM, MBR, -f bin
что отладка говорит?
а как её к виртуалбокс подключить?
никак (почти). bochs используй
ок, попробую, спасибо за наводку
ещё один вопрос. Я не совсем понимаю как мне запустить мою ОС в боч мне надо обе части соединить в какой-то имедж, или как?
справку читай или по форумам искать
не знаю, тебе в osdev надо с такими вопросами
Обсуждают сегодня