Mail Archives: djgpp/1993/07/19/14:57:38
>Since real mode pointers can't point to virtual memory anyway (the
>memory might be out on disk somewhere), there's really no way to
make
>it work the way you think it should.
I modified turbo_assist() to give me a "low memory" malloc(). I use
this buffer to communicate with the BIOS. I've used this technique
successfully. Right now I am trying to pass the returned
segment/offset pair to the BIOS in ES:BX.
>For all the BIOS calls that go32 knows about, you must use the
offset
>register as a 32-bit offset, and leave the segment registers alone.
>For all BIOS functions that go32 does not understand, you can't call
them anyway.
I modified exception_handler() to pass int 0x13 on to
generic_handler. That seems to work.
I guess I'll just add another case to turbo_assist() that grabs ES
out of the high two bytes of EBX and then does the int 0x13 that I
want. I was hoping there was a way to bypass this step, though...
-Mat
- Raw text -