home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Internet MPEG Audio Archive
/
IMAA.mdf
/
util
/
dos
/
l3v100n
/
rsx
/
doc
/
install.txt
< prev
next >
Wrap
Text File
|
1994-01-19
|
6KB
|
213 lines
--------------------------------------------------------------------------------
INSTALL.TXT DPMI-RSX (c) Rainer Schnitker Jan 1994
--------------------------------------------------------------------------------
This file contains information about:
Hardware Requirements
Software Requirements
Create more DPMI memory
INSTALL for EMX/GCC
INSTALL for DJGPP
Major bugs in tested DPMI-Hosts
Patch for next EMX-Update
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
--------------------------------------------------------------------------------
Hardware Requirements:
----------------------
- RSX requires a 386SX-CPU (or higher)
(A 387 coprocessor is not necessary, because RSX emulates it)
Software Requirements:
----------------------
- A DPMI 0.9/1.0 - Server like:
MS-Windows 3.1 enhanced mode
QEMM386 + QDPMI 1.01
386MAX 6.x (better 7.0)
(OS2, 386Unix not tested)
To use the 387-emulator the DPMI-server must provide DPMI 1.0 floating-point
extensions (most 0.9 server support this).
- DOS 3.3+ or DOS box emulation
- A GNU-C port for DOS like EMX/GCC 0.8e-h or DJGPP 1.06-1.11
or any EMX program that should run under DPMI (like TeX386).
Create more DPMI memory: (needed for older DJGPP)
------------------------
MS-Windows 3.1:
You can set the value PageOverCommit in the system.ini [386Enh] section
PageOverCommit=8 (default=4)
Specifies the multiplier for determining the amount of linear address space.
The amount of linear address space is computed by rounding up the amount of
available physical memory to the nearest 4 megabytes and then by multiplying
that value to the value specified for this setting.
If you use a permanent Swapfile increase this file.
Also you can create a smaller DOS-Box. PIF-settings:
- 400 KB DOS memory maximum [250 KB without rsx387]
(if you only want to run small DOS programs in RSX)
- EMS=0 ; XMS=0 ; no High-Memory-Area
386MAX 7.0:
To increase memory you must have a SWAPFILE line in your 386MAX.PRO file
SWAPFILE=C:\386MAX\386MAX.swp /S=10240
This creates a 10MB swapfile. The size of the virtual swapfile is the
amount of virtual memory available to your applications.
QEMM + QDPMI:
Set the environment QDPMI to something like
QDPMI=SWAPFILE c:\tmp\qdpmi.swp 8192
This creates a 8 MB swapfile. The sum of the value of availble memory and
the size of the virtual swapfile is the amount of virtual memory available
to your applications.
OS/2:
DPMI_DOS_API must have the value AUTO or ON
DPMI_MEMORY_LIMIT default value is 64 MB, you don't need to change it
EMS,XMS is not needed.
INSTALL for EMX/GCC:
--------------------
1) Set the environment RSX387, if a 387-emulation is required
RSX387=C:\RSX\FPU-EMU\RSX387
You can disable the FPU-EMU with the '-e' command-line switch.
2) There are two ways to run RSX from bound exe-files:
a) Use emxl.exe from EMX-0.8H.
If the emxl.exe detects only DPMI it runs RSX.EXE, otherwise EMX.EXE.
See also \emx\doc\EMXRT.DOC in EMXRT.ZIP.
b) Set the environment variable EMX to RSX.EXE like
EMX = C:\RSX\BIN\RSX.EXE .
Now, bound EXE-files run the RSX-extender instead of EMX. A special PATH
statement is not necessary.
If you have no coprocessor and you want run the gcc compiler this method
is recommend. Also you can use the stub emxldpmi.exe (if DPMI, run RSX).
Notes:
(a) Older emx versions don't use the EMX environment (emTeX386 b8).
Use emxbind -u to change the emxl.exe stub.
(b) Note that the default stack is 60 KB. If you need more space, use
the -s option to grow the stack, or set a environment-var RSXOPT.
Example: RSXOPT=-s256 sets the stack to 256 Kbytes.
If you grow the stack, some programs require -as option
(see rsxcmds.txt).
INSTALL for DJGPP:
------------------
1) Set environment RSX387, if 387-emulation is required.
RSX387=C:\RSX\FPU-EMU\RSX387
2) Bound executable must find RSX.EXE in the PATH or current directory.
Copy the binary files from \rsx\bin to your \djgpp\bin directory.
Or change the PATH to \rsx\bin.
3) Creating bound executable:
a) For go32 version 1.11 you can use the tools coff2exe, stubedit.
To create a gcc compiler for RSX.EXE do this:
c:\gcc\bin> xcopy gcc.exe gccdpmi.exe
c:\gcc\bin> stubedit gccdpmi.exe extender=rsx
b) for older versions:
You must use the new stub STUBDJ.EXE to create bound executable. The
program BINDDJ puts a stub and the a.out program together:
BINDDJ stubdj.exe myfile myfile.exe
Stubdj executes RSX if a DPMI-server is there, and go32.exe if there is no
DPMI-server. To change the gcc compiler exe-stub, use EXE2AOUT from djgpp
to get the a.out file and use the BINDDJ command to create the new stub.
Example:
C:\GCC\BIN> exe2aout gcc.exe
C:\GCC\BIN> binddj stubdj.exe gcc gccd.exe (copy stubdj+gcc gccd.exe)
[4] Building library LIBRSX.A
If you want to use signals(), ptrace(), wait(), etc you must build
the library 'librsx.a'.
Read the file 'readme' in the \rsx\source\djlibrsx to install
this futures.
Major BUGS in tested Hosts :
----------------------------
running MS-Windows 3.1
(exception 3 is not used, int3 handler must installed)
running QEMM + QDPMI 1.01
- page faults terminate program
- QDPMI virtuel memory error after memory resize fails (page fault)
(can happen in GDB.EXE)
running 386MAX 6.00 (the new version 7.00 is ok)
- gp-fault in host handler calling spawning() for a real-mode program
- control-c handler will never called
Patch for next EMX-Update:
--------------------------
If you upgrade a new EMX version (maybe emx0.8i ?), you always get a warning
message if you run the rsx.exe file.
Now you can patch the RSX.EXE file:
Take a good Hexdump-editor
Load RSX.EXE
Search for reversed version number "h8.0"
Change this value
Save RSX.EXE