<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>
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

<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>