This archive contains information about the BCPL internals of AmigaDOS and
example code showing how to call BCPL routines from C.
A different (possibly later) version of these files is in the tripos
directory in dev/lang/BCPL4Amiga.lha on Aminet. Some of these files contain
additional/different comments, so I thought it worth uploading them.
AmigaDOS in Kickstart 1.3 and earlier was written in BCPL. In addition to the
documented dos.library functions, many more are only accessible via the BCPL
calling interface. For example, the 1.x ROM contains a BCPL routine similar
to the ReadArgs() function in Kickstart 2.0. Kickstart 2.0 introduced many
new dos.library functions, so formerly "hidden" routines could be used in a
documented way. But of course those new functions are not present in
Kickstart 1.x.
Most CLI commands on Workbench 1.x disks are written in BCPL. AmigaDOS was
re-written in C for Kickstart 2.0, but Commodore still had to support the
BCPL interface otherwise most existing disks would fail to boot.
(The author's contact details below are no longer valid.)
Author: Bill Kinnersley
Date: Mar 12, 1988
Mail: Physics Dept.
Montana State University
Bozeman, MT 59717
BITNET: iphwk@mtsunix1.bitnet
INTERNET: iphwk%mtsunix1.bitnet@cunyvm.cuny.edu
USENET: mts-cs!uphwk
|