home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 22 gnu / 22-gnu.zip / mfb5.zip / EMTEX / DOC / EMX.DOC
Text File  |  1994-01-19  |  18KB  |  529 lines

  1. ===============================================================================
  2. emx.doc           emx 0.8h                                          19-Jan-1994
  3. ===============================================================================
  4.                                      Copyright (c) 1990-1994 by Eberhard Mattes
  5.  
  6.  
  7. Hardware requirements
  8. ---------------------
  9.  
  10. - emx requires an 80386 CPU (80386DX, 80386SX, i486)
  11.  
  12. - emx requires an 80387 coprocessor (or i486 processor) if floating
  13.   point math is to be used under DOS (emTeX386 doesn't use floating
  14.   point math)
  15.  
  16.  
  17. Installing emx under OS/2 2.x
  18. =============================
  19.  
  20. Summary for impatient OS/2 users
  21. --------------------------------
  22.  
  23. 1.  Add \emtex\dll to LIBPATH (always use the latest copy of the .dll
  24.     files!)
  25.  
  26. 2.  Reboot
  27.  
  28.  
  29. Detailed instructions for OS/2 users
  30. ------------------------------------
  31.  
  32. emx requires OS/2 2.x and does not run in DOS mode of OS/2.
  33.  
  34. Before changing config.sys, make a backup copy of that file!
  35.  
  36. OS/2 looks for dynamic link libraries in the directories listed in the
  37. LIBPATH statement of your config.sys file.  Note that LIBPATH is not
  38. an environment variable!
  39.  
  40. At any time, at most one version of a dynamic link library is loaded.
  41. If there are different versions of a dynamic link library in the
  42. directories listed in the LIBPATH statement, the first one listed is
  43. loaded.  If you already have installed emx.dll, you should be careful
  44. to use the latest revision of emx.dll.  A newer emx.dll works with
  45. older programs, but newer programs don't work with older emx.dll.
  46.  
  47. Either copy the latest revisions of emx.dll to a directory directory
  48. listed in the LIBPATH statement of config.sys or modify the LIBPATH
  49. statement to include the directory where the latest revisions of
  50. emx.dll can be found.
  51.  
  52. The directories of the LIBPATH statement are separated by semicolons.
  53. To add c:\emtex\dll to the LIBPATH statement, append a semicolon -- if
  54. there is not yet a semicolon -- to the end of the line of config.sys
  55. that starts with
  56.  
  57.     LIBPATH=
  58.  
  59. Then, type the absolute name of the directory.  Example:
  60.  
  61.     LIBPATH=.;C:\OS2\DLL;C:\OS2\MDOS;C:\;C:\OS2\APPS\DLL;D:\EMTEX\DLL
  62.  
  63. Optionally, you can append a semicolon at the end.
  64.  
  65. Now, you should reboot to activate the change to config.sys.
  66.  
  67. If OS/2 says
  68.  
  69.     SYS1804: The system cannot find the file EMX.
  70.  
  71. when running tex386.exe, you haven't correctly set the LIBPATH
  72. statement of config.sys.  See above for details.
  73.  
  74.  
  75. Installing emx under DOS
  76. ========================
  77.  
  78. Summary for impatient DOS users
  79. -------------------------------
  80.  
  81. 1.  If you're using a memory manager which implements DPMI, enable
  82.     VCPI
  83.  
  84. 2.  Remove BREAK=ON from config.sys
  85.  
  86. 3.  Reboot
  87.  
  88.  
  89. Detailed instructions for DOS users
  90. -----------------------------------
  91.  
  92. If you're using a memory manager (such as QEMM or EMM386 or 386max)
  93. which implements DPMI (DOS Protected Mode Interface), you have to
  94. change the invokation of that memory manager to enable VCPI as emx
  95. does not support DPMI.  See the documentation of your memory for
  96. details.  If your memory manager supports DPMI only (without VCPI),
  97. you have to remove or disable the memory manager.  emx supports XMS
  98. and VCPI.
  99.  
  100. Examine your config.sys file: If there's a line
  101.  
  102.     BREAK=ON
  103.  
  104. in it, you should remove it as it causes trouble with emx and lots of
  105. other programs.
  106.  
  107. If you're using an Intel Inboard 386/PC, add the following line to
  108. autoexec.bat:
  109.  
  110.     set emxopt=-m3
  111.  
  112. If the swap file (used to swap memory pages to disk when running out
  113. of physical memory) should be in a specific directory or on a specific
  114. disk drive, set the EMXTMP environment variable in autoexec.bat.
  115. Example:
  116.  
  117.     set emxtmp=c:\tmp
  118.  
  119. Now, you should reboot to activate the changes to config.sys and
  120. autoexec.bat.
  121.  
  122.  
  123. Environment variables
  124. =====================
  125.  
  126. Environment variables (DOS)
  127. ---------------------------
  128.  
  129. EMX     path name of emx.exe.  Set EMX to speed up loading of emx.exe
  130.         or to load a specific version of emx.exe
  131.  
  132. EMXTMP  directory for the swap file
  133.  
  134. TMP     used if EMXTMP is not set
  135.  
  136.  
  137. DOS Notes
  138. =========
  139.  
  140. - emx requires DOS 3.0 or later
  141.  
  142. - emx does not support DPMI
  143.  
  144. - emx does not support DESQview without VCPI (use QEMM-386 with
  145.   DESQview)
  146.  
  147. - If emx doesn't work under DESQview (especially if it displays the
  148.   message
  149.  
  150.       Nonmaskable interrupt (NMI)
  151.  
  152.   either set the protection level to 0 or use the WATCHDOG=0 option of
  153.   QEMM-386.
  154.  
  155. - emx supports VCPI
  156.  
  157. - emx supports XMS.  Do not use emx with himem.sys 2.06 or earlier.
  158.  
  159. - emx checks for XMS version number 2.00 or later and for XMS driver
  160.   revision 2.06 or later, as older himem.sys drivers don't work
  161.   correctly.  You can override this check by using the -O emx option
  162.   (for drivers using a different revision numbering scheme), but emx
  163.   may not work with your XMS driver, anyway.  Actually, emx has not
  164.   been tested with himem.sys 2.05; 2.04 fails, 2.06 works.
  165.  
  166. - emx supports vdisk.sys 3.3 and later and most other RAM disk drivers
  167.  
  168. - emx uses (or tries to use) all available memory, whether
  169.   conventional, extended, or expanded memory.  But it does not use
  170.   extended memory AND expanded memory at the same time.  If there
  171.   isn't enough memory, emx will swap to disk.  The swap file will be
  172.   created in the directory given by the EMXTMP environment variable.
  173.   If EMXTMP is not set, TMP will be used.  If both variables are not
  174.   set, the swap file will be created in the root directory of the
  175.   current drive.
  176.  
  177.  
  178. Using rsx instead of emx
  179. ========================
  180.  
  181. rsx is a DPMI-compliant DOS extender which is more or less compatible
  182. to emx.  Moreover, rsx contains a floating point emulator.  rsx is
  183. free software and has been written by Rainer Schnittker.  As of this
  184. writing, rsx is available for anonymous ftp as
  185.  
  186.     ftp.uni-bielefeld.de: /pub/systems/msdos/dpmigc2a.zip
  187.  
  188. If the emx loader emxl.exe finds a DPMI server but no VCPI server, it
  189. tries to run rsx.exe instead of emx.exe.  The RSX environment variable
  190. will be used instead of the EMX environment variable for locating
  191. rsx.exe.
  192.  
  193. To load rsx.exe instead of emx.exe even if there is a DPMI server and
  194. a VCPI server (for instance if you need the floating point emulation
  195. of rsx), set the EMX environment variable to point to rsx.exe.  Note
  196. that rsx needs a DPMI server.
  197.  
  198. NOTE: The version of rsx found in dpmigc2a.zip implements the system
  199. calls of emx 0.8g.  However, emTeX386 uses emx 0.8h which may result
  200. in problems. You should wait for a version of rsx which is compatible
  201. to emx 0.8h.
  202.  
  203.  
  204. emx options
  205. ===========
  206.  
  207. You can customize emx by setting the EMXOPT environment variable.
  208. This environment variable contains a list of options, similar to
  209. command line options.  The options must be separated by at least one
  210. blank.  Example:
  211.  
  212.     set emxopt=-c -h40
  213.  
  214.  
  215. emx options (OS/2)
  216. ------------------
  217.  
  218. -c      Disable core dumps caused by signals and exceptions
  219.  
  220. -h#     Set OS/2 file handle limit to #.  The number # must be between
  221.         10 and 255
  222.  
  223. -r*     Prepend drive letter * to absolute path names.  If a path name
  224.         starts with / but does not start with //, /dev/ or /pipe/, *
  225.         followed by a colon will be prepended.  If -rd has been given,
  226.         the file name \mydir\abc will be translated to d:\mydir\abc.
  227.         Note: this option can cause unexpected effects
  228.  
  229. -t      Truncate file names to 8.3
  230.  
  231. -E      Run debuggee in same session (window) as debugger
  232.  
  233.  
  234. emx options (DOS)
  235. -----------------
  236.  
  237. -c      Disable core dumps caused by signals and exceptions
  238.  
  239. -d      Don't use extended memory
  240.  
  241. -e      Don't check for 387 coprocessor.  Assume no coprocessor is
  242.         present
  243.  
  244. -h#     Set DOS file handle limit to #.  The number # must be between
  245.         10 and 255.  This option is ignored for DOS versions earlier
  246.         than 3.30.  This option does not change the emx limit for the
  247.         number of files per process -- that limit is always 40
  248.  
  249. -m1     Running on Fujitsu FMR70 (not implemented yet)
  250.  
  251. -m2     Running on NEC PC-98 (not implemented yet)
  252.  
  253. -m3     Running on Intel Inboard 386/PC
  254.  
  255. -o      Send the register dump of an exception to stdout.  Without -o,
  256.         the register dump is sent to the CON device.  You need -o for
  257.         redirecting the register dump to a file.
  258.  
  259.         emx now creates a core dump file (named `core') instead of a
  260.         register dump.  Please keep that file in case the author of
  261.         the program needs it for debugging.
  262.  
  263. -r*     Prepend drive letter * to absolute path names.  If a path name
  264.         starts with / but does not start with //, /dev/ or /pipe/, *
  265.         followed by a colon will be prepended.  If -rd has been given,
  266.         the file name \mydir\abc will be translated to d:\mydir\abc.
  267.         Note: this option can cause unexpected effects
  268.  
  269. -t      Truncate file names to 8.3 format.  Each part of a pathname is
  270.         truncated to 8.3 format by taking the first 8 characters
  271.         before the dot and the first 3 characters after the dot.  This
  272.         is useful to compile programs on a FAT filesystem with minimal
  273.         changes
  274.  
  275. -O      Override XMS version check.  By default, emx checks for XMS
  276.         version number 2.00 or later and for XMS driver revision 2.06
  277.         or later, as older himem.sys drivers don't work correctly.
  278.         You can override this check by giving the -O option (for
  279.         drivers using a different revision numbering scheme), but emx
  280.         may not work with your XMS driver, anyway.  Actually, emx has
  281.         not been tested with himem.sys 2.05; 2.04 fails, 2.06 works
  282.  
  283. -V      Display emx version.  On program start, the emx version will
  284.         be displayed
  285.  
  286.  
  287. emx messages (DOS)
  288. ==================
  289.  
  290. Abnormal program termination
  291.  
  292.     The program received the SIGABRT signal.  The abort() function was
  293.     called or SIGABRT was raised.
  294.  
  295. Cannot create swap file
  296.  
  297.     The swap file could not be created.  Remedy: make sure the swap
  298.     file can be created in the directory given by the EMXTMP (or TMP)
  299.     environment variable.  If EMXTMP and TMP are not set, emx will
  300.     create the swap file in the root directory of the current drive.
  301.  
  302. Cannot enable A20
  303.  
  304.     emx tried to enable address line A20 and failed.  Remedy: contact
  305.     the author.
  306.  
  307. Cannot enable A20 via XMS
  308.  
  309.     emx tried to enable address line A20 by calling the XMS driver.
  310.     Unfortunately, A20 couldn't be enabled.  Remedy: unknown.
  311.  
  312. Cannot open program file
  313.  
  314.     The program file given on the emx command line could not be found
  315.     or opened.  Remedy: type the correct file name.  (This should not
  316.     happen with bound programs.)
  317.  
  318. Cannot read program file
  319.  
  320.     An error occured while reading the program file.  Remedy: make
  321.     sure the program file given on the emx command line is valid (this
  322.     does not apply to bound programs).  Maybe some other program
  323.     accesses that file.
  324.  
  325. core dumped
  326.  
  327.     The program cannot continue due to a fatal error (exception).  An
  328.     image of the program's memory has been written to a file named
  329.     `core'.  Please keep that file in case the author of the program
  330.     needs it for debugging.
  331.  
  332. DPMI not supported
  333.  
  334.     The current version of emx cannot use DPMI.  Maybe some future
  335.     version will do.  Remedy: end the DPMI server (MS Windows).
  336.  
  337. Exception ...
  338.  
  339.     The program run by emx did something illegal.  Remedy: report to
  340.     the supplier of the program.
  341.  
  342. Illegal moucall function
  343.  
  344.     The program run by emx has called an invalid system function.
  345.     Remedy: report to the supplier of the program.
  346.  
  347. Illegal syscall function
  348.  
  349.     The program run by emx has called an invalid system function.
  350.     Remedy: report to the supplier of the program.
  351.  
  352. Illegal viocall function
  353.  
  354.     The program run by emx has called an invalid system function.
  355.     Remedy: report to the supplier of the program.
  356.  
  357. Invalid arguments for DOS function xx
  358.  
  359.     The program run by emx has used invalid arguments for a system
  360.     function.  Remedy: report to the supplier of the program.
  361.  
  362. Invalid emx option
  363.  
  364.     An option in EMXOPT or set by emxbind is not understood by emx.
  365.     Remedy: check EMXOPT.  Use emxbind -i to display the options set
  366.     by emxbind.
  367.  
  368. Invalid program file
  369.  
  370.     The program file given on the emx command line (or bound to emx)
  371.     is corrupt.  Remedy: reload the program from diskette.  If this
  372.     doesn't help you should contact the supplier of the program.
  373.  
  374. Invalid special function code: xx
  375.  
  376.     The program run by emx has called an invalid system function.
  377.     Remedy: report to the supplier of the program.
  378.  
  379. Linear address space exhausted
  380.  
  381.     The program run by emx uses far too much memory.  Remedy: complain
  382.     to the author.
  383.  
  384. Nonmaskable interrupt (NMI) at xxxx:yyyyyyyy
  385.  
  386.     A nonmaskable interrupt occured.  Maybe this is due to a memory
  387.     error.  Remedy: if you're using DESQview, either set the
  388.     protection level to 0 or use the WATCHDOG=0 option of QEMM-386.
  389.     Otherwise, run a program for testing memory.
  390.  
  391. Out of memory
  392.  
  393.     There isn't enough memory for running emx.  Remedy: remove some
  394.     drivers and/or resident programs.  Or add memory to your machine.
  395.  
  396. Out of stacks
  397.  
  398.     emx run out of local stacks.  Remedy: complain to the author.
  399.  
  400. Out of memory or swap space
  401.  
  402.     emx cannot write to the swap file because the disk is full.
  403.     Remedy: make sure there is enough space on the drive used for the
  404.     swap file.  Use the EMXTMP (or TMP) environment variable to tell
  405.     emx where to create the swap file.  If neither EMXTMP nor TMP is
  406.     set, emx will create the swap file in the root directory of the
  407.     current drive.
  408.  
  409. Out of swap space
  410.  
  411.     emx cannot write to the swap file because the disk is full.
  412.     Remedy: make sure there is enough space on the drive used for the
  413.     swap file.  Use the EMXTMP (or TMP) environment variable to tell
  414.     emx where to create the swap file.  If neither EMXTMP nor TMP is
  415.     set, emx will create the swap file in the root directory of the
  416.     current drive.
  417.  
  418. Process terminated by SIGINT
  419.  
  420.     You've stopped the program by hitting Ctrl-C or Ctrl-Break.
  421.  
  422. Process terminated by SIG...
  423.  
  424.     The program has been stopped due to a signal or exception.
  425.     Usually, this indicates a fatal error in the program.
  426.  
  427. Program aborted
  428.  
  429.     You've aborted the program by answering `Abort' after a critical
  430.     error had occured.
  431.  
  432. Swap file I/O error
  433.  
  434.     emx couldn't read or write the swap file.
  435.  
  436. This program does not run in DOS mode of OS/2
  437.  
  438.     DOS emulation of OS/2 doesn't support emx.  Remedy: boot DOS or
  439.     use OS/2 2.x.
  440.  
  441. This program requires an 80386 CPU
  442.  
  443.     You need an 80386DX, 80386SX, or i486 CPU for running emx.
  444.     Remedy: get another computer.
  445.  
  446. This program requires DOS 3.0 or later
  447.  
  448.     If emx is bound with an application program into one executable,
  449.     DOS 3.0 or later is required for execution.
  450.  
  451. Too many processes
  452.  
  453.     emx supports up to 4 processes.  You've tried to start 5 or more
  454.     processes.
  455.  
  456. Unexpected interrupt
  457.  
  458.     This cannot happen.  Remedy: report to the author.
  459.  
  460. Unsupported VDISK.SYS version
  461.  
  462.     emx doesn't support the vdisk.sys device driver you're using.
  463.     Remedy: remove VDISK.SYS or use a different version.  emx should
  464.     work with vdisk.sys 3.3 or later.
  465.  
  466. Unsupported XMS version
  467.  
  468.     emx requires himem.sys 2.06 or later (older versions are too
  469.     buggy).  Remedy: get a newer himem.sys.  If you're not using
  470.     himem.sys, use the -O option of emx and tell the author whether
  471.     this works or not.
  472.  
  473. Unusable interrupt vector mappings set by VCPI server
  474.  
  475.     The configuration of the VCPI server (EMS driver) is illegal.
  476.     Remedy: read the manual of the EMS driver.
  477.  
  478. Virtual mode not supported without VCPI
  479.  
  480.     A VCPI server is required to run emx if the CPU is in virtual
  481.     mode.  You'll get this message if you're using an EMS driver (EMS
  482.     emulator) which doesn't support VCPI or if you've disabled EMS.
  483.     Remedy: remove the EMS driver, use an EMS driver which supports
  484.     VCPI or enable EMS if it has been disabled (for instance, remove
  485.     the NOEMS keyword from the command line of the EMS driver).
  486.  
  487. Wrong emx version
  488.  
  489.     The version of emx.exe does not match the version the program was
  490.     compiled for.  Remedy: use the copy of emx.exe that comes with the
  491.     program.  If you're using different programs which need different
  492.     versions of emx.exe, use the EMX environment variable to set the
  493.     path name of the correct version of emx.exe before running a
  494.     program which requires a version different from the default
  495.     emx.exe.  You can also use emxbind -u to put the correct version
  496.     of emx.exe into the executable files.
  497.  
  498.  
  499. Obtaining the complete emx package
  500. ==================================
  501.  
  502. emx is available for anonymous ftp on
  503.  
  504.     ftp.uni-stuttgart.de [129.69.8.13]: /pub/systems/os2/emx-0.8h
  505.     ftp-os2.nmsu.edu  [128.123.35.151]: /os2/2_x/unix/gnu/emx08h
  506.     src.doc.ic.ac.uk     [146.169.2.1]: /pub/packages/os2/2_x/unix/gnu/emx08h
  507.     ftp.informatik.tu-muenchen.de [131.159.0.198]:
  508.                                         /pub/comp/os/os2/devtools/emx+gcc
  509.  
  510.  
  511. The author of emx
  512. =================
  513.  
  514. The author of emx is
  515.  
  516.     Eberhard Mattes
  517.     Teckstrasse 81                                      (TeX: Teckstra\ss e)
  518.     D-71696 Moeglingen                                  (TeX: M\"oglingen)
  519.     Germany
  520.  
  521. Internet: mattes@azu.informatik.uni-stuttgart.de  (subject to change)
  522.  
  523. No telephone calls please!  It must be stressed that the author does
  524. not reply to letters if you don't include return postage
  525. (international postal reply coupon if you're outside Germany) and a
  526. self-addressed envelope.
  527.  
  528. --------------------------- END OF EMX.DOC --------------------------------
  529.