I won't go in depth (sorry) but basically I didn't know that hlt
would continue after a interrupt, causing my hang to not work.
I loaded my kernel (which is a test kernel currently) at 0x0000:0x7000
which is actually perfectly fine but I used hlt
to hang, not knowing that hlt
wouldn't actually hang and so the CPU would basically go all the way down to 0x0000:0x7C00
(the bytes were 0x00
for some reason) and something would go wrong in the boot record (unsure what exactly) which caused the jump to disk_error
.
Sorry for any grammar mistakes I made (I am in a rush).