Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!news.glorb.com!news-in-01.newsfeed.easynews.com!easynews!core-easynews-01!easynews.com!en-nntp-11.dc1.easynews.com.POSTED!not-for-mail From: Robert Wessel Newsgroups: comp.arch Subject: Re: M68k add to memory is not a mistake any more Message-ID: References: X-Newsreader: Forte Agent 6.00/32.1186 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 79 X-Complaints-To: abuse@easynews.com Organization: Forte Inc. http://www.forteinc.com/apn/ X-Complaints-Info: Please be sure to forward a copy of ALL headers otherwise we will be unable to process your complaint properly. Date: Tue, 10 Apr 2012 13:03:19 -0500 X-Received-Bytes: 4129 Xref: csiph.com comp.arch:6477 On Tue, 10 Apr 2012 16:44:50 +0000 (UTC), timcaffrey@aol.com (Tim McCaffrey) wrote: >In article , >spamjunk@blueyonder.co.uk says... >> >>Morten Reistad wrote: >>> In article, >>> Tom Gardner wrote: >>>> kenney@cix.compulink.co.uk wrote: >>>>> Intel microprocessors were not intended for GP OS until >the 8086. The >>>>> 4004, 8008 and 8080 were all intended for calculators and >similar. >>>> >>>> IIRC the 8080 and 8085 were widely used in "GP" O/Ss, of >which >>>> CP/M was the best known and most widely remembered. Of >course, >>>> we may have different interpretations of what constitutes a >GP O/S. >>> >>> Read the first two lines again. They weren't _designed_ for GP >O/S >>> use. This use was an extended, later add-on, exposing a lot of >>> unintended challenges. >>> >>> The Z80 was. And the 6809. But not the earlier 68xx's nor the >>> 65xx chips. But nearly all of them got an OS. >> >>OK, now I'm interested. In what way was the Z80 designed >>for GP OSs that the 8080/8085 wasn't. The Z80 had a nicer >>hardware interface than the 8080/8085, plus a few more >>instructions (that IMHO weren't as useful as they appeared), >>but a prime marketing push of the Z80 was that it ran 8080/8085 >>code unchanged. Because that's what was commercially important. >> >>So far as I can remember, they both used the same OSs for >>the "hobbyist" uses (e.g. very arguably the CP/M world) >>and the "professional" uses based around e.g. the Intel >>Intellec Microcomputer Development System. >> >>*All* of the early (c'77-'80) professional s/w development >>that I saw, in many companies, was based on the Intellec blue >>boxes. Not on Z80s. >> >> >>> The "hobbyist" crowd was just a sideshow for the chip makers >>> until pretty late. The main game was huge volumes for clocks, >>> washing machines, calculators etc. >> >>Those weren't typical uses for 8080/8085. That was the >>TMS1000 market and maybe, possibly, the 4004 and 8008. >>Plus others long forgotten for good reasons, sanity >>included. >> >>The 8080/8085/Z80 market was for higher-end uses, e.g. >>embedded systems and process control. >> >> >I'm no 8080 ISA expert, but I just double checked. The 8080 has >no way to store the contents of the SP register. Which means you >can't do a task switch. The Z-80 added that capability. The usual technique was to zero HL, and DAD (Double Add) SP to HL to get the value to save. A bit clumsy, but hardly impossible. If you were doing a task switch, you had to be sure to save the PSW first, since that sequence would alter some flags (and obviously HL). I don't remember that the Z-80 made that any more direct (although there were more variations of the same approach - more options for the source register when loading SP, and more options for the Double-Add* target). But I may not be remembering it, very little of what I did on 8080/Z-80 systems was allowed to use the Z-80 extensions. *Allowing that for Z-80 assembly, the DAD mnemonic was replaced with a form of ADD.