goun@ddif.dec.com (Roger H. Goun) (06/17/91)
Setup: 386 clone, AMI BIOS, 4 Mb, QEMM 5.12 with RALLOC and FUNC24 patches, DR DOS 5.0, Windows 3.0 By terrible trial and much error, I learned something about QEMM and Windows that I thought I'd share in the hope that it helps someone else. I've forwarded this info to Quarterdeck, with the suggestion that it might be helpful to include it in a future technical note. I ran the QEMM Analysis procedure to find more High RAM; it suggested including F000-F5FF, F700-F7FF, and FD00-FDFF. When I did this, Windows startup in enhanced mode spewed garbage on the screen and hung. I tried adding to my SYSTEM.INI the lines: DualDisplay=True EMMExclude=E000-FFFF as one of Quarterdeck's technical notes suggested, but this didn't help. Eventually I noticed that QEMM had placed the page frame at E800-F7FF. It occurred to me that this location might be confusing Windows, so I added FRAME=C800 to QEMM's startup line, and Lo! and behold, all was well. (I chose C800 to maximize contiguous High RAM on my system.) The closest thing to a warning about the location of the page frame I can find in the technical notes is: "If the frame is at 9000, see if you can move it somewhere between C000 and E000." My apologies if I missed a more explicit caution somewhere else. Though I learned a lot about QEMM and about my system from this experience, it took many frustrating hours. I hope this information saves some other poor user the trouble. Regards, -- Roger H. Goun, Digital Equipment Corporation, 110 Spit Brook Road, ZKO2-2/O23, Nashua, NH 03062 USA, +1 603 881 0022, goun@ddif.enet.dec.com or goun%ddif.enet@decwrl.dec.com, {uunet,sun,pyramid}!decwrl!ddif.enet!goun
smsmith@magnus.acs.ohio-state.edu (Stephen M Smith) (06/17/91)
goun@ddif.dec.com (Roger H. Goun) writes: > >I ran the QEMM Analysis procedure to find more High RAM; it suggested >including F000-F5FF, F700-F7FF, and FD00-FDFF. When I did this, >Windows startup in enhanced mode spewed garbage on the screen and hung. This is the area of your shadowed ROM BIOS. QEMM examines this area to detect whether any of it is unused, and if so then it grabs some of it for its own use (or at least it tells you to include it so that it CAN use it). >I tried adding to my SYSTEM.INI the lines: > >DualDisplay=True >EMMExclude=E000-FFFF The better way to preserve this area might be to use the 'NRH' parameter in your QEMM386 line in your config.sys file. This will keep QEMM from mucking up F000-FFFF. Why did you exclude E000-EFFF? I don't know much about the way Windows handles high memory, but shouldn't you be controlling inclusions and exclusions with QEMM? >Eventually I noticed that QEMM had placed the page frame at E800-F7FF. >It occurred to me that this location might be confusing Windows, so I >added FRAME=C800 to QEMM's startup line, and Lo! and behold, all was >well. (I chose C800 to maximize contiguous High RAM on my system.) It seems to me that your problem was a conflict between your page frame and your shadowed BIOS. Therefore it was a conflict between QEMM and your system, not between Windows and QEMM. I had to move my page frame too because my motherboard utility for setting cache on/off checks the E000-EFFF address and if the page frame is there it screams at me and won't work properly. So I just moved it to C800 (which means it is now in the C800-D7FF area). But I left E000-EFFF free and there aren't any conflicts now. I wouldn't exclude E000-EFFF. Why did you do that? There shoudn't be any conflict anymore since your upper high ram area would look like this: C000-C7FF VGA C800-D7FF Page Frame D800-EFFF Free High RAM F000-FFFF Shadowed ROM BIOS Or am I missing something here? >Though I learned a lot about QEMM and about my system from this >experience, it took many frustrating hours. I hope this information >saves some other poor user the trouble. Yeah... it took me a week and several phone calls to my comp. company and to Micronics to figure out my page frame and ROM BIOS problems. Stephen M. Smith \ + / <smsmith@hpuxa. \+++++/ " #*&<-[89s]*(k#$@-_=//a2$]'+=.(2_&*%>,,@ ircc.ohio-state. \ + / {7%*@,..":27g)-=,#*:.#,/6&1*.4-,l@#9:-) " edu> \ + / BTW, WYSInaWYG \ + / --witty.saying.ARC
roger@oogasm.enet.dec.com (Roger H. Goun) (06/17/91)
In article <1991Jun17.141504.1032@magnus.acs.ohio-state.edu>, smsmith@magnus.acs.ohio-state.edu (Stephen M Smith) writes: >goun@ddif.dec.com (Roger H. Goun) writes: >> >>I ran the QEMM Analysis procedure to find more High RAM; it suggested >>including F000-F5FF, F700-F7FF, and FD00-FDFF. When I did this, >>Windows startup in enhanced mode spewed garbage on the screen and hung. > >This is the area of your shadowed ROM BIOS. QEMM examines this area >to detect whether any of it is unused, and if so then it grabs some >of it for its own use (or at least it tells you to include it so that >it CAN use it). > Yup. It turns out I was only using a little bit of the F000-FFFF range for ROM BIOS shadowing. >>I tried adding to my SYSTEM.INI the lines: >> >>DualDisplay=True >>EMMExclude=E000-FFFF > >The better way to preserve this area might be to use the 'NRH' parameter >in your QEMM386 line in your config.sys file. This will keep QEMM from >mucking up F000-FFFF. > >Why did you exclude E000-EFFF? I don't know much about the way Windows >handles high memory, but shouldn't you be controlling inclusions and >exclusions with QEMM? You've got it slightly backwards. EMMExclude in SYSTEM.INI tells *Windows* not to try to use that area, in this case because QEMM is using it. Those particular lines are described in a Quarterdeck technical note as solving certain unspecified problems with QEMM and Windows, so I tried 'em. This turned out not to be the magic incantation I needed, and I've since removed those lines from my SYSTEM.INI. Remember, I was searching for High RAM; I *want* QEMM to 'muck with' as much of F000-FFFF as it can get away with. >>Eventually I noticed that QEMM had placed the page frame at E800-F7FF. >>It occurred to me that this location might be confusing Windows, so I >>added FRAME=C800 to QEMM's startup line, and Lo! and behold, all was >>well. (I chose C800 to maximize contiguous High RAM on my system.) > >It seems to me that your problem was a conflict between your page frame >and your shadowed BIOS. Therefore it was a conflict between QEMM >and your system, not between Windows and QEMM. If this is the whole story then there remains something I'm not understanding. Only Windows got upset by this placement of the page frame; everything else on my system ran fine. It's entirely possible that on some other system, this placement of the page frame might not upset Windows. On the other hand, I chose to document it here in case someone else runs into the problem. >I wouldn't exclude E000-EFFF. Why did you do that? Again, I did it just to see if it would solve my problem, because the Quarterdeck technical note suggested that it might. My problem turned out to be the page frame position; I'm not excluding E000-EFFF now. The story has a happy ending: I found so much unused High RAM that I now have over 64K contiguous memory free up there, even after adding Hyperdisk (which was the original purpose of this exercise). Anybody care to suggest some device drivers or TSRs that I've just gotta try? :-) Regards, -- Roger H. Goun, Digital Equipment Corporation, 110 Spit Brook Road, ZKO2-2/O23, Nashua, NH 03062 USA, +1 603 881 0022, goun@ddif.enet.dec.com or goun%ddif.enet@decwrl.dec.com, {uunet,sun,pyramid}!decwrl!ddif.enet!goun