Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix two bugs in 386 emulator; it almost works!
Now it is able to run tinyboot1 to the point of accepting input. The two bugs were: - sub %eax, (%esp) needed to leave its output on the stack, not in %eax. Otherwise the immediately following pop %eax discards it. - Since dec %al is two bytes long, not one, it should increment the instruction pointer by 2. Otherwise you get an instruction decoding error on the second byte. Now the program seems to be returning to a NULL address for some reason, maybe related to inequality comparisons still being broken.
- Loading branch information