First post, by tuxie
Starting off with the dosbox specific question first, since it's the only one I am certain about belonging here:
Does anyone know how dosbox handles memory mapped I/O? I have been looking at the source code for the vga adapter, and searching the source with githubs built in search leaves mentions to checking if trapping direct memory access is available, but I can't seem to find where dosbox actually does it 😀. Is it handled some other way, in code generation, or am I blind/searching wrong?
The next question is about graphics specifically:
I am poking around some source code for a classic DOS game, and been toying with getting it working on newer hardware.
In that source, it says that it copies to all the EGA planes at the same time while in latched mode. But, in EGA, there are four planes, meaning 4 bits each, or half a byte. It seems to copy just 8 bytes, while to me it should take 8*8/2 = 16 bytes.
Does anyone have a clue what is going on? 😀