Message-ID: <367F1C8E.5300C48C@jkmicro.com> From: Jim Stewart Organization: http://www.jkmicro.com X-Mailer: Mozilla 4.04 [en] (Win95; I) MIME-Version: 1.0 Newsgroups: alt.folklore.computers Subject: "Since all of you steal your software..." Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 7 NNTP-Posting-Host: 168.150.253.139 X-Trace: news15.ispnews.com 914213459 168.150.253.139 (Sun, 20 Dec 1998 23:10:59 EDT) NNTP-Posting-Date: Sun, 20 Dec 1998 23:10:59 EDT Date: Mon, 21 Dec 1998 20:14:07 -0800 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!News.Amsterdam.UnisourceCS!uunet!in2.uu.net!nntp.teleport.com!newsfeed.wli.net!nntp.abs.net!hub1.ispnews.com!news15.ispnews.com.POSTED!not-for-mail A letter from Bill Gates was published in the old SCCS magazine, probably in the late 70's. As I recall, he accused computer hobbyists of stealing his Basic interpreter and he threatened to stop writing software for personal computer market. Does anyone have the full text of the letter? ###### From: $spam$@orion-com.com (Joe Thompson) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Mon, 21 Dec 1998 00:49:16 -0500 Organization: Orion Computer Consulting Lines: 18 Message-ID: <$spam$-2112980049160001@user-37ka4oj.dialup.mindspring.com> References: <367F1C8E.5300C48C@jkmicro.com> NNTP-Posting-Host: cf.45.13.13 X-Server-Date: 21 Dec 1998 05:45:36 GMT X-Newsreader: MT-NewsWatcher 2.4.4 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.cwix.com!4.1.16.34!cpk-news-hub1.bbnplanet.com!news.gtei.net!firehose.mindspring.com!$spam$ In article <367F1C8E.5300C48C@jkmicro.com>, Jim Stewart wrote: > A letter from Bill Gates was published in the old SCCS magazine, > probably in the late 70's. As I recall, he accused computer hobbyists > of stealing his Basic interpreter and he threatened to stop writing > software for personal computer market. Does anyone have the full text > of the letter? It's available on several web sites. An Alta Vista search should turn up plenty. If only he'd made good on his threat... -- Joe -- Joe Thompson | http://kensey.home.mindspring.com/ $spam$@orion-com.com | O- He-Who-Grinds-the-Unworthy Charlottesville, VA | "I'd like to take this time to formally thank you for bringing back a lot of bad memories." -- ADB on ASR ###### From: quirk@swcp.com (Taki Kogoma) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 21 Dec 1998 09:44:29 -0700 Organization: Nit-Pickers for a Better Tomorrow Afternoon Lines: 24 Message-ID: <75lttd$pm2@boofura.swcp.com> References: <367F1C8E.5300C48C@jkmicro.com> <$spam$-2112980049160001@user-37ka4oj.dialup.mindspring.com> NNTP-Posting-Host: boofura.swcp.com Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!newscore.univie.ac.at!howland.erols.net!newsfeed.cwix.com!206.102.31.251!news.cmc.net!feeder.swcp.com!sloth.swcp.com!boofura.swcp.com!not-for-mail $spam$@orion-com.com (Joe Thompson) is alleged to have submitted message <$spam$-2112980049160001@user-37ka4oj.dialup.mindspring.com> to alt.folklore.computers: >In article <367F1C8E.5300C48C@jkmicro.com>, Jim Stewart > wrote: >> A letter from Bill Gates was published in the old SCCS magazine, >> probably in the late 70's. As I recall, he accused computer hobbyists >> of stealing his Basic interpreter and he threatened to stop writing >> software for personal computer market. Does anyone have the full text >> of the letter? > >It's available on several web sites. An Alta Vista search should turn up >plenty. > >If only he'd made good on his threat... -- Joe What was the last program Gates actually sat down and ground out the code for? -- Capt. Gym Z. Quirk | "I'll get a life when someone (Known to some as Taki Kogoma) | demonstrates that it would be quirk @ swcp.com | superior to what I have now." Veteran of the '91 sf-lovers re-org. | -- Gym Quirk ###### Newsgroups: alt.folklore.computers From: eric@fudge.uchicago.edu (Eric Fischer) Subject: Re: "Since all of you steal your software..." X-Nntp-Posting-Host: fudge.uchicago.edu Message-ID: Sender: news@midway.uchicago.edu (News Administrator) X-Newsposter: Pnews 4.0-test51 (15 Jan 97) Organization: The University of Chicago References: <367F1C8E.5300C48C@jkmicro.com> <$spam$-2112980049160001@user-37ka4oj.dialup.mindspring.com> <75lttd$pm2@boofura.swcp.com> Date: Mon, 21 Dec 1998 17:15:58 GMT Lines: 10 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.cwix.com!128.174.5.49!vixen.cso.uiuc.edu!uchinews!not-for-mail In article <75lttd$pm2@boofura.swcp.com>, Taki Kogoma wrote: > What was the last program Gates actually sat down and ground out the > code for? In his interview in Susan Lammers's 1986 book _Programmers at Work_ he says it was the ROM for the TRS-80 Model 100 laptop computer, cowritten with Jey Suzuki. eric ###### Newsgroups: alt.folklore.computers From: eric@fudge.uchicago.edu (Eric Fischer) Subject: Re: "Since all of you steal your software..." X-Nntp-Posting-Host: fudge.uchicago.edu Message-ID: Sender: news@midway.uchicago.edu (News Administrator) X-Newsposter: Pnews 4.0-test51 (15 Jan 97) Organization: The University of Chicago References: <367F1C8E.5300C48C@jkmicro.com> Date: Mon, 21 Dec 1998 17:24:15 GMT Lines: 65 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.cwix.com!128.174.5.49!vixen.cso.uiuc.edu!uchinews!not-for-mail Jim Stewart wrote: > A letter from Bill Gates was published in the old SCCS magazine, > probably in the late 70's. As I recall, he accused computer hobbyists > of stealing his Basic interpreter and he threatened to stop writing > software for personal computer market. Does anyone have the full text > of the letter? An HTMLized copy of it was posted here a few months ago by dlessard@odyssee.net. Here it is again, minus the HTML tags: | February 3, 1976 | | An Open Letter to Hobbyists | | To me, the most critical thing in the hobby market right now is the | lack of good software courses, books and software itself. Without good | software and an owner who understands programming, a hobby computer is | wasted. Will quality software be written for the hobby market? | | Almost a year ago, Paul Allen and myself, expecting the hobby market to | expand, hired Monte Davidoff and developed Altair BASIC. Though the | initial work took only two months, the three of us have spent most of | the last year documenting, improving and adding features to BASIC. Now | we have 4K, 8K, EXTENDED, ROM and DISK BASIC. The value of the computer | time we have used exceeds $40,000. | | The feedback we have gotten from the hundreds of people who say they | are using BASIC has all been positive. Two surprising things are | apparent, however. 1) Most of these "users" never bought BASIC (less | than 10% of all Altair owners have bought BASIC), and 2) The amount of | royalties we have received from sales to hobbyists makes the time spent | of Altair BASIC worth less than $2 an hour. | | Why is this? As the majority of hobbyists must be aware, most of you | steal your software. Hardware must be paid for, but software is | something to share. Who cares if the people who worked on it get paid? | | Is this fair? One thing you don't do by steeling software is get back | at MITS for some problem you may have had. MITS doesn't make money | selling software. The royalty paid to us, the manual, the tape and the | overhead make it a break-even operation. One thing you do is prevent | good software from being written. Who can afford to do professional | work for nothing? What hobbyist can put 3-man years into programming, | finding all bugs, documenting his product and distribute for free? The | fact is, no one besides us has invested a lot of money in hobby | software. We have written 6800 BASIC, and are writing 8080 APL and 6800 | APL, but there is very little incentive to make this software available | to hobbyists. Most directly, the thing you do is theft. | | What about the guy who re-sell Altair BASIC, aren't they making money | on hobby software? Yes, but those who have been reported to us may lose | in the end. They are the ones who give hobbyists a bad name, and should | be kicked out of any club meeting they show up at. | | I would appreciate letters from any one who wants to pay up, or has a | suggestion or comment. Just write me at 1180 Alvarado SE, #114, | Albuquerque, New Mexico, 87108. Nothing would please me more than being | able to hire ten programmers and deluge the hobby market with good | software. | | Bill Gates | General Partner, Micro-soft eric ###### From: Charles Richmond Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Mon, 21 Dec 1998 20:49:51 +0000 Organization: Cannine Computer Center Lines: 26 Message-ID: <367EB46F.F2CC22AD@plano.net> References: <367F1C8E.5300C48C@jkmicro.com> <$spam$-2112980049160001@user-37ka4oj.dialup.mindspring.com> <75lttd$pm2@boofura.swcp.com> Reply-To: richmond@plano.net NNTP-Posting-Host: 209.44.41.111 Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: 914294825 R67V8VHUD296FD12CC usenet52.supernews.com X-Complaints-To: newsabuse@remarQ.com X-Mailer: Mozilla 4.04 (Macintosh; I; 68K) To: Eric Fischer Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news.belnet.be!newsfeed.wirehub.nl!newsfeed.berkeley.edu!Supernews73!supernews.com!Supernews69!not-for-mail Eric Fischer wrote: > > In article <75lttd$pm2@boofura.swcp.com>, Taki Kogoma wrote: > > > What was the last program Gates actually sat down and ground out the > > code for? > > In his interview in Susan Lammers's 1986 book _Programmers at Work_ he > says it was the ROM for the TRS-80 Model 100 laptop computer, cowritten > with Jey Suzuki. > I read the Lammers' book *several* times, and I really enjoyed it each time!!! From Charles Simonyi and the URAL II to Bob Frankston/Dan Bricklen and VisiCalc, and onward, it was extremely interesting...and I believe it is still in print. In the back there were some photocopies of some of the original notes and papers of the programmers. Anyway, as I remember the interview with Mr. Gates, he said that the last program he worked on was the BASIC for the TRS-80 Color Computer. Maybe Eric can double-check this--I have since given my well-worn copy of the Lammers' book to a good friend. -- +-------------------------------------------------------------+ | Charles and Francis Richmond | +-------------------------------------------------------------+ ###### From: william.hamblen@nashville.com (William Hamblen) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Mon, 21 Dec 1998 22:55:11 -0600 Organization: Posted via RemarQ, http://www.remarQ.com - Discussions start here! Lines: 7 Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <$spam$-2112980049160001@user-37ka4oj.dialup.mindspring.com> <75lttd$pm2@boofura.swcp.com> <367EB46F.F2CC22AD@plano.net> Reply-To: william.hamblen@nashville.com NNTP-Posting-Host: 207.65.139.232 X-Trace: 914320730 4TJCV727N8BE8CF41C usenet53.supernews.com X-Complaints-To: newsabuse@remarQ.com X-Newsreader: TIN [version 1.2 PL2] Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!surfnet.nl!howland.erols.net!Supernews73!supernews.com!Supernews69!william.hamblen Charles Richmond (richmond@plano.net) wrote: : Anyway, as I remember the interview with Mr. Gates, he said that the last : program he worked on was the BASIC for the TRS-80 Color Computer. And said BASIC has a well known bug in the floating point arithmetic, too. ###### From: nickb@primenet.com (Nick S Bensema) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 22 Dec 1998 07:12:40 GMT Organization: PrImE NuT (602)864-1005 <--- <--- <--- Lines: 32 Message-ID: <75ngp8$d2s$1@nnrp02.primenet.com> References: <367F1C8E.5300C48C@jkmicro.com> <$spam$-2112980049160001@user-37ka4oj.dialup.mindspring.com> <75lttd$pm2@boofura.swcp.com> NNTP-Posting-Host: usr02.primenet.com X-Complaints-To: abuse@globalcenter.net X-Posted-By: nickb@206.165.6.202 (nickb) X-Newsreader: trn 4.0-test58 (13 May 97) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news.belnet.be!newsfeed.wirehub.nl!newspeer1.nac.net!nntp.primenet.com!news.primenet.com!not-for-mail In article , Eric Fischer wrote: >In article <75lttd$pm2@boofura.swcp.com>, Taki Kogoma wrote: > >> What was the last program Gates actually sat down and ground out the >> code for? > >In his interview in Susan Lammers's 1986 book _Programmers at Work_ he >says it was the ROM for the TRS-80 Model 100 laptop computer, cowritten >with Jey Suzuki. Here's a fun exercise... ask those who have owned the Model 100 what was really great about that old machine, and then tell them that Bill Gates wrote the ROM in it. I only have a vague idea what the machine is like; an LCD display and most of the useful software one would need in the 80's was right there in ROM, no waiting, no loading. There was at least a BASIC interpreter, a word processor, and a terminal program. That's pretty much all I've heard, and I've only seen one in person. I'd really like to get my hands on one of those machines... they seem like they'd be neat to lug around and take notes on, but I have a feeling the going rate for a working model 100 is probably more than that for a 386 laptop, which I could have just as much fun with. -- Nick Bensema 98-KUPD Red Card #710563 UIN: 2135445 ~~~~ ~~~~~~~ ~~~~~~~~~~~~~~~~~~~~ ###### From: johnb@invision.co.uk (John Birch) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Tue, 22 Dec 1998 09:43:07 GMT Message-ID: <367f64af.974341@news.demon.co.uk> References: <367F1C8E.5300C48C@jkmicro.com> Reply-To: johnb@invision.co.uk NNTP-Posting-Host: invision.demon.co.uk X-NNTP-Posting-Host: invision.demon.co.uk:158.152.59.42 X-Trace: news.demon.co.uk 914319955 nnrp-04:16128 NO-IDENT invision.demon.co.uk:158.152.59.42 X-Complaints-To: abuse@demon.net X-Newsreader: Forte Free Agent 1.11/32.235 Lines: 95 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!news-feed1.eu.concert.net!btnet-peer!btnet!dispose.news.demon.net!demon!news.demon.co.uk!demon!invision.demon.co.uk!not-for-mail On Mon, 21 Dec 1998 17:24:15 GMT, eric@fudge.uchicago.edu (Eric Fischer) wrote: >Jim Stewart wrote: > >> A letter from Bill Gates was published in the old SCCS magazine, >> probably in the late 70's. As I recall, he accused computer hobbyists >> of stealing his Basic interpreter and he threatened to stop writing >> software for personal computer market. Does anyone have the full text >> of the letter? > Letter kindly reposted by Eric Fischer; It's the first time I've read this, it's a fascinating insight into the mindset of the man who started Microsoft. He really does want to live the 'American dream' (and I guess he is!) >| >| To me, the most critical thing in the hobby market right now is the >| lack of good software courses, books and software itself. Without good >| software and an owner who understands programming, a hobby computer is >| wasted. Will quality software be written for the hobby market? >| Who can afford to do professional >| work for nothing? What hobbyist can put 3-man years into programming, >| finding all bugs, documenting his product and distribute for free? reason, new brooms sweep clean, consequently there is a period when the old software is frozen, pending the release of a new version developed by whomever the company has persuaded to babysit the old product. The very bottom line is; nobody likes maintaining somebody elses code, but it's a point of honour to fix your own bugs when somebody points them out to you!> >| >| What about the guy who re-sell Altair BASIC, aren't they making money >| on hobby software? Yes, but those who have been reported to us may lose >| in the end. They are the ones who give hobbyists a bad name, and should >| be kicked out of any club meeting they show up at. >| >| I would appreciate letters from any one who wants to pay up, or has a >| suggestion or comment. Just write me at 1180 Alvarado SE, #114, >| Albuquerque, New Mexico, 87108. Nothing would please me more than being >| able to hire ten programmers and deluge the hobby market with good >| software. I've only just really started looking at the free software movement - having been tickled by the recent press coverage into action. But it seems to me that there are massive spin-off benefits to being open in any approach to software development. As I see it; You focus on supporting the users rather than devloping a more marketable product, You focus on improving and developing the product in line with the users requirements rather than what the marketing department perceives as what is required, You focus on providing good support in terms of documentation, user guides, hints and tips, tutorials, custom components, etc (Since these are what you charge for!). Basically it would seem to me that you are in a positive cycle rather than a negative one! I.e. Rather than trying to convince customers that your product is good, you show them (for free) that it is not bad (and worth investing in learning about!). regards John B. ###### From: william.hamblen@nashville.com (William Hamblen) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Tue, 22 Dec 1998 06:47:58 -0600 Organization: Posted via RemarQ, http://www.remarQ.com - Discussions start here! Lines: 9 Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <367f64af.974341@news.demon.co.uk> Reply-To: william.hamblen@nashville.com NNTP-Posting-Host: 207.65.139.169 X-Trace: 914407322 4TJCV727N8BA9CF41C usenet57.supernews.com X-Complaints-To: newsabuse@remarQ.com X-Newsreader: TIN [version 1.2 PL2] Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.corridex.com!Supernews73!supernews.com!Supernews69!william.hamblen John Birch (johnb@invision.co.uk) wrote: : The free software movement already existed at the time. Software flowed across the ARPANET. User groups like DECUS flourished and where imitated by hobbyists. Dr Dobbs Journal of Computer Calisthenics and Orthodontia (Running Light Without Over Byte) started as a way to distribute free Tiny BASIC. Hobbyist magazines were full of type-in-yourself listings. ###### From: "Carl R. Friend" Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Tue, 22 Dec 1998 07:48:17 -0500 Organization: Stone & Webster Engineers and Constructors Lines: 40 Message-ID: <75oe9l$b6$1@eiffel.swec.com> References: <367F1C8E.5300C48C@jkmicro.com> <$spam$-2112980049160001@user-37ka4oj.dialup.mindspring.com> <75lttd$pm2@boofura.swcp.com> <75ngp8$d2s$1@nnrp02.primenet.com> NNTP-Posting-Host: ranger.swec.com X-Trace: eiffel.swec.com 914340981 358 111.1.18.254 (22 Dec 1998 15:36:21 GMT) X-Complaints-To: news@stoneweb.com NNTP-Posting-Date: 22 Dec 1998 15:36:21 GMT X-Newsreader: Microsoft Outlook Express 4.72.3110.5 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3110.3 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newshub.northeast.verio.net!nntp.newengland.verio.net!news.pn.com!eiffel.swec.com.!not-for-mail Nick S Bensema wrote in message <75ngp8$d2s$1@nnrp02.primenet.com>... > >Here's a fun exercise... ask those who have owned the Model 100 what >was really great about that old machine, and then tell them that Bill >Gates wrote the ROM in it. Usually you don't need to tell them. When the machine first comes up it "proudly" displays the Microsoft copyright message. Even with- out that message you can tell it's Mickeysoft Inside -- if you really push the machine hard it runs slower and slower as the garbage collect logic gets whacked. Eventually you have to push the reset button on the back beacuse it can take several seconds to recognise a keystroke. >I only have a vague idea what the machine is like; an LCD display >and most of the useful software one would need in the 80's was right >there in ROM, no waiting, no loading. There was at least a BASIC >interpreter, a word processor, and a terminal program. That's >pretty much all I've heard, and I've only seen one in person. That pretty much sums it up. I still use mine as my "road box" which travels with me. The 300 bps modem is enough for Email and is faster than the screen can scroll anyway. Hooked up that way to a UNIX box I can even surf the Web using Lynx. The nicest part? No moving parts! -- ______________________________________________________________________ | | | | Carl Richard Friend (UNIX Sysadmin) | West Boylston | | Minicomputer Collector / Enthusiast | Massachusetts, USA | | mailto:carl.friend@stoneweb.com | | | http://www.ultranet.com/~engelbrt/carl/museum/ | ICBM: N42:21 W71:46 | |________________________________________________|_____________________| ###### Date: 22 Dec 98 14:29:10 -0800 From: "Charlie Gibbs" Subject: Re: "Since all of you steal your software..." References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> Message-ID: <891.660T530T8693835@sky.bus.com> Newsgroups: alt.folklore.computers Lines: 20 X-Newsreader: THOR 2.5a (Amiga;TCP/IP) NNTP-Posting-Host: news.skybus.com X-Trace: 22 Dec 1998 09:37:43 -0800, news.skybus.com Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!news-peer1.sprintlink.net!news-in-east1.sprintlink.net!news.sprintlink.net!news.westel.com!news.skybus.com!204.244.247.125 In article <75ossa$og8$6@nnrp03.primenet.com> nickb@primenet.com (Nick S Bensema) writes: > I think Microsoft's claim on most early computers is a >covert collaboration in the BASIC interpreter. AmigaBASIC was >probably MS's; it was QBASIC-like enough. Indeed, AmigaBASIC was the one piece of M$ software that was inflicted upon the Amiga. I eventually stopped using it simply because it was so obnoxious. Then along came the 68020 accelerators, and AmigaBASIC promptly died - because Microsoft, in their usual fashion, had ignored the widely-publicized programming guidelines and produced something that was not portable from the 68000 to higher processors. Commodore replaced AmigaBASIC with ARexx in version 2.0 of AmigaOS, and since then the Amiga has been a Microsoft-free zone. -- cgibbs@sky.bus.com (Charlie Gibbs) Remove the first period after the "at" sign to reply. ###### From: hnsngr@sirius.com (Ron Hunsinger) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Tue, 22 Dec 1998 15:16:02 -0800 Organization: ErsteSoft Lines: 24 Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> NNTP-Posting-Host: ppp-asok03--117.sirius.net Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Newsreader: Yet Another NewsWatcher 2.3.1 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.cwix.com!128.230.129.106!news.maxwell.syr.edu!news1.best.com!newshub.sirius.com!newsfiler.sirius.com!hnsngr In article <75p27m$10u0$1@nntp1.u.washington.edu>, dpeschel@u.washington.edu (D. Peschel) wrote: > AppleSoft (written and > copyrighted by MS, patched by Apple to handle lower-case) is slow and > complicated, has floating-point and strings but lacks some of the > convenience of Integer BASIC, and has many bugs and anomalies. One of my favorites is the following: 100 FOR X = 1 TO 10000 110 IF 1/X <> 1/X THEN PRINT X 120 NEXT X It's hard to imagine how 1/X could ever NOT be equal to itself, yet this program will print out a distressingly large number of values of X for which it isn't. I came across this one from the inside out. I was disassembling the ROM, and while reading the code to evaluate expressions I found some that made me splutter "But... but... if they do it that way, then...". I wrote the above test program, and sure enough they did. -Ron Hunsinger ###### Newsgroups: alt.folklore.computers From: eric@fudge.uchicago.edu (Eric Fischer) Subject: Re: "Since all of you steal your software..." X-Nntp-Posting-Host: fudge.uchicago.edu Message-ID: Sender: news@midway.uchicago.edu (News Administrator) X-Newsposter: Pnews 4.0-test51 (15 Jan 97) Organization: The University of Chicago References: <367F1C8E.5300C48C@jkmicro.com> <75lttd$pm2@boofura.swcp.com> <367EB46F.F2CC22AD@plano.net> Date: Tue, 22 Dec 1998 15:34:07 GMT Lines: 37 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!news-peer1.sprintlink.net!news.sprintlink.net!vixen.cso.uiuc.edu!uchinews!not-for-mail Charles Richmond wrote: > I read the Lammers' book [Programmers at Work] *several* times, and I > really enjoyed it each time!!! From Charles Simonyi and the URAL II > to Bob Frankston/Dan Bricklen and VisiCalc, and onward, it was > extremely interesting...and I believe it is still in print. I'm not sure if it's still in actual print, but you can get it on a CD in HTML format, according to an ad in the latest issue of Unix Review. It's $25 from Dr. Dobb's Journal, http://www.ddj.com/cdrom/ and includes other interviews with programmers that weren't in the original book, including the "Halcyon Days" video game interviews, which I also highly recommend. > Anyway, as I remember the interview with Mr. Gates, he said that the > last program he worked on was the BASIC for the TRS-80 Color > Computer. Maybe Eric can double-check this--I have since given my > well-worn copy of the Lammers' book to a good friend. I don't have my copy here with me to verify, but I'm sure it was the Model 100 because I posted a quote from the book in this newsgroup, back in June of 1996: "I still help design algorithms and basic approaches, and sometimes I look at code. But since I worked on the IBM PC BASIC and the Model 100, I haven't had a chance to actually create a program myself." (p. 72) There must have been a reference to the Color Computer too, though, because I remember there being an obvious typo where the book referred to a 6800 instead of a 6809. I'll check for the details when I get home tonight. eric ###### From: alex*@*rockvax.rockefeller.edu (Alexandre Pechtchanski) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Organization: Rockefeller University Hospital (GCRC), New York Message-ID: <3680c4a5.324048080@Rockyd> References: <367F1C8E.5300C48C@jkmicro.com> <367f64af.974341@news.demon.co.uk> X-Newsreader: Forte Agent 1.5/32.451 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 22 Date: Tue, 22 Dec 1998 16:15:38 GMT NNTP-Posting-Host: 129.85.24.56 X-Trace: rockyd.rockefeller.edu 914343354 129.85.24.56 (Tue, 22 Dec 1998 11:15:54 EDT) NNTP-Posting-Date: Tue, 22 Dec 1998 11:15:54 EDT Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!feeder.qis.net!newsfeed.nyu.edu!rockyd.rockefeller.edu!not-for-mail On Tue, 22 Dec 1998 09:43:07 GMT, johnb@invision.co.uk (John Birch) wrote: >On Mon, 21 Dec 1998 17:24:15 GMT, eric@fudge.uchicago.edu (Eric >Fischer) wrote: > >Letter [from Bill Gates to hobbyists] kindly reposted by Eric Fischer; > >It's the first time I've read this, it's a fascinating insight into >the mindset of the man who started Microsoft. He really does want to >live the 'American dream' (and I guess he is!) [ snip ] >... it's a point of honour to fix your own bugs >when somebody points them out to you!> Unless your name is Bill Gates or you work for Microsoft. Then you either proclaim "It is not a bug, it is a feature!" (even if it breaks everything _hard_, like infamous "EMM386 stopped your computer to save your work") or agree that it _is_ a bug, but declare that you are not going to do anything about it (FPW on fast computers and many others). [ When replying, remove *'s from address ] Alexandre Pechtchanski, Systems Manager, RUH, NY ###### Sender: skritch@ Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." References: <367F1C8E.5300C48C@jkmicro.com> <75lttd$pm2@boofura.swcp.com> <367EB46F.F2CC22AD@plano.net> From: fsck@mindless.com Mime-Version: 1.0 (generated by tm-edit 7.106) Content-Type: text/plain; charset=US-ASCII Message-ID: <86d85cunem.fsf@mindless.com> Organization: BOFH Coffeehouse and shooting range Lines: 23 X-Newsreader: Gnus v5.5/Emacs 20.3 Date: Tue, 22 Dec 1998 16:54:12 GMT NNTP-Posting-Host: 24.1.127.47 X-Complaints-To: abuse@home.net X-Trace: news.rdc1.sfba.home.com 914345652 24.1.127.47 (Tue, 22 Dec 1998 08:54:12 PDT) NNTP-Posting-Date: Tue, 22 Dec 1998 08:54:12 PDT Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!nntp.abs.net!newshub2.home.com!newshub1.home.com!news.home.com!news.rdc1.sfba.home.com.POSTED!not-for-mail eric@fudge.uchicago.edu (Eric Fischer) writes: > Charles Richmond wrote: > > > I read the Lammers' book [Programmers at Work] *several* times, and I > > really enjoyed it each time!!! From Charles Simonyi and the URAL II > > to Bob Frankston/Dan Bricklen and VisiCalc, and onward, it was > > extremely interesting...and I believe it is still in print. > > I'm not sure if it's still in actual print, but you can get it on a CD > in HTML format, according to an ad in the latest issue of Unix Review. > It's $25 from Dr. Dobb's Journal, > > http://www.ddj.com/cdrom/ After checking around last night, I can verify that both the original 1986 and the revised 1989 versions are both out-of-print. Thanks for the CD-ROM URL, Eric! -- Mark C. Langston Ph'nglui mglw'nafh Cthulhu R'lyeh wagn'nagl fhtagn. Cthulhu for President in 2000: Why choose the lesser evil? ###### From: $spam$@orion-com.com (Joe Thompson) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Tue, 22 Dec 1998 18:47:45 -0500 Organization: Orion Computer Consulting Lines: 27 Message-ID: <$spam$-2212981847460001@user-37ka4is.dialup.mindspring.com> References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> NNTP-Posting-Host: cf.45.12.5c X-Server-Date: 22 Dec 1998 23:47:25 GMT X-Newsreader: MT-NewsWatcher 2.4.4 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!firehose.mindspring.net!firehose.mindspring.com!$spam$ In article , hnsngr@sirius.com (Ron Hunsinger) wrote: > One of my favorites is the following: > > 100 FOR X = 1 TO 10000 > 110 IF 1/X <> 1/X THEN PRINT X > 120 NEXT X > > It's hard to imagine how 1/X could ever NOT be equal to itself, yet this > program will print out a distressingly large number of values of X for > which it isn't. > > I came across this one from the inside out. I was disassembling the ROM, > and while reading the code to evaluate expressions I found some that made > me splutter "But... but... if they do it that way, then...". I wrote the > above test program, and sure enough they did. What did they do, something like "If 1/A x B != 1, then return true"? For a <> operation to ever fail, you'd have to to either give it an invalid value in the first place, or it would have to treat its arguments differently, or be really *obviously* broken. -- Joe -- Joe Thompson | http://kensey.home.mindspring.com/ $spam$@orion-com.com | O- He-Who-Grinds-the-Unworthy Charlottesville, VA | "I'd like to take this time to formally thank you for bringing back a lot of bad memories." -- ADB on ASR ###### From: nickb@primenet.com (Nick S Bensema) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 22 Dec 1998 19:45:14 GMT Organization: PrImE NuT (602)864-1005 <--- <--- <--- Lines: 33 Message-ID: <75ossa$og8$6@nnrp03.primenet.com> References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> NNTP-Posting-Host: usr02.primenet.com X-Complaints-To: abuse@globalcenter.net X-Posted-By: nickb@206.165.6.202 (nickb) X-Newsreader: trn 4.0-test58 (13 May 97) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.cwix.com!206.165.3.11!nntp.primenet.com!news.primenet.com!not-for-mail In article <75oe9l$b6$1@eiffel.swec.com>, Carl R. Friend wrote: > >Nick S Bensema wrote in message <75ngp8$d2s$1@nnrp02.primenet.com>... >> >>Here's a fun exercise... ask those who have owned the Model 100 what >>was really great about that old machine, and then tell them that Bill >>Gates wrote the ROM in it. > > Usually you don't need to tell them. When the machine first comes >up it "proudly" displays the Microsoft copyright message. Even with- >out that message you can tell it's Mickeysoft Inside -- if you really >push the machine hard it runs slower and slower as the garbage collect >logic gets whacked. Eventually you have to push the reset button on >the back beacuse it can take several seconds to recognise a keystroke. Yipes.... that's so Timex-Sinclairesque. But I'm not surprised at the Microsoft copyright message; just about every personal computer on the face of the Earth after a certain date has a Microsoft copyright message somewhere in the manuals or the ROM itself; even the Commodore 128 bears Microsoft's name right in the 128-mode boot screen. I think Microsoft's claim on most early computers is a covert collaboration in the BASIC interpreter. AmigaBASIC was probably MS's; it was QBASIC-like enough. I'm also tempted to say that C64's and Apple's was too, but I'm not ready to take that kind of leap, especially since I found out there's no such thing as a 6-gig Jaz drive. What the hell was I thinking? -- Nick Bensema 98-KUPD Red Card #710563 UIN: 2135445 ~~~~ ~~~~~~~ ~~~~~~~~~~~~~~~~~~~~ ###### From: deke.spamblock@generous.net Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Tue, 22 Dec 1998 19:58:03 GMT Organization: GenerousCity is a virtue - find romance at http://generous.net Lines: 13 Message-ID: <367ff9b3.12810186@news.bright.net> References: <367F1C8E.5300C48C@jkmicro.com> <$spam$-2112980049160001@user-37ka4oj.dialup.mindspring.com> <75lttd$pm2@boofura.swcp.com> NNTP-Posting-Host: paul-cas2-cs-22.dial.bright.net X-Newsreader: Forte Free Agent 1.11/32.235 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!howland.erols.net!vixen.cso.uiuc.edu!NewsNG.Chicago.Qual.Net!news.bright.net!not-for-mail On 21 Dec 1998 09:44:29 -0700, quirk@swcp.com (Taki Kogoma) wrote: >What was the last program Gates actually sat down and ground out the >code for? worldDomination.bas ------------------------ Let love find you! http://generous.net A list for flirting generousSingles-subscribe@onelist.com Over The Hill Gang generousSinglesOTHG-subscribe@onelist.com College and younger generousTeens-subscribe@onelist.com Lots of Personal Ads generousProfiles-subscribe@onelist.com If it's not 'just the way you are', it's not love.... ###### Newsgroups: alt.folklore.computers From: eric@fudge.uchicago.edu (Eric Fischer) Subject: Re: "Since all of you steal your software..." X-Nntp-Posting-Host: fudge.uchicago.edu Message-ID: Sender: news@midway.uchicago.edu (News Administrator) X-Newsposter: Pnews 4.0-test51 (15 Jan 97) Organization: The University of Chicago References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> Date: Tue, 22 Dec 1998 20:53:59 GMT Lines: 19 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.cwix.com!128.174.5.49!vixen.cso.uiuc.edu!uchinews!not-for-mail Nick S Bensema wrote: > AmigaBASIC was probably MS's; it was QBASIC-like enough. Yes, it was a Microsoft BASIC, and in typical Microsoft fashion it used the top bits of pointers for other data and broke when those bits started to correspond to real address space. > I'm also tempted to say that C64's and Apple's was too, but I'm not > ready to take that kind of leap The C64 BASIC was from Microsoft. The original Apple Integer BASIC wasn't -- it was written by Steve Wozniak -- but Applesoft (floating point) BASIC was another Microsoft product. The standard BASIC for the Atari 400 and 800 wasn't from Microsoft, but a Microsoft version was available as an option. Texas Instruments, though, somehow managed to avoid having any Microsoft BASIC available for its TI-99/4A. eric ###### Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> Organization: Plethora . Net - more net, less spam! X-Newsreader: trn 4.0-test69 (20 September 1998) From: seebs@plethora.net (Peter Seebach) Lines: 15 Message-ID: <9MTf2.554$fM1.17875@ptah.visi.com> Date: Tue, 22 Dec 1998 21:00:53 GMT NNTP-Posting-Host: 205.166.146.8 X-Trace: ptah.visi.com 914360453 205.166.146.8 (Tue, 22 Dec 1998 15:00:53 CDT) NNTP-Posting-Date: Tue, 22 Dec 1998 15:00:53 CDT Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!chippy.visi.com!news-out.visi.com!ptah.visi.com!not-for-mail In article <75ossa$og8$6@nnrp03.primenet.com>, Nick S Bensema wrote: >covert collaboration in the BASIC interpreter. AmigaBASIC was >probably MS's; it was QBASIC-like enough. It certainly was. Despite clear and unambiguous statements from Apple, Motorola, and Commodore, AmigaBASIC only works if the top byte of every pointer is irrelevant. (True on the 68000.) -s -- Copyright 1998, All rights reserved. Peter Seebach / seebs@plethora.net C/Unix wizard, Pro-commerce radical, Spam fighter. Boycott Spamazon! Send me money - get cool programs and hardware! No commuting, please. Visit my new ISP --- More Net, Less Spam! ###### From: dpeschel@u.washington.edu (D. Peschel) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 22 Dec 1998 21:16:38 GMT Organization: University of Washington, Seattle Lines: 33 Message-ID: <75p27m$10u0$1@nntp1.u.washington.edu> References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> NNTP-Posting-Host: saul9.u.washington.edu X-Trace: nntp1.u.washington.edu 914361398 33728 (None) 140.142.17.35 X-Complaints-To: help@cac.washington.edu NNTP-Posting-User: dpeschel Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!logbridge.uoregon.edu!news.u.washington.edu!dpeschel In article <75ossa$og8$6@nnrp03.primenet.com>, Nick S Bensema wrote: > I think Microsoft's claim on most early computers is a >covert collaboration in the BASIC interpreter. For a long time, BASIC was a big part of their business. There was a thread here a while ago about MS' use of a PDP-10 (and some really evil assembler macros) to compile their versions of BASIC. > AmigaBASIC was >probably MS's; it was QBASIC-like enough. I'm also tempted to say >that C64's and Apple's was too, AmigaBASIC: yes, and MS disobeyed Commodore's admonition not to turn a 24-bit address into a 24-bit address plus 8 bits of data (because addresses would eventually become 32 bits). When addresses DID become 32 bits, most people didn't lament the demise of AmigaBASIC. C-64: I almost sure it wasn't. Commodore had been writing their BASICs for some time. Apple: There were two dialects. Integer BASIC (written and hand-assembled by Steve Wozniak) is fast and simple, has some nice features, and has only one minor bug I know of. (There's a *** TOO MANY PARENS ERR message, but using too many parentheses gives you another error, so the correct one never shows up. This can be fixed by changing one byte.) AppleSoft (written and copyrighted by MS, patched by Apple to handle lower-case) is slow and complicated, has floating-point and strings but lacks some of the convenience of Integer BASIC, and has many bugs and anomalies. -- Derek ###### From: bhahn@spam-spam.go-away.com (Brendan Hahn) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> Organization: Transoft Corp Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-transfer-encoding: 8bit Reply-To: bhahn@transoft.mangle.net (unmangle address to reply) X-Newsreader: Yet Another NewsWatcher 2.4.0 Lines: 11 Date: Tue, 22 Dec 1998 21:17:55 GMT NNTP-Posting-Host: 205.180.87.35 NNTP-Posting-Date: Tue, 22 Dec 1998 13:17:55 PDT Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.cwix.com!192.220.250.21!netnews1.nw.verio.net!netnews.nwnet.net!nnrp2.ni.net!not-for-mail nickb@primenet.com (Nick S Bensema) wrote: > I think Microsoft's claim on most early computers is a >covert collaboration in the BASIC interpreter. AmigaBASIC was >probably MS's; it was QBASIC-like enough. I'm also tempted to say >that C64's and Apple's was too, but I'm not ready to take that >kind of leap... Applesoft BASIC was by MS, at least partly, but the original Integer BASIC wasn't. Can't remember for the C64. bhahn@transoft.mangle.net <-- unmangle to reply ###### From: $spam$@orion-com.com (Joe Thompson) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Tue, 22 Dec 1998 21:42:08 -0500 Organization: Orion Computer Consulting Lines: 24 Message-ID: <$spam$-2212982142080001@user-37ka4jk.dialup.mindspring.com> References: <367F1C8E.5300C48C@jkmicro.com> <75p27m$10u0$1@nntp1.u.washington.edu> <$spam$-2212981847460001@user-37ka4is.dialup.mindspring.com> NNTP-Posting-Host: cf.45.12.74 X-Server-Date: 23 Dec 1998 02:41:47 GMT X-Newsreader: MT-NewsWatcher 2.4.4 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!dca1-hub1.news.digex.net!digex!netnews.com!cpk-news-hub1.bbnplanet.com!news.gtei.net!firehose.mindspring.com!$spam$ In article , seebs@plethora.net (Peter Seebach) wrote: > (1/x) != (1/x) > > happens as > put 1 and x in FP registers > do operation to higher precision intermediate representation > store result, truncating > do operation to higher precision intermediate representation > pull stored result and compare > > Not always, but enough to make it useless. You'd think it would be a standard to ensure that if two equal expressions are compared, they are found equal. i.e., in your case, the untruncated result should not be compared to the truncated one. And really the truncated one should not be stored at a lower precision in the first place I'd think. -- Joe -- Joe Thompson | http://kensey.home.mindspring.com/ $spam$@orion-com.com | O- He-Who-Grinds-the-Unworthy Charlottesville, VA | "I'd like to take this time to formally thank you for bringing back a lot of bad memories." -- ADB on ASR ###### Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." References: <367F1C8E.5300C48C@jkmicro.com> <75p27m$10u0$1@nntp1.u.washington.edu> <$spam$-2212981847460001@user-37ka4is.dialup.mindspring.com> Organization: Plethora . Net - more net, less spam! X-Newsreader: trn 4.0-test69 (20 September 1998) From: seebs@plethora.net (Peter Seebach) Lines: 26 Message-ID: Date: Wed, 23 Dec 1998 00:06:42 GMT NNTP-Posting-Host: 205.166.146.8 X-Trace: ptah.visi.com 914371602 205.166.146.8 (Tue, 22 Dec 1998 18:06:42 CDT) NNTP-Posting-Date: Tue, 22 Dec 1998 18:06:42 CDT Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!chippy.visi.com!news-out.visi.com!ptah.visi.com!not-for-mail In article <$spam$-2212981847460001@user-37ka4is.dialup.mindspring.com>, Joe Thompson <$spam$@orion-com.com> wrote: >What did they do, something like "If 1/A x B != 1, then return true"? For >a <> operation to ever fail, you'd have to to either give it an invalid >value in the first place, or it would have to treat its arguments >differently, or be really *obviously* broken. -- Joe Well, on modern hardware, it's a common problem for C programs; (1/x) != (1/x) happens as put 1 and x in FP registers do operation to higher precision intermediate representation store result, truncating do operation to higher precision intermediate representation pull stored result and compare Not always, but enough to make it useless. -s -- Copyright 1998, All rights reserved. Peter Seebach / seebs@plethora.net C/Unix wizard, Pro-commerce radical, Spam fighter. Boycott Spamazon! Send me money - get cool programs and hardware! No commuting, please. Visit my new ISP --- More Net, Less Spam! ###### From: Charles Richmond Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Wed, 23 Dec 1998 00:44:44 +0000 Organization: Cannine Computer Center Lines: 20 Message-ID: <36803CFC.F70326E3@plano.net> References: <367F1C8E.5300C48C@jkmicro.com> <$spam$-2112980049160001@user-37ka4oj.dialup.mindspring.com> <75lttd$pm2@boofura.swcp.com> <75ngp8$d2s$1@nnrp02.primenet.com> Reply-To: richmond@plano.net NNTP-Posting-Host: 209.44.41.17 Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: 914395299 R67V8VHUD2911D12CC usenet87.supernews.com X-Complaints-To: newsabuse@remarQ.com X-Mailer: Mozilla 4.04 (Macintosh; I; 68K) To: Nick S Bensema Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!howland.erols.net!Supernews73!supernews.com!Supernews69!not-for-mail Nick S Bensema wrote: > > > [snip...] [snip...] [snip...] > > I'd really like to get my hands on one of those machines... they > seem like they'd be neat to lug around and take notes on, but I > have a feeling the going rate for a working model 100 is probably > more than that for a 386 laptop, which I could have just as much > fun with. > Check on ebay and on for Model 100's for sale. You might be surprised at what price you can have one for your very own. I believe it can be had for less that $100 US. I do *not* know what the going rate is for 386 laptops, though . . . -- +-------------------------------------------------------------+ | Charles and Francis Richmond | +-------------------------------------------------------------+ ###### From: Charles Richmond Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Wed, 23 Dec 1998 00:51:37 +0000 Organization: Cannine Computer Center Lines: 31 Message-ID: <36803E99.7E9B44A3@plano.net> References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> Reply-To: richmond@plano.net NNTP-Posting-Host: 209.44.41.17 Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: 914395713 R67V8VHUD2911D12CC usenet87.supernews.com X-Complaints-To: newsabuse@remarQ.com X-Mailer: Mozilla 4.04 (Macintosh; I; 68K) To: Nick S Bensema Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!newscore.univie.ac.at!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.corridex.com!Supernews73!supernews.com!Supernews69!not-for-mail Nick S Bensema wrote: > > [snip...] [snip...] [snip...] > > Yipes.... that's so Timex-Sinclairesque. But I'm not surprised at > the Microsoft copyright message; just about every personal computer > on the face of the Earth after a certain date has a Microsoft > copyright message somewhere in the manuals or the ROM itself; even > the Commodore 128 bears Microsoft's name right in the 128-mode boot > screen. > Well, that is *mostly* accurate...Microsoft got hacked off at the Tramiel family that bought out Atari and came out the the Atari ST line of 68000 computers. Consequently, M-suck did *not* produce a single piece of software for the Atari ST...no BASIC, no word processor, no spreadsheet, no nothing!!! Gee, how fortunate for the Atari ST users!!! > > I think Microsoft's claim on most early computers is a > covert collaboration in the BASIC interpreter. AmigaBASIC was > probably MS's; it was QBASIC-like enough. I'm also tempted to say > that C64's and Apple's was too, but I'm not ready to take that > kind of leap, especially since I found out there's no such thing > as a 6-gig Jaz drive. What the hell was I thinking? > Yes, I guess there is *no* 6-gig Jaz drive . . . yet!!! But when it does come out, it will be able to read the original 1-gig Jaz disks also. ;-) -- +-------------------------------------------------------------+ | Charles and Francis Richmond | +-------------------------------------------------------------+ ###### Message-ID: <36804280.405FCB5@flash.net> From: Richard Lamb Reply-To: lamb01@flash.net Organization: Earth X-Sender: "Richard Lamb" (Unverified) X-Mailer: Mozilla 4.04 [en]C-FLASHNET (Win95; I) MIME-Version: 1.0 Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." References: <367F1C8E.5300C48C@jkmicro.com> <367f64af.974341@news.demon.co.uk> <3680c4a5.324048080@Rockyd> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 8 Date: Wed, 23 Dec 1998 01:00:54 GMT NNTP-Posting-Host: 209.30.90.47 X-Complaints-To: abuse@flash.net X-Trace: news.flash.net 914374854 209.30.90.47 (Tue, 22 Dec 1998 19:00:54 CDT) NNTP-Posting-Date: Tue, 22 Dec 1998 19:00:54 CDT Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!howland.erols.net!nntp.flash.net!news.flash.net!not-for-mail I have Lichen Wu's Tiny BASIC for the 8086 around here somewhere, but can't find an assembler that won't choke on it... Anybody got a source that WILL assemble? Wanted for 8088 progect.... Richard Lamb ###### From: genew@vip.net (Gene Wirchenko) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Wed, 23 Dec 1998 03:21:09 GMT Organization: Posted via RemarQ, http://www.remarQ.com - Discussions start here! Lines: 29 Message-ID: <36804d31.32040580@news.vip.net> References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <$spam$-2212981847460001@user-37ka4is.dialup.mindspring.com> Reply-To: genew@vip.net NNTP-Posting-Host: 204.209.212.46 X-Trace: 914383099 A01OARAUVD42ECCD1C usenet78.supernews.com X-Complaints-To: newsabuse@remarQ.com X-Newsreader: Forte Free Agent 1.1/32.230 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!howland.erols.net!Supernews73!supernews.com!Supernews69!not-for-mail $spam$@orion-com.com (Joe Thompson) wrote: >In article , >hnsngr@sirius.com (Ron Hunsinger) wrote: > >> One of my favorites is the following: >> >> 100 FOR X = 1 TO 10000 >> 110 IF 1/X <> 1/X THEN PRINT X >> 120 NEXT X >> >> It's hard to imagine how 1/X could ever NOT be equal to itself, yet this >> program will print out a distressingly large number of values of X for >> which it isn't. Comparing floating point values for exact equality or exact inequality is poor programming practice. See Peter Seebach's post as well. [snip] Sincerely, Gene Wirchenko Computerese Irregular Verb Conjugation: I have preferences. You have biases. He/She has prejudices. ###### Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." References: <367F1C8E.5300C48C@jkmicro.com> <$spam$-2212981847460001@user-37ka4is.dialup.mindspring.com> <$spam$-2212982142080001@user-37ka4jk.dialup.mindspring.com> Organization: Plethora . Net - more net, less spam! X-Newsreader: trn 4.0-test69 (20 September 1998) From: seebs@plethora.net (Peter Seebach) Lines: 42 Message-ID: Date: Wed, 23 Dec 1998 05:11:11 GMT NNTP-Posting-Host: 205.166.146.8 X-Trace: ptah.visi.com 914389871 205.166.146.8 (Tue, 22 Dec 1998 23:11:11 CDT) NNTP-Posting-Date: Tue, 22 Dec 1998 23:11:11 CDT Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!chippy.visi.com!news-out.visi.com!ptah.visi.com!not-for-mail In article <$spam$-2212982142080001@user-37ka4jk.dialup.mindspring.com>, Joe Thompson <$spam$@orion-com.com> wrote: >In article , seebs@plethora.net (Peter >Seebach) wrote: >> (1/x) != (1/x) >> >> happens as >> put 1 and x in FP registers >> do operation to higher precision intermediate representation >> store result, truncating >> do operation to higher precision intermediate representation >> pull stored result and compare >> >> Not always, but enough to make it useless. >You'd think it would be a standard to ensure that if two equal expressions >are compared, they are found equal. Yes, but so many people don't want that if it slows their code down... >i.e., in your case, the untruncated >result should not be compared to the truncated one. And really the >truncated one should not be stored at a lower precision in the first place >I'd think. -- Joe The problem isn't the lower precision, because that's the "real" precision. The problem is that some FPU's are *FASTER* with more bits, because that's the "most natural" format; so, compilers like to do everything in a more exact intermediate form. There's various workarounds, and you can almost always get what you want, but it's occasionally surprising. The moral of the story? No one who doesn't believe that the IEEE spec makes sense should be comparing floats for equality. -s -- Copyright 1998, All rights reserved. Peter Seebach / seebs@plethora.net C/Unix wizard, Pro-commerce radical, Spam fighter. Boycott Spamazon! Send me money - get cool programs and hardware! No commuting, please. Visit my new ISP --- More Net, Less Spam! ###### Message-ID: <3680F51C.29B62531@danet.com> Date: Wed, 23 Dec 1998 08:50:20 -0500 From: "J. Benz" X-Mailer: Mozilla 4.05 [en] (Win95; I) MIME-Version: 1.0 Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <$spam$-2212981847460001@user-37ka4is.dialup.mindspring.com> <36804d31.32040580@news.vip.net> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit NNTP-Posting-Host: pc-135.danet.com Lines: 34 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newshub.northeast.verio.net!newsserver.jvnc.net!news.nauticom.net!pc-135.danet.com Gene Wirchenko wrote: > $spam$@orion-com.com (Joe Thompson) wrote: > > >In article , > >hnsngr@sirius.com (Ron Hunsinger) wrote: > > > >> One of my favorites is the following: > >> > >> 100 FOR X = 1 TO 10000 > >> 110 IF 1/X <> 1/X THEN PRINT X > >> 120 NEXT X > >> > >> It's hard to imagine how 1/X could ever NOT be equal to itself, yet this > >> program will print out a distressingly large number of values of X for > >> which it isn't. > > Comparing floating point values for exact equality or exact > inequality is poor programming practice. See Peter Seebach's post as > well. I've seen that post, and I'm familiar with the reasons why you don't compare FP for equality - but I am also amazed that this particular instance does not compare equally. Floating point error *should* be deterministic even when it gives you the wrong answer - in other words, the *same* error should be made twice here, resulting in equally wrong values. One would not expect the machine to insert some random factor into a simple divide, or to evaluate these two 1/X's through different code paths. It might be instructive if Mr. Hunsinger could post what the two values of 1/X actually evaluate to when they're NOT equal. Poor programming practice or not, it's still pretty amazing. ###### Message-ID: <3680F5B2.3F799942@danet.com> Date: Wed, 23 Dec 1998 08:52:50 -0500 From: "J. Benz" X-Mailer: Mozilla 4.05 [en] (Win95; I) MIME-Version: 1.0 Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." References: <367F1C8E.5300C48C@jkmicro.com> <$spam$-2212981847460001@user-37ka4is.dialup.mindspring.com> <$spam$-2212982142080001@user-37ka4jk.dialup.mindspring.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit NNTP-Posting-Host: pc-135.danet.com Lines: 14 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news.belnet.be!newsfeed.wirehub.nl!newspeer1.nac.net!newspeer.monmouth.com!newshub.northeast.verio.net!newsserver.jvnc.net!news.nauticom.net!pc-135.danet.com Peter Seebach wrote: > In article <$spam$-2212982142080001@user-37ka4jk.dialup.mindspring.com>, > Joe Thompson <$spam$@orion-com.com> wrote: > >In article , seebs@plethora.net (Peter > >Seebach) wrote: > >> (1/x) != (1/x) > >> > >> Ohh, *that* post from Peter Seebach.... ###### From: TheCentralScrutinizer.104@pobox.com () Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 23 Dec 1998 14:29:09 GMT Organization: http://extra.newsguy.com Lines: 16 Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> Reply-To: TheCentralScrutinizer.104@pobox.com NNTP-Posting-Host: edison.chisp.net X-Newsreader: slrn (0.9.3.2 UNIX) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.cwix.com!128.223.220.30!logbridge.uoregon.edu!pln-w!spln!extra.newsguy.com!newsp.newsguy.com!TheCentralScrutinizer.104 On Tue, 22 Dec 1998 15:16:02 -0800, Ron Hunsinger wrote: > >One of my favorites is the following: > > 100 FOR X = 1 TO 10000 > 110 IF 1/X <> 1/X THEN PRINT X > 120 NEXT X ... My favorite when visiting a radio shack store was: 10 for x=1 to 32000 20 poke x,0 30 next x jumping jack crash! ###### From: David Wragg Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Lines: 18 Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> Mime-Version: 1.0 (generated by tm-edit 7.108) Content-Type: text/plain; charset=US-ASCII X-Newsreader: Gnus v5.5/XEmacs 20.4 - "Emerald" Date: 23 Dec 1998 02:20:20 +0000 NNTP-Posting-Host: 194.119.176.228 X-Complaints-To: news@u-net.net X-Trace: newsr2.u-net.net 914450999 194.119.176.228 (Wed, 23 Dec 1998 22:09:59 BST) NNTP-Posting-Date: Wed, 23 Dec 1998 22:09:59 BST Organization: (Posted via) U-NET Internet Ltd. Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newshub.northeast.verio.net!news.maxwell.syr.edu!nntp.news.xara.net!xara.net!peer.news.th.u-net.net!u-net!newsr2.u-net.net.POSTED!gatsby.u-net.com!not-for-mail eric@fudge.uchicago.edu (Eric Fischer) writes: > [letter by Bill Gates] > | February 3, 1976 > | > | An Open Letter to Hobbyists > | > | [snip] > | We have written 6800 BASIC, and are writing 8080 APL and 6800 > | APL, but there is very little incentive to make this software available > | to hobbyists. Most directly, the thing you do is theft. > | [snip] I have never heard of an MS APL. Did they ever get around to releasing it, or was it just hyperbole on Bill's part? (And if they did release it, could someone mail me a copy ;-) Dave Wragg ###### Message-ID: <36815397.131F@compuserve.com> Date: Wed, 23 Dec 1998 12:33:27 -0800 From: Sam Yorko X-Mailer: Mozilla 3.01Gold (WinNT; I) MIME-Version: 1.0 Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <36803E99.7E9B44A3@plano.net> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit NNTP-Posting-Host: exosecure-symbol.psd.symbol.com X-NNTP-Posting-Host: exosecure-symbol.psd.symbol.com Organization: news://newsread.exodus.net : Crossing the Invisible Line Lines: 6 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!news1.best.com!kiowa.exodus.net!207.82.39.214.MISMATCH!newsread.exodus.net!exosecure-symbol.psd.symbol.com Charles Richmond wrote: > > Yes, I guess there is *no* 6-gig Jaz drive . . . yet!!! But when it does come > out, it will be able to read the original 1-gig Jaz disks also. ;-) > At least as well as the 1-gig drives can read them. ###### From: genew@vip.net (Gene Wirchenko) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Wed, 23 Dec 1998 20:06:11 GMT Organization: Posted via RemarQ, http://www.remarQ.com - Discussions start here! Lines: 25 Message-ID: <36812f0d.5189498@news.vip.net> References: <367F1C8E.5300C48C@jkmicro.com> <$spam$-2212981847460001@user-37ka4is.dialup.mindspring.com> <$spam$-2212982142080001@user-37ka4jk.dialup.mindspring.com> <3680F5B2.3F799942@danet.com> Reply-To: genew@vip.net NNTP-Posting-Host: 204.209.212.49 X-Trace: 914443407 A01OARAUVD431CCD1C usenet80.supernews.com X-Complaints-To: newsabuse@remarQ.com X-Newsreader: Forte Free Agent 1.1/32.230 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!howland.erols.net!Supernews73!supernews.com!Supernews69!not-for-mail "J. Benz" wrote: >Peter Seebach wrote: > >> In article <$spam$-2212982142080001@user-37ka4jk.dialup.mindspring.com>, >> Joe Thompson <$spam$@orion-com.com> wrote: >> >In article , seebs@plethora.net (Peter >> >Seebach) wrote: >> >> (1/x) != (1/x) >> >> >> >> > >Ohh, *that* post from Peter Seebach.... You left out that you selectively snipped bits of the post and thus almost totally misstated Peter's view. Not nice. Sincerely, Gene Wirchenko Computerese Irregular Verb Conjugation: I have preferences. You have biases. He/She has prejudices. ###### From: genew@vip.net (Gene Wirchenko) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Wed, 23 Dec 1998 20:06:14 GMT Organization: Posted via RemarQ, http://www.remarQ.com - Discussions start here! Lines: 53 Message-ID: <36812dbc.4852246@news.vip.net> References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <$spam$-2212981847460001@user-37ka4is.dialup.mindspring.com> <36804d31.32040580@news.vip.net> <3680F51C.29B62531@danet.com> Reply-To: genew@vip.net NNTP-Posting-Host: 204.209.212.49 X-Trace: 914443409 A01OARAUVD431CCD1C usenet80.supernews.com X-Complaints-To: newsabuse@remarQ.com X-Newsreader: Forte Free Agent 1.1/32.230 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!logbridge.uoregon.edu!Supernews73!supernews.com!Supernews69!not-for-mail "J. Benz" wrote: >Gene Wirchenko wrote: > >> $spam$@orion-com.com (Joe Thompson) wrote: >> >> >In article , >> >hnsngr@sirius.com (Ron Hunsinger) wrote: >> > >> >> One of my favorites is the following: >> >> >> >> 100 FOR X = 1 TO 10000 >> >> 110 IF 1/X <> 1/X THEN PRINT X >> >> 120 NEXT X >> >> >> >> It's hard to imagine how 1/X could ever NOT be equal to itself, yet this >> >> program will print out a distressingly large number of values of X for >> >> which it isn't. >> >> Comparing floating point values for exact equality or exact >> inequality is poor programming practice. See Peter Seebach's post as >> well. > >I've seen that post, and I'm familiar with the reasons why you don't compare FP >for equality - but I am also amazed that this particular instance does not >compare equally. Floating point error *should* be deterministic even when it >gives you the wrong answer - in other words, the *same* error should be made >twice here, resulting in equally wrong values. One would not expect the "*should*"? Why? If you want code optimized for speed and you are not using the precision fully, the compare being off by a bit is fine. Peter Seebach has already posted why it can happen the way it does. >machine to insert some random factor into a simple divide, or to evaluate these >two 1/X's through different code paths. It might be instructive if Mr. >Hunsinger could post what the two values of 1/X actually evaluate to when >they're NOT equal. Poor programming practice or not, it's still pretty >amazing. Comparing for exact equality is a well-known gotcha of floating point. You've got to learn the rules before you play. Sincerely, Gene Wirchenko Computerese Irregular Verb Conjugation: I have preferences. You have biases. He/She has prejudices. ###### From: rogblake3@hot4mail.com (Roger Blake) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 23 Dec 1998 20:47:00 GMT Organization: Ministry of Silly Walks Lines: 11 Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> NNTP-Posting-Host: unix3.netaxs.com X-No-Archive: Yes X-Newsreader: slrn (0.9.4.3 UNIX) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newshub.northeast.verio.net!news-xfer.newsread.com!netaxs.com!newsread.com!newshog.newsread.com!netaxs.newsread.com!rogblake3 On 22 Dec 1998 19:45:14 GMT, Nick S Bensema wrote: >the Microsoft copyright message; just about every personal computer >on the face of the Earth after a certain date has a Microsoft >copyright message somewhere in the manuals or the ROM itself; even Earliest I've personally seen was on a late'70s 8080-based personal computer called the "Interact" -- it came with a cassette-loaded Basic interpreter that upon startup proudly announced: "Copyright 1977 -- Microsoft." -- Roger Blake (remove numbers from return address for e-mail) ###### Newsgroups: alt.folklore.computers From: "Ralph Wade Phillips" Subject: Re: "Since all of you steal your software..." X-Nntp-Posting-Host: zs150050.shrv.bna.boeing.com Message-ID: X-Mimeole: Produced By Microsoft MimeOLE V4.72.3110.3 Lines: 39 Sender: nntp@news.boeing.com (Boeing NNTP News Access) Organization: The Boeing Company X-Newsreader: Microsoft Outlook Express 4.72.3110.5 References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> Date: Wed, 23 Dec 1998 20:57:41 GMT Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!logbridge.uoregon.edu!netnews1.nw.verio.net!netnews.nwnet.net!xyzzy!not-for-mail HI there! D. Peschel wrote in message <75p27m$10u0$1@nntp1.u.washington.edu>... (stuff about other Microsoft BASICs deleted) > >C-64: I almost sure it wasn't. Commodore had been writing their BASICs for >some time. > Erm - No, Microsoft was writting BASIC for the Commodore since LONG before the C64. Matter of fact, the original PETBasic was Microsoft 4K BASIC, with Commodore specific extensions (think AppleSOFT for a better known version of suchlike.) >Apple: There were two dialects. Integer BASIC (written and hand-assembled >by Steve Wozniak) is fast and simple, has some nice features, and has only >one minor bug I know of. (There's a *** TOO MANY PARENS ERR message, but >using too many parentheses gives you another error, so the correct one never >shows up. This can be fixed by changing one byte.) AppleSoft (written and >copyrighted by MS, patched by Apple to handle lower-case) is slow and >complicated, has floating-point and strings but lacks some of the >convenience of Integer BASIC, and has many bugs and anomalies. Apple didn't patch BASIC to handle lower case - they patched their keyboard routine! BASIC, for some wonky reason, even on the earliest Apple ][+ machines, would properly handle mixed case commands (by parsing them to upper case before tokenizing, I think), but the stock Apple ][+ keyboard handler wouldn't. RwP ###### From: dpeschel@u.washington.edu (D. Peschel) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 23 Dec 1998 21:23:25 GMT Organization: University of Washington, Seattle Lines: 27 Message-ID: <75rn0d$no6$1@nntp1.u.washington.edu> References: <367F1C8E.5300C48C@jkmicro.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> NNTP-Posting-Host: saul6.u.washington.edu X-Trace: nntp1.u.washington.edu 914448205 24326 (None) 140.142.17.35 X-Complaints-To: help@cac.washington.edu NNTP-Posting-User: dpeschel Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.cwix.com!192.220.250.21!netnews1.nw.verio.net!netnews.nwnet.net!news.u.washington.edu!dpeschel In article , Ralph Wade Phillips wrote: >>C-64: I almost sure it wasn't. Commodore had been writing their BASICs >for >>some time. > Erm - No, Microsoft was writting BASIC for the Commodore since LONG >before the C64. Matter of fact, the original PETBasic was Microsoft 4K >BASIC, with Commodore specific extensions (think AppleSOFT for a better >known version of suchlike.) Well, I stand corrected. I thought Commodore displayed their version numbers conspicuously, though? And Commodore FAQ's talk about the differences between BASIC 2.0, 4.0, 7.0, etc. Did Commodore hire Microsoft and then call it Commodore's work? > Apple didn't patch BASIC to handle lower case - they patched their >keyboard routine! BASIC, for some wonky reason, even on the earliest >Apple ][+ machines, would properly handle mixed case commands (by parsing >them to upper case before tokenizing, I think), but the stock Apple ][+ >keyboard handler wouldn't. So how come DOS refused to handle lower-case commands even after the key- board routine had been patched? -- Derek ###### Newsgroups: alt.folklore.computers From: eric@fudge.uchicago.edu (Eric Fischer) Subject: Re: "Since all of you steal your software..." X-Nntp-Posting-Host: fudge.uchicago.edu Message-ID: Sender: news@midway.uchicago.edu (News Administrator) X-Newsposter: Pnews 4.0-test51 (15 Jan 97) Organization: The University of Chicago References: <367F1C8E.5300C48C@jkmicro.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> Date: Wed, 23 Dec 1998 21:43:28 GMT Lines: 18 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!howland.erols.net!vixen.cso.uiuc.edu!uchinews!not-for-mail Ralph Wade Phillips wrote: > Apple didn't patch BASIC to handle lower case - they patched their > keyboard routine! BASIC, for some wonky reason, even on the earliest > Apple ][+ machines, would properly handle mixed case commands (by parsing > them to upper case before tokenizing, I think), but the stock Apple ][+ > keyboard handler wouldn't. Maybe the BASIC in the II plus could handle lowercase, but the (pre-Enhanced) IIe couldn't. The 80 Column Card firmware had a nice trick, though, where you could get it to automatically convert everything you typed to uppercase except for things in quotes, which stayed lowercase. I think the sequence to trigger this was ESC-E, but my memory may be developing errors, since the last time I did any substantial programming on an unenhanced IIe was around 1988. eric ###### From: hnsngr@sirius.com (Ron Hunsinger) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Wed, 23 Dec 1998 18:00:41 -0800 Organization: ErsteSoft Lines: 87 Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <75p27m$10u0$1@nntp1.u.washington.edu> <$spam$-2212981847460001@user-37ka4is.dialup.mindspring.com> <$spam$-2212982142080001@user-37ka4jk.dialup.mindspring.com> NNTP-Posting-Host: ppp-asok05--017.sirius.net Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Newsreader: Yet Another NewsWatcher 2.3.1 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news.belnet.be!newspump.monmouth.com!newspeer.monmouth.com!newsfeed.berkeley.edu!news2.best.com!news1.best.com!newshub.sirius.com!newsfiler.sirius.com!hnsngr In article <$spam$-2212982142080001@user-37ka4jk.dialup.mindspring.com>, $spam$@orion-com.com (Joe Thompson) wrote: > In article , seebs@plethora.net (Peter > Seebach) wrote: > > > (1/x) != (1/x) > > > > happens as > > put 1 and x in FP registers > > do operation to higher precision intermediate representation > > store result, truncating > > do operation to higher precision intermediate representation > > pull stored result and compare > > > > Not always, but enough to make it useless. That's exactly what they did. The Applesoft interpreter simulates a floating point accumulator (the 6502 doesn't have a real one) that has a little bit more precision than their standard floating point format. Since the accumulator can hold only one value at a time, intermediate values have to be pushed onto a stack. They round to the shorter "standard" precision before pushing. All binary operations work on two operands, the left operand being popped from the stack, and the right operand being already in tha accumulator. So the sequence is almost exactly as you said (the principal difference being that there's only one (pseudo)register): put 1 into the accumulator (expanding it to 1.0) push it onto the stack put X into the accumulator divide [TOS divided by AC -> AC], producing a high-precision quotient push the result onto the stack (rounding) put 1 into the accumulator (expanding it to 1.0) push it onto the stack put X into the accumulator divide [TOS divided by AC -> AC], producing a high-precision quotient compare [TOS vs AC] for inequality, putting boolean result in AC The problem is that, when you get to the compare, the two operands have different precisions. > You'd think it would be a standard to ensure that if two equal expressions > are compared, they are found equal. i.e., in your case, the untruncated > result should not be compared to the truncated one. And really the > truncated one should not be stored at a lower precision in the first place > I'd think. -- Joe You're right that two identical expressions should always compare equal. Because of rounding, it's dangerous to expect normal algebraic rules, such as the associative and distributive laws, to apply to computer arithmetic. That's the reason that it's usually not a good idea to compare floating point values for equality. But that doesn't apply here. However floating point is implemented, it should be completely deterministic. The same expression evaluated twice should produce the same value both times. And a value should compare equal to itself (except when it's explicitly defined not to, as with NaNs in IEEE arithmetic). The error, in this case, was that both operands of the compare should have been rounded to the same precision before doing the compare. (The extra information in the accumulator wasn't so much a longer mantissa as a guard digit, intended to provide proper rounding, and protect against loss of precision in a renormalization operation if the lead digit of the mantissa cancelled in a subtraction. Being a guard digit, it shouldn't have been retained between operations. It's there to enable proper rounding - it should have been used for rounding, not comparing.) It's a common mistake in floating point subroutines. Implementors often fall prey to the temptation to retain extra precision as long as possible, in the false belief that this makes the arithmetic more accurate (and in some cases faster). Actually, what it does is make the arithmetic less predictable. As a defense, progrommers are required to add extra code to compensate, so that programs using the supposedly faster arithmetic wind up actually being slower. But the floating point routines in AppleSoft were written by Randy Wiggington, who was still in high school at the time. He didn't have the background to warn him off from this pitfall. He's in good company - lots of others have made this mistake - but it's still a mistake. -Ron Hunsinger ###### From: hnsngr@sirius.com (Ron Hunsinger) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Wed, 23 Dec 1998 18:18:09 -0800 Organization: ErsteSoft Lines: 27 Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <$spam$-2212981847460001@user-37ka4is.dialup.mindspring.com> <36804d31.32040580@news.vip.net> NNTP-Posting-Host: ppp-asok05--017.sirius.net Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Newsreader: Yet Another NewsWatcher 2.3.1 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!news.maxwell.syr.edu!news1.best.com!newshub.sirius.com!newsfiler.sirius.com!hnsngr In article <36804d31.32040580@news.vip.net>, genew@vip.net wrote: > Comparing floating point values for exact equality or exact > inequality is poor programming practice. See Peter Seebach's post as > well. There's nothing wrong with comparing floating point values. The only error is expecting common arithmetic equivalancies to apply to floating point arithmetic. In particular, the associative law does not hold, the distributive law does not hold, the reciprocal of a reciprocal is not always the original number, the square root of a square is not always the absolute value. Most of these laws almost hold. The discrepancy is always there, but usually isn't noticed until you get to a compare. And at that point, the compare winds up getting blamed, when actually the error is elsewhere. For example, the loop: for (double x = 0.0; x != 1.0; x += 0.1) { /* ... */ ) is liable to be infinite. The mistake isn't in the compare x != 0.0, as so many writers will claim. The mistake is assuming that 10*(1/10) == 1, as it would be is multiplication were associative. -Ron Hunsinger ###### From: william.hamblen@nashville.com (William Hamblen) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Wed, 23 Dec 1998 20:46:45 -0600 Organization: Posted via RemarQ, http://www.remarQ.com - Discussions start here! Lines: 8 Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> Reply-To: william.hamblen@nashville.com NNTP-Posting-Host: 207.65.180.128 X-Trace: 914493729 4TJCV727NB480CF41C usenet80.supernews.com X-Complaints-To: newsabuse@remarQ.com X-Newsreader: TIN [version 1.2 PL2] Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.berkeley.edu!remarQ73!supernews.com!Supernews69!william.hamblen David Wragg (dpw@doc.ic.ac.uk) wrote: : I have never heard of an MS APL. Did they ever get around to releasing : it, or was it just hyperbole on Bill's part? I don't remember ever seeing it myself. How much APL can you shoehorn into (at most) 64K? ###### From: john-bean@easynet.co.uk (John Bean) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Wed, 23 Dec 1998 22:36:39 GMT Organization: [posted via Easynet Ltd] Lines: 17 Message-ID: <36826dda.7989967@news.easynet.co.uk> References: <367F1C8E.5300C48C@jkmicro.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <75rn0d$no6$1@nntp1.u.washington.edu> NNTP-Posting-Host: john-bean.easynet.co.uk Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: quince.news.easynet.net 914452336 54904 212.212.74.53 (23 Dec 1998 22:32:16 GMT) X-Complaints-To: abuse@easynet.net NNTP-Posting-Date: 23 Dec 1998 22:32:16 GMT X-Newsreader: Forte Agent 1.5/32.452 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!News.Amsterdam.UnisourceCS!news.freedom2surf.net!easynet-uk!quince.news.easynet.net!not-for-mail On 23 Dec 1998 21:23:25 GMT, dpeschel@u.washington.edu (D. Peschel) wrote: >Well, I stand corrected. I thought Commodore displayed their version >numbers conspicuously, though? And Commodore FAQ's talk about the >differences between BASIC 2.0, 4.0, 7.0, etc. Did Commodore hire Microsoft >and then call it Commodore's work? Hence the "Microsoft Joke" in the PET's ROM... WAIT 6502,100 was the normal invocation IIRC (its been a long time!) -- Regards John Bean ###### From: pg@sff.net (Paul Guertin) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Thu, 24 Dec 1998 07:22:28 GMT Organization: Amalgamated Karma Lines: 63 Message-ID: <3681ebb1.12707449@news.newsguy.com> References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> NNTP-Posting-Host: p-720.newsdawg.com X-Newsreader: Forte Free Agent 1.11/32.235 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.direct.ca!pln-w!spln!extra.newsguy.com!newsp.newsguy.com!news3 On Tue, 22 Dec 1998 15:16:02 -0800, hnsngr@sirius.com (Ron Hunsinger) wrote: [Bugs in Applesoft] > > One of my favorites is the following: > > 100 FOR X = 1 TO 10000 > 110 IF 1/X <> 1/X THEN PRINT X > 120 NEXT X > > It's hard to imagine how 1/X could ever NOT be equal to itself, yet this > program will print out a distressingly large number of values of X for > which it isn't. Indeed. ]LIST 100 FOR X = 1 TO 10000 110 IF 1 / X < > 1 / X THEN PRINT X 120 NEXT X ]RUN 603 683 1206 1366 2049 2412 2732 3091 4055 4097 4098 4765 4824 5464 6147 6182 7361 8110 8194 8196 9273 9530 9648 ] For the audience: can you guess from that list what the bug is without looking at the Applesoft code? One of my favorite Applesoft quirks is the way PRINT allows floating-point numbers to have more than one decimal point. This allows one to do arithmetic on software revision numbers. ]PRINT 6.2.2 * 5.1 6.21.02 Paul Guertin pg@sff.net ###### From: huge@nospam.demon.co.uk (Hugh Davies) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 24 Dec 1998 11:51:47 GMT Organization: Piglet's Pickles and Preserves Message-ID: <75t9sj$cu6@axalotl.demon.co.uk> References: Reply-To: huge@nospam.demon.co.uk NNTP-Posting-Host: axalotl.demon.co.uk X-NNTP-Posting-Host: axalotl.demon.co.uk:158.152.24.143 X-Trace: news.demon.co.uk 914505597 nnrp-08:21157 NO-IDENT axalotl.demon.co.uk:158.152.24.143 X-Complaints-To: abuse@demon.net x-no-archive: yes Lines: 18 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!news.maxwell.syr.edu!diablo.theplanet.net!dispose.news.demon.net!demon!news.demon.co.uk!demon!axalotl.demon.co.uk!axalotl!usenet In article , william.hamblen@nashville.com (William Hamblen) writes: >David Wragg (dpw@doc.ic.ac.uk) wrote: > >: I have never heard of an MS APL. Did they ever get around to releasing >: it, or was it just hyperbole on Bill's part? > >I don't remember ever seeing it myself. How much APL can you shoehorn >into (at most) 64K? > Quite a lot. I have an APL for my Xerox 820/II CP/M machine. -- "The road to Paradise is through Intercourse." The uk.transport FAQ; http://www.axalotl.demon.co.uk/transport/FAQ.html [Substitute "axalotl" for "nospam" to email me] ###### From: genew@vip.net (Gene Wirchenko) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Thu, 24 Dec 1998 16:58:52 GMT Organization: Posted via RemarQ, http://www.remarQ.com - Discussions start here! Lines: 48 Message-ID: <3681ebe1.6813793@news.vip.net> References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <$spam$-2212981847460001@user-37ka4is.dialup.mindspring.com> <36804d31.32040580@news.vip.net> Reply-To: genew@vip.net NNTP-Posting-Host: 204.209.212.15 X-Trace: 914518582 A01OARAUVD4F CCD1C usenet80.supernews.com X-Complaints-To: newsabuse@remarQ.com X-Newsreader: Forte Free Agent 1.1/32.230 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.berkeley.edu!remarQ73!supernews.com!Supernews69!not-for-mail hnsngr@sirius.com (Ron Hunsinger) wrote: >In article <36804d31.32040580@news.vip.net>, genew@vip.net wrote: > >> Comparing floating point values for exact equality or exact >> inequality is poor programming practice. See Peter Seebach's post as >> well. > >There's nothing wrong with comparing floating point values. Provided you aren't comparing for exact equality. >The only error is expecting common arithmetic equivalancies to apply to >floating point arithmetic. In particular, the associative law does not >hold, the distributive law does not hold, the reciprocal of a reciprocal is >not always the original number, the square root of a square is not always >the absolute value. > >Most of these laws almost hold. The discrepancy is always there, but >usually isn't noticed until you get to a compare. And at that point, the >compare winds up getting blamed, when actually the error is elsewhere. > >For example, the loop: > > for (double x = 0.0; x != 1.0; x += 0.1) { /* ... */ ) > >is liable to be infinite. The mistake isn't in the compare x != 0.0, as so >many writers will claim. The mistake is assuming that 10*(1/10) == 1, as it >would be is multiplication were associative. I would say it is. The mistaken assumption is being made BOTH in the addition and the compare. I suggest that the compare include a delta, say abs(x-1.0)<0.01 I grant that this is ugly, but if you were doing it much you could (in C) code a macro to pretty it up and invoke like fcomp(x,1.0,.01) My C isn't that good. Would that macro be #define fcomp(f1,f2,delta) abs((f1)-(f2))<(delta) Sincerely, Gene Wirchenko Computerese Irregular Verb Conjugation: I have preferences. You have biases. He/She has prejudices. ###### From: jepler@craie.inetnebr.com (Jeff Epler) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 24 Dec 1998 18:03:28 GMT Organization: Internet Nebraska Lines: 12 Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <$spam$-2212981847460001@user-37ka4is.dialup.mindspring.com> <36804d31.32040580@news.vip.net> NNTP-Posting-Host: lin-pm2-008.inetnebr.com X-Newsreader: slrn (0.9.4.3 UNIX) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.enteract.com!newsfeed.inetnebr.com!news.inetnebr.com!jepler On Wed, 23 Dec 1998 18:18:09 -0800, Ron Hunsinger wrote: >is liable to be infinite. The mistake isn't in the compare x != 0.0, as so >many writers will claim. The mistake is assuming that 10*(1/10) == 1, as it >would be is multiplication were associative. Heck, you're assuming that (1/10)+(1/10)+(1/10)+(1/10)+(1/10)+(1/10)+(1/10)+(1/10)+(1/10)+(1/10) == 10*(1/10) == 1 all of which are questionable. Jeff ###### From: "Thierry Schembri" Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Thu, 24 Dec 1998 19:07:13 +0100 Organization: ImagiNET Lines: 17 Message-ID: <75tuq1$n3e$1@news.imaginet.fr> References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <36803E99.7E9B44A3@plano.net> NNTP-Posting-Host: 195.68.9.167 X-Newsreader: Microsoft Outlook Express 4.72.3110.5 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3110.3 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!uu.fr!imaginet.net!imaginet.fr!usenet >Well, that is *mostly* accurate...Microsoft got hacked off at the Tramiel >family that bought out Atari and came out the the Atari ST line of 68000 >computers. Consequently, M-suck did *not* produce a single piece of software >for the Atari ST...no BASIC, no word processor, no spreadsheet, no nothing!!! >Gee, how fortunate for the Atari ST users!!! Actually, it's not exact, Microsoft worked for a while on an Atari ST version of the WORD word processing. It was a limited version known under the name 'Write'. I don't know if it was marketed or not. ###### Sender: eric@ruckus.brouhaha.com From: Eric Smith Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." References: <367F1C8E.5300C48C@jkmicro.com> <75p27m$10u0$1@nntp1.u.washington.edu> <$spam$-2212981847460001@user-37ka4is.dialup.mindspring.com> <$spam$-2212982142080001@user-37ka4jk.dialup.mindspring.com> X-Disclaimer: Everything I write is false. Organization: Eric Conspiracy Secret Labs X-Eric-Conspiracy: There is no conspiracy. Date: 24 Dec 1998 13:37:50 -0800 Message-ID: Lines: 16 X-Newsreader: Gnus v5.5/Emacs 20.2 NNTP-Posting-Host: ruckus.brouhaha.com X-Trace: 24 Dec 1998 13:43:33 -0800, ruckus.brouhaha.com Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news.belnet.be!newspump.monmouth.com!newspeer.monmouth.com!newsfeed.berkeley.edu!enews.sgi.com!news.sgi.com!news.spies.com!ruckus.brouhaha.com hnsngr@sirius.com (Ron Hunsinger) writes: > But the floating point routines in AppleSoft were written by Randy > Wiggington, who was still in high school at the time. He didn't have the > background to warn him off from this pitfall. He's in good company - lots > of others have made this mistake - but it's still a mistake. Ron, Are you sure that Randy wrote the FP routines in AppleSoft? My disassembly looks almost identical to the ones in the source code for Microsoft BASIC for the Commodore PET and Ohio Scientific. I don't doubt that Randy wrote *some* floating point routines. Weren't there some in the Integer BASIC ROMs (but unused by Integer BASIC)? Eric ###### From: "Jeffrey S. Dutky" Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Thu, 24 Dec 1998 14:41:09 -0500 Organization: Bell Atlantic Internet Solutions Lines: 31 Message-ID: <368298D3.4FA6@bellatlantic.net> References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <$spam$-2212981847460001@user-37ka4is.dialup.mindspring.com> <36804d31.32040580@news.vip.net> Reply-To: dutky@bellatlantic.net NNTP-Posting-Host: client-151-200-124-228.bellatlantic.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.04Gold (Macintosh; I; PPC) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!nntp.abs.net!outfeed1.news.cais.net!in1.nntp.cais.net!world2.bellatlantic.net!news Jeff Epler wrote: > > Ron Hunsinger wrote: > > is liable to be infinite. The mistake isn't in the compare > > x != 0.0, as so many writers will claim. The mistake is > > assuming that 10*(1/10) == 1, as it would be is multiplication > > were associative. > > Heck, you're assuming that > (1/10)+(1/10)+(1/10)+(1/10)+(1/10)+(1/10)+(1/10)+(1/10)+(1/10)+(1/10) > == 10*(1/10) > == 1 > all of which are questionable. The real questionable part is the assumption that float(1) divided by float(10) is equal to 0.1, which is only true in the right repre- sentation. If we are dealing with binary floating point numbers then 1/10 actaully equals something like .9999997, depending on the width of the mantissa. In this circumstance, no matter how you formulate the sum, the rules of arithmetic won't hold. This is the same problem you have with the sum 1/3+1/3+1/3 when you do it by hand and require that all decimals be terminating and only have N digits in their representation. The problem is not that the rules of arithmetic don't apply, but that they only apply selectively! For certain values of M and N, the sum from 1 to M of (1/N) == M*(1/N) == 1 exactly, for others it doesn't. - Jeff Dutky ###### Message-ID: <3682D755.E83435CF@net66.com> From: Mark Statzer Organization: Helena Handbasket X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 29 NNTP-Posting-Host: 208.214.226.105 X-Trace: news15.ispnews.com 914544486 208.214.226.105 (Thu, 24 Dec 1998 19:08:06 EDT) NNTP-Posting-Date: Thu, 24 Dec 1998 19:08:06 EDT Date: Thu, 24 Dec 1998 18:07:49 -0600 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!hub1.ispnews.com!news15.ispnews.com.POSTED!not-for-mail TheCentralScrutinizer.104@pobox.com wrote: > > On Tue, 22 Dec 1998 15:16:02 -0800, Ron Hunsinger wrote: > > > >One of my favorites is the following: > > > > 100 FOR X = 1 TO 10000 > > 110 IF 1/X <> 1/X THEN PRINT X > > 120 NEXT X > ... > > My favorite when visiting a radio shack store was: > > 10 for x=1 to 32000 > 20 poke x,0 > 30 next x > > jumping jack crash! The *best* one was; 10 PRINT CHR$(RND(255));:GOTO 10 ...ran continuous gibberish all over the screen. Kicked in & out of 40 column, too... Statz ###### From: jsavard@tenMAPSONeerf.edmonton.ab.ca (John Savard) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Thu, 24 Dec 1998 20:39:59 GMT Organization: Videotron Communications Ltd. Lines: 18 Message-ID: <3682a64d.14408925@news.prosurfr.com> References: <367F1C8E.5300C48C@jkmicro.com> <$spam$-2112980049160001@user-37ka4oj.dialup.mindspring.com> <75lttd$pm2@boofura.swcp.com> NNTP-Posting-Host: c9169-002.prosurfr.com X-Newsreader: Forte Free Agent 1.11/32.235 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.direct.ca!news.insinc.net!stimpy.cal.sfl.net!news.videotron.ab.ca!not-for-mail eric@fudge.uchicago.edu (Eric Fischer) wrote, in part: >In article <75lttd$pm2@boofura.swcp.com>, Taki Kogoma wrote: >> What was the last program Gates actually sat down and ground out the >> code for? >In his interview in Susan Lammers's 1986 book _Programmers at Work_ he >says it was the ROM for the TRS-80 Model 100 laptop computer, cowritten >with Jey Suzuki. a) Hey, I own one of those! (I bought it for $15 at a thrift shop, not long ago, and thought I got a really good deal...) b) One of these days, somebody will get the idea of making a $29.95 pocket organizer that is as useful as that was... John Savard http://www.freenet.edmonton.ab.ca/~jsavard/index.html ###### From: jsavard@tenMAPSONeerf.edmonton.ab.ca (John Savard) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Thu, 24 Dec 1998 20:43:19 GMT Organization: Videotron Communications Ltd. Lines: 11 Message-ID: <3682a70c.14600217@news.prosurfr.com> References: <367F1C8E.5300C48C@jkmicro.com> NNTP-Posting-Host: c9169-002.prosurfr.com X-Newsreader: Forte Free Agent 1.11/32.235 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.direct.ca!news.insinc.net!stimpy.cal.sfl.net!news.videotron.ab.ca!not-for-mail David Wragg wrote, in part: >I have never heard of an MS APL. Did they ever get around to releasing >it, or was it just hyperbole on Bill's part? No, they never did. There are other APL products for the IBM PC, although I don't know offhand if there ever was an 8080 APL. There might well have been one of a sort that ran under CP/M. John Savard http://www.freenet.edmonton.ab.ca/~jsavard/index.html ###### From: Luis Fernandes Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 24 Dec 1998 23:41:40 -0500 Organization: Ryerson Polytechnic University Lines: 7 Sender: elf@gemini Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <$spam$-2212981847460001@user-37ka4is.dialup.mindspring.com> <36804d31.32040580@news.vip.net> <3680F51C.29B62531@danet.com> NNTP-Posting-Host: sulfur.ee.ryerson.ca X-Newsreader: Gnus v5.6.42/Emacs 19.34 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!news.maxwell.syr.edu!sunqbc.risq.qc.ca!torn!news.ryerson.ca!not-for-mail Re: floating point, you might want to have a look at: http://www.cs.berkeley.edu/~darcy/Research/index.html Mr. Darcy visited Ryerson and gave the talk titled "Evolving Java's Floating Point Support: The Good, the Bad, and the Ugly". ###### From: lisard@zetnet.co.uk Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 25 Dec 1998 01:15:16 GMT Lines: 19 Message-ID: <75uov4$dcg$1@roch.zetnet.co.uk> References: <36803CFC.F70326E3@plano.net> NNTP-Posting-Host: man-199.dialup.zetnet.co.uk X-Trace: roch.zetnet.co.uk 914548516 13712 194.247.40.252 (25 Dec 1998 01:15:16 GMT) NNTP-Posting-Date: 25 Dec 1998 01:15:16 GMT X-Everything: Net-Tamer V 1.08X Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news.belnet.be!newsfeed.wirehub.nl!ayres.ftech.net!news.ftech.net!peer.news.zetnet.net!zetnet.co.uk!not-for-mail On 1998-12-23 richmond@plano.net said: :Nick S Bensema wrote: :> [snip...] [snip...] [snip...] :> I'd really like to get my hands on one of those machines... they :> seem like they'd be neat to lug around and take notes on, but I :> have a feeling the going rate for a working model 100 is probably :> more than that for a 386 laptop, which I could have just as much :> fun with. :Check on ebay and on for Model 100's for sale. :You might be surprised at what price you can have one for your very :own. I believe it can be had for less that $100 US. I do *not* :know what the going rate is for 386 laptops, though . . . Less than $100 sounds about right to me. :> -- Communa (lisard@zetnet.co.uk) -- you know soft spoken changes nothing ###### From: lisard@zetnet.co.uk Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 25 Dec 1998 01:15:21 GMT Message-ID: <75uov9$dcg$2@roch.zetnet.co.uk> References: NNTP-Posting-Host: man-199.dialup.zetnet.co.uk X-Trace: roch.zetnet.co.uk 914548521 13712 194.247.40.252 (25 Dec 1998 01:15:21 GMT) NNTP-Posting-Date: 25 Dec 1998 01:15:21 GMT X-Everything: Net-Tamer V 1.08X Lines: 25 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!news-feed1.eu.concert.net!btnet-peer!btnet!dispose.news.demon.net!demon!peer.news.zetnet.net!zetnet.co.uk!not-for-mail On 1998-12-22 hnsngr@sirius.com(RonHunsinger) said: :One of my favorites is the following: :100 FOR X = 1 TO 10000 :110 IF 1/X <> 1/X THEN PRINT X :120 NEXT X :It's hard to imagine how 1/X could ever NOT be equal to itself, yet :this program will print out a distressingly large number of values :of X for which it isn't. :I came across this one from the inside out. I was disassembling the :ROM, and while reading the code to evaluate expressions I found :some that made me splutter "But... but... if they do it that way, :then...". I wrote the above test program, and sure enough they did. Tee hee. This is one of the reasons I don't like floats. QL SuperBASIC had a rather nifty function, though, that would get around a fair number of these problems. It had an "approximately equal" comparison operator, which would return TRUE if two floats differed by only one digit's worth of precision or two strings differed only in case. -- Communa (lisard@zetnet.co.uk) -- you know soft spoken changes nothing ###### From: Kin Hoong CHUNG Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 25 Dec 1998 09:07:34 GMT Organization: University of New South Wales Lines: 25 Message-ID: <75vkkm$9jr$2@mirv.unsw.edu.au> References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> NNTP-Posting-Host: alpha.maths.unsw.edu.au User-Agent: tin/pre-1.4-980618 (UNIX) (OSF1/V4.0 (alpha)) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.cwix.com!139.130.250.2!intgwpad.nntp.telstra.net!news1.optus.net.au!optus!news.usyd.edu.au!unsw.edu.au!not-for-mail Nick S Bensema wrote: : In article <75oe9l$b6$1@eiffel.swec.com>, : Carl R. Friend wrote: :> :>Nick S Bensema wrote in message <75ngp8$d2s$1@nnrp02.primenet.com>... :>> :>>Here's a fun exercise... ask those who have owned the Model 100 what :>>was really great about that old machine, and then tell them that Bill :>>Gates wrote the ROM in it. :> :> Usually you don't need to tell them. When the machine first comes :>up it "proudly" displays the Microsoft copyright message. Even with- :>out that message you can tell it's Mickeysoft Inside -- if you really :>push the machine hard it runs slower and slower as the garbage collect :>logic gets whacked. Eventually you have to push the reset button on :>the back beacuse it can take several seconds to recognise a keystroke. : Yipes.... that's so Timex-Sinclairesque. But I'm not surprised at Well, it has something that _few_ modern laptops have---a nice full-travel (if I recall correctly) keyboard. Merry Christmas, Kin Hoong ###### From: pg@sff.net (Paul Guertin) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Fri, 25 Dec 1998 10:04:48 GMT Organization: Amalgamated Karma Lines: 12 Message-ID: <36832117.7842376@news.newsguy.com> References: <75uov9$dcg$2@roch.zetnet.co.uk> NNTP-Posting-Host: p-123.newsdawg.com X-Newsreader: Forte Free Agent 1.11/32.235 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!logbridge.uoregon.edu!pln-w!spln!extra.newsguy.com!newsp.newsguy.com!news3 On 25 Dec 1998 01:15:21 GMT, lisard@zetnet.co.uk wrote: > QL SuperBASIC had a rather nifty function, though, that would get around > a fair number of these problems. It had an "approximately equal" > comparison operator Iverson's J programming language (a modern, ASCIIfied version of APL) does all equality comparisons this way, I believe. The tolerance is user-specifiable. Paul Guertin pg@sff.net ###### From: pg@sff.net (Paul Guertin) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Fri, 25 Dec 1998 10:04:49 GMT Organization: Amalgamated Karma Lines: 12 Message-ID: <368321e1.8044776@news.newsguy.com> References: <367F1C8E.5300C48C@jkmicro.com> <$spam$-2112980049160001@user-37ka4oj.dialup.mindspring.com> <75lttd$pm2@boofura.swcp.com> <75ngp8$d2s$1@nnrp02.primenet.com> <36803CFC.F70326E3@plano.net> NNTP-Posting-Host: p-124.newsdawg.com X-Newsreader: Forte Free Agent 1.11/32.235 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!logbridge.uoregon.edu!pln-w!spln!extra.newsguy.com!newsp.newsguy.com!news3 On Wed, 23 Dec 1998 00:44:44 +0000, Charles Richmond wrote: > Check on ebay and on for Model 100's for sale. You might be > surprised at what price you can have one for your very own. I believe it can > be had for less that $100 US. Data point: I saw a Model 100 with a $50 price tag at last year's Trenton Computer Fair. Paul Guertin pg@sff.net ###### From: Michael Black Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Fri, 25 Dec 1998 12:14:07 -0500 Organization: Communications Accessibles Montreal, Quebec Canada Lines: 27 Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <36803E99.7E9B44A3@plano.net> <75tuq1$n3e$1@news.imaginet.fr> NNTP-Posting-Host: stratus.cam.org Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII In-Reply-To: <75tuq1$n3e$1@news.imaginet.fr> Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!feeder.qis.net!sunqbc.risq.qc.ca!198.168.100.2!altitude!Stratus.CAM.ORG!blackm00 On Thu, 24 Dec 1998, Thierry Schembri wrote: > > >Well, that is *mostly* accurate...Microsoft got hacked off at the Tramiel > >family that bought out Atari and came out the the Atari ST line of 68000 > >computers. Consequently, M-suck did *not* produce a single piece of > software > >for the Atari ST...no BASIC, no word processor, no spreadsheet, no > nothing!!! > >Gee, how fortunate for the Atari ST users!!! > > > Actually, it's not exact, Microsoft worked for a while on an Atari ST > version of the WORD word processing. It was a limited version known under > the name 'Write'. I don't know if it was marketed or not. > I have a copy of "Write" for the Atari ST, so it did become a commercial product. I bought it at a clearance at a store getting out of the Atari business, for something like fifteen dollars. I don't have the manual handy to see what it says. The box clearly marks it as coming from Atari, but it is called "Microsoft Write". Michael ###### Message-ID: <36841195.4A0708D4@trailing-edge.com> From: Tim Shoppa Organization: Trailing Edge Technology X-Mailer: Mozilla 3.03Gold (X11; I; OpenVMS V7.0 DEC 3000 Model 300L) MIME-Version: 1.0 Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." References: <367F1C8E.5300C48C@jkmicro.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <761cva$n1c$4@nnrp02.primenet.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 26 Date: Fri, 25 Dec 1998 22:28:38 -0400 NNTP-Posting-Host: 198.232.144.27 X-Trace: audrey2.cais.com 914643383 198.232.144.27 (Fri, 25 Dec 1998 22:36:23 EDT) NNTP-Posting-Date: Fri, 25 Dec 1998 22:36:23 EDT Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.cwix.com!204.59.152.222!news-peer.gip.net!news.gsl.net!gip.net!news-peer1.sprintlink.net!news-backup-west.sprintlink.net!news.sprintlink.net!in1.nntp.cais.net!199.0.216.204.MISMATCH!audrey2.cais.com!not-for-mail Nick S Bensema wrote: > What bugged me about Apple BASIC was that NONE of the versions used the > up-arrow key for anything. Hmph. I'm looking at my Apple ][+ right now, and can't find the up-arrow key. Care to point me to it? > Commodore and Atari machines, including, I believe, the PET, used > a screen editor that let you move the cursor around and type > anywhere, and just parsed whatever line the cursor was on when you > hit RETURN. Even the Sinclair computers had something similar to > that, even if it was slow and unresponsive. I've only heard legends > about BBC BASIC, which many allege to be the greatest BASIC > interpreter of all time. But the Apple's BASIC didn't have anything > of the kind. As far as I knew, if you wanted to edit a line, you > had to re-type the entire line with the changes you wanted. The Apple ]['s editing scheme is actually far more versatile - you hit ESC, use the I-J-K-M keys to position the cursor over the start of the stuff you want, and then right-arrow over it. Using this method anything on the screen can be easily included in the input line. This is well-documented in the _Apple ][ Reference Manual_ that shipped with your ][ or ][+, Chapter 2, p. 34, "Escape Codes". Tim. ###### From: nickb@primenet.com (Nick S Bensema) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 26 Dec 1998 00:56:04 GMT Organization: PrImE NuT (602)864-1005 <--- <--- <--- Lines: 29 Message-ID: <761c74$n1c$3@nnrp02.primenet.com> References: <367F1C8E.5300C48C@jkmicro.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> NNTP-Posting-Host: usr02.primenet.com X-Complaints-To: abuse@globalcenter.net X-Posted-By: nickb@206.165.6.202 (nickb) X-Newsreader: trn 4.0-test58 (13 May 97) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!howland.erols.net!netnews.com!newspeer1.nac.net!nntp.primenet.com!news.primenet.com!not-for-mail In article , Eric Fischer wrote: > >The C64 BASIC was from Microsoft. The original Apple Integer BASIC >wasn't -- it was written by Steve Wozniak -- but Applesoft (floating >point) BASIC was another Microsoft product. The standard BASIC for >the Atari 400 and 800 wasn't from Microsoft, but a Microsoft version >was available as an option. I had that version, pretty much because it looked like it would be more fun to play with, and because there was this one book with a type-in program that used it. And it even used VARPTR and related functions to allocate font memory, and it seemed really convoluted at the time compared with finding the topmost 1K of memory and POKEing at it. >Texas Instruments, though, somehow managed >to avoid having any Microsoft BASIC available for its TI-99/4A. If that history-of-the-TI page is accurate, they managed that by making it impossible for anyone but TI to develop for the machine until five years after it came out. It still gets me how the TI couldn't even compete with the Vic-20. -- Nick Bensema 98-KUPD Red Card #710563 UIN: 2135445 ~~~~ ~~~~~~~ ~~~~~~~~~~~~~~~~~~~~ ###### From: nickb@primenet.com (Nick S Bensema) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 26 Dec 1998 01:08:58 GMT Organization: PrImE NuT (602)864-1005 <--- <--- <--- Lines: 30 Message-ID: <761cva$n1c$4@nnrp02.primenet.com> References: <367F1C8E.5300C48C@jkmicro.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> NNTP-Posting-Host: usr02.primenet.com X-Complaints-To: abuse@globalcenter.net X-Posted-By: nickb@206.165.6.202 (nickb) X-Newsreader: trn 4.0-test58 (13 May 97) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.cwix.com!206.165.3.11!nntp.primenet.com!news.primenet.com!not-for-mail In article <75p27m$10u0$1@nntp1.u.washington.edu>, D. Peschel wrote: > >Apple: There were two dialects. Integer BASIC (written and hand-assembled >by Steve Wozniak) is fast and simple, has some nice features, and has only >one minor bug I know of. (There's a *** TOO MANY PARENS ERR message, but >using too many parentheses gives you another error, so the correct one never >shows up. This can be fixed by changing one byte.) AppleSoft (written and >copyrighted by MS, patched by Apple to handle lower-case) is slow and >complicated, has floating-point and strings but lacks some of the >convenience of Integer BASIC, and has many bugs and anomalies. What bugged me about Apple BASIC was that NONE of the versions used the up-arrow key for anything. Commodore and Atari machines, including, I believe, the PET, used a screen editor that let you move the cursor around and type anywhere, and just parsed whatever line the cursor was on when you hit RETURN. Even the Sinclair computers had something similar to that, even if it was slow and unresponsive. I've only heard legends about BBC BASIC, which many allege to be the greatest BASIC interpreter of all time. But the Apple's BASIC didn't have anything of the kind. As far as I knew, if you wanted to edit a line, you had to re-type the entire line with the changes you wanted. -- Nick Bensema 98-KUPD Red Card #710563 UIN: 2135445 ~~~~ ~~~~~~~ ~~~~~~~~~~~~~~~~~~~~ ###### From: dpeschel@u.washington.edu (D. Peschel) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 26 Dec 1998 05:40:16 GMT Organization: University of Washington, Seattle Lines: 97 Message-ID: <761ss0$1bvg$1@nntp1.u.washington.edu> References: <367F1C8E.5300C48C@jkmicro.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <761cva$n1c$4@nnrp02.primenet.com> NNTP-Posting-Host: saul7.u.washington.edu X-Trace: nntp1.u.washington.edu 914650816 45040 (None) 140.142.17.39 X-Complaints-To: help@cac.washington.edu NNTP-Posting-User: dpeschel Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.cwix.com!192.220.250.21!netnews1.nw.verio.net!netnews.nwnet.net!news.u.washington.edu!dpeschel [Warning -- long post] In article <761cva$n1c$4@nnrp02.primenet.com>, Nick S Bensema wrote: >In article <75p27m$10u0$1@nntp1.u.washington.edu>, >D. Peschel wrote: >>Apple: There were two dialects. Integer BASIC (written and hand-assembled >What bugged me about Apple BASIC was that NONE of the versions used the >up-arrow key for anything. Up-arrow key? What up-arrow key? There was none until the //e and //c (unless someone added a home-built keyboard.) The Apple ][ keyboard can send most of the 32 control characters, most of the 64 upper-case-and-punctuation ASCII characters, and none of the 32 lower-case ASCII characters. (The exceptions involve [ \ _ and their associated control characters, except that Escape is available.) It has a left-arrow key which is the same as Ctrl-H (backspace) and a right- arrow key which is the same as Ctrl-U (? - I haven't seen that little quirk on any other computer). There are no up- or down-arrow keys. There is a ^ key but i hope that's not what you meant. On the //e and //c, the down-arrow key sends a Ctrl-J (linefeed). That moves the cursor down but is not very useful. The up-arrow key sends a Ctrl-K (vertical tab - some other machines work the same way) but, as you say, is ignored. Maybe Apple could have put something in, but by then the bonds of backward- compatibility were pretty strong! >Commodore and Atari machines, including, I believe, the PET, used >a screen editor that let you move the cursor around and type >anywhere, and just parsed whatever line the cursor was on when you >hit RETURN. Even the Sinclair computers had something similar to >that, even if it was slow and unresponsive. I've only heard legends >about BBC BASIC, which many allege to be the greatest BASIC >interpreter of all time. But the Apple's BASIC didn't have anything >of the kind. As far as I knew, if you wanted to edit a line, you >had to re-type the entire line with the changes you wanted. That's not true. The editing mechanism is clunky but it is there. The fundamental keyboard input routine works with a line (up to about 255 characters) and allows you to move left or right within a line, add characters to the end, and overtype characters in the middle. There's no insertion. When you hit Return, characters to the right of the cursor are erased and ignored. Add to this the sequences Esc-A, Esc-B, Esc-C, and Esc-D (which move the cursor up, down, left, or right, not necessarily in that order) and you can use a two-step process: 1) move the cursor around the screen with the escape sequences, 2) add characters to the input buffer by typing them or using the right arrow to copy them. By the way, I think those sequences move the cursor when they are output as well as when you type them in. A further refinement (in the Autostart ROM that came with later ]['s) lets you use Esc-I, J, K, M (a diamond pattern) to move the cursor. You don't need to press Esc every time you move the cursor one character, either! There were a few other frills (Esc-Ctrl-P clears the screen). Later machines added more frills. In a sense, the ][ originally borrowed its design from contemporary terminals. The design was rather weak (even compared to those terminals) but that's the way it goes. I think the single-line input model put great constraints on further changes. You're right about the "screen editor" approach on the Commodore and Atari. On the Apple, the screen is a record of past input lines. On the Commodore and Atari, the entire screen is made up of input lines. I don't know much about the Commodore. On the Atari, a line is up to 120 characters. You can move left/right/up/down within a line, use tab stops, delete characters, insert a signle space to put a character in, delete and insert lines, and do a few other things. The BBC is the ultimate refinement of the Apple approach. The BBC keeps track of a current input line, and I don't think you can use arbitary lines as input lines. On the Apple, the escape sequences and arrows do two things which are somewhat blurred: move the cursor around to old characters, and put new characters into the input and manipulate the input. On the BBC, the two jobs are clearly separated. It's kind of a neat mechanism, actually. By default, you're only dealing with the current input line (regardless of what's on the screen). You can erase characters from the end and that's about all. (I think there's a Delete key which the Apple doesn't have/use.) When you move the cursor with one of the arrow keys, it splits into TWO cursors. You move one around the screen with the arrow keys, and hit a special key (called COPY) to copy characters down to the input. Meanwhile, the other one is tracking the input. I'm not entirely sure what commands affect which cursor (if any) but it's a very clever idea. Seeing the cursor split is very impressive. I think I still like the screen-editor mentality better, however. -- Derek ###### From: pg@sff.net (Paul Guertin) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Sat, 26 Dec 1998 05:54:49 GMT Organization: Amalgamated Karma Lines: 76 Message-ID: <36845892.10633097@news.newsguy.com> References: <367F1C8E.5300C48C@jkmicro.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <761cva$n1c$4@nnrp02.primenet.com> NNTP-Posting-Host: p-512.newsdawg.com X-Newsreader: Forte Free Agent 1.11/32.235 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!logbridge.uoregon.edu!pln-w!spln!extra.newsguy.com!newsp.newsguy.com!news3 On 26 Dec 1998 01:08:58 GMT, nickb@primenet.com (Nick S Bensema) wrote: > What bugged me about Apple BASIC was that NONE of the versions used the > up-arrow key for anything. Not really. Starting with the Apple IIe (the first Apple II with up- and down-arrow keys), all four arrow keys could be used instead of IJKM to move the cursor in escape mode. Basically, when you typed ESC, you could move the cursor anywhere on the screen (well, in the current text window, if you're a purist) without BASIC "realizing" it. Then you typed ESC again and could use the right-arrow key to trace over characters. For example, if you just typed ]10 PRUNT "HELLO" ]_ (with the cursor where the underscore is), you could correct that line by typing ESC, up-arrow, up-arrow, ESC, right-arrow 5 times, I, right-arrow 10 times, return. BASIC would think that you just typed '10 PRINT "HELLO"'. You could delete characters by going back into ESC mode before tracing over them. Insertion was more difficult if there were no spaces you could use: you had to use the line above (or below), like this: ]10HCOLR=3:HPLOT0,0TO279,191 : REM SHOULD BE HCOLOR ]_ ESC, up-arrow, up-arrow, ESC, right-arrow 6 times, ESC, up-arrow, ESC, O, ESC, down-arrow, left-arrow, ESC, right-arrow until EOL, return. (Real hackers would use one of the ABCD codes instead of the last up-arrow to save one keypress, but I don't remember which one was "up".) You can imagine the flashbacks I had when I learned vi. I agree that line editing in Applesoft was a pain. That's why most people used Neil Konzen's PLE (Program Line Editor, subsequently expanded and sold by Beagle Bros. under the name GPLE (Global ~)), which was a combination line editor and macro package. With PLE loaded, you could edit any line by typing ^E followed by the line number. It had character insertion and deletion and was very comfortable to use. Also, you could map often-used strings to ESC combinations, so that you could type ESC 1 instead of "CATALOG,D1^M", and so on. My favorite BASIC programming environment was GPLE, Double-Take (LIST with two-way scrolling, variable cross-reference, hex/dec conversion, and a dozen other enhancements) and Pronto DOS (a patch to DOS 3.3 that made it nearly 3 times as fast). > Commodore and Atari machines, including, I believe, the PET, used > a screen editor that let you move the cursor around and type > anywhere, and just parsed whatever line the cursor was on when you > hit RETURN. I thought that behavior was really strange, when I first saw it on a Commodore 64, since it went against the "command line" model I was used to. Paul Guertin pg@sff.net ###### From: mattack@area.com (Matt Ackeret) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 26 Dec 1998 19:38:14 -0800 Organization: Area Systems in Mountain View, CA - http://www.area.com Lines: 27 Message-ID: <764a36$cg$1@vax.area.com> References: <367F1C8E.5300C48C@jkmicro.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <761cva$n1c$4@nnrp02.primenet.com> NNTP-Posting-Host: vax102.area.com X-Newsreader: trn 4.0-test62 (21 February 1998) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.direct.ca!news.he.net!nixon.area.com!vax.area.com!not-for-mail In article <761cva$n1c$4@nnrp02.primenet.com>, Nick S Bensema wrote: >What bugged me about Apple BASIC was that NONE of the versions used the >up-arrow key for anything. That's not BASIC's fault, that's the command interpreter's fault. Plus, on a //e (or is it enhanced //e?) or better, you can use the arrow keys in escape mode to move the cursor around... (as well as IJKM.. dang, one of the few things Woz did wrong. IJKL is so much easier to use repeatedly than IJKM, even if IJKM is a tiny bit more 'physically intuitive'). I just quit ProTERM for a minute on this GS and verified that escape works in BASIC.SYSTEM the way I expected. >of the kind. As far as I knew, if you wanted to edit a line, you >had to re-type the entire line with the changes you wanted. Nope. Use escape mode to move the cursor around, and move the cursor over previously-typed things in non-escape mode to copy characters, and move to another area of the screen to type new characters to insert. It's not as good as something like GPLE (Global Program Line Editor, by Beagle Bros), but you don't have to type the whole line. BTW, Byteworks just released a freeware version of GS BASIC. -- mattack@area.com ###### From: Dave Daniels Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Sat, 26 Dec 1998 19:53:43 GMT Organization: ArgoNet, but does not reflect its views Distribution: world Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <3682D755.E83435CF@net66.com> Reply-To: Dave Daniels NNTP-Posting-Host: useri020.uk.uudial.com X-Newsreader: NewsAgent 0.84 for RISC OS Lines: 30 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!colt.net!dispose.news.demon.net!demon!rill.news.pipex.net!pipex!bore.news.pipex.net!pipex!argonet.co.uk!argbq79 In article <3682D755.E83435CF@net66.com>, Mark Statzer wrote: > The *best* one was; > > 10 PRINT CHR$(RND(255));:GOTO 10 > > ...ran continuous gibberish all over the screen. Kicked in & out of 40 > column, too... At least with GUIs we can be childish in more sophisticated ways. A trick I have come across with RISCOS is to grab part of the screen containing one or more filer windows as a sprite and then to use that sprite as the backdrop ('wallpaper' in Windows terminology). The trick is to then watch people clicking on files in what *they think* are real filer windows... Dave -- ANTISPAM: Please note that the email address above is false. My correct address is: dave_danielsargonetcouk Please replace the and s with @ and . respectively when replying - Thanks! ###### From: Dave Daniels Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Sat, 26 Dec 1998 19:54:46 GMT Organization: ArgoNet, but does not reflect its views Lines: 73 Distribution: world Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <761cva$n1c$4@nnrp02.primenet.com> Reply-To: Dave Daniels NNTP-Posting-Host: useri020.uk.uudial.com X-Newsreader: NewsAgent 0.84 for RISC OS Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!masternews.telia.net!newsfeed1.swip.net!swipnet!rill.news.pipex.net!pipex!bore.news.pipex.net!pipex!argonet.co.uk!argbq79 In article <761cva$n1c$4@nnrp02.primenet.com>, nickb@primenet.com (Nick S Bensema) wrote: > ommodore and Atari machines, including, I believe, the PET, used > a screen editor that let you move the cursor around and type > anywhere, and just parsed whatever line the cursor was on when you > hit RETURN. Even the Sinclair computers had something similar to > that, even if it was slow and unresponsive. I've only heard legends With regards to BBC Basic, on Acorn machines it has cursor editing facilities that are provided by the operating system (MOS on the BBC Micro, RISCOS on the Archimedes/A5000/Risc PC ranges). These work along broadly the same lines as you describe in that you can drive the cursor around the screen and copy characters from anywhere. The difference is that they are copied to the input buffer rather than the line on the screen being used as the input. The Amstrad CPC range has the sort of editing/input capabilities you describe. > about BBC BASIC, which many allege to be the greatest BASIC > interpreter of all time. BBC Basic is certainly an extremely powerful dialect of Basic. I think that the Sinclair QL people would argue that QL Superbasic is better, but IMHO Sophie Wilson of Acorn wrote something a bit special when she developed BBC Basic. What can I say quickly about it? Well, Acorn developed an extended Basic which includes such features as procedures, multi-line functions, block IF statements, CASE statements, WHILE and REPEAT loops and so forth. I suspect that other additions were inspired by BCPL, in that it has indirection operators and a simple but effective way to dynamically allocate memory. With a bit of care, you can build and manipulate any dynamic data structure you like. The snag is, it is like doing it at assembler level. One of the other selling points is that it has a built in assembler which is integrated with the interpreter so you can mix Basic and assembler in the same program with ease. The assembler source is assembled at run time (the assembler is very, very fast) and it can use the facilities of the Basic interpreter as an extremely powerful macro processor. In the ARM versions, just about the full facilities of the OS are directly available to Basic programs. It also seems to be a rule that BBC Basic interpreters are extremely fast. The 6502 version stood head and shoulders above just about every other Basic interpreter running on an 8-bit processor. The ARM versions have carried on that tradition. Putting together the speed, direct access to the OS, the assembler, the indirection operators, dynamic memory allocation and the other, more common extensions and IMHO you have an extremely potent programming language. It is nowadays largely overlooked as everybody uses C and Java, plus, of course, who programs in Basic beyond the age of twelve? IMHO, it is still a great language, and ideal when you want to do something quickly rather than crank up the heavy machinery and do it in C. I guess that if BBC Basic had been designed by an American company that people would have been singing its praises as the greatest version of Basic of all time for years but it is British, so... Dave -- ANTISPAM: Please note that the email address above is false. My correct address is: dave_danielsargonetcouk Please replace the and s with @ and . respectively when replying - Thanks! ###### From: genew@vip.net (Gene Wirchenko) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Sat, 26 Dec 1998 21:46:25 GMT Organization: Posted via RemarQ, http://www.remarQ.com - Discussions start here! Lines: 31 Message-ID: <36846d8b.39891597@news.vip.net> References: <367F1C8E.5300C48C@jkmicro.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <761c74$n1c$3@nnrp02.primenet.com> Reply-To: genew@vip.net NNTP-Posting-Host: 204.209.212.42 X-Trace: 914708418 A01OARAUVD42ACCD1C usenet77.supernews.com X-Complaints-To: newsabuse@remarQ.com X-Newsreader: Forte Free Agent 1.1/32.230 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newshub.northeast.verio.net!newsfeed.corridex.com!remarQ73!supernews.com!Supernews69!not-for-mail nickb@primenet.com (Nick S Bensema) wrote: [snip] >If that history-of-the-TI page is accurate, they managed that by >making it impossible for anyone but TI to develop for the machine >until five years after it came out. > >It still gets me how the TI couldn't even compete with the Vic-20. I think the first paragraph is much of the explanation for the second. I remember the Radio Shack TRS-80 Model I. Lots of non-RS hardware and software came out for it. It helped RS; it didn't hinder it. Visicalc, the forerunner of Lotus 1-2-3, was in its time a killer app (the first killer app for micros IIRC) that helped sell an awful lot of Apples to businesspeople just by itself. There are probably other examples as well. Sincerely, Gene Wirchenko Computerese Irregular Verb Conjugation: I have preferences. You have biases. He/She has prejudices. ###### From: don@news.daedalus.co.nz (Don Stokes) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 27 Dec 1998 00:33:09 GMT Organization: Daedalus Consulting Lines: 103 Message-ID: <763v85$7js$1@news.wlg.netlink.net.nz> References: <367F1C8E.5300C48C@jkmicro.com> <75p27m$10u0$1@nntp1.u.washington.edu> <761cva$n1c$4@nnrp02.primenet.com> NNTP-Posting-Host: toyunix.zl2tnm.gen.nz Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.cwix.com!203.97.37.7!newsfeed.clear.net.nz!news.wlg.netlink.net.nz!don Dave Daniels wrote: >With regards to BBC Basic, on Acorn machines it has cursor editing >facilities that are provided by the operating system (MOS on the >BBC Micro, RISCOS on the Archimedes/A5000/Risc PC ranges). These >work along broadly the same lines as you describe in that you can >drive the cursor around the screen and copy characters from >anywhere. The difference is that they are copied to the input >buffer rather than the line on the screen being used as the input. >The Amstrad CPC range has the sort of editing/input capabilities >you describe. But all of these were clunky bolt-ons to the old replace-line-by line-number scheme dating back to the original Dartmouth BASIC. The Commodore style screen editing was closer to a real screen editor than the Apple/BBC styles of copying screen contents into a separate buffer, and had the distinct advantage that you could move directly to the bit you wanted to change, change it and hit Return, as opposed to the Beeb/Apple approach where you had to copy the entire line. It did get a wee bit tiresome. What really annoyed me about the Apple was that the ROM routine to do single-key input (implemented by GET in Applesoft BASIC) would insist on doing the screen edit thing, and on some (not all) versions of the //e ROM, this included treating the up-arrow key as ESC-I (some of the other posts in this thread more than adequately describe Apple ][ style editing). So you went to get a single keystroke, the user hit the up-arrow and the cursor went its merry way up the screen. Not good if you're trying to write a screen based data entry program that uses the arrows to move between fields. So I found myself writing my own input routine in machine code (assembler? we don't need no steekin assembler), first to just read keystrokes with the editing being done in BASIC, but when that was easily outrun by the 80 wpm typist using the thing, I put the whole field input routine into machine code (doing a search for the string variable "A$" and using that as the buffer address and field length). And of course, this being the Apple and having a rather idiosyncratic approach to what was or wasn't in hardware, the routine even had to flash the cursor, including switching in and out of the two 80-column card pages (which, bizzarely, mapped every second column, so to write a row of text you'd switch in the first page, write the first character to the first address, switch in the second page, write the second character to the same address as the first, switch back the first page and write the third character to the second address, switch in the second page, write the fourth into the same (second) address, and so-on). The thing did have an ASCII keyboard register, whereas most other contemporary micros just mapped the keyboard lines directly to memory or an I/O port, leaving the software to sort out how to get ASCII input. Of course that meant you couldn't use the keyboard for pushbutton style control. The Beeb had MOS routines to give you either ASCII input or check for specific key states, so was much more flexible. One couldn't help noticing that mostly you didn't care about how the Beeb's hardware was laid out, but the with the Apple you found yourself getting intimate with the hardware registers the moment you started to something non-trivial. For assembly programming on the Beeb I wrote a little memory resident screen editor that when involked would fiddle the OS vectors so that output would be redirected to the editor, and force a LIST command into the input. It would trap the output, remove the line numbers and sqirrel the rest away in high memory to be edited, then when you exited it would diddle things so that input came from the edit buffer, after an AUTO command. That way one could edit assembly programs without having to worry about line numbers. The program always had a BASIC FOR loop around it to give two-pass assembly. >BBC Basic is certainly an extremely powerful dialect of Basic. I ... >What can I say quickly about it? Well, Acorn developed an extended >Basic which includes such features as procedures, multi-line >functions, block IF statements, CASE statements, WHILE and REPEAT >loops and so forth. I suspect that other additions were inspired Much of that is later add-ons. The original BBC BASIC had multiline functions and procedures, and REPEAT ... UNTIL, but that was it for control statements. IF statements were old-fashioned one-liners (they did have ELSE, which the MS variants didn't have, but still restricted to how many statements separated by ':'s you could bunch up on a line. I occasionally used the screen editor mentioned above to write simple BASIC programs (without line numbers), but without line numbers or multiline IFs you hit brick walls pretty quickly. Of course the built-in assembler was a godsend on an 8-bit micro, and the indirection ops were a lot more useful than the MS style PEEK & POKE. There were other little niceties like '&' to denote a hex constantant. And there was a decent interface into the OS, so you didn't have to use anything like the appalling crocks used by the Apple, eg: PRINT CHR$(4); "OPEN FILENAME" (Ghod, the OS interfaces in the Apple sucked, when they existed at all, that is!) And as you note, the BBC BASIC was fast. The 2 MHz 6502 made the beast marginally faster than anything else in its class, but compared to MS BASIC based machines, BASIC programs on the Beeb easily outran the same programs running on anything else. -- Don Stokes, Networking Consultant http://www.daedalus.co.nz +64 25 739 724 ###### From: dpeschel@u.washington.edu (D. Peschel) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 27 Dec 1998 01:30:38 GMT Organization: University of Washington, Seattle Lines: 55 Message-ID: <7642ju$106e$1@nntp1.u.washington.edu> References: <367F1C8E.5300C48C@jkmicro.com> <761cva$n1c$4@nnrp02.primenet.com> <763v85$7js$1@news.wlg.netlink.net.nz> NNTP-Posting-Host: saul7.u.washington.edu X-Trace: nntp1.u.washington.edu 914722238 32974 (None) 140.142.17.38 X-Complaints-To: help@cac.washington.edu NNTP-Posting-User: dpeschel Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!newsfeed.cwix.com!128.32.206.55!newsfeed.berkeley.edu!news.u.washington.edu!dpeschel In article <763v85$7js$1@news.wlg.netlink.net.nz>, Don Stokes wrote: >Much of that is later add-ons. The original BBC BASIC had multiline >functions and procedures, and REPEAT ... UNTIL, but that was it for >control statements. IF statements were old-fashioned one-liners (they >did have ELSE, which the MS variants didn't have, but still restricted >to how many statements separated by ':'s you could bunch up on a line. What machines are we talking about here? As far as I know, the evolution went something like this: Atom +--> Electron | +-------> Proton (= BBC Micro), models A and B --> model B+ --> Master Then we get into the 16-bit machines which I'm not going to deal with. So which machines have the simpler version of BASIC? >Of course the built-in assembler was a godsend on an 8-bit micro, and >the indirection ops were a lot more useful than the MS style PEEK & POKE. >There were other little niceties like '&' to denote a hex constantant. >And there was a decent interface into the OS, so you didn't have to use >anything like the appalling crocks used by the Apple, eg: > > PRINT CHR$(4); "OPEN FILENAME" > >(Ghod, the OS interfaces in the Apple sucked, when they existed at all, >that is!) The OS interface is very lovely (from a user's point of view -- from a programmer's point of view, although it seems straightforward to me, it also seems to have a LOT of vectors and entry points). How do you define new * commands? I've always assumed it's possible (with such a well-designed system it MUST be possible!) Can you define new BASIC commands too? I think the problem with the Apple is that it started out as a simple machine, 1-2 generations before the Atari/Commodore/BBC/CPC. The convenience features it has are convenient in the mindset of the 70's -- in the mindset of the 80's they are essential. And the Apple's features don't fit together very well (Wozniak admitted that he added the grahpics and sound because they were cool and easy to add). When piling something on top of a small foundation, you get bad results. This became true especially with the //c and //e. The BBC hit the same sort of scalability "wall" with the Master series, as far as I can tell from reading the manual. They planned farther ahead but the memory architecture and backward compatibility still got messy. I do have a soft spot for the Apple (since I grew up with it) and I think the disk system is ingenious and there are some timeless programs for it (which is even more remarkable considering the quirks of the hardware). -- Derek ###### From: don@news.daedalus.co.nz (Don Stokes) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 27 Dec 1998 04:58:54 GMT Organization: Daedalus Consulting Lines: 153 Message-ID: <764eqe$3ir$1@news.wlg.netlink.net.nz> References: <367F1C8E.5300C48C@jkmicro.com> <763v85$7js$1@news.wlg.netlink.net.nz> <7642ju$106e$1@nntp1.u.washington.edu> NNTP-Posting-Host: toyunix.zl2tnm.gen.nz Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.cwix.com!203.97.37.7!newsfeed.clear.net.nz!news.wlg.netlink.net.nz!don In article <7642ju$106e$1@nntp1.u.washington.edu>, D. Peschel wrote: >In article <763v85$7js$1@news.wlg.netlink.net.nz>, >Don Stokes wrote: > >>Much of that is later add-ons. The original BBC BASIC had multiline >>functions and procedures, and REPEAT ... UNTIL, but that was it for >>control statements. IF statements were old-fashioned one-liners (they >>did have ELSE, which the MS variants didn't have, but still restricted >>to how many statements separated by ':'s you could bunch up on a line. > >What machines are we talking about here? As far as I know, the evolution >went something like this: > >Atom +--> Electron > | > +-------> Proton (= BBC Micro), models A and B --> model B+ --> Master More like: Atom ... BBC A -- BBC B -- BBC MASTER | +-- Electron I'm not sure where the Proton fits in, probably off the Atom. But the Electron was post-BBC, basically an attempt at a cut-down Beeb. It had a lot less hardware under the bonnet, and what was there took advantage of ULA/PLA technology to stuff a lot of what was there into a single chip. >So which machines have the simpler version of BASIC? At least as recently as the BBC B and Electron (circa 1984). I'm not sure about the Master, but the Archimedes versions have many many improvements over the BBC B / Eectron version. >>[Apple OS -- it sucked] >The OS interface is very lovely (from a user's point of view -- from a >programmer's point of view, although it seems straightforward to me, it also >seems to have a LOT of vectors and entry points). OK, I'm thinking of DOS 3.3, which was *the* DOS for the Apple for all the time I used them. ProDOS just wasn't widespread until the GS came out as far as I could make out. I don't remember many entry points, although there were a couple of routines in DOS for fooling with blocks & load/saving files that I never really got into. Mostly though, the Apple had two I/O streams, one in, one out, that you could diddle with the PR# and IN# statements. If you went PR#1 to get at the device in slot 1 (eg a printer) you blew away DOS (on #6), except that DOS was smart enough to notice that you'd *typed* PR#1 (but was lost if you actually put PR#1 into your program -- instead you'd put in PRINT CHR$(4);"PR#1" and DOS would do the redirection for you). Oh, and if you typed "PR#6" it rebooted... DOS just lived in your input and output streams. If it saw a Ctrl/D it assumed the rest of the output line was a DOS command. Now that I think of it, the sequence to read a line from a file named by F$ into A$ was: PRINT CHR$(4); "READ "; F$ INPUT A$ PRINT CHR$(4); "CLOSE" or something like that. There was no concept of file handles, so if you wanted to read or write a different file you had to close the previous one first. Writing real applications was a *pain*. > How do you define new * >commands? I've always assumed it's possible (with such a well-designed >system it MUST be possible!) Can you define new BASIC commands too? On the Beeb, the philosophy was completely different. You never called DFS (Disk Filing System) or ADFS (Advanced DFS, hierarchical dirs etc) directly, you called the OS. The OS would talk to whichever filesystem was currently installed, and only one could be active at a time. The MOS never had any concept of I/O redirection (which contrasts the Apple where it *only* had redirection), or device naming, so there was one filesystem, up to two serial ports, one cassette port, one printer port and so-on, with different interfaces, albeit in many cases controlled through the same entry points but with different function codes. You could (and I did) define new * commands by hooking the OSCLI vector. OSCLI was the entry point to interpret a * command -- you gave it the address of the command in the X & Y registers (CR terminated, I think), and it interpreted it. But the OS called its routines via some vectors so you could hook these and fiddle. The main OS routines were OSBYTE and OSWORD. OSBYTE used the accumulator as a function code, and X & Y as parameters. OSWORD has X & Y as a 16 bit address of a function-specific control block. There were separate file I/O call as well. BASIC was completely separate -- it called the OS functions, but not the other way around (apart from the "*BASIC" OSCLI command). (Incidentally, "*command" was the accepted way for a CLI to recognise that a command should be passed to OSCLI to be interpreted instead of being interpreted locally. OSCLI ignored leading '*'s.) >I think the problem with the Apple is that it started out as a simple >machine, 1-2 generations before the Atari/Commodore/BBC/CPC. The >convenience features it has are convenient in the mindset of the 70's -- in >the mindset of the 80's they are essential. And the Apple's features don't >fit together very well (Wozniak admitted that he added the grahpics and >sound because they were cool and easy to add). When piling something on top >of a small foundation, you get bad results. This became true especially >with the //c and //e. I'd have to agree with this. A small micro back in those days was just a CPU and memory and a few peripherals grafted onto the system bus in the cheapest way possible, and that philosophy showed. Even the Beeb's MOS had a fairly fixed idea about what it was likely to be faced with, although it did manage to make the split between the OS and BASIC that wasn't in evidence on other boxes. >The BBC hit the same sort of scalability "wall" with the Master series, as >far as I can tell from reading the manual. They planned farther ahead but >the memory architecture and backward compatibility still got messy. The Beeb's biggest weakness was that its ROMs were just too darned big. The MOS took 16 K all by itself, and BASIC (or whatever other language or ROM based application was loaded) took another 16 K. That left you with 32 K of RAM, and the OS and friends wanted a chunk of that (and ADFS was particularly hungry). The coprocessor (3 MHz 6502 with its own memory) somehow managed to get you 48k, but it was hugely expensive. The Beeb was a bitty-box. A *nice* bitty-box, but still a bitty-box. It was also a lot more recent than the Apple. >I do have a soft spot for the Apple (since I grew up with it) and I think >the disk system is ingenious and there are some timeless programs for it >(which is even more remarkable considering the quirks of the hardware). Personally, I came to hate the I/O system. When I was doing Real Applications for it, I'd already been using the Beeb (well, an Electron mainly, but Beebs as well) and knew what a file handle was. I hated the way when I kicked the (Nestar) network in the guts I lost the 80 column card (but got it back after I finished making Nestar fiddle things into a sufficiently DOS 3.3-like configuration so I could just use DOS commands to deal with). The Beeb had real networking, the Apple was very, very hacked together. But even standalone it was not pretty. I never, ever liked the fact DOS commands were sent in-band, and after many years dealling with real computers and real OSes I like it even less. I was also rather less than impressed with the skimping on hardware that went into the Apple. For eg, there's no interrupts. The ROM has stuff to revector the interrupts, but there aren't any. No time, no input, nothing. So a real OS (defined as one that at least has async I/O and pre-emption) on basic Apple hardware could never be written. It would never get a real typeahead buffer. And this is all ten-cent stuff, not huge $$$ added to the cost to implement this stuff. Even in 1976. -- Don Stokes, Networking Consultant http://www.daedalus.co.nz +64 25 739 724 ###### From: Charles Richmond Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Sun, 27 Dec 1998 06:03:58 +0000 Organization: Cannine Computer Center Lines: 24 Message-ID: <3685CDCE.DB4AB0E2@plano.net> References: <367F1C8E.5300C48C@jkmicro.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <761cva$n1c$4@nnrp02.primenet.com> <764a36$cg$1@vax.area.com> <3685b3fd.1132803@news.newsguy.com> Reply-To: richmond@plano.net NNTP-Posting-Host: 209.44.41.10 Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: 914760066 R67V8VHUD29A D12CC usenet58.supernews.com X-Complaints-To: newsabuse@remarQ.com X-Mailer: Mozilla 4.04 (Macintosh; I; 68K) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news.belnet.be!newsgate.cistron.nl!het.net!news.tele2.nl!newsfeed1.swip.net!swipnet!newsfeed.berkeley.edu!remarQ73!supernews.com!Supernews69!not-for-mail Paul Guertin wrote: > > [snip..] [snip...] [snip...] > > I agree. So just use the ol'EPROM burner to correct that little > mistake. Apple even gave out the source to the Monitor, so it was > easy to know which two bytes to patch. > > One thing I've always wanted to do (but never did, for lack of > time) was to get the code for another microcomputer (preferably > 65xx-based) BASIC, make the necessary patches, and load it on > the language card (*). Imagine the shock of my C64 friends when > they would see my Apple II emulate their computer! > I am afraid that it is *not* that simple. The C64 had some special hardware to implement things like sprites and sound and such. Just transferring the BASIC code to the Apple would *not* be enough to turn it into a C64. With the Apple ][, things like graphics and music are much more the responsibility of the programmer and whatever tricks s/he can dream up. -- +-------------------------------------------------------------+ | Charles and Francis Richmond | +-------------------------------------------------------------+ ###### From: pg@sff.net (Paul Guertin) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Sun, 27 Dec 1998 07:23:42 GMT Organization: Amalgamated Karma Lines: 29 Message-ID: <3685b3fd.1132803@news.newsguy.com> References: <367F1C8E.5300C48C@jkmicro.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <761cva$n1c$4@nnrp02.primenet.com> <764a36$cg$1@vax.area.com> NNTP-Posting-Host: p-883.newsdawg.com X-Newsreader: Forte Free Agent 1.11/32.235 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!news.idt.net!logbridge.uoregon.edu!pln-w!spln!extra.newsguy.com!newsp.newsguy.com!news1 On 26 Dec 1998 19:38:14 -0800, mattack@area.com (Matt Ackeret) wrote: > Plus, on a //e (or is it enhanced //e?) or better, you can use the arrow > keys in escape mode to move the cursor around... It was on the original //e. > (as well as IJKM.. dang, > one of the few things Woz did wrong. IJKL is so much easier to use repeatedly > than IJKM, even if IJKM is a tiny bit more 'physically intuitive'). I agree. So just use the ol'EPROM burner to correct that little mistake. Apple even gave out the source to the Monitor, so it was easy to know which two bytes to patch. One thing I've always wanted to do (but never did, for lack of time) was to get the code for another microcomputer (preferably 65xx-based) BASIC, make the necessary patches, and load it on the language card (*). Imagine the shock of my C64 friends when they would see my Apple II emulate their computer! (*) The "language card" was a card containing an extra 16k of bank-switchable RAM. When you booted the System Master disk, an image of the Integer ROMs was loaded into it, and you could switch between Applesoft and Integer with the "INT" and "FP" DOS commands. Paul Guertin pg@sff.net ###### From: pg@sff.net (Paul Guertin) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Sun, 27 Dec 1998 07:23:44 GMT Organization: Amalgamated Karma Lines: 38 Message-ID: <3685d305.9077757@news.newsguy.com> References: <367F1C8E.5300C48C@jkmicro.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <761cva$n1c$4@nnrp02.primenet.com> NNTP-Posting-Host: p-884.newsdawg.com X-Newsreader: Forte Free Agent 1.11/32.235 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.cwix.com!128.223.220.30!logbridge.uoregon.edu!pln-w!spln!extra.newsguy.com!newsp.newsguy.com!news1 On Sat, 26 Dec 1998 19:54:46 GMT, Dave Daniels wrote: > IMHO Sophie Wilson of Acorn wrote something a bit > special when she developed BBC Basic. > > [...] procedures, multi-line functions, block IF statements, CASE > statements, WHILE and REPEAT [...] indirection operators [...] > dynamically allocate memory [...] built in assembler [...] > extremely fast. Want want want! Is the source code for that BASIC available anywhere? Even though Apple and Commodore never published the source for their BASIC, there were books like "Mapping the Commodore" and "What's Where in the Apple" that contained very detailed explanations that were as good as a real disassembly. An Apple II assembler, Roger Wagner's Merlin, came with a program that would disassemble the ROM BASIC in your computer, massage it to add meaningful labels and comments, and print the result. Presto, BASIC source code. Does something like this exist for BBC BASIC? I'd love to get my hands on it and compare it with other 6502 BASICs I know. If it's really good, it could end up replacing Applesoft in my Apple II... I never saw a BBC computer. Were they even sold in Canada? But I knew of their BASIC because I had a book called "Spacegames" with about two dozen cheezy Basic programs in several dialects (TRS-80, Apple II, PET, ZX81...). The BBC version was unlike all the others, and it was obvious even to me that its BASIC was much more powerful than all the others. Paul Guertin pg@sff.net ###### From: turbid@my-dejanews.com Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Sun, 27 Dec 1998 13:30:57 GMT Organization: Deja News - The Leader in Internet Discussion Lines: 20 Message-ID: <765cqh$f9o$1@nnrp1.dejanews.com> References: <367F1C8E.5300C48C@jkmicro.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <761cva$n1c$4@nnrp02.primenet.com> <764a36$cg$1@vax.area.com> <3685b3fd.1132803@news.newsguy.com> NNTP-Posting-Host: 203.20.108.19 X-Article-Creation-Date: Sun Dec 27 13:30:57 1998 GMT X-Http-User-Agent: Mozilla/4.06 [en] (Win95; I) X-Http-Proxy: 1.0 x5.dejanews.com:80 (Squid/1.1.22) for client 203.20.108.19 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.cwix.com!204.238.120.130!news-feeds.jump.net!nntp2.dejanews.com!nnrp1.dejanews.com!not-for-mail > One thing I've always wanted to do (but never did, for lack of > time) was to get the code for another microcomputer (preferably > 65xx-based) BASIC, make the necessary patches, and load it on > the language card (*). Imagine the shock of my C64 friends when > they would see my Apple II emulate their computer! No, you wouldn't want to do that! BASIC 2.0 is a pile of utter crap. Mind you, I think Integer Basic is even worse. I suppose it's quite feasible though as the C64 Kernel (BIOS) is separate from the BASIC and has a rather nice call interface. All you'd need was RAM in the appropriate places. What impressed me was some friends of mine porting the BASIC interpreter from the BBC Micro Model B to the C64. I only played with it a bit but it seemed fairly solid and they were cross assembling code on both "platforms" if I remember correctly... -t. -----------== Posted via Deja News, The Discussion Network ==---------- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own ###### From: Larry Anderson Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Wed, 23 Dec 1998 19:43:10 -0800 Organization: Goldrush World Access, Ltd. Lines: 11 Message-ID: <3681B847.B1E49EBD@goldrush.com> References: <367F1C8E.5300C48C@jkmicro.com> <$spam$-2112980049160001@user-37ka4oj.dialup.mindspring.com> <75lttd$pm2@boofura.swcp.com> <367EB46F.F2CC22AD@plano.net> Reply-To: foxnhare@goldrush.com NNTP-Posting-Host: jx-098.goldrush.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 4.06 (Macintosh; I; PPC) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news.belnet.be!newsgate.cistron.nl!het.net!news-feed.inet.tele.dk!bofh.vszbr.cz!newsfeed.wli.net!su-news-hub1.bbnplanet.com!news.gtei.net!news.pbi.net!206.171.171.4!news.goldrush.com!usenet William Hamblen wrote: > > Charles Richmond (richmond@plano.net) wrote: > > : Anyway, as I remember the interview with Mr. Gates, he said that the last > : program he worked on was the BASIC for the TRS-80 Color Computer. > > And said BASIC has a well known bug in the floating point arithmetic, too. Correction, it was the Model-100 he last worked on. ###### From: genew@vip.net (Gene Wirchenko) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Mon, 28 Dec 1998 19:54:15 GMT Organization: Posted via RemarQ, http://www.remarQ.com - Discussions start here! Lines: 23 Message-ID: <3687d622.3816414@news.vip.net> References: <367F1C8E.5300C48C@jkmicro.com> <75p27m$10u0$1@nntp1.u.washington.edu> <761cva$n1c$4@nnrp02.primenet.com> <763v85$7js$1@news.wlg.netlink.net.nz> Reply-To: genew@vip.net NNTP-Posting-Host: 204.209.212.15 X-Trace: 914874656 A01OARAUVD4F CCD1C usenet87.supernews.com X-Complaints-To: newsabuse@remarQ.com X-Newsreader: Forte Free Agent 1.1/32.230 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.berkeley.edu!remarQ73!supernews.com!Supernews69!not-for-mail don@news.daedalus.co.nz (Don Stokes) wrote: [snip] >Much of that is later add-ons. The original BBC BASIC had multiline >functions and procedures, and REPEAT ... UNTIL, but that was it for >control statements. IF statements were old-fashioned one-liners (they >did have ELSE, which the MS variants didn't have, but still restricted >to how many statements separated by ':'s you could bunch up on a line. Which version of MS BASIC? I used MBASIC 4 and 5 which were the mainstream BASIC and they most definitely did have else clauses. [snip] Sincerely, Gene Wirchenko Computerese Irregular Verb Conjugation: I have preferences. You have biases. He/She has prejudices. ###### From: Ariel Scolnicov Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 29 Dec 1998 12:00:56 +0200 Organization: NetVision Israel Lines: 31 Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <763v85$7js$1@news.wlg.netlink.net.nz> <7642ju$106e$1@nntp1.u.washington.edu> <764eqe$3ir$1@news.wlg.netlink.net.nz> NNTP-Posting-Host: bioserv.compugen.co.il X-Trace: news.netvision.net.il 914925760 7859 194.90.227.153 (29 Dec 1998 10:02:40 GMT) X-Complaints-To: abuse@netvision.net.il NNTP-Posting-Date: 29 Dec 1998 10:02:40 GMT X-Newsreader: Gnus v5.5/XEmacs 20.4 - "Emerald" Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!howland.erols.net!news-peer.gip.net!news-dc.gip.net!news.gsl.net!gip.net!news-feed.netvision.net.il!194.90.1.15.MISMATCH!news!not-for-mail don@news.daedalus.co.nz (Don Stokes) writes: > In article <7642ju$106e$1@nntp1.u.washington.edu>, > D. Peschel wrote: > [...] > >[...] > >So which machines have the simpler version of BASIC? > > At least as recently as the BBC B and Electron (circa 1984). I'm not > sure about the Master, but the Archimedes versions have many many > improvements over the BBC B / Eectron version. I only ever *saw* a Master, not actually used one. It had WHILE loops (for the first time in BBC BASIC). I think the official reason was that the Master was documented as using a 65c02 (unlike the model B, which was supposed to use a 6502, but many were built with a 65c02, or you could bring your own). The additional unconditional branch instruction saved enough bytes in the ROM to make space for the WHILE command. The above is dimly-remembered hearsay from an unreliable source... I don't remember what other BASIC improvements the Master added. > [...] -- Ariel Scolnicov /---------------\ "GCAAGAATTGAACTGTAG" Compugen Ltd. |Join the Dark | Tel: +972-2-6795059 (Jerusalem) 72 Pinhas Rosen St. |Side! Just Say:| Tel: +972-3-7658520 (Main office) Tel-Aviv | "Yes, but..."| +972-3-7658521 ISRAEL \---------------/ ariels@compugen.co.il ###### From: Victor Eijkhout Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 28 Dec 1998 12:54:07 -0500 Organization: University of Tennessee Lines: 12 Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> NNTP-Posting-Host: prancer.cs.utk.edu X-Newsreader: Gnus v5.5/Emacs 20.2 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!News.Amsterdam.UnisourceCS!masternews.telia.net!newsfeed1.swip.net!swipnet!news-peer-europe.sprintlink.net!Sprint!news-peer1.sprintlink.net!news-in-east1.sprintlink.net!news.sprintlink.net!utk.edu!not-for-mail dpeschel@u.washington.edu (D. Peschel) writes: > AppleSoft (written and > copyrighted by MS, patched by Apple to handle lower-case) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Prffftt* !! -- Victor Eijkhout "Too many textbooks and discussions leave children free to make up their minds about things." [Fundie Mel Gabler] ###### From: Dave Daniels Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Tue, 29 Dec 1998 19:46:58 GMT Organization: ArgoNet, but does not reflect its views Lines: 40 Distribution: world Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <763v85$7js$1@news.wlg.netlink.net.nz> <7642ju$106e$1@nntp1.u.washington.edu> <764eqe$3ir$1@news.wlg.netlink.net.nz> Reply-To: Dave Daniels NNTP-Posting-Host: userp755.uk.uudial.com X-Newsreader: NewsAgent 0.84 for RISC OS Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newshub.northeast.verio.net!news.maxwell.syr.edu!newspeer.monmouth.com!rill.news.pipex.net!pipex!bore.news.pipex.net!pipex!argonet.co.uk!argbq79 In article , Ariel Scolnicov wrote: > I only ever *saw* a Master, not actually used one. It had WHILE loops > (for the first time in BBC BASIC). I think the official reason was I have just checked and the version of BBC Basic (Basic 4) on the Master does not have a WHILE loop. ISTR that the WHILE loop was a rumour from the earliest days of Basic 1, but AFAIK it first appeared in Basic 5 on the Archimedes in 1987. (Okay, then, someone tell me it was on the ARM Second processor...) > The above is dimly-remembered hearsay from an unreliable source... I think that your source was wrong. > I don't remember what other BASIC improvements the Master added. There were not many. It was recoded using the extra 65c02 opcodes to make it faster and Acorn added an 'ON PROC' statement that worked along similar lines to 'ON GOTO'. The graphics were extended, but that was because they were provided by the OS and the improvements were in there. There was a full-screen editor built in to the machine which made life easier, although the maximum size Basic program it could handle was limited. That was about it really. Dave -- ANTISPAM: Please note that the email address above is false. My correct address is: dave_danielsargonetcouk Please replace the and s with @ and . respectively when replying - Thanks! ###### From: Tom Seddon Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Wed, 30 Dec 1998 00:41:56 +0000 Organization: None whatsoever Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <36803E99.7E9B44A3@plano.net> <75tuq1$n3e$1@news.imaginet.fr> NNTP-Posting-Host: sunholme.demon.co.uk X-NNTP-Posting-Host: sunholme.demon.co.uk:193.237.138.67 X-Trace: news.demon.co.uk 915020290 nnrp-03:6074 NO-IDENT sunholme.demon.co.uk:193.237.138.67 X-Complaints-To: abuse@demon.net MIME-Version: 1.0 X-Newsreader: Turnpike (32) Version 4.01 Lines: 32 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news.belnet.be!newsfeed.wirehub.nl!btnet-peer!btnet!dispose.news.demon.net!demon!news.demon.co.uk!demon!sunholme.demon.co.uk!tom Michael Black wrote this on Fri, 25 Dec 1998: >> Actually, it's not exact, Microsoft worked for a while on an Atari ST >> version of the WORD word processing. It was a limited version known under >> the name 'Write'. I don't know if it was marketed or not. >> >I have a copy of "Write" for the Atari ST, so it did become a commercial >product. I bought it at a clearance at a store getting out of the Atari >business, for something like fifteen dollars. I don't have the manual >handy to see what it says. The box clearly marks it as coming from Atari, >but it is called "Microsoft Write". Microsoft Write was bundled with some STFMs (of the 1040 variety) around Xmas 1988. It was a nasty piece of software. It required an add-on to the ST's OS (GDOS) to allow you to use fonts, required two disk drives because the bitmap fonts took up so much disk space, and ran damn slowly because it was so poorly written. It also crashed every 5 seconds too; however, this could be fixed (to a small extent) by saving your documents on the program disk. In its defence though, with 4MB of RAM and a hard disk (and no GDOS) it was... usable. Just. I have a suspicion that Microsoft wrote the original ST BASIC. That is, the one that came on the original 'Welcome' type disk, before Atari saw sense and bundled a cut-down version of Power BASIC (I think?) with their computers. However, all my Atari stuff is in the attic so I cannot confirm this. Folklore content: the Atari ST's operating system was developed on Apple Lisas. --Tom ###### From: Tom Seddon Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Wed, 30 Dec 1998 01:24:44 +0000 Organization: None whatsoever Message-ID: References: <367F1C8E.5300C48C@jkmicro.com> <761cva$n1c$4@nnrp02.primenet.com> <763v85$7js$1@news.wlg.netlink.net.nz> <7642ju$106e$1@nntp1.u.washington.edu> NNTP-Posting-Host: sunholme.demon.co.uk X-NNTP-Posting-Host: sunholme.demon.co.uk:193.237.138.67 X-Trace: news.demon.co.uk 915020299 nnrp-03:6074 NO-IDENT sunholme.demon.co.uk:193.237.138.67 X-Complaints-To: abuse@demon.net MIME-Version: 1.0 X-Newsreader: Turnpike (32) Version 4.01 Lines: 117 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!news-raspail.gip.net!news-lond.gip.net!news.gsl.net!gip.net!dispose.news.demon.net!demon!news.demon.co.uk!demon!sunholme.demon.co.uk!tom D. Peschel wrote this on Sun, 27 Dec 1998: >Atom +--> Electron > | > +-------> Proton (= BBC Micro), models A and B --> model B+ --> Master More like: Atom +--> BBC Micro +--> model B+ --> Master | +--> Electron The Electron owes more to the Beeb than the Atom, the OS is virtually identical from a programming point of view and the BASIC is very similar as well. (The OS/BASIC even includes calls for stuff that the Electron doesn't have, e.g., ADC, multiple sound channels, teletext mode, to keep compatibility with BBC software.) > >Then we get into the 16-bit machines which I'm not going to deal with. > >So which machines have the simpler version of BASIC? I am not sure about the Atom. Its BASIC was possibly simpler than the BBC's. All I do know is that programs written in it look very, very peculiar -- at least compared to any BASIC I have seen before or since. It did have an assembler though. There were three versions for the BBC class of computers, BASIC I, BASIC II and BASIC IV. You can tell which version of BASIC you have by pressing BREAK and typing REPORT (don't forget to press return :-). (C) 1981 Acorn indicates BASIC 1, and (C) 1982 Acorn indicates BASIC 2. This also works for BASIC 4. (Unfortunately BASIC 5 (Archimedes) was written in 1986.) On with the history. The original version of BASIC was BASIC I. This was supplanted by BASIC II. BASIC II had the following improvements: * INSTR(x,y) no longer caused a full-scale crash if LEN(x)The OS interface is very lovely (from a user's point of view -- from a >programmer's point of view, although it seems straightforward to me, it also >seems to have a LOT of vectors and entry points). How do you define new * >commands? I've always assumed it's possible (with such a well-designed >system it MUST be possible!) Can you define new BASIC commands too? You can write yourself a ROM, which will get called via its service entry point when an unrecognised * command is entered. You may also intercept USERV (&200,&201) which is called when a *CODE or a *LINE command is executed. On entry to the routine, A=0 if *CODE was typed -- X+Y are the two parameters. A=1 if *LINE was typed -- X+Y point to the rest of the command line. A between &e0 and &ff indicates that an OSWORD call in that range was called, registers as per usual osword entry. OR you could intercept the command-line interpreter (&208,&209) but this is most probably more hassle than it is worth. The Advanced User Guide for the BBC Micro has more details on the above. Adding new BASIC commands is possible, I believe you intercept the BRK vector, trap "Mistake" or "Syntax error" messages, decide which command caused said error (by examining the BASIC workspace in zero page) and interpret it yourself. I suspect this would be tricky to program though. --Tom ###### From: bjh21@cus.cam.ac.uk (Ben Harris) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 30 Dec 1998 13:27:00 GMT Organization: University of Cambridge, England Lines: 41 Message-ID: <76d9n4$ndd$1@pegasus.csx.cam.ac.uk> References: <367F1C8E.5300C48C@jkmicro.com> <763v85$7js$1@news.wlg.netlink.net.nz> <7642ju$106e$1@nntp1.u.washington.edu> NNTP-Posting-Host: taurus.cus.cam.ac.uk Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!news-feed1.eu.concert.net!btnet-peer!btnet!rill.news.pipex.net!pipex!server1.netnews.ja.net!hgmp.mrc.ac.uk!pegasus.csx.cam.ac.uk!bjh21 In article , Tom Seddon wrote: >D. Peschel wrote this on Sun, 27 Dec 1998: >>So which machines have the simpler version of BASIC? > >I am not sure about the Atom. Its BASIC was possibly simpler than the >BBC's. According to my BBC BASIC User Guide, it used Atom BASIC, which was integer-only. I haven't got a working Atom here to try it on, though I might have a System version of it on floppy somewhere. The System also had a version of BBC BASIC (called "Acorn New BASIC"). I don't know if the Atom ever got it. >BASIC III never was, I don't think. According to the BBC BASIC User Guide, it was supplied on the B+, and just provided COLOR and a couple of bug fixes. >There was also a version of BASIC >for the 6502 second processor, known, I believe, as HIBASIC. >BASIC IV was for the Master. Extra features were, so far as I can >remember: > >* 65c12 opcodes in the assembler (PLX,PLY,STZ,BRA,etc) >* 65c12 opcodes used in the ROM itself (slightly faster); >* LIST IF command, to list lines containing a particular set of letters; >* ON...PROC (as ON GOSUB, but "structured" I presume); >* The EDIT command. This interfaced with the Master's built-in EDIT ROM >(or vice-versa) and caused the editor to pop up complete with >detokenized BASIC program in memory. (I'm not sure about the exact >details of this and am possibly wrong.) Also TIME$, "|" in VDU statements, EXT# and more bug fixes. -- Ben Harris Computer Officer, Corpus Christi College, Cambridge. ###### Newsgroups: alt.folklore.computers From: Nathan Sidwell Subject: Re: "Since all of you steal your software..." X-Nntp-Posting-Host: manao.cs.bris.ac.uk Content-Type: text/plain; charset=us-ascii Message-ID: <368A4E4D.4F3E@acm.org> Sender: usenet@fsa.bris.ac.uk (Usenet) Content-Transfer-Encoding: 7bit Organization: Computer Science Dept, Bristol University References: <367F1C8E.5300C48C@jkmicro.com> <761cva$n1c$4@nnrp02.primenet.com> <763v85$7js$1@news.wlg.netlink.net.nz> <7642ju$106e$1@nntp1.u.washington.edu> Mime-Version: 1.0 Date: Wed, 30 Dec 1998 16:01:18 GMT X-Mailer: Mozilla 3.03 (X11; I; SunOS 5.6 sun4u) Lines: 25 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newshub.northeast.verio.net!news.maxwell.syr.edu!nntp.news.xara.net!xara.net!server5.netnews.ja.net!bris.ac.uk!usenet Tom Seddon wrote: > Adding new BASIC commands is possible, I believe you intercept the BRK > vector, trap "Mistake" or "Syntax error" messages, decide which command > caused said error (by examining the BASIC workspace in zero page) and > interpret it yourself. I suspect this would be tricky to program though. I did something like this to assemble ROMs from a chained series of programs. You needed more than 20K of source to produce a 16K rom, so I would split up the source into 01, 02 ... files, each chaining the next. The trick was how to keep all the assembly labels (normal variables), which would be lost by a normal CHAIN command. As it couldn't hold all the labels simultaneously, I effectively produced a virtual memory system for variables, which intecepted the BRK vector, looked to see if it was caused by an 'undefined var' error, and then scanned a file to see if it knew what it was. Just before chaining the next source file, all the variable values were merged into the file. So I ended up with a two pass assembler which dealt with multiple source files. nathan -- Dr Nathan Sidwell :: Computer Science Department :: Bristol University You can up the bandwidth, but you can't up the speed of light nathan@acm.org http://www.cs.bris.ac.uk/~nathan/ nathan@cs.bris.ac.uk ###### Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your softwar From: riplin@kcbbs.gen.nz (Richard Plinston) Date: 31 Dec 98 07:24:03 GMT Message-ID: <3298364.26643.13211@kcbbs.gen.nz> References: <76d9n4$ndd$1@pegasus.csx.cam.ac.uk> Organization: Kappa Crucis Unix BBS, Auckland, New Zealand Lines: 14 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news.belnet.be!newsgate.cistron.nl!het.net!diablo.theplanet.net!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!news-peer.gip.net!news-stock.gip.net!news.gsl.net!gip.net!news.iprolink.co.nz!wn.planet.gen.nz!kcbbs!riplin In message <<76d9n4$ndd$1@pegasus.csx.cam.ac.uk>> bjh21@cus.cam.ac.uk writes: > > >There was also a version of BASIC > >for the 6502 second processor, > > known, I believe, as HIBASIC. The Master supplied on disk a version called Basic 128 which could use all the sideways RAM as workspace. Therewas a BBC Basic for the Z80 co-procesor, for the Sinclair ZX88 and its derivitive the Amstrad something or other and various versions for the IBM-PC (I have a couple somewhere). ###### Newsgroups: alt.folklore.computers Date: Wed, 30 Dec 1998 15:28:44 +0100 Message-ID: From: peterk@combo.ganesha.com (Dr. Peter Kittel) Subject: Re: "Since all of you steal your software..." Reply-To: peterk @ combo.ganesha.com References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <3681ebb1.12707449@news.newsguy.com> X-Newsreader: rn7.bas Lines: 36 Organization: Private Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!feeder.qis.net!news-peer.gip.net!news.gsl.net!gip.net!EU.net!blackbush.xlink.net!ganesha.ganesha.com!shorter!combo.ganesha.com!peterk In article <3681ebb1.12707449@news.newsguy.com> pg@sff.net (Paul Guertin) writes: >On Tue, 22 Dec 1998 15:16:02 -0800, hnsngr@sirius.com (Ron Hunsinger) >wrote: > >[Bugs in Applesoft] >> >> One of my favorites is the following: >> >> 100 FOR X = 1 TO 10000 >> 110 IF 1/X <> 1/X THEN PRINT X >> 120 NEXT X >> >> It's hard to imagine how 1/X could ever NOT be equal to itself, yet this >> program will print out a distressingly large number of values of X for >> which it isn't. > >Indeed. Strange, this does not happen in AmigaBASIC (V2.0). >One of my favorite Applesoft quirks is the way PRINT allows >floating-point numbers to have more than one decimal point. >This allows one to do arithmetic on software revision numbers. > >]PRINT 6.2.2 * 5.1 >6.21.02 Funny, I also tried it in AmigaBASIC, and it does it differently. Also no error message, but "6.2 1.02" as result. It obviously handles the first number with two decimal points as two, "6.2" and ".2". -- Best Regards, Dr. Peter Kittel // E-Mail: Private Site in Frankfurt, Germany \X/ peterk @ combo.ganesha.com Deutsches Wort mit 4-mal "tz"? Atzventzkrantzkertze! (Uli Stein) ###### Newsgroups: alt.folklore.computers Date: Wed, 30 Dec 1998 15:34:33 +0100 Message-ID: From: peterk@combo.ganesha.com (Dr. Peter Kittel) Subject: Re: "Since all of you steal your software..." Reply-To: peterk @ combo.ganesha.com References: <367F1C8E.5300C48C@jkmicro.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <761cva$n1c$4@nnrp02.primenet.com> X-Newsreader: rn7.bas Lines: 19 Organization: Private Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news.belnet.be!newspump.monmouth.com!newspeer.monmouth.com!news-peer.gip.net!news.gsl.net!gip.net!EU.net!blackbush.xlink.net!ganesha.ganesha.com!shorter!combo.ganesha.com!peterk In article <761cva$n1c$4@nnrp02.primenet.com> nickb@primenet.com (Nick S Bensema) writes: > >What bugged me about Apple BASIC was that NONE of the versions used the >up-arrow key for anything. > >Commodore and Atari machines, including, I believe, the PET, used >a screen editor that let you move the cursor around and type >anywhere, and just parsed whatever line the cursor was on when you >hit RETURN. Yes, and that was the part written by Commodore and not Microsoft, AFAIK. This screen editor was one of the reason why I fell in love with the PET, while neither Tandy nor Apple stood any chance in comparison. -- Best Regards, Dr. Peter Kittel // E-Mail: Private Site in Frankfurt, Germany \X/ peterk @ combo.ganesha.com Deutsches Wort mit 4-mal "tz"? Atzventzkrantzkertze! (Uli Stein) ###### From: don@news.daedalus.co.nz (Don Stokes) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: 31 Dec 1998 07:41:42 GMT Organization: Daedalus Consulting Lines: 23 Message-ID: <76f9rm$frc$1@news.wlg.netlink.net.nz> References: <367F1C8E.5300C48C@jkmicro.com> <763v85$7js$1@news.wlg.netlink.net.nz> <7642ju$106e$1@nntp1.u.washington.edu> NNTP-Posting-Host: toyunix.zl2tnm.gen.nz Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.cwix.com!203.97.37.7!newsfeed.clear.net.nz!news.wlg.netlink.net.nz!don Tom Seddon wrote: >Adding new BASIC commands is possible, I believe you intercept the BRK >vector, trap "Mistake" or "Syntax error" messages, decide which command >caused said error (by examining the BASIC workspace in zero page) and >interpret it yourself. I suspect this would be tricky to program though. Would that work? Errors (from dim memory) were reported using BRK, ie: brk \ 6502 breakpoint instruction ($00) EQUB errorcode \ Byte errorcode EQUS "errormessage" \ String error message brk \ Terminating NUL. So you could handle the BRK instruction OK, but you were left with the problem of where to return to. The error handler didn't return, so the code following the terminating nul could be anything. I suppose if you disassembled the BASIC ROM around the offending address you could jiggle the stack back the way it oughta be and jump back into the code that would normally be executed after a successful keyword lookup, but it wouldn't exactly be portable across different versions of BASIC. -- Don Stokes, Networking Consultant http://www.daedalus.co.nz +64 25 739 724 ###### From: tangentSPAMCATCHER@cyberport.com (Warren Young) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Fri, 01 Jan 1999 06:50:42 GMT Organization: none Lines: 36 Message-ID: <368e702d.359201844@news.cyberport.com> References: <367F1C8E.5300C48C@jkmicro.com> <75lttd$pm2@boofura.swcp.com> <367EB46F.F2CC22AD@plano.net> NNTP-Posting-Host: 56k117-118.cyberport.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: macaw.cyberport.com 915173526 16313 204.134.118.117 (1 Jan 1999 06:52:05 GMT) X-Complaints-To: abuse@cyberport.com NNTP-Posting-Date: 1 Jan 1999 06:52:05 GMT X-Newsreader: Forte Agent 1.5/32.452 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.berkeley.edu!remarQ73!supernews.com!news.winstar.net!winstar!news.good.net!news.phoenix.good.net!news.cyberport.com!not-for-mail eric@fudge.uchicago.edu (Eric Fischer) wrote: >Charles Richmond wrote: >I don't have my copy here with me to verify, but I'm sure it was the >Model 100 because I posted a quote from the book in this newsgroup, >back in June of 1996: > > "I still help design algorithms and basic approaches, and > sometimes I look at code. But since I worked on the IBM > PC BASIC and the Model 100, I haven't had a chance to > actually create a program myself." (p. 72) I just verified this in the DDJ version of the book -- the quote is correct. >There must have been a reference to the Color Computer too, though, >because I remember there being an obvious typo where the book referred >to a 6800 instead of a 6809. I'll check for the details when I get >home tonight. The relevant quote is: "In the first four years of the company, there was no Microsoft program that I wasn't involved in actually writing and designing. In all those initial products, whether it was BASIC, FORTRAN, BASIC 6800, or BASIC 6502, not a line of code went out that I didn't look over. But now we have about 160 programmers, so I mostly do reviews of products and algorithms." Ain't cut-and-paste great? = Warren -- http://www.cyberport.com/~tangent/ = ICBM Address: 36.8274040 N, 108.0204086 W, alt. 1714m = = Dawn: The time when men of reason go to bed. ###### From: lucvdv@null.net (Luc Van der Veken) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Sat, 02 Jan 1999 09:29:57 GMT Organization: . Lines: 86 Message-ID: <368fe64b.3997067@news.uunet.be> References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <3681ebb1.12707449@news.newsguy.com> NNTP-Posting-Host: pool02b-194-7-145-232.uunet.be Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: Forte Agent 1.5/32.451 X-No-Archive: yes Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news-fra.maz.net!diablo.theplanet.net!join.news.pipex.net!pipex!krypton.inbe.net!INbe.net!not-for-mail Also sprach peterk@combo.ganesha.com (Dr. Peter Kittel) on Wed, 30 Dec 1998 15:28:44 +0100 to alt.folklore.computers: > In article <3681ebb1.12707449@news.newsguy.com> pg@sff.net (Paul Guertin) writes: > >On Tue, 22 Dec 1998 15:16:02 -0800, hnsngr@sirius.com (Ron Hunsinger) > >wrote: > >[Bugs in Applesoft] > >> One of my favorites is the following: > >> > >> 100 FOR X = 1 TO 10000 > >> 110 IF 1/X <> 1/X THEN PRINT X > >> 120 NEXT X > >> It's hard to imagine how 1/X could ever NOT be equal to itself, yet this > >> program will print out a distressingly large number of values of X for > >> which it isn't. > >Indeed. > Strange, this does not happen in AmigaBASIC (V2.0). I remember this exercise from my early computer days, but wasn't it if x <> 1/(1/x) then ... It would strike me as very odd that the same calculation (1/x) would give two different results when executed twice. In compiled languages, that's different. I remember finding out once that a compiler [I think it was a Fortran one] compiled fractional constants to different bit patterns than would be generated at runtime, i.e. X = 10. Y = 1./X IF(Y .EQ. 1./10.)... evaluated to .FALSE. (well, I don't know if that was the case for 10, but it was for some values). I remember that we deliberately used the "1./nn." form in the source because expressing it as a fraction would probably catch us, and it still did... When I just tried the 'x <> 1/(1/x)' thing, it generated a long list in PowerBasic and QuickBasic, but nothing at all in Visual Basic. What struck me (and then again, not) was that, as far as I could tell from reading the last page off screen, QB and PB generated the same list. It also reminded me of a fact I had almost forgotten: that some numbers can easily be represented with a limited number of decimals in base 10, but not in base 2: i.e., the number 8000 was in both lists. > > >One of my favorite Applesoft quirks is the way PRINT allows > >floating-point numbers to have more than one decimal point. > >This allows one to do arithmetic on software revision numbers. > > > >]PRINT 6.2.2 * 5.1 > >6.21.02 > > Funny, I also tried it in AmigaBASIC, and it does it differently. > Also no error message, but "6.2 1.02" as result. It obviously > handles the first number with two decimal points as two, "6.2" and > ".2". Entering "? 6.2.2 * 5.1" in a QB code pane automatically replaced it with "PRINT 6.2; .2 * 5.1" Typing the same in the direct pane resulted in exactly the same as you said (even with the same number of spaces). Visual basic ('debug.?' instead of '?'): zactly the same (except that in a code window, it made it '0.2' instead of '.2'). PowerBasic didn't do any auto-replacement in the code pane, but when running it, also the same "6.2 1.02" came out. No error message there, either. A bit surprising actually, that BASIC's from such different origins (at least for 3/4 of them) act so much alike. Luc "for portablilty, we can recommend BASIC(1)" VdVeken (1) 'cause it won't do all you want on _any_ system :-) -- Ad last, eye finally fount a sig. Mie word's spell ant stile checkers doesn't mother about. ###### From: $spam$@orion-com.com (Joe Thompson) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Sat, 02 Jan 1999 22:05:07 -0500 Organization: Orion Computer Consulting Lines: 17 Message-ID: <$spam$-0201992205080001@user-37ka4q2.dialup.mindspring.com> References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <3681ebb1.12707449@news.newsguy.com> <368fe64b.3997067@news.uunet.be> NNTP-Posting-Host: cf.45.13.42 X-Server-Date: 3 Jan 1999 03:04:26 GMT X-Newsreader: MT-NewsWatcher 2.4.4 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!newsfeed.cwix.com!4.1.16.34!cpk-news-hub1.bbnplanet.com!news.gtei.net!firehose.mindspring.com!$spam$ In article <368fe64b.3997067@news.uunet.be>, lucvdv@null.net (Luc Van der Veken) wrote: > It would strike me as very odd that the same calculation (1/x) > would give two different results when executed twice. We just went over this in another newsgroup. It's not that the calculation was being done differently, it's that in most BASICs what happens is: the first 1/x is pushed onto the stack, which stores it at a lower FP precision (10 places instead of 13, say) and then when that version is compared with the "fresher" (and untruncated) 1/x you get an "inequality". -- Joe -- Joe Thompson | http://kensey.home.mindspring.com/ $spam$@orion-com.com | O- He-Who-Grinds-the-Unworthy "While preceding your entrance with a grenade is a good tactic in Quake, it can lead to problems if attempted at work." -- C Hacking ###### From: $spam$@orion-com.com (Joe Thompson) Newsgroups: alt.folklore.computers Subject: Re: "Since all of you steal your software..." Date: Sat, 02 Jan 1999 22:17:28 -0500 Organization: Orion Computer Consulting Lines: 21 Message-ID: <$spam$-0201992217290001@user-37ka4q2.dialup.mindspring.com> References: <367F1C8E.5300C48C@jkmicro.com> <75ngp8$d2s$1@nnrp02.primenet.com> <75oe9l$b6$1@eiffel.swec.com> <75ossa$og8$6@nnrp03.primenet.com> <75p27m$10u0$1@nntp1.u.washington.edu> <3681ebb1.12707449@news.newsguy.com> <368fe64b.3997067@news.uunet.be> NNTP-Posting-Host: cf.45.13.42 X-Server-Date: 3 Jan 1999 03:16:49 GMT X-Newsreader: MT-NewsWatcher 2.4.4 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news-nyc.telia.net!news.maxwell.syr.edu!cpk-news-hub1.bbnplanet.com!news.gtei.net!firehose.mindspring.com!$spam$ In article <368fe64b.3997067@news.uunet.be>, lucvdv@null.net (Luc Van der Veken) wrote: > It also reminded me of a fact I had almost forgotten: that some > numbers can easily be represented with a limited number of > decimals in base 10, but not in base 2: i.e., the number 8000 was > in both lists. In general, after reducing a fraction to 1/x, the fraction is a terminating decimal only if x contains factors which are all factors of the base you're using. In base 10, that means 2 and 5. Obviously for prime bases, it only works for numbers which are powers of the base (e.g. in base 2, 1/x is a terminating decimal only for x that are powers of 2). Converting fractions between bases is simple if they're powers of each other, but otherwise the math, though simple, is tedious. -- Joe -- Joe Thompson | http://kensey.home.mindspring.com/ $spam$@orion-com.com | O- He-Who-Grinds-the-Unworthy "While preceding your entrance with a grenade is a good tactic in Quake, it can lead to problems if attempted at work." -- C Hacking