[1668] in linux-announce channel archive

home help back first fref pref prev next nref lref last post

New free DOS extender for cross-development from Linux

daemon@ATHENA.MIT.EDU (Lars Wirzenius)
Sat Feb 3 13:51:00 1996

Date: 	Sat, 3 Feb 1996 04:28:18 +0200
From: Lars Wirzenius <wirzeniu@cc.helsinki.fi>
To: linux-announce@vger.rutgers.edu

From: baford@cs.utah.edu (Bryan Ford)
Newsgroups: comp.os.linux.announce
Subject: New free DOS extender for cross-development from Linux
X-Original-Date: 2 Feb 1996 02:48:02 GMT
Organization: University of Utah Computer Science Department
Keywords: DOS, cross-development, GCC
Approved: linux-announce@news.ornl.gov (Lars Wirzenius)
Followup-to: comp.os.linux.development.apps

-----BEGIN PGP SIGNED MESSAGE-----

	     MOSS: a new DOS Extender for cross-development from Linux

		   Written by Bryan Ford of Sleepless Software
	  and the Computer Systems Laboratory at the University of Utah

		 Available from: ftp://flux.cs.utah.edu/flux/moss

   [Please redistribute this announcement to anyone who might be interested.]


MOSS is a new DOS extender designed especially for cross-development
of DOS applications from Linux or other Unix-like operating systems.
It has a number of major features:

	* Can be used royalty-free in commercial and non-commercial products.

	* Full support for DPMI, VCPI, XMS, and "raw" DOS modes.

	* Supports up to 2GB of virtual and physical memory.

	* Demand-loading of executables for quick startup times.

	* Supports POSIX low-level file I/O as well as ANSI C I/O.

	* Processor exceptions can be delivered as POSIX signals.

	* Hardware interrupts can be delivered as POSIX.1b real-time queued
	  signals (except under DPMI).

	* Traditional-DOS-extender-like interrupt revectoring also available
	  in all environments.

	* Supports the POSIX.1b memory locking API ({\tt mlock} et al).

	* Remote source-level debugging over a serial line using GDB.

	* Full cross-development from Linux and other Unix-compatible OS's.

	* Uses i386 ELF object files and executables.

	* Allows a program {\em and} any associated data files
	  to be attached to MOSS, forming one big DOS executable.

	* Written almost entirely in easy-to-modify C code.

	* Can be compiled _completely_ using the freely-available GNU
	  development tools (i.e. doesn't require a commercial
	  compiler/assembler to handle the 16-bit x86 code).

MOSS is a new DOS extender primarily targetted for people who must write
DOS programs for some reason or another, but want to have as little to do
with DOS as possible.  (Like us, for example.)  To this end, MOSS is
primarily intended for cross-development from "real" OS's rather than for
native development under DOS.  MOSS's remote source-level debugging support
makes it extremely convenient to write DOS programs if you have a DOS test
machine sitting next to a Un*x-compatible development machine.
Furthermore, MOSS's API attempts to hide much of the ugliness of DOS under
a Un*x/POSIX veneer, for example by providing POSIX-like file I/O, POSIX
signals for intercepting processor exceptions and hardware interrupts,
POSIX mmap() for mapping device memory such as the video buffer, etc.

Note that MOSS is still at beta-test level: it is still missing a number of
highly desirable features, contains a few horrible kludges, and no doubt
has a few bugs...  As such, NO WARRANTY, EXPRESSED OR IMPLIED, EVER, etc.
etc. etc.  However, we have found MOSS to be quite usable for our purposes
and reasonably robust and compatible, so we decided to release it to the
public at this stage even though it is still incomplete.

Once again, MOSS is available from `ftp://flux.cs.utah.edu/flux/moss'.  The
file `moss-0.90-bin-linux.tar.gz' contains pre-compiled cross-compiler
tools that run on Linux, as well as a pre-built copy of MOSS itself.  The
file `moss-0.90-bin-freebsd.tar.gz' contains the corresponding pre-compiled
binaries for FreeBSD.  The file `moss-0.90.tar.gz' contains the sources and
further documentation.  (The documentation is also available in separate
files in this directory.)

- ---
Bryan Ford	baford@cs.utah.edu	University of Utah, CSS
`finger baford@schirf.cs.utah.edu' for PGP key and other info.


-----BEGIN PGP SIGNATURE-----
Version: 2.6.2i

iQCVAwUBMRLH2YQRll5MupLRAQFmxgQAwZldh/1pL+OdkTM19wJUKZtlITcn8Jeg
9IeO42mkdJ/vuRJsRhoOd0swa6wjIxjChzZasSzZgB+GJQFQhWkywdXNEO997NUl
Ux57NBjr1grT5kB/i42DhXJVZOpdMIMVFcvwzLZmFNZ1am4D6qMcty+AcH5LObmz
zvMwc1TtHng=
=SZN2
-----END PGP SIGNATURE-----

-- 
This article has been digitally signed by the moderator, using PGP.
Finger wirzeniu@kruuna.helsinki.fi for PGP key needed for validating signature.
Send submissions for comp.os.linux.announce to: linux-announce@news.ornl.gov
PLEASE remember a short description of the software and the LOCATION.



home help back first fref pref prev next nref lref last post