home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 36 Tips / 36-Tips.zip / OTMEM.FAX < prev    next >
Text File  |  1995-01-13  |  5KB  |  109 lines

  1. OSOTMEM -  OS/2 2.X, WARP MEMORY RECOGNITION ON ISA SYSTEMS
  2. 11/09/94
  3.  
  4. ================================================================
  5.      OS/2 2/X, WARP MEMORY RECOGNITION ON ISA SYSTEMS
  6. ================================================================
  7.  
  8.  
  9. SYMPTOM:
  10.  
  11.   Installed memory of more than 64M may not be recognized on
  12.   systems using Phoenix or AMI BIOS.
  13.  
  14. RESOLUTION:
  15.  
  16. 1. To resolve this on the Phoenix BIOS, check the setup for a
  17.    "Compatibility Mode" setting.  If this is present, disable it,
  18.    if not, a BIOS upgrade may be necessary.
  19.  
  20. 2. Currently, there is no resolution for this on the AMI BIOS.
  21.    The BIOS does not report more than 64M or it reports it in a
  22.    way that OS/2 does not support.
  23.  
  24.   Some systems constantly reboot when starting OS/2 or during
  25.   installation of OS/2.  This occurs when systems run versions of
  26.   both the AMI and Phoenix BIOS.  This may also apply to other
  27.   BIOS. This problem is resolved and described in PJ14893.
  28.  
  29.  
  30. DETAILS:
  31.  
  32.     Determining RAM available on ISA systems
  33.     -------------------------------------------
  34.  
  35.   During boot, OS2LDR issues the three BIOS calls described later
  36.   in this document.  If the INT 15 AX=88 returns a value other
  37.   than 16M, this is the amount of RAM OS/2 addresses.  If the INT
  38.   15 AX=88 returns 16M, OS/2 checks the return from the INT 15
  39.   AX=E801 to see if extra RAM is available.  Once OS2LDR
  40.   determines what RAM is available to the system, it passes this
  41.   to OS2KRNL.  OS2KRNL initializes the Page Manager which does
  42.   one final check and verifies the RAM returned by the BIOS
  43.   really is addressable.
  44.  
  45.   OS/2 does not try to find and use any free RAM between 640K and
  46.   1M which is reserved for hardware.
  47.  
  48.  
  49.     BIOS considerations with installed RAM over 64M.
  50.     ------------------------------------------------
  51.  
  52.   Systems with Phoenix BIOS may have a problem using RAM above
  53.   64M. The system continuously reboots if more than 64M RAM is
  54.   installed because it may only recognize 64M of memory.  The
  55.   problem is due to multiple interpretations of the INT 15 AH=88
  56.   BIOS call, since no BIOS call was implemented to report that
  57.   more than 64M was available.  Check for a "Compatibility Mode"
  58.   setting in the BIOS and disable it if it is present.  This
  59.   should resolve the problem.  If not, you need the fix for
  60.   PJ14893.
  61.  
  62.   Phoenix implemented the INT 15 AX=E801 call as of 7/94.  If the
  63.   BIOS date is previous to this, it probably does not have this
  64.   call.  It should have it after 7/94 if the vendor that licensed
  65.   the BIOS code chose to implement it.  Check the System Setup
  66.   for a "Compatibility Mode" setting and make sure it is disabled
  67.   for OS/2.  When this is disabled, the Phoenix BIOS returns
  68.   memory the same way as Compaq systems, which is described later
  69.   in this document.  This setting may have different names in
  70.   different licensed versions of Phoenix BIOS.
  71.  
  72.   AMI BIOS may also have the continuous reboot problem and the
  73.   same APAR applies.  AMI implemented a call as of 9/94 in their
  74.   BIOS to report more than 64M.  AMIimplemented this call
  75.   differently than Compaq.  Currently OS/2 does not recognize
  76.   memory over 64M returned by the AMI BIOS.
  77.  
  78.  
  79.     BIOS calls to determine RAM on non-MCA systems
  80.     -------------------------------------------------
  81.  
  82.     INT 12
  83.   This is the standard industry call to query the BIOS for RAM
  84.   available below 640K.  The call returns into the AX register
  85.   the number of 1K blocks of RAM the system has available in this
  86.   memory area.
  87.  
  88.     INT 15   ;AH=88
  89.   This is the standard industry call to query the BIOS for RAM
  90.   between 1M and 64M.  The call returns into the AX register the
  91.   number of 1K blocks of RAM the system has available in this
  92.   memory area.  The call technically can support between 1M and
  93.   65M, but the standard limits it to 64M.
  94.  
  95.     INT 15   ;AX=E801
  96.   This is a call used by Compaq systems to query the BIOS for
  97.   memory between 16M and 4G.  The call returns into the BX
  98.   register the number of 64K blocks of memory the system has
  99.   available in this memory area.  If there is more than 64M of
  100.   memory in the system, the INT 15 AH=88 call should only return
  101.   16M and the programmer should use INT 15 AX=E801 to find the
  102.   additional memory available to the system.  INT 15 AX=E801 also
  103.   returns in the AX register number of 1K pages between 1M and
  104.   16M so that the INT 15 AX=E801 call returns all memory above
  105.   1M.  AMI has also implemented this call, but their
  106.   implementation is not currently supported by OS/2.
  107.  
  108.  
  109.