At 04:19 AM 1/16/2005 +0300, Arkady V.Belousov wrote:
MD> As far as UMB's, I'm not sure if turning off the A20 line affects memory MD> mapping from physical odd-address Mb. Seems like it should,
Michael, strange to see such sentences from you. A20 is a pin of (186 and higher) CPU, which used to pass 21th bit of address. When this pin is disabled, all access with addresses like FFFF:200 (which make 21-bit address) are "wrapped" (by ignoring high 21th bit on A20 pin) to first 64k. This shouldn't affect any addressing in the UMB, which lies below 1Mb.
What's strange? UMB's are not physically addressed below 1M, that's why they are UMB's. The physical address isn't used because it's pointer to empty BIOS space. UMB's are a _linear_ address mapping by the CPU. The CPU doesn't literally hop around tearing up old and putting down new chips or solder traces to change the physical address of memory when memory is remapped. It only changes the apparent address -- via page directories, page tables, CR3, you know that stuff, right? This is why DMA is a problem when used with UMB's, per recent VDS discussions remember? Because DMA works on actual physical memory addresses below the CPU level, not the linear address provided by the CPU.
linear == physical address is called identity mapping, but you won't see UMB's that are identity mapped. They are always memory living at another (presumably >1M) physical address mapped over the original memory below 1M for DOS to get at.
A20 is a hardware pin, so it would seem that every other meg of physical memory when A20 is turned off will no longer be accessible. If true, a UMB mapped from the alternate meg address goes away on A20 off condition and the even meg address is seen in its place, an almost certainly undesirable effect.
It _may_ be true that chipsets can inhibit A20 toggle-off for address decoding when any A21->A21+n pins are set, which would eliminate the problem of the odd-meg mask-off propagating through the entire extended memory range. I don't know if that feature is feasible and, if so, if it is present. Or perhaps there is a different method which can cause A20 address line turned off to not be an issue with high extended memory addresses mapped down to low, but I don't know what that would be either.
------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt _______________________________________________ Freedos-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/freedos-devel
