Date : Tue, 13 Aug 1991 09:53:36 GMT
From : mcsun!hp4nl!gufalet.let.rug.nl!rug4!laverman@uunet.uu.net (Bert Laverman)
Subject: CP/M compiler list
[ 1st Version: 29 July 1991 ]
[ Last edited: 13 August 1991, by laverman@cs.rug.nl (Bert Laverman) ]
C P / M - 8 0 C O M P I L E R L I S T
========================================
This list is an attempt at answering most of the `Can anyone tell me what
the best CP/M compiler for language "foo" is?' questions. Please do not
expect this list to be definitive. I am very much dependent on the information
sent to me, and if nobody mentioned a certain compiler, chances are you won't
find it here. If you know of a compiler that should be in the list, send me
a description.
Compiler categories:
I've split up the list into two parts, based on how much info I have on
the compiler concerned. The first list is a list of compilers with some kind
of description, the second list contains compiler only known to me by name.
Please note that 1 (one) line of descriptive comment is enough to make it a
category 1 compiler. ;-)
Compiler availability:
Many compilers are still sold, others can only be obtained as an illegal
copy. Also some compilers are public domain, but alas that group is rather
small. I think that, even though many companies are no longer actively
engaged in maintaining their CP/M packages, they will _not_ look kindly on
publicly announced copying. Since I received _no_ communications from
persons working for companies like Borland, Microsoft, and Digital Research,
I wonder if any of them monitor this list. Perhaps we as collective CP/M
users can draw some goodwill, and persuade them to remove some of the copying
restrictions on e.g. binaries.
I mention the copyright holder when known. "?? PD ??" means that I don't
know, but that they are for sale at such a low rate that I suspect them to
be at least shareware.
Many Bulletin Boards have interesting software, and Ed Grey not only
runs a BBS, but also sells MIX C and Turbo PASCAL v3. RS components in
England also sells originals materials. I mention these two as example,
undoubtebly there are others with remnants of a large stock. JRT PASCAL,
Prolog-80, Micro-COBOL, Forth-83, Small-C and others are appearently
PD, and can be had from BBSes. PCW world seems to have MBASIC on one of
their disks, but I'm doubtful about their right to do this.
References:
I include the names of all those that sent me information on the
compilers, since they are likely to know more if you have questions about
a specific product.
The rumors:
Hah! many! I'm forced to reject rumors that Microsoft is no longer
interested: RS components still sells compilers for CP/M+ - including
Macro-80! - for three figure amounts.
1. Known compilers:
Ada:
===
- Janus/Ada ???
PASCAL subset of Ada. Teeny bit of parallelism.
Refs: dcb
Algol 60:
========
- Valgol v1. *Public Domain*
Variant of Algol-60. Generates Z80 code. Needs "E Prolog".
Is actually an example of how to write a compiler in Prolog.
Refs: u895217, rickc
FTP-archive: wsmr-simtel20.army.mil
Assembly:
========
- ZMAC v1.07D *Public Domain*
Z80 macro assembler
Refs: wittig
Add-ons:
- ZLINK v1.07D Linkage editor
- ZMAC + ZML A.E. Hawley
Macro assembler for Z80. Linker can produce many different
binary file types. Has Z-system support
Refs: sage
- Macro-80 Microsoft
Magnificent Macro assembler & linking loader. Link
files are relocatable and used by all Microsoft compilers,
as well as many others.
Refs: laverman, henryb
- MAC & RMAC Digital Research
Standard assembler for CP/M 3 (aka CP/M+). RMAC produces .REL
files. Linker can produce .PRL executables (Page ReLocatable).
Refs: laverman
- Maxam 2 Arnor Ltd.
MAcro assembler for Amstrad/Schneider Z80 machines.
Refs: ewen
- SLR systems assemblers SLR systems
Assemblers for 808[05], Z80, & Hitachi. Very fast.
Refs: sage
- ZAS Mitek/Echelon
Was 'The official assembler for ZCPR3'. Current status unkown.
Refs: ianj
- ZSM David Goodenough
Used o.a. for David's QTERM & UUCP packages.
Refs: ianj
BASIC:
=====
- MBASIC compiler Microsoft
The MBASIC interpreter is _the_ standard. This is the compiler.
Refs: laverman
- CBASIC Microsoft
(Integer ?) BASIC compiler.
Refs: laverman
- Hisoft Z Basic Hisoft
Supposedly produces slow code.
Refs: u895217
- SBASIC Non-Linear systems
Comes with Kaypro II
Refs: Steve.Graham
C:
=
- Small-C v1.2 *Public Domain*
No floating point, less than K&R ed. 1. Generates Z80 code.
Refs: wittig
Add-ons:
- Peephole optimizer
- Preprocessor (K&R)
- Assembly optimizer for Small-C
- Small-C v2.1 *Public Domain*
No floating point. More than v1.2, but still less than
full K&R. Generates 8080 code.
Refs: rickc
FTP-archive: wsmr-simtel20.army.mil
- MIX C v2.1.0 MIX Software
Full K&R, including float and long.
Refs: ewen, ac959
- HiSoft C Hisoft
K&R, but no floats.
Refgs: u895217
- HiTech C v. 3.09 Hi-Tech Software
Full K&R _and_ ANSI. (!!)
Refs: mds
- Arnor C Arnor Ltd
Full K&R. Amstrad/Scheider Z80 machines only.
Refs: u895217, ewen
- C/80 Software Toolworks
Mathpac also available.
Refs: henryb
- BDS-C 1.60c BD Software
Almost K&R C, no floats, but fake-float support is in the
package.
Refs: sage
- BDS Z 2.0 BD Software
BDS C adapted for Zsystem
Refs: sage
- Aztec C Aztec
K&R C. Practically the same as for MS-DoS, Atari, etc.
Three packages available: apprentice, commercial, professional.
Good overlay manager.
Refs: harry
COBOL:
=====
- Micro COBOL ?? PD ??
Cut down COBOL, no indexed files, no sort.
Refs: u895217
- Nevada COBOL ????
Based on 1974 standard. No indexed files.
Refs: u895217
- RM Cobol Ryan McFarland
Cut down Cobol
Forth:
=====
- F-83 *Public Domain*
Forth system. Available for different CP/M's
Refs: mikc
- Hisoft Forth Hisoft
From the Hisoft company.
Fortran:
=======
- Fortran-80 Microsoft
Allmost complete Fortran IV implementation. Claims to have
the fastest mathematical library for 8080/Z80. Works (maybe)
with a RATFOR preprocessor.
Refs: agr-rss
Modula-2:
========
- Hisoft FTL Modula-2 Hisoft
Good, fast, and extensive. Comes with editor. Lib source included.
Compiler is one-pass, so FORWARD declarations are needed.
Implements Modula-2 2nd edition(!)
Refs: u895217, cummings
- Turbo Modula-2 Borland Intl.
Editor, compiler, linker & librarian in one. Fast & good.
Can interface to .REL files (Macro-80).
Implements Modula-2 3rd edition(!)
Refs: svh, cummings
- Hochstrasser Z80-Modula-2 Hochstrasser Computing AG
Implements 2nd edition Modula-2. Troubles with large programs.
Refs: cummings
PASCAL:
======
- Turbo PASCAL v3.01A Borland Intl.
Editor & compiler in one. Fast. No separate modules, but
include files are supported.
Refs: ac959
- Nevada PASCAL ????
Needs >=60K RAM.
Refs: u895217
- JRT PASCAL *Public Domain*
P-code system.
Refs: se
FTP-archive: wsmr-simtel20.army.mil
- PASCAL/MT+ Digital Research
Full PASCAL, including modules with interfaces. Uses an
object file format that is derived from Microsoft's .REL
files. Ideal for large projects.
Refs: svh
PL/I:
====
- PL/I-80 Digital Research
Refs: svh
Prolog:
======
- E Prolog *Public Domain*
Refs: rickc
FTP-archive: wsmr-simtel20.army.mil
- Prolog-1 2.2 ????
From the cambridge lab. that invented Prolog. for Z80.
Refs: slsw2
2. Known by name:
Mu-LISP
iLISP 2.0
Toolworks LISP/80
Mi-C
Avotec C
Pro Fortran 1.25
Prolog 80
micro-Prolog 3.1
3. References:
ac959: ac959@cwns2.ins.cwru.edu (Ed Grey)
agr-rss: agr-rss@brl.mil (Richard S. Sandmeyer)
cummings: cummings@primerd.prime.com (Kevin J. Cummings)
dcb: dcb%grgzfla.UUCP@vax.cs.pitt.edu (Daniel C. Becker)
ewen: ewen@actrix.gen.nz (Ewen McNeill)
harry: harry@stack.urc.tue.nl (Harry Stox)
henryb: henryb@usage.csd.unsw.oz.au (Henry Brancik)
ianj: ijpc!ianj@PacBell.com (??)
laverman: laverman@cs.rug.nl (Bert Laverman)
mds: mds@id.dth.dk (Michael Dantzer-Sorensen)
mikc: mikc@gnu.ai.mit.edu (??)
rickc: rickc@pogo.wv.tek.com (Rick Clements)
sage: sage@ll.mit.edu (Rick Sage)
Steve.Graham: Steve.Graham@ub.cc.umich.edu (Steve Graham)
se: se@ikp.uni-koeln.de (Stefan Esser)
slsw2: slsw2@cc.usu.edu (Roger Ivie)
svh: svh@shell.com (Steven V. Hovater)
u895217: u895217@bruny.cc.utas.edu.au (Scott Marshall)
wittig: wittig@gmdzi.gmd.de (Georg Wittig)
--
#include <std/disclaimer>
Bert Laverman, Dept. of Computing Science, Groningen University
laverman@cs.rug.nl bert@arrakis.nl.mugnet.org