![]() ![]() MSG_REAL_MODE db "Started in 16-bit", 10, 13, 0 %include "src/print_hex.asm" this is broken, don't use Jmp 0x0000:main_entry ensures cs = 0x0000 This code is called from boot.asm, which is I've truncated my strings to make room in the 512 bytes for debug code. Mov ah,8 80 character screen, 10 characters Here is my load_disk.asm file: disk_load: I've had to throw together a poor print_hex solution that prints ah number of X's, because I haven't had the motivation to put something better together. The same site says that this is a "invalid function in AH or invalid parameter" error, which further confirms that the problem is in my code. ![]() When I write my boot image to a disk (dd to a partition on a flashdrive) it boots and successfully starts my program but fails at the same disk load, with ah being 0x01. This doesn't make much sense, as it's running in a vm, so I'm pretty sure that it's my code that is wrong. According to, it's a "controller failure" error. When I do $ qemu-system-x86_64 -drive file=os.bin,format=raw When I run with $ qemu-system-x86_64 -drive file=os.bin,if=floppy,index=0,media=disk,format=raw I use int 0x13 and ah=0x02 to read data from the drive and I've been getting several different error messages. I'm writing a simple operating system and I'm having a lot of problems with reading from the disk. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |