dtrg 54ce3f451b Configured distr system for the 6.0pre3 release. %!s(int64=17) %!d(string=hai) anos
..
include be8baf3da6 Added cpm platform. %!s(int64=17) %!d(string=hai) anos
libsys 6127ddf024 Fixed the trap code to write out the error message correctly. %!s(int64=17) %!d(string=hai) anos
.distr 54ce3f451b Configured distr system for the 6.0pre3 release. %!s(int64=17) %!d(string=hai) anos
README a7323e1a8b Documented floating-point status. %!s(int64=17) %!d(string=hai) anos
boot.s c9d7f7ef23 Added suppot for BSS clearing and command line parsing. %!s(int64=17) %!d(string=hai) anos
descr 54ce3f451b Configured distr system for the 6.0pre3 release. %!s(int64=17) %!d(string=hai) anos
pmfile be8baf3da6 Added cpm platform. %!s(int64=17) %!d(string=hai) anos

README

# $Source$
# $State$
# $Revision$


The cpm platform
=================

cpm is an i80-based BSP that generates CP/M executables that can be run on any
CP/M-compliant machine.

This port only implements a very limited set of syscalls --- and most of those
are stubs required to make the demo apps link. File descriptors 0, 1 and 2
represent the console. All reads block. There's enough TTY emulation to allow
\n conversion and local echo (but it can't be turned off).

There's a special, if rather minimilist, interface to give applications access
to CP/M. See include/cpm.h for details.

IEEE floating point is not available. Attempts to use floating-point numbers
will cause the program to terminate.


Example command line
====================

ack -mcpm -O -o cpm.com examples/paranoia.c

The file cpm.com can then be run.

(Although note that Paranoia is very big, and you'll need a CP/M machine with
lots of memory for it to fit. Which it does, just.)


David Given
dg@cowlark.com