Re: Video memory organization
From: Herman Dullink (hd1_at_hetnet.nl)
Date: 12/25/03
- Next message: Robert Redelmeier: "Re: fastest memory copying..."
- Previous message: Ivan Korotkov: "Re: Questions on disassembly"
- In reply to: Samir Ribic: "Video memory organization"
- Next in thread: Markus Humm: "Re: Video memory organization"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Thu, 25 Dec 2003 21:59:30 +0000 (UTC)
> Question: Assuming that video memory reserved area is limited to 128K
> , what is organization more recent video modes? For example, 1024x768
> with 24 bit graphic needs 2.25 megabytes. Definitely memory pages have
> to be overlapped, (like in 16 colors mode) but there are several ways
> to do it.
That 128K reserved area was used on the oldest PC designs, and is only
present on newer systems for compatibility. The video memory can be
accessed using a different address range depending on the type of bus
interface used. E.g. a 16-bit ISA bus has a 16MB address space. Video
memory is often mapped at 14MB or 15MB and above addresses.
If more than 16MB system memory can be used on a system, a 'memory hole'
can be set in the BIOS setup for ISA video cards.
Local busses on 386 and 486 have different address space, depending on
the number of address lines actually used by the chipset. My first 486
system had a 256MB address space.
Systems with PCI and AGP use all address lines, and use a 4GB address
space. Again, for systems which can have more than 4GB system memory,
memory holes are created for PCI/AGP devices.
As there's no uniform way video chips organize/map their frame buffer
memory, we need drivers and APIs such as VBE, openGL and DirectX.
Using the APIs we (developers) can query for the organization.
In DOS, the most compatible way is to use VBE. Since v2.0, there are
two basic ways to access video memory from the CPU's perspective,
banked and linear. In banked mode, usually (a part of) the 128K reserved
area is used, and a function is available to select which part of the frame
buffer
can be accessed at a time.
In linear mode, another (usually much larger) area (address range) is used.
H
- Next message: Robert Redelmeier: "Re: fastest memory copying..."
- Previous message: Ivan Korotkov: "Re: Questions on disassembly"
- In reply to: Samir Ribic: "Video memory organization"
- Next in thread: Markus Humm: "Re: Video memory organization"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|