3 ms·
This is really cool, and there doesn't seem to be a lot of code in the repo. But before trying to read it… does anyone know how this works? Edit to answer myse
by jmmv 3y ago
This is really cool, and there doesn't seem to be a lot of code in the repo. But before trying to read it… does anyone know how this works?
Edit to answer myself: found the answer in this comment from the last time this was discussed: https://news.ycombinator.com/item?id=28574202 https://news.ycombinator.com/item?id=28574202
- elvis70 3y agoIt uses the Virtual 8086 Mode of the 386. The Intel 80386 Reference Programmer's Manual explains that well [1], I think. So, in this case, the first mega of RAM, containing MS-DOS and the BIOS is virtualized in a VM86 box while the CPU is running in protected mode, permitting the host OS to cohabit with a protected-mode OS. It is in fact, a VM86 monitor. Another example of such a program is EMM386 or similar like Jemm386 whose source code is available [2]. [1] https://pdos.csail.mit.edu/6.828/2018/readings/i386/c15.htm https://pdos.csail.mit.edu/6.828/2018/readings/i386/c15.htm [2] https://github.com/Baron-von-Riedesel/Jemm https://github.com/Baron-von-Riedesel/Jemm edit: the link [1] was wrong