it has been quite a few years I wrote something directly for VGA so take that in mind.
The old legacy stuff (CGA/EGA,VGA) mapped all VRAM memory access to two segments only (2 x 64KByte)
graphic modes
A000:0000 - A000:FFFF
text modes
B800:0000 - B800:FFFF
So booth #1 and #2
64 KByte
chunks of memory are not directly accessible instead VGA forwards its own memory there. With integrated cards + shared memory they do not have own memory so the chipset takes it from the global memory (usually from the top address space). In that case yes the memory is not accessible by HW (unless some feature of the chipset is used). The memory space in global memory is usually remapped or used for shadow of ROMsgfx-BIOS
all legacy gfx cards has its own ``BIOS FLASH/EEPROM/EPROM/PROM` memory. I can't remember exactly how that works but as I remember expansion BIOS area starts around
C000:0000
where all BIOS able HW map their BIOS memory (not only gfx cards and not only entire segment in size).
Now there are many gfx modes that need more than
64KB
of VRAM so you call gfx BIOS to map appropriate memory segment toA000:0000
or set it by control registers by IO operations on gfx IO ports. Gfx card remap memory and then you can use it ...VESA
VESA VRAM can be accessed in the same way as on old legacy gfx stuff but VESA add LFB (linear frame buffer) support which can map entire VRAM to memory not just single segment and also can use extended memory (on just base it would have not much use).
As I wrote before it has been some years I deal with this stuff so if I am wrong please edit or add comment ...