3 ms·
So nostalgic. All the work is done by 21h interrupt though. 10h is faster. And the fastest is to put characters in 0xB800 memory address. How do I remember tha
by 4m1rk 4y ago
So nostalgic. All the work is done by 21h interrupt though. 10h is faster. And the fastest is to put characters in 0xB800 memory address.
How do I remember that number without looking it up?
- userbinator 4y ago...and B000 on the MDA (mode 7), which was to allow both an MDA and CGA to coexist in the same system. Eventually the VGA took B800 even for its text modes, and PCs started booting in mode 3 by default. I'm not sure how the UEFI stuff works, but even the latest GPUs still have a VGA-compatible controller in them: https://01.org/sites/default/files/documentation/intel-gfx-prm-osrc-rkl-vol04-displayengine_0.pdf https://01.org/sites/default/files/documentation/intel-gfx-p...
- 4m1rk 4y agoOh yeah I have a vague memory of B000. I was more interested in mode 13 (256 colors 360x200). I think it was starting from A000. I'm proud that I found that address by trial and error. I was able to put pixels on screen using `int 10h` but it wasn't fast enough to render my animations. I read in a translated (into Persian) tech book that there's something called screen memory but no mention of the address itself so I started from 0 and checked all blocks. I knew I didn't need to check every single byte. I was going like 0000, 0100, 0200, ... until I saw a few pixels on screen! Of course after a few crashes.
- aricz 4y agomode 13h was 320x200 resolution with 256 colors. A000h was the top left pixel.
- alrlroipsp 4y agoMeh. I still remember my ICQ #.