Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!columbia!rutgers!husc6!husc4!hadeishi From: hadeishi@husc4.harvard.edu (mitsuharu hadeishi) Newsgroups: net.micro.amiga Subject: Re: Some remarks to AmigaDos. Message-ID: <545@husc6.HARVARD.EDU> Date: Wed, 29-Oct-86 12:26:29 EST Article-I.D.: husc6.545 Posted: Wed Oct 29 12:26:29 1986 Date-Received: Wed, 29-Oct-86 22:19:48 EST References: <392@ethz.UUCP> <148600179@uiucuxc> Sender: news@husc6.HARVARD.EDU Reply-To: hadeishi@husc4.UUCP (mitsuharu hadeishi) Organization: Harvard Science Center Lines: 30 Summary: There is one use for BCPL on the Amiga In <148600179@uiucuxc> Wayne Hamilton writes: > now that i've said all that, you can probably just forget most of it. >BCPL doesn't provide any compelling advantage over C and assembler, so >there's not much reason to want to write programs with it. buying the >book might be a good idea, if you're interested in hacking on the internals >of AmigaDos. Yes, if you want to write an AmigaDOS device driver (not just an Exec device but an AmigaDOS device) you have to write the interface code in either BCPL or Assembler that looks like BCPL. Either way you have to learn about BCPL and its calling conventions, etc. So, for example, if someone wanted to write an AmigaDOS device driver for the clipboard.device (HINT HINT) you would need to write the glue code in BCPL so you could access it through the filesystem (i.e., as in fopen("CLP:","r");) in the same manner as a regular file. This, of course, is a VERY useful thing to do, since almost all programs access files and so on through AmigaDOS devices rather than directly through Exec. (It is unfortunate that we have two levels of devices, and that you cannot write AmigaDOS drivers in a completely compatible fashion in C. This is the design legacy of Tripos.) -Mitsu wayne hamilton U of Il and US Army Corps of Engineers CERL UUCP: {ihnp4,pur-ee,convex}!uiucdcs!uiucuxc!hamilton ARPA: hamilton%uiucuxc@a.cs.uiuc.edu USMail: Box 476, Urbana, IL 61801 CSNET: hamilton%uiucuxc@uiuc.csnet Phone: (217)333-8703 CIS: [73047,544] PLink: w hamilton