ISIS and PL/M history, discusssion in comp.os.cpm Feb 2009 ----------------------------------------------------------- Thanks to the following who provided the quotes and information below. Ole Christensen Steve Dubrovich Glen Herrmannsfeldt Dave Mabry Udo Munk Allison Parent See my Web pages on Digital Research and CP/M including ISIS at retrotechnology.com. Herb Johnson, Feb 22 2009 - retrotechnology.com Herb Johnson, Feb 5 2009 One other point of reference for dating CP/M, is to date Intel's ISIS. Kildall in Dr. Dobbs 1980, said that Intel turned down his offer of CP/M, after he got it running with Torode: "Intel was experiencing enormous growth and all software development was halted while new mangement structures were instituted. Intel expressed no interest in CP/M, nor in continuing any resident compiler work. Nearly two years passed before Intel again took interest in resident software tools, with their introduction of the ISIS operating system and later, the resident PL/M -80 compiler." Now, that suggests that by dating backwards two years from ISIS, one could determine when he offered CP/M to Intel. All I could find about this, was from Udo Munk's documents on ISIS on his Web site: from an isis_internals PDF: "ISIS: The anatomy of a real-world operating system" Perry C Hutchison, Iowa State University DDJ #21, article received 23 Dec 1977 "The information contained herein...object code of Version 1.2 of 32K ISIS, recieved in August 1976....V1.1 of ASM80, V1.3 of EDIT, 1.1 of UPM, and 2.0 of ICE80." -end quote- Can anyone verify when Intel announced ISIS? Look at the ISIS raw code and see if there are embedded dates? Udo Munk, Feb 6 I do not have a complete ISIS distribution, jut the ISIS emulation and tools necessary to rebuild CP/M version from source. The oldest ISIS PL/M compiler I got is release V3.1 and in a hex dump one finds: (C) 1976, 1977 INTEL CORP This one is required for CP/M sources starting with release 1.4, versions before were compiled with the cross compiler. Actually this is not accurate, because I don't know which compiler was used to build CP/M 1.3 / IMDOS due to missing sources. Sometime between the 1975 version and 1.4 they switched from the cross compiler to the ISIS compiler, that is for sure. Ole Christensen, Feb 7 No, not me, but You can get the "label" of my ISIS II OS Disk: --- ISIS II Operating System Diskette P/N 9700003-08 Version 4.3 (C) INTEL Corporation, 1975 THRU 1982 --- Later, when i can move around that dual 8" box, i will make an "dd-image" of those disks, (ISIS II ICE-85 & ISIS II Multi-ICE), then we will see if one can find an emulator to boot and run it... Udo Munk, Feb 08 I don't think that Intel distributed any ISIS system without PL/M compiler. The whole OS including tools is written in PL/M, same as early CP/M, initially with the cross compiler of course. Intel demonstrated with PL/M for the 8008 already, that this programming language is more productive than using assembler for many tasks. The ISIS system was build as development platform for embedded controllers based on Intel chips and PL/M was the programming language of choice. I have no idea yet, which compiler was used for CP/M 1.3 and/or IMDOS, sources would help a lot to figure it out. Fact is the 1975 version only compiles with the [PL/M] cross compiler and the 1.4 BDOS/CPP only compiles with the ISIS [resident PL/M] compiler. In this time frame DRI moved from using the cross compiler on host systems to using ISIS micros and CP/M micros with ISIS emulation to develop CP/M further. BTW, the MP/M sources look odd. Originally written in PL/M but compiled to 8080 assembler. That are the sources left we have nowadays and you assemble the kernel sources. Wondering which PL/M compiler was used, only PLMX is able to produce 8080 assembler source, the other produce Intel hex or some sort of object format. Then again, that one needs runtime libraries, but the MP/M build doesn't require them. Dave Mabry, Feb 14: Intel sold PL/M-80 as a separate product from the development system (which included ISIS-II when you bought the floppy disk drive option). So, ISIS-II was indeed sold without PL/M-80. In fact, the PL/M-80 compiler was about a $2000 product in its time. [Regarding the MP/M sources:] Think I mentioned this here before, the Intel's PL/M-80 resident compiler could produce assembler code. It would put the assembly language after each line of PL/M-80 code into the listing file. Steve Dubrovich, Feb 8th As far as specific dates of PL/M versions: "Systems Languages: Management's Key to Controlled Software Evolution" Gary Kildall, 1974 Wescon paper. (retyped by Roche) "The June 1973 release of PL/M produced 42% more program storage, while the February 1974 release produced 30% more instructions.... Note also that the first version of the 8080 PL/M compiler, released in March 1974, produced only 10% more machine instructions." "(ROCHE> PL/M dates: 8008 PL/M Version 1: June 1973 8008 PL/M Version 2: ? 1973 8008 PL/M Version 3: February 1974 8080 PL/M Version 1: March 1974)" My question/comment is: according to accounts, G.K. had the Intellec8 (8008cpu) as a development system, and this is what they hooked the drive (Torode's controller) up to, so wasn't the first version of CP/ M, written in PL/M first brought up on the 8008 controller? AFAIK, the 8080 wasn't a 'drop in' replacement for the 8008? ------------- Herb Johnson Just because a box says "8008" does not mean it is running an 8008. Yes, when Kildall first got the Intellec 8 development system, in 1973?, it had an 8008 CPU board. But by 1974-75, it's clear that Kildall had 8080 hardware around... In 1974, Kildall developed a computer for divers to deal with depth calculations. He published a paper at the 1975 National Computer Conference proceedings titled "microcomputer software design - a checkpoint". He discusses his Intellec system in this paper, with floppy drives. He does not say explicitly, as I recall, if that system had an 8008 or an 8080. But he's working on a wire-wrapped 8080 computer for the Navy, described in the paper. I will have to reread the paper to confirm this. My 1975 Intel 8080 System User's Manual refers to the "Intellec 8 MOD 80", which I recall is the 8080 "mod" or upgrade. The manual says Intel announced the 8080 in later 1973; I have document references for the 8080 from 1974 on my Web page. The following Web site, also linked from my "early references" Web page: http://www.1000bit.net/storia/vari/intellec/intel_intellec_e.asp Shows an Intellec 8 system - not a Multibus system, he describes the bus as "a full length 100 pin connector but not S-100". That's the old Intellec "bus". He identifies "8080I CPU 1973" as one of the cards in that system. I presume this person can clearly identify an 8080 processor from an 8008 processor, and identify dates on hardware artifacts. I have not followed up on this system - I will do so immediately, and ask him to confirm dates for that 8080 card. HErb Johnson, 09 Feb Michael Swane mentioned that Kildall got an 8080 upgrade, in a 1997 DDJ article: ""Gary Kildall and Collegial Entrepreneurship", 1997 http://www.ddj.com/184410428 "When Intel upgraded this Intellec-8 from an 8008 to its new 8080 processor and gave Gary a display monitor and a high-speed paper tape reader..." In Swane's sequence of discussion, he got the upgrade before he got the floppy drive. But I've also looked at Swane's "Fire In the Valley" descriptions of Kildall's work in similar ways. I don't completely trust his sequence of events, or the years he attributes them to. For example, on Kildall's floppy controller efforts he says: "Finally, in 1973, admitting hardware defeat, Gary turned to an old friend from the University of Washington, John Torode." But Kildall says in DDJ 1980 that it was *in the fall of 1974* when Torode became involved. As Steve has called out, and as per Kildall's interviews and writings, CP/M "ran" on hardware (a prompt on a teletype) in 1974. Steve, the usual problem in dating Kildall's work, is that in his articles of the period, he would write about PL/M but never say that HE developed it. There's a good article of his from 1974 in Electronics magazine: "High-level language simplifies microcomputer programming", by Gary A. Kildall, Electronics magazine, June 27 1974,. I provide a copy of here: http://www.retrotechnology.com/dri/kildall_highlevel_1974.pdf (sorry for the 5MB PDF). But the closest information in this article about anything 8080 is a reference to "PL/M is also usable with Intel's newer 8080 microprocessor" (with an editorial reference to to Intel's 8080 announcment article in Electronics of April 15th 1974). And that "the new [PL/M] version for the 8080 is available". Kildall may have HAD an 8080 Intellec board, but may not have said so if Intel had not announced it as a product. So "negative information is not information of a negative". --------------------------- Allison Feb 9 I belive intellec8 was the 8080 version of the MCS8 wich was 8008. Doing a disk on 8008 would have been hard as the instruction speed 20uS is horridly slow (8080 was 2uS) so the controller would have to do all the work faster than maybe stepping the head. I've worked with 8008 and its way simpler and slower than 8080. The 7 level stack (hardware stack) was a real pain. Steve Dubrovich Feb 9th G.K. has March 1974 as the release date of PL/M 8080. A book I have, 'Systems Programming for Small Computers', Daniel H. Marcellus, 1984, pg. 9 claims "The 8080 appeared in 1973 and is contructed of approximately 2000 transistors." He also has a table of early processors with the heading "Year when available a a real product"; 8080 - 1973. However, Intel lists the actual introduction date as "April 1974". http://www.intel.com/pressroom/kits/quickreffam.htm#i486 That, however, would likely be the sales coordinated product launch date, the processor may have been available earlier for evaulation purposes. Note, this date is a month later than G.K. gives for the completion of PL/M-8080. Herb: http://www.retrotechnology.com/dri/x8080_faggin_apr74.jpg The Electronics magazine article by Faggin et al was in April 1974. That confirms the public release date Steve noted above. Of course Intel was working on it earlier, in 1973 when Kildall saw "early silicon". Certainly he knew the 8080 specs, could update his emulators and assemblers, and also PL/M. (Faggin's 4004.whatever Web site discusses 8080 development, note that Intel has erased Faggin's name from its history.) Kildall's dates were for the RELEASE of PL/M in various versions. Dates of "completion" might be found by looking at appropriate FORTRAN sources of the various cross products. Steve, dates are slippery things for these products. Dates of preliminary announcement, dates of prototypes, dates of pre-release products, dates of announcements as available. All I can do is qualify any date I find. Thanks for working hard on this. Udo Munk, Feb 10th: The only date in the FORTRAN sources is this header: C*********************************************************************** C C 8 0 8 0 P L / M C O M P I L E R , P A S S - 1 C PLM81 C VERSION 2.0 C JANUARY, 1975 C C COPYRIGHT (C) 1975 C INTEL CORPORATION C 3065 BOWERS AVENUE C SANTA CLARA, CALIFORNIA 95051 There must have been an earlier version 1.0, but also probably 1975, else the Copyright notice would say Copyright 1974, 1975... Well, maybe not, it is just the best guess I can make, but they did that thing in the ISIS compiler. - Udo Munk Dott. Piergiorgio, Feb 11th: Im' not sure... In this case, the v.1.0 should also be jan, 1975 whose IMHO is a bit improbable.... One should note that until the copyright laws of 1977, producers was not always careful in placing the (c); there's two possible scenarios: A) the 1.0 version of the PL/M compiler was considered a separate IP with his (c) distinct from the 1975 (c) of v. 2.0 (if this version 2.0 was actually a complete rewrite, retaining few, if any, of 1.0 code, seems to me a logical choice). B) the 1.0 version was more or less internal and Intel, back then a relatively small company, don't feel needed or worthwhile placing the copyright, in the pre-1977 (c) environment (this scenario also can explain the current curious behaviour of Intel on the rights of PL/M compiler & ISIS). I'm more oriented for A); any thoughts ? Udo Munk, Feb 11th: Correct, but if you look at other Intel software products, those have the copright notes over the years, like the ISIS PL/M compiler. [regarding "A"], could be that 1.0 was the 8008 compiler, the 8080 version was derived from it and numbered 2.0. [Regarding "b",] his were production releases distributed to customers. For sure there have been beta test versions, only internal used until they had a working product, and Kildall had access to this internal versions of course. Glen Herrmannsfeldt, feb 14: The SDK-85 manuals are on bitsavers, including the source for the ROM monitor. I believe it is the PL/M output including the PL/M source, assembler source, and hex object code. Not so long ago I typed in the hex code, loaded it into an EPROM and connected it to an 80C85. It ran just fine after I got all the inputs connected as needed. I have scanned the SDK-86 manuals to send into bitsavers, which also have PL/M source and generated assembly and hex code. [note: http://www.bitsavers.org/pdf/intel/] ---end---