











                                      Chapter 1

                                Advanced Information


          1.1  IRQ conflicts: Or why your system acts like it has the
          shakes.


          IRQ conflicts are a hidden source of numerous nasty problems with
          running DOS. As more and more hardware is installed in the
          backplane, the chances of a conflict are very high. Herewith
          follow Firefly Software's "rules of thumb".

          Get rid of internal fax and modem cards. Make external any
          hardware that can be.

          Turn OFF the IRQ for LPT1 & 2. The IRQ is not needed unless you
          use the printer ports for 2 way processing, and very few
          installations do. Ordinary printing does not use bi-directional
          transmissions.

          Remove the IRQ from COM2. Since I use COM2 only for a debug dump
          line, consequently it does not seem to suffer from having the IRQ
          turned off.

          These measures will free IRQs 3,5,7.

          Consult your hardware manual for instructions on how to disable
          the IRQ's. Usually they are turned on/off by dip switches.




          1.2  Expanded Memory (EMS): Or how to get along without knowing
          what you are doing until the hair is all gone.


          This comes under the heading of topics that you think you know,
          what is going on. But in reality the tip of the iceberg is all
          that is really visible. Stand here at the edge, and peer down
          into the depths. The wonders to behold.


          There are basically 3 memory managers.

             1.  386Max













             2.  QEMM

             3.  EMM386

          The following information is NOT inclusive, in that the material
          will be confined as much as possible to EMS, and only 386
          machines.


          These memory manager provide control of EMS, XMS and UMB.

             1.  Expanded Memory

             2.  Extended Memory

             3.  Upper Memory Blocks


          In general, if the memory manager provides EMS, it will also
          provide the same total space as XMS memory, if requested. This
          means that 1 meg of space can be used as EMS or XMS. Requests for
          both being drawn from the same pool, up to a combined total of 1
          meg.


          If EMS is turned off, or inactive, there will not be any XMS.

          If the UMB is turned on then the manager will provide upper
          memory blocks for use by DOS.

          If the memory manager is not loaded into memory it is the same as
          if the manager were turned off. Except, in some cases EMS API
          calls will appear to succeed, if loaded but not active.


          If MS Windows is loaded after these memory managers, it turns
          them off and provides the support. Except, there will no UMB
          support if it was turned off prior to Windows' loading. This
          means that Windows will provide EMS and XMS even when the other
          memory managers were not loaded or active before Windows started
          up.

          If the NoEMMDriver switch is TRUE in system.ini, then Windows
          will not provide EMS or XMS support. Even if a PIF file provides
          such.


          A DOS application which fails to open "EMMXXXX0" and check the
          returned file handle to see if it is a device, and subsequently
          attempts to make EMS calls may experience calls that may or MAY
          NOT fail. Some older EMS using programs do not check this
          properly. When they fail, it is likely to be with a General
          Protection Fault!




                                        - 2 -








          A DOS application running in Windows, where the PIF did not
          provide any EMS will sometimes report a page frame segment of
          B000 hex!


          Configuration parameters in effect before Windows starts will be
          taken over by Windows. You can not override these parameters with
          those in system.ini.







*************************************************
There may be mistake in the text above, in that Windows will not 
provide EMS if there was no EMS frame enabled before Windows was started.










































                                        - 3 -














                                    Contents



               Chapter 1  Advanced Information                       1
                  1.1  IRQ conflicts: Or why your system acts like it
                       has the shakes. . . . . . . . . . . . . . . . 1
                  1.2  Expanded Memory (EMS): Or how to get along
                       without knowing what you are doing until the
                       hair is all gone. . . . . . . . . . . . . . . 1









































                                          i


