home *** CD-ROM | disk | FTP | other *** search
/ ftp.wwiv.com / ftp.wwiv.com.zip / ftp.wwiv.com / pub / MISC / TGARTS.ZIP / DVTECH.ZIP / TOUR.TEC < prev   
Text File  |  1994-03-03  |  23KB  |  374 lines

  1. ID:TO QEMM-386's Parameters and How they Affect Your System
  2. Quarterdeck Technical Note #228                       Filename: TOUR.TEC
  3. by Quarterdeck Testing & Compatibility              CompuServe: TOUR.TEC
  4. Last revised: 12/27/91                                Category: QEMM
  5.  
  6. Subject: A grand tour of your computer's memory and QEMM-386's parameters,
  7.          using Manifest as your guide.
  8.  
  9.  
  10.                               GRAND TOUR: 
  11.        USING MANIFEST TO SEE THE EFFECT OF QEMM-386'S PARAMETERS
  12.  
  13.      This is a tour of your computer through the facilities of Manifest to see 
  14. how the parameters of QEMM can affect the performance of your machine and to 
  15. learn about your machine.  The screen of Manifest under discussion is 
  16. identified by listing the principal section, as displayed in the vertical menu 
  17. on the left of the Manifest screen, first, then a "/", then the subsection of 
  18. that principal section, as displayed on the horizontal menu at the top of the 
  19. Manifest screen.
  20.  
  21.      The first stop of the tour is the Overview screen of the QEMM-386 
  22. section.  
  23.  
  24. QEMM PARAMETER:  STEALTHROM (ST)
  25. MANIFEST VIEW:  QEMM-386/OVERVIEW
  26.      On the QEMM-386/Overview screen MANIFEST reports what version of Stealth 
  27. is being used on the line "Stealth Type".  On the line below that it reports 
  28. what ROMs are being "Stealth"ed, followed by how large the ROM is.
  29.  
  30. QEMM PARAMETER:  SUSPENDRESUME (SUS)
  31. MANIFEST VIEW:  QEMM-386/MEMORY
  32.      If you have a laptop computer with a "RESUME" feature that QEMM-386 is 
  33. supporting, the interrupt QEMM is hooking to support this is listed on the 
  34. QEMM-386/Overview screen.  You can force QEMM-386 to use any particular 
  35. interrupt with the parameter SUS:XX where XX is the interrupt you wish QEMM to 
  36. hook for this purpose.
  37.  
  38.     The second stop of the tour is the Memory screen of the QEMM-386 section.
  39.  
  40. QEMM PARAMETER:  NOFILL (NO)
  41. MANIFEST VIEW:  QEMM-386/MEMORY
  42.      If you have less than 640K of conventional memory before you load QEMM-
  43. 386 then the "Initial" column of the "Conventional" line of the QEMM-
  44. 386/Memory screen of Manifest will report this.  QEMM-386 will map memory into 
  45. the vacant address space below 640K to extend conventional memory up to 640K.  
  46. If some program objects to this (Microsoft's "Windows" in enhanced mode is one 
  47. such program.) then the NOFILL (NO) parameter will stop this from happening.
  48.  
  49. QEMM PARAMETER:  NOVIDEOFILL (NV)
  50. MANIFEST VIEW:  QEMM-386/MEMORY
  51.      If you have monochrome or Hercules or CGA video then address space above 
  52. 640k and contiguous with conventional memory is available. QEMM386 will 
  53. automatically map memory to this address space to give you 704K (monochrome or 
  54. Hercules) or 736K (CGA) conventional memory.  The "Converted by QEMM" column 
  55. of the "Conventional" line of the QEMM-386/Memory of Manifest will report that 
  56. QEMM has converted 64K (or 96K) memory, leaving 704K or 736K of conventional 
  57. memory.  Some programs may object to this.  The NOVIDEOFILL (NV) switch will 
  58. stop this from happening.
  59.  
  60. QEMM PARAMETER:  NOXBDA (NX)
  61. MANIFEST VIEW:  QEMM-386/MEMORY
  62.      We are still on the Conventional Memory line.  If the "Initial" column of 
  63. the "Conventional" line of the QEMM-386/Memory screen of Manifest is 639K (on 
  64. some computers it may be 638K or some other number) then there may be a 1K (or 
  65. more) piece of memory called the "Extended BIOS Data Area".  This is a piece 
  66. of memory used by the BIOS to store information.  The specification by which 
  67. the XBDA (as we abbreviate it) allows it to be moved; its address is stored in 
  68. the BIOS data area after the parallel ports at address 40:E (see the First 
  69. Meg/BIOS Data screen of Manifest).
  70.      Unfortunately not all users of the XBDA go to the BIOS Data area to see 
  71. where the XBDA is; they presume that it is at 639K, read what is there, and if 
  72. that is not where the XBDA is they get the wrong information and misbehave.  
  73. QEMM moves the XBDA by default into low memory (QEMM's conventional memory 
  74. overhead increases by 1K when this happens; see the last line on the QEMM-386 
  75. Memory screen to see this effect.)  The parameter "NOXBDA" ("NX") keeps 
  76. QEMM386 from moving the XBDA.  If you have an XBDA and run a program that only 
  77. looks for it at 639K then you need this switch.  It is possible that a hard 
  78. drive controller or some other device creates the XBDA.
  79.  
  80. QEMM PARAMETER:  EXTMEM (EXT)
  81. MANIFEST VIEW:  QEMM-386/MEMORY
  82.      On the "Extended ..." line of the QEMM-386/Memory screen of Manifest you 
  83. can see a report of how much extended memory QEMM-386 sees on your machine and 
  84. what QEMM-386 is doing with it.  You may notice that the number in the 
  85. "Initial" column is not as much as you thought you should have.  Say you have 
  86. a four megabyte system:  This probably means 4096 kilobytes.  Subtract 640 
  87. kilobytes for conventional memory and you would expect to find 3456 kilobytes.  
  88. If your machine has ShadowRAM or Top Memory (see the two paragraphs following) 
  89. then the initial number is 384 kilobytes less than what you would expect.  
  90. This 384K may or may not show up on the next line of this screen as ShadowRAM 
  91. or Top Memory.  It may still be being used for one of these purposes without 
  92. QEMM-386 detecting it, explaining its absence on the initial column of the 
  93. extended line here.  On many systems a lesser amount of memory (typically 
  94. 128k) is reserved for shadowing ROMs and this only shows up as missing on this 
  95. line.
  96.      If you are using the parameter "extmem=xxxx" on the QEMM-386 line then 
  97. this amount of memory will show on the "Leaving" column of the extended line.  
  98. This is unmanaged extended memory left behind by QEMM-386 for those extended 
  99. memory users that will not get the extended memory they desire from the XMS 
  100. manager.  Programs that get their extended memory from the XMS manager 
  101. (Windows 3, smartdrive, pc-kwik, pc-cache, for just a few examples) and any 
  102. VCPI program will not see the memory that is left behind with this parameter.
  103.      NOTE:  An EXTMEM=XXXX cannot be used when XXXX is greater than 15360 (15 
  104. MB) because QEMM-386 redirects the DMA done by others, the DMA controller chip 
  105. cannot address memory above 16384K, and QEMM-386 leaves memory from the bottom 
  106. when an EXTMEM=XXXX is used.  An EXTMEM>15360 will keep QEMM-386 from being 
  107. able to put the DMA buffer in the first 16384K of the address space, 
  108. preventing it from loading.
  109.  
  110. QEMM PARAMETER:  MEMORY (ME or MEM)
  111. MANIFEST VIEW:  QEMM-386/MEMORY
  112.      This parameter limits the amount of memory that QEMM-386 manages.  It is 
  113. a complement to the "EXTMEM" parameter mentioned above.  All the memory that 
  114. QEMM-386 does not manage is left behind as unmanaged extended memory.  You can 
  115. see how much memory this is by going to the QEMM-386/Memory screen of Manifest 
  116. and looking at the "Leaving" column of the "Extended" line.  For more 
  117. information on the meaning of this parameter you can read the above paragraphs 
  118. on the "EXTMEM" parameter.
  119.      
  120. QEMM PARAMETER:  NOSHADOWRAM (NOSH)
  121. MANIFEST VIEW:  QEMM-386/MEMORY
  122.      Still in the QEMM-386 memory screen:  Is the line beneath "Extended", 
  123. "Shadow RAM"?  Then you have ShadowRAM.  ShadowRAM is a kind of memory.  It is 
  124. 384K of memory mapped by the hardware into the address space between 640K and 
  125. 1024K.  When you turn your machine on it copies the contents of ROMs in this 
  126. address space into the shadowRAM and future accesses to the ROM go to this RAM 
  127. instead.  RAM is faster than ROM so your system runs faster.  Since you may 
  128. have 384K of ShadowRAM and not 384K of ROMs to shadow (You probably have only 
  129. 96K or so) the rest of the ShadowRAM is unused.
  130.      QEMM386 (beginning with version 5.0) tries to use this memory.  You can 
  131. see how much of it QEMM uses by looking at the subsequent lines of the 
  132. ShadowRAM line of this screen.  You will see that some of it is unavailable to 
  133. QEMM while some other amount is used.  The amount is variable from machine to 
  134. machine.  Quarterdeck has standardized on the Chips & Technologies definition, 
  135. the most common brand of ShadowRAM.
  136.      Not all manufacturers follow this standard and if theirs is sufficiently 
  137. different QEMM may not detect it or may detect and try to manage it as though 
  138. it were C&T ShadowRAM.  This possibility is why the NOSHADOWRAM (NOSH) switch 
  139. exists.  Give it a try if you have boot problems or other memory problems.  On 
  140. some machines QEMM's attempt to manage ShadowRAM that is insufficiently 
  141. similar to C&T ShadowRAM may cause the machine to reboot continuously.
  142.  
  143. QEMM PARAMETER:  NOTOPMEMORY (NT)
  144. MANIFEST VIEW:  QEMM-386/MEMORY
  145.      Top Memory is a kind of memory that occupies the address space from 
  146. 16000K to 16384K, which is the top of the 16 Megabyte address space. Compaq 
  147. and Micronics use Top Memory for shadowing ROMs.  Beginning with version 5.00 
  148. QEMM-386 tries to use all this memory that is not being used by the system 
  149. already.  If QEMM-386 is managing this memory it will show up on the QEMM-
  150. 386/Memory screen on a separate line underneath the Extended memory line.  If, 
  151. for some reason, QEMM-386 has problems managing a particular implementation of 
  152. Top Memory or it misreads the system in such a way as to think that it has Top 
  153. Memory when it really does not, then this parameter will solve your problem.
  154.  
  155. QEMM PARAMETER:  NOEMS
  156. MANIFEST VIEW:  QEMM-386/MEMORY
  157.      This parameter tells QEMM-386 not to create any expanded memory.  If this 
  158. parameter is on the QEMM386.SYS line of the config.sys then "0K" is in the 
  159. "Leaving" column of the "Expanded" line in the QEMM-386/Memory screen of 
  160. Manifest.
  161.  
  162. QEMM PARAMETER:  RAM
  163. MANIFEST VIEW:  QEMM-386/MEMORY
  164.      This parameter creates high RAM, the memory into which LOADHI loads 
  165. programs high.  The last line of the top box of the QEMM-386/Memory screen of 
  166. Manifest reports how much high RAM QEMM-386 creates.  If the RAM parameter is 
  167. not on the QEMM line (or if there is no vacant high address space) the amount 
  168. in the "Leaving" column of this line is "0K".  This parameter can be used to 
  169. create high RAM only in limited portions of the address space by restricting 
  170. it with a statement such as "RAM=B000-B7FF", which will create high RAM only 
  171. from B000 to B7FF.
  172.  
  173. QEMM PARAMETER: TASKS (TA)
  174. MANIFEST VIEW:  QEMM-386/MEMORY
  175.      In the lower box of the QEMM-386/Memory screen of Manifest is "Tasks:         
  176. 8K".  Tasks are internal QEMM-386 data structures used to handle interrupts 
  177. out of protected mode.  All DOS interrupts must be handled in real mode.  QEMM 
  178. switches the machine out of protected mode (into which it must put the machine 
  179. to do its job) for the duration of this interrupt.  Tasks are used to store 
  180. the information that must be saved when this is done.  Extended memory is used 
  181. for Tasks, not conventional memory.  The default number of tasks (16) is 
  182. likely to be enough for any user.
  183.  
  184. QEMM PARAMETER:  DMA (DM)
  185. MANIFEST VIEW:  QEMM-386/MEMORY
  186.      Underneath "Tasks" is "DMA Buffer:         12K".  DMA is the acronym for 
  187. Direct Memory Address.  Some devices (most floppy disk controllers, some 
  188. network cards, some hard disk controllers, many tape back-ups) use DMA.  This 
  189. is a way to allow information to be transferred from the disk (network, etc.) 
  190. to memory directly without burdening the CPU to perform the transfer.  QEMM-
  191. 386 must divert DMA that is headed into mapped memory.  QEMM-386 sets aside a 
  192. default DMA buffer of 12K. This can be raised with the parameter DMA=XX where 
  193. "XX" represents any number from 12 to 128.  Some devices may require a larger 
  194. DMA buffer. If a program demands a larger DMA buffer QEMM-386 will post an 
  195. error message telling the user to increase the size of the DMA buffer.  If you 
  196. have a program, such as a tape backup, fail, even if this error message is not 
  197. reported raising the size of the DMA buffer is worth a try.
  198.  
  199. QEMM-386 PARAMETER:  MAPS (MA)
  200. MANIFEST VIEW:  QEMM-386/MEMORY
  201.      At the top of the second column in the lower box of the QEMM-386/Memory 
  202. screen of Manifest is "Maps:       32K".  MAPS are alternate maps, an 
  203. equivalent of the hardware registers used by some EMS boards to help operating 
  204. environments switch quickly between processes.  In DESQview each window uses 
  205. one of these alternate maps.   If DESQview runs out of alternate maps, it must 
  206. save and restore the entire expanded memory map between processes.  This 
  207. results in much less efficient multitasking. Each MAP uses 4K of extended 
  208. memory (no conventional memory).  The default is 8 maps.  Raise this number if 
  209. you wish to multitask efficiently more windows than you currently have MAPS 
  210. allocated for (The maximum is 56.) or drop it to 0 (with MA=0) if you do not 
  211. use DESQview.  Microsoft Windows does not use the MAPS QEMM-386 sets aside.
  212.  
  213. QEMM-386 PARAMETER:  ROM
  214. MANIFEST VIEW:  QEMM-386/MEMORY
  215.      On the second row of the second column of the lower box of the QEMM-
  216. 386/Memory screen is a line that reads:  "Mapped ROM:         4K" (or some 
  217. number).  This shows the amount of memory that QEMM-386 is using to map ROMs.  
  218. Mapping ROM is creating RAM in the same portion of the address space that a 
  219. ROM occupies and copying the contents of the ROM into this RAM.  Then accesses 
  220. of ROM will go to RAM.  Accessing RAM is faster than accessing ROM so this 
  221. will speed the performance of the machine.  The number on this line indicates 
  222. the amount of memory (extended memory, not conventional memory) used to map 
  223. ROMs.  When the ROM parameter is used without restriction then all ROMs are 
  224. mapped.  The ROM parameter can be used with restriction (ROM=C000-C7FF, for 
  225. example) to ROM only this portion of the address space.  If QEMM-386 is not 
  226. discovering a ROM that you know is there you may need to use a restricted ROM= 
  227. statement for QEMM-386 to map this ROM.
  228.      On Compaqs (and some other machines that QEMM-386 detects as having this 
  229. same feature.), QEMM-386 automatically maps some ROMs.  
  230.      The ROM parameter provides the same service that ShadowRAM does. You 
  231. should not use the ROM parameter on QEMM-386 if you are using the built-in 
  232. ShadowRAM of your computer, not because it will cause a problem, but because 
  233. it will be a waste of memory.
  234.  
  235. QEMM-386 PARAMETER:  NOROM (NR)
  236. MANIFEST VIEW:  QEMM-386/MEMORY
  237.      By default QEMM-386 maps the reboot page of the system ROM (See the above 
  238. paragraph for a discussion of mapping ROM).  QEMM-386 does this in order to 
  239. detect reboots more readily.  This is why there is at least 4k of mapped ROM 
  240. being reported on the second column of the lower box of the QEMM-386/Memory 
  241. screen of Manifest ("Mapped ROM:     4K").  This feature is defeated by the 
  242. NOROM (NR) parameter.  Using this parameter may cause problems rebooting.
  243.  
  244.      The third stop of the tour is the Overview screen of the First Meg 
  245. section.
  246.  
  247. QEMM-386 PARAMETER:  NOXBDA (NX)
  248. MANIFEST VIEW:  FIRST MEG/OVERVIEW
  249.      We have already discussed this in a previous paragraph but we can see it 
  250. again on this screen.  If there is a line in the First Meg/Overview screen 
  251. that looks like this:
  252.  
  253.                 ===Conventional memory ends at 639K====
  254.            9FC0-9FFF      1K        Extended BIOS Data Area
  255.  
  256. then you have an XBDA.  QEMM-386 will move this by default unless the NOXBDA 
  257. parameter is on the QEMM-386 line of the config.sys.  This issue is discussed 
  258. in greater detail in the above paragraph on this same parameter.  Of course, 
  259. if QEMM-386 has moved your XBDA, as it does by default, this line will not 
  260. appear.
  261.  
  262. QEMM-386 PARAMETER:  EXCLUDE=MMMM-NNNN (X=MMMM-NNNN)
  263. MANIFEST VIEW:  FIRST MEG/OVERVIEW
  264.      The EXCLUDE=MMMM-NNNN parameter tells QEMM-386 not to map the portion of 
  265. the address space bounded below by MMMM and above by NNNN.  Any portion of the 
  266. address space that QEMM-386 is kept from mapping by an EXCLUDE that it does 
  267. not recognize as already being occupied by some other device will be described 
  268. as "Unused" on the First Meg/Overview screen of Manifest.  If Manifest sees 
  269. something (ROM, Adapter RAM, etc.) in the address space already, it will 
  270. continue to report that this is what it sees there.  
  271.  
  272. QEMM-386 PARAMETER:  RAM
  273. MANIFEST VIEW:  FIRST MEG/OVERVIEW
  274.      The portions of the high address space in which QEMM-386 has created high 
  275. RAM will have the description "High RAM" in the First Meg/Overview screen of 
  276. Manifest.  In order for any of the address space to be turned into high RAM 
  277. the RAM parameter must be on the QEMM-386 line of the config.sys.  This is 
  278. discussed in greater detail in the above paragraph about the RAM parameter.
  279.  
  280. QEMM-386 PARAMETER:  ROM
  281. MANIFEST VIEW:  FIRST MEG/OVERVIEW
  282.      The portions of the address space in which QEMM-386 is mapping ROM are 
  283. described as "Mapped ROM" on the First Meg/Overview screen of Manifest. This 
  284. parameter maps RAM into the address space occupied by ROMs and copies the 
  285. contents of those ROMs into this RAM for faster performance.  This feature is 
  286. discussed in greater detail in the ROM section above.
  287.  
  288. QEMM-386 PARAMETER:  ADAPTERRAM=MMMM-NNNN (ARAM=MMMM-NNNN)
  289. MANIFEST VIEW:  FIRST MEG/OVERVIEW
  290.      The portion of the address space bounded below by MMMM and above by NNNN 
  291. with this parameter will be reported as Adapter RAM on the description field 
  292. of the First Meg/Overview screen of Manifest.  This parameter causes the 
  293. portion of the address space bounded by the beginning address ("MMMM") and the 
  294. ending address ("NNNN") not to be mapped by QEMM-386.  This should be used 
  295. when there is a portion of the address space occupied by the adapter RAM of a 
  296. physical device (like a network card).  The only difference between this 
  297. parameter and an EXCLUDE=MMMM-NNNN is that the description the QEMM.COM 
  298. program reports changes to Adapter RAM, rather than "Excluded".
  299.  
  300. QEMM-386 PARAMETER:  ADAPTERROM=MMMM-NNNN (AROM=MMMM-NNNN)
  301. MANIFEST VIEW:  FIRST MEG/OVERVIEW
  302.      The portion of the address space bounded below by MMMM and above by NNNN 
  303. with this parameter will be reported as Adapter ROM on the description field 
  304. of the First Meg/Overview screen of Manifest.  This parameter causes the 
  305. portion of the address space bounded by the beginning address ("MMMM") and the 
  306. ending address ("NNNN") not to be mapped by QEMM-386.  This should be used 
  307. when there is a portion of the address space occupied by the adapter ROM of a 
  308. physical device (like a disk controller ROM).  The only difference between 
  309. this parameter and an EXCLUDE=MMMM-NNNN is that the description the QEMM.COM 
  310. program reports changes to Adapter ROM, rather than "Excluded".
  311.  
  312. QEMM-386 PARAMETER:  (FR=XXXX)
  313. MANIFEST VIEW:  FIRST MEG/OVERVIEW
  314.      The location of the page frame is reported on the First Meg/Overview 
  315. screen of Manifest with the description of "Page Frame". The "FRAME=XXXX" 
  316. parameter tells QEMM-386 where to put the page frame.  XXXX can be any 
  317. hexadecinal number that is a multiple of 16K (C000, C400, C800, CC00, D000, 
  318. D400, D800, DC00, E000, etc.)  The page frame is 64K long.  Of course if you 
  319. put your page frame on top of the address space used by the video card, BIOS 
  320. ROM, network card's RAM buffer, etc., you will have trouble.  The default 
  321. setting of FRAME is AUTO, which is achieved by not having a FRAME=XXXX 
  322. statement at all.  QEMM-386 finds the location it feels is most suitable for 
  323. the page frame, usually the highest available free 64K piece of the address 
  324. space.  With Stealth, QEMM versions 6 and above will put the page frame at 
  325. C000, if appropriate, or EC00 by default.
  326.  
  327.      The fourth stop is the BIOS Data screen of the First Meg section.
  328.  
  329. QEMM-386 PARAMETER:  NOXBDA (NX)
  330. MANIFEST VIEW:  FIRST MEG/BIOS DATA
  331.      The third line of the First Meg/BIOS Data screen of Manifest will read 
  332. "0E: Extended Bios Segment   0AF8" (or whatever address at which the XBDA is 
  333. being put) if you have an Extended BIOS Data Area.  The XBDA is discussed in 
  334. greater detail in the NOXBDA section above in the QEMM-386/Memory section and 
  335. there is also a paragraph in the First Meg/Overview section of this document.
  336.  
  337.      The fifth stop is the Timings screen of the First Meg section.
  338.  
  339. QEMM-386 PARAMETER:  ROM
  340. MANIFEST VIEW:  FIRST MEG/TIMINGS
  341.      If the timing of a portion of the address space occupied by a ROM is as 
  342. fast as the portion of the address space occupied by conventional memory 
  343. (Conventional Memory is in the address space beginning at 0000 and running, 
  344. usually, to 9FFF.  The portion of the address space occupied by a ROM should 
  345. be identified as "System ROM", or "Disk ROM", "Video ROM", or "Adapter ROM" on 
  346. the description field of the First Meg/Overview screen of Manifest ) then that 
  347. ROM is being "shadowed" in RAM; see the "ROM" section of the "QEMM-386/Memory" 
  348. section of this document.  If the speeds are the same without the ROM 
  349. parameter on the QEMM line then this service is being performed in hardware.
  350.      If this service is not being performed in hardware then you can use QEMM-
  351. 386 to provide this service by placing the ROM parameter on the QEMM line of 
  352. the config.sys.  You may find that, on some systems, only the system ROM (or 
  353. perhaps system and video ROMs) are being sped up by the system hardware.  If 
  354. you have a ROM that is not being sped up by the system hardware then QEMM-386 
  355. can be used to speed up only a specific range of ROM by using the parameter 
  356. "ROM=MMMM-NNNN" where "MMMM" is the beginning address of the ROM and "NNNN" is 
  357. the ending address of the ROM.  Say you have a Disk ROM at C800-CBFF and your 
  358. system is shadowing the System ROM (typically F000-FFFF) and Video ROM 
  359. (typically C000-C7FF) already but is not shadowing the Disk ROM:  You can put 
  360. the parameter "ROM=C800-CBFF" on the QEMM line of the config.sys to get this 
  361. same service for the disk ROM.  
  362.  
  363.      See the "ROM" section of the QEMM-386/Memory section of this document for 
  364. more discussion of the ROM parameter and the "NOSHADOWRAM" section of of the 
  365. QEMM-386/Memory section of this document for more discussion of the concept of 
  366. shadowing ROMs.
  367.  
  368.  
  369.   ************************************************************************
  370.   *This technical note may be copied and distributed freely as long as it*
  371.   *is distributed in its entirety and it is not distributed for profit.  *
  372.   *         Copyright (C) 1991-94 by Quarterdeck Office Systems          *
  373.   ************************ E N D   O F   F I L E *************************
  374.