Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!rutgers!att!cbnews!cbema!las From: cbema!las@cbnews.ATT.COM (cbema!las) Newsgroups: comp.sys.ibm.pc Subject: Re: Phoenix BIOS 3.07 (5/27/87) for 80286 Message-ID: <9523@cbnews.ATT.COM> Date: 13 Sep 89 17:38:50 GMT References: <398@wjh12.harvard.edu> Reply-To: cbema!las@cbnews.ATT.COM (Larry A. Shurr,20650,cb,9a110,6148605851) Distribution: na Organization: AT&T Bell Laboratories, Columbus, OH (actually an AGS consultant) Lines: 42 In article <398@wjh12.harvard.edu> djb@wjh12.UUCP (David J. Birnbaum) writes: }While snooping around in high RAM I noticed a peculiarity. My CompuAdd }286 has a Phoenix ROM BIOS, version 3.07, dated 5/27/87. Doing a debug }dump of f000:8000 shows that the BIOS begins at this address (at least }the display begins with PPhhooeenniixx, etc.). But dumping e000:8000 }(note: different segment) shows the identical information. In fact, }dumping several random addresses between e000:8000 and e000:ffff produced }exactly the same display as dumping the same offsets in the f000 segment. } I called CompuAdd to ask why there should be two apparently identical }copies of the BIOS in high RAM. I used debug to go to the cold boot }address in the e000 segment and the machine indeed booted, so it looks }like the BIOS is really there. Actually, it is probably not "really there." Instead they're probably just the same place. What I mean is that the address decoding circuitry is probably mapping e000 and f000 to the same place - note that there is only a one bit difference between e (1110) and f (1111). This may have been done on purpose, though not necessarily to achieve the affect of having e000 and f000 both refer to the ROM space. Rather instead, implementing it this way may have saved a few gates - whether that saved any money or not may be arguable, but it's just the sort of thing a designer might do since it might simplify the design. The designers may simply have said to them- selves: "There's no need to decode the e000 address space since there's [supposedly] nothing there in the IBM PC memory map, so we won't." The result may then have been a design which just happens to decode e000 to the same memory space as f000. "But! But! But!..." you may sputteringly protest. Remember though, B000:0000 on up is reserved in the IBM PC address space, and although certain portions of that space are definitely used for known purposes, IBM never promised you that they had to make the unassigned sections of that space available for any purpose - they're "reserved." If I'm wrong, please be kind and don't flame. If you think it's a stupid idea, please don't {f|b}lame me! regards, Larry -- Signed: Larry A. Shurr (cbema!las@att.ATT.COM or att!cbema!las) Clever signature, Wonderful wit, Outdo the others, Be a big hit! - Burma Shave (With apologies to the real thing. The above represents my views only.) (Please note my mailing address. Mail sent directly to cbnews doesn't make it.)