4 ms·
0xA000 is also the address of the memory location that holds the contents of the display in so-called "mode 13h" in the old IBM VGA displays. Mode 13h was an e
by ocfnash 9y ago
0xA000 is also the address of the memory location that holds the contents of the display in so-called "mode 13h" in the old IBM VGA displays.
Mode 13h was an extremely popular graphics mode, used by many PC games in the early 90s (probably also late 80s). It gave a resolution of 320x200 pixels with 8-bit colour palette.
After entering mode 13h, the way to plot a pixel is to poke the corresponding 8-bit memory address, where the 0th pixel (display top left) is 0xA000.
- Someone 9y agoI think that's A000:0000 or, without the segments, 0xA0000 (one extra zero). 0xA000 would mean video memory started not after 640kB, but after 40kB. That wasn't even enough for everybody when the IBM PC launched (the Apple II already had been shipping with 48kB for a few years at that time)
- ocfnash 9y agoYes indeed, quite right! 0xA000 is the memory _segment_ and so the linear address is 0xA0000 I think I would have got this right first time ~20 years ago: ftp://ftp.scene.org/mirrors/hornet/code/3d/systems/gsescher.zip :)
- cr0sh 9y agoMode 13h was popular - but Mode X was where it was really at (square pixels): https://en.wikipedia.org/wiki/Mode_X https://en.wikipedia.org/wiki/Mode_X