Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!husc6!rutgers!labrea!decwrl!ucbvax!ernie.Berkeley.EDU!schoet From: schoet@ernie.Berkeley.EDU (Steve Schoettler) Newsgroups: comp.sys.amiga Subject: Re: Why doesn't Commodore release Amiga source? (was dv2iff & tcp/ip) Message-ID: <20892@ucbvax.BERKELEY.EDU> Date: Mon, 21-Sep-87 14:27:17 EDT Article-I.D.: ucbvax.20892 Posted: Mon Sep 21 14:27:17 1987 Date-Received: Wed, 23-Sep-87 00:38:37 EDT References: <503@louie.udel.EDU> <1929@umd5.umd.edu> <775@sugar.UUCP> <156@splut.UUCP> <3866@zen.berkeley.edu> Sender: usenet@ucbvax.BERKELEY.EDU Reply-To: schoet@ernie.Berkeley.EDU.UUCP (Steve Schoettler) Followup-To: schoet@ernie.Berkeley.EDU.UUCP Organization: University of California, Berkeley Lines: 99 In article <3866@zen.berkeley.edu> bryce@hoser.berkeley.edu (Bryce Nesbitt) writes: >In article <156@splut.UUCP> stu@splut.UUCP (Stewart Cobb) writes: >> >> Why hasn't Commodore released the source to the operating system? >> >> Think about it. They can't be afraid of pirates: everyone who has an >>Amiga gets a copy of the OS, gratis. Are they afraid someone would hack >>it up into a better OS? As the owner of possibly the best microcomputer operating system around, they do have a competitive advantage. Why risk loosing it? > >Someone might port it to the Macintosh... or worse yet the Atari ST... >or worse yet the Commodore 64... Atari 800... Apple ][... IMSI 8080... >:-) :-) :-) :-) :-) > Or worse yet, someone in Korea or Taiwan might start making Amiga clones... :-) :-) >> Can someone point out the flaw in my reasoning? Or, perhaps, the >>flaw in theirs? > >The worst problem would be the detailed internal knowlege that people >would have about the OS. Many of them can't be trusted. Some things >are much better off as "Black Boxes" because they can, will, or should >change. As an example of the kind of thing that will happen, take the Manx fexec() function that broke under 1.2. To get it to work in a clever way, Jim found out where something was stored on the BCPL stack. In 1.2, the value's stack position changed, and the function didn't work anymore. (I can't print it here because of copyright restrictions, but that command should be memorialized as a tribute to Amiga hackers :-) :-). >People won't do that to the Amiga... but they will do the next best thing; >reading, depending and worst of all changing private structures. Depending >on interactions and side-effects that may want to disappear later. Or someone might find out about the SwitchTask function in the Exec Library and start using it... Some things could prevent this (described later). >>That would only sell them _more_ Amigas. They >>shouldn't be concerned about having multiple, perhaps buggy, new OS's >>floating around, because everyone who has one of those also has the >>original to fall back to.... A strict license agreement would prevent this. Only allow Commodore to distribute updates. >What Commodore *should* do, in my opinion, is release source to a lot >of the device-specifc stuff. Here I mean printer drivers and such. >The source can only be used in an Amiga-specific way, and would promote >better drivers. Yeah, that's the ticket! >In cases where good support has been slow to show up (like with >DOS handlers) a relase of code can grease many locks. (Someone >might hear about MODE_READWRITE... or pherhaps even implement it!) > >|\ /| . Ack! (NAK, ENQ, SYN) >{o O} . > (") bryce@hoser.berkeley.EDU -or- ucbvax!hoser!bryce > U How can you go back if you have not yet gone forth? As a software developer, I would like to see the sources. They would help me trace bugs in my code as well as in the kernel. Also,. a greater understanding of internal functions would result for all of us (mixed blessing). I would also think more bug reports would be written, and more solutions would be offered. This might result in a sturdier software system and reduce the time required (manpower) to fix bugs. Although the mentioned concerns are valid, there may be answers to the problems: 1. Release source only through license agreement, which allows Commodore exclusive right to distribute updates and versions of object code. In the case of UN*X, this method has not resulted in loss of income for ATT, and has not resulted in a lot of copy clones. This is largely due to the strength of ATT's legal department. Commodore may or may not have the strength to enforce this, though. 2. Spend a couple of person-years developing a detailed architectural specification, telling developers exactly what can and cannot be depended upon. In 1983 IBM published the 370-XA Principle of Operation which defined an entire architecture which has spanned many machines, and has remained largely unchanged since. It documented many features of the existing machine, and also specifically left many things UNDEFINED. Granted, the Amiga documentation is magnitudes better than corresponding info from IBM, but it would have to be expanded to explain every element of every structure. Such overwhelming effort and forethought may only be feasible for an architecture intended to last 30 years or so. Are the above ideas feasible? rational? If anyone knows, Commodore would. :-) Steve Schoettler ...ucbvax!schoet {Usual Disclaimers}