Path: chonsp.franklin.ch!usenet From: Neil Franklin Newsgroups: alt.folklore.computers Subject: ZX81 video (was Re: Living legends) Date: 27 Apr 1999 22:32:48 +0200 Organization: My own Private Self Lines: 48 Sender: neil@chonsp.franklin.ch Message-ID: <6ur9p53itr.fsf_-_@chonsp.franklin.ch> References: <3714CF96.4FF41330@mc.hik.se> <8DABB1185phoenyx@news.southwind.net> <371a6236.10946648@news.earthlink.net> <371f8438.0@news.iglou.com> <37202531.82C2CD2D@tnglwood.demon.co.uk> <7fqb72$18du$2@ausnews.austin.ibm.com> <7fs8uu$hii$3@ligarius.ultra.net> <37235D9B.683BB191@virgin.net> <37262f53.1931100@news.zetnet.co.uk> X-Newsreader: Gnus v5.3/Emacs 19.34 rob.nicholson@zetnet.co.uk (Rob Nicholson) writes: > > >A common UK micro-computer, the ZX81 from 1981, was sold as standard > >with 1K of RAM. This RAM was also used as the the display RAM as well, > >addressing a 32x24 character matrix, and a clever system where a newline > >character was used to delimit every line of the display, so that there > >was more than around 300 bytes free for user programs. > > The display was rather innovative. Could you explain this process of displaying a bit more? > The newline character also happened to be the > Z80 halt instruction. This was all to do with the fact that the Z80 itself > generated the video display! What good would an HALT at the end of the video line do? Surely the Z80 was not executing the character codes? They would be senseless as opcodes. And stopping the Z80 from running at the end of each line does not seen like sensible. Any more details on how this worked? > None of the video chip nonsense :-) Surely there must have been some form of I/O circuitry to generate the display. Where else did the video out signal come from? Or do you mean no DMA stuff? > This lead to > the FAST and SLOW instructions where, in fast mode, the display was turned off > allowing the ~4MHz Z80 to devote all it's time to your program and not 75% of it > to generating the display. No cycle stealing certainly makes it faster (or less slow). -- Neil Franklin, Nerd, Geek, Unix Guru, Hacker, Mystic neil@franklin.ch.remove http://neil.franklin.ch/ 20th century record companies fit the 21st century data highways as good as 19th century stagecoaches fit the 20th century freeways ###### From: "AndyC" Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Tue, 27 Apr 1999 22:49:12 +0100 Organization: University of East Anglia, Norwich, Norfolk, NR47TJ, UK Lines: 58 Message-ID: <7g5bhl$oo6@cpca3.uea.ac.uk> References: <3714CF96.4FF41330@mc.hik.se> <8DABB1185phoenyx@news.southwind.net> <371a6236.10946648@news.earthlink.net> <371f8438.0@news.iglou.com> <37202531.82C2CD2D@tnglwood.demon.co.uk> <7fqb72$18du$2@ausnews.austin.ibm.com> <7fs8uu$hii$3@ligarius.ultra.net> <37235D9B.683BB191@virgin.net> <37262f53.1931100@news.zetnet.co.uk> <6ur9p53itr.fsf_-_@chonsp.franklin.ch> NNTP-Posting-Host: oak6d.vlg1.uea.ac.uk Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news0.de.colt.net!colt.net!news-lond.gip.net!news.gsl.net!gip.net!diablo.theplanet.net!diablo.dera.gov.uk!server1.netnews.ja.net!cpca3.uea.ac.uk!news Neil Franklin wrote in message news:6ur9p53itr.fsf_-_@chonsp.franklin.ch... > rob.nicholson@zetnet.co.uk (Rob Nicholson) writes: > > > > >A common UK micro-computer, the ZX81 from 1981, was sold as standard > > >with 1K of RAM. This RAM was also used as the the display RAM as well, > > >addressing a 32x24 character matrix, and a clever system where a newline > > >character was used to delimit every line of the display, so that there > > >was more than around 300 bytes free for user programs. Although if you had the "full" 16k the display was never compressed. > What good would an HALT at the end of the video line do? Surely the > Z80 was not executing the character codes? They would be senseless as > opcodes. > > And stopping the Z80 from running at the end of each line does not seen > like sensible. > > Any more details on how this worked? From what I remember, the display routine scans through the display line, sending the appropriate value to the display hardware. However if a certain bit was set, it executed the instruction there instead, this would be HALT or RET depending on which bit of the display you were at. > Surely there must have been some form of I/O circuitry to generate the > display. Where else did the video out signal come from? > > Or do you mean no DMA stuff? It was a *very* limited thing with the display decoding done almost entirely by the Z80 itself. It made it quite flexible, you could even do a sort-of high resolution display. > > This lead to > > the FAST and SLOW instructions where, in fast mode, the display was turned off > > allowing the ~4MHz Z80 to devote all it's time to your program and not 75% of > it > > to generating the display. > > No cycle stealing certainly makes it faster (or less slow). True, although it is rather disconcerting when the screen keeps disappearing. :-) Thank goodness the speccy came along. AndyC ###### From: don@news.daedalus.co.nz (Don Stokes) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: 27 Apr 1999 23:19:35 GMT Organization: Daedalus Consulting Lines: 24 Message-ID: <925255174.346148@estelle.paradise.net.nz> References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <37262f53.1931100@news.zetnet.co.uk> <6ur9p53itr.fsf_-_@chonsp.franklin.ch> NNTP-Posting-Host: estelle.paradise.net.nz X-Trace: titan.xtra.co.nz 925255175 1483780 203.96.152.5 (27 Apr 1999 23:19:35 GMT) X-Complaints-To: abuse@xtra.co.nz NNTP-Posting-Date: 27 Apr 1999 23:19:35 GMT Cache-Post-Path: estelle.paradise.net.nz!unknown@p16-cable.paradise.net.nz X-Cache: nntpcache 2.3.3b4 (see http://www.nntpcache.org/) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.belnet.be!newspump.monmouth.com!newspeer.monmouth.com!newsfeed.wli.net!su-news-hub1.bbnplanet.com!lsanca1-snf1!news.gtei.net!news.netgate.net.nz!news.xtra.co.nz!don Neil Franklin wrote: >Surely there must have been some form of I/O circuitry to generate the >display. Where else did the video out signal come from? Just a little bit of analogue glue. The video signal was simply bit-banged in real time. (There was a TV modulator, but that could be bypassed and fed to a standard video monitor with only very minor surgery.) The character bitmaps were in ROM. There was some kind of timer interrupt to make this work. >No cycle stealing certainly makes it faster (or less slow). It didn't steal anything. You voluntarily gave up the entire system for 3/4 of the time... 8-) In FAST mode, the display bit-banging only happened when the system was waiting for keyboard input; the rest of the time the screen was blank. With most of the 3.5 MHz or thereabouts Z80A to yourself the thing was no slug. -- Don Stokes, Networking Consultant http://www.daedalus.co.nz +64 25 739 724 ###### From: dg@tao.co.uk (David Given) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Wed, 28 Apr 1999 13:47:59 +0100 Organization: I'm organised? Wow! Message-ID: References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <37262f53.1931100@news.zetnet.co.uk> <6ur9p53itr.fsf_-_@chonsp.franklin.ch> <925255174.346148@estelle.paradise.net.nz> NNTP-Posting-Host: taos.demon.co.uk X-NNTP-Posting-Host: taos.demon.co.uk:158.152.120.224 X-Trace: news.demon.co.uk 925306527 nnrp-11:20834 NO-IDENT taos.demon.co.uk:158.152.120.224 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 X-Newsreader: knews 1.0b.1 Content-Type: text/plain; charset=us-ascii Lines: 20 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news0.de.colt.net!colt.net!dispose.news.demon.net!demon!news.demon.co.uk!demon!taos.demon.co.uk!pearl.tao.co.uk!nobody In article <925255174.346148@estelle.paradise.net.nz>, don@news.daedalus.co.nz (Don Stokes) writes: [...] > In FAST mode, the display bit-banging only happened when the system was > waiting for keyboard input; the rest of the time the screen was blank. > With most of the 3.5 MHz or thereabouts Z80A to yourself the thing was > no slug. 3.5? I thought the ZX81 was 1MHz? The *Spectrum* was 4MHz (and the BBC was a 2MHz 6502, and I'd still like to know how BBC Basic managed to be an order of magnitude faster than Speccy Basic considering that it was (a) more powerful and (b) running on a slower computer). -- +- David Given ---------------McQ-+ A three-legged dog walks into a saloon in | Work: dg@tao-group.com | the Old West. He sidles up to the bar and | Play: dgiven@iname.com | announces: "I'm looking for the man who +- http://wired.st-and.ac.uk/~dg -+ shot my paw." ###### From: "T.W. Seddon" Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: 28 Apr 1999 15:02:44 GMT Organization: University of Newcastle upon Tyne Message-ID: <7g77uk$lt6$1@ucsnew1.ncl.ac.uk> References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> NNTP-Posting-Host: aidan.ncl.ac.uk X-Newsreader: TIN [version 1.2 PL2] Lines: 37 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.belnet.be!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!dispose.news.demon.net!demon!colt.net!newspeer.clara.net!news.clara.net!nntp.news.xara.net!xara.net!server5.netnews.ja.net!news.ncl.ac.uk!aidan!n5013784 David Given (dg@tao.co.uk) wrote: > 3.5? I thought the ZX81 was 1MHz? > The *Spectrum* was 4MHz (and the BBC was a 2MHz 6502, and I'd still like > to know how BBC Basic managed to be an order of magnitude faster than > Speccy Basic considering that it was (a) more powerful and (b) running on > a slower computer). Sure the Spectrum wasn't 3.5MHz? I've heard that the 6502 is about the same speed as a Z80 at twice the clock speed, but I can't remember why. (I am sure someone else will know.) Also the 6502 instructions take between 2 and 7 cycles, whereas many of the Z80 ones are slower. There is something to do with memory accesses too, but once again I forget the details. Another point is that the bottom 16K of the Spectrum's RAM was shared between the video system and the CPU, with the video system having priority for memory access. When accessing the bottom 16K the CPU could get blocked on occasion. The BBC didn't have this (but the Electron did, in the higher-bandwidth MODEs 0 to 3). The BBC's display circuitry accessed the memory when the CPU didn't (presumably there was a 4MHz clock somewhere, not sure about this) so even in the higher bandwidth modes the CPU was not slowed down. Furthermore the author(s?) of BBC BASIC had 16K to play with, whereas Spectrum BASIC fits into 16K that is shared with the operating system. However, beware of claims that BBC BASIC is more powerful than Spectrum BASIC; one of the reasons behind the upgrade from BASIC 1 to BASIC 2, other than the bug fixes, was that it was discovered the floating-point in the ZX81's BASIC was more accurate than the BBC's... -- --Tom this space filled with this | this space not filled with this space filled intentionally ............. | with this intentionally unintentionally .... ###### From: Larry Jones Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Wed, 28 Apr 1999 17:14:42 -0400 Organization: SDRC Worldwide Services Lines: 16 Distribution: usa Message-ID: <37277A42.41C67EA6@sdrc.com> References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <7g77uk$lt6$1@ucsnew1.ncl.ac.uk> NNTP-Posting-Host: thor.sdrc.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.0Gold (X11; U; BSD/OS 3.1 i386) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.cwix.com!204.210.223.23!dustdevil.neo.rr.com!cyclone.columbus.rr.com!dca1-feed3.news.digex.net!digex!sdrc.com!usenet T.W. Seddon wrote: > > I've heard that the 6502 is about the same speed as a Z80 at twice the > clock speed, but I can't remember why. (I am sure someone else will know.) The 6502 used a two-phase clock, which allowed it to do twice as much work per clock cycle as the Z80 with its single-phase clock. Which is why... > Also the 6502 instructions take between 2 and 7 cycles, whereas many of > the Z80 ones are slower. -Larry Jones Any game without push-ups, hits, burns or noogies is a sissy game. -- Calvin ###### From: rob.nicholson@zetnet.co.uk (Rob Nicholson) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Wed, 28 Apr 1999 21:34:03 GMT Organization: Rainow Systems Ltd. Reply-To: rob.nicholson@zetnet.co.uk Message-ID: <37297ac6.14894922@news.zetnet.co.uk> References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <37262f53.1931100@news.zetnet.co.uk> <6ur9p53itr.fsf_-_@chonsp.franklin.ch> <925255174.346148@estelle.paradise.net.nz> X-Newsreader: Forte Agent 1.5/32.452 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 3 NNTP-Posting-Host: manr-079.dialup.zetnet.co.uk X-Trace: news.zetnet.co.uk 925335248 493 194.247.43.209 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news0.de.colt.net!colt.net!ayres.ftech.net!news.ftech.net!peer.news.zetnet.net!master.news.zetnet.net!not-for-mail >3.5? I thought the ZX81 was 1MHz? No, the ZX81 was 3.5MHz ###### From: rob.nicholson@zetnet.co.uk (Rob Nicholson) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Wed, 28 Apr 1999 21:34:06 GMT Organization: Rainow Systems Ltd. Reply-To: rob.nicholson@zetnet.co.uk Message-ID: <372a7b86.15086260@news.zetnet.co.uk> References: <8DABB1185phoenyx@news.southwind.net> <371a6236.10946648@news.earthlink.net> <371f8438.0@news.iglou.com> <37202531.82C2CD2D@tnglwood.demon.co.uk> <7fqb72$18du$2@ausnews.austin.ibm.com> <7fs8uu$hii$3@ligarius.ultra.net> <37235D9B.683BB191@virgin.net> <37262f53.1931100@news.zetnet.co.uk> <6ur9p53itr.fsf_-_@chonsp.franklin.ch> X-Newsreader: Forte Agent 1.5/32.452 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 163 NNTP-Posting-Host: manr-079.dialup.zetnet.co.uk X-Trace: news.zetnet.co.uk 925335250 493 194.247.43.209 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news0.de.colt.net!colt.net!ayres.ftech.net!news.ftech.net!peer.news.zetnet.net!master.news.zetnet.net!not-for-mail >Could you explain this process of displaying a bit more? Pass! It was the first computer I owned so I never reached the dizzy heights of how the display worked. This page has loads of ZX81 links: http://easyweb.easynet.co.uk/~stevemcd/zx81.htm And this is some text on how to generate hires which gives some insight into how the display worked.... Honest! The ZX81 High Res Core Routine - As used by Rock Crush and Dans Revenge Introduction As a lot of people have been asking me recently, as to how the high res routines actually work, in response, I have decided to detail and release the following Z80 code: (Revision 3.0R - Steven McDonald - July, 1997) Technical Notes: A call to HI-RES will start generating a high res display. The HRESGEN routine address is loaded into the IX register and will take over the display output - 50 times a second (UK). A further call to LO-RES will start to generate the normal lo res display again. The Z80 "I" register normally holds the start of the ZX81 character table / 256 (i.e. 30 * 256 = 7680). As nearly all of the ROM characters have a blank line at the top, the high res routine changes this to 12 which is at ROM address 3072 which I found contains much more interesting bit-patterns than other values which can be used. Due to hardware limitations, the "I" register can ONLY point into the ROM - and not RAM (hence the reason for only pseudo high res - sigh!). The high res routine works by fooling the ULA into thinking it is only on the top line of a character - every time! It cleverly does this by resetting and restarting the ULA ROW counter at every VSYNC pulse with the "IN A,(C)" and "OUT (FF),A" code sequence. This allows the same row of patterns to be used for every one of the 192 tv lines. As this procedure is carried out for every tv line, true high res is achieved vertically - but not horizontally, as this depends on the limited bit patterns stored at the location pointed to by: (the "I" register * 256 + 8 * the value of the "character" stored in the display buffer) Phew! This high res display buffer is stored at (E71E+0021) - 8000 i.e. at address 673F - in this example routine. It consists of 32 decimal display characters or "patterns", followed by a 201 decimal byte which just happens to be the Z80 "RET" opcode. These "patterns" can only be in the range (0 - 63) i.e. BIT 6 must be zero. BIT 7 is used to invert the video signal before it is ouput to the screen via the ULA shift register. This is repeated 192 decimal times for the complete high res display buffer! In lo res, each line ends with a 118 decimal byte - which is the Z80 opcode, "HALT" - which conveniently waits for the next interrupt! Basically, any byte with BIT 6 set stored in the display buffer, tells the ULA to stop outputting tv data and execute that instruction. As it happens "RET" also has BIT 6 set so is executed, thus cleverly returning control to the high res display routine! These routines work on a real 16K ZX81 and provide pseudo high res displays. The ZX81 emulator, "XTENDER" also follows what is going on, by trapping an immediate change of value to the IX register pair and kicking in its own high res screen handler to generate the correct picture. Therefore, under the emulator, this high res routine is not actually executed as such - just cleverly emulated! "XTENDER" first tries to emulate the pseudo high res by looking for the characteristically shaped 6k display buffer in the bottom 16k of RAM and outputting it to the PC screen appropriately. If it cannot locate this display buffer, normal resolution will be switched back in again. The Routines HI-RES: HALT ; Wait for an interrupt - used to sync the changeover! LD A,(FRAMES) ; Wait LD C,A ; for the SYNC1: LD A,(FRAMES) ; next CP C ; new JR Z SYNC1 ; tv frame - used to sync the changeover! LD A,0C ; Change the value of the "I" Register - LD I,A ; so the top line chosen is more interesting! LD IX,HRESGEN ; Pointer to the replacement high res routine set! RET ; Return LO-RES: HALT ; Wait for an interrupt - used to sync the changeover! LD A,(FRAMES) ; Wait LD C,A ; for the SYNC2: LD A,(FRAMES) ; next CP C ; new JR Z SYNC2 ; tv frame - used to sync the changeover! LD A,1E ; Reset the "I" Register LD I,A ; to the ROM default (30 decimal) LD IX,0281 ; Pointer to the ROM display routine set! RET ; Return HRESGEN:LD HL,E71E ; Start address of (HRES DFILE - 33) + 32768 ; i.e. Set BIT 15 of address for ULA LD DE,0021 ; Amount to add each time for address of next line DI ; Disable interrupts LD C,FE ; The ULA port address LD B,16 ; Delay to sync the tv signal SYNC3: DJNZ SYNC3 ; Sync it! LD B,C0 ; The amount of hi res lines: 192 = 8*24 GENLINE:IN A,(C) ; Fool the ULA into thinking it is only on the OUT (FF),A ; top "line" of a character by resetting the ULA ROW ; counter (exactly timed with every tv VSYNC pulse) ADD HL,DE ; Calculate next screen address CALL ULAOUT ; and actually "jump" to it! DEC B ; Decrease counter JP NZ GENLINE ; Repeat until all done CALL 0292 ; ROM housekeeping routines - must be called! CALL 0220 ; ROM housekeeping routines - must be called! LD IX,HRESGEN ; Reload the hi res handler address as the ROM ; routines above reset it! JP 02A4 ; Give control back to the ROM for now ULAOUT: JP (HL) ; Yes, actually, jump into the display file! - ; The ULA will handle the rest - the Z80 "RET" ; op-code has BIT 6 SET (C9), so will be ; "executed" and control will return to the ; above "calling routine" - honest! Support ------- If you have any further questions about these routines, contact me at the email address below: stevemcd@easynet.co.uk The Sinclair ZX81 Support Page on the WWW now at: ------------------------------------------------- http://surf.to/zx81 Join the mailing list for the latest updates! This document: (C)1997 Tech/Worlde - http://welcome.to/techworlde ----------------------------------------------------------------- ###### From: Philippe Nave Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Thu, 29 Apr 1999 10:18:03 -0600 Organization: Lucent Technologies Lines: 52 Message-ID: <3728863B.5175A9BB@lucent.com> References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <7g77uk$lt6$1@ucsnew1.ncl.ac.uk> <37277A42.41C67EA6@sdrc.com> NNTP-Posting-Host: cof110nave.dr.lucent.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 4.06 [en] (WinNT; U) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!netnews.com!feeder.qis.net!news-peer.gip.net!news.gsl.net!gip.net!den-news-01.qwest.net!qwest!nntphub.cb.lucent.com!news David Given wrote: > > I remember the CBM disk drives had two 6502 processors (and the main > computer had one --- I'm sure there's some logic there somewhere) with > the clocks connected out of phase. So that while one processor was > doing memory access, the other was processing. I believe that one > processor did > the low-level floppy disc access and the other ran the DOS. They > communicated via shared memory. > > Hmm. SMB on a 6502... Oh, my. I'd forgotten those old beasties. Model 8050, I think it was - a cabinet with two full-height 5.25" floppy drives, connected to the CBM with an IEEE-488 cable. Many's the evening I would stack up the latest shipment of 8050's in the back of the PC store, fire up one CBM, and start the long- running disk drive diagnostic on one unit after the other, moving the cable from 8050 to 8050 and letting the drives run the tests completely unattended. If an 8050 had problems, it would blink its LED in a characteristic pattern. I remember mulling over the feasibility of writing a piece of code that would crawl across the interface cable, take up residence in the 8050's on-board controller, and run there; I think the idea was to try and work around copy protection, or something. It would have been neat to install something co-resident with the DOS on the disk drive and do 'distributed processing' with 6502s, though.. Has anyone else ever worked with a "Super Pet?" It was a CBM with 96K (yes, 96 KILObytes... quit giggling!), but the upper memory was a set of 16KB blocks that were accessed with some kind of bizarre bank-switching technique. We had one in the store, but it never sold; the only app we had that was written to fully use the extra memory was (I think) some kind of database app called (maybe) Ozz or something. Wow... it's been a LOOOONG time since I thought about that stuff. Those machines were quite well-designed for the time; I remember selling Visicalc (along with its custom ROM), the database apps (I keep thinking of Ozz, and something called Jinsam from Jini Microsystems or somebody), and a word processing app whose name I can't recall. Philippe -- ======================================================================= Philippe D. Nave, Jr.| 'Cry havoc, and let slip the dogs of war!' Denver, Colorado USA | How's my posting? 1-800-DEV-NULL pnave@lucent.com | Reality 2.0: Score counter, extra men, and hints ###### From: Paul Grayson Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Thu, 29 Apr 1999 11:30:07 +0100 Organization: Sirius Cybernetics Corporation Lines: 35 Message-ID: <372834AF.C2C1370F@virgin.net> References: <8DABB1185phoenyx@news.southwind.net> <371a6236.10946648@news.earthlink.net> <371f8438.0@news.iglou.com> <37202531.82C2CD2D@tnglwood.demon.co.uk> <7fqb72$18du$2@ausnews.austin.ibm.com> <7fs8uu$hii$3@ligarius.ultra.net> <37235D9B.683BB191@virgin.net> <37262f53.1931100@news.zetnet.co.uk> <6ur9p53itr.fsf_-_@chonsp.franklin.ch> <372a7b86.15086260@news.zetnet.co.uk> NNTP-Posting-Host: 212.250.194.200 Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 4.51 [en] (X11; I; Linux 2.2.7 i586) X-Accept-Language: en Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.belnet.be!newspump.monmouth.com!newspeer.monmouth.com!newsfeed.amsterdam.nl.net!sun4nl!uunet!ams.uu.net!ffx.uu.net!in4.uu.net!news7-gui.server.ntli.net!news-feed.ntli.net!shippo.virgin.net!nobody > HI-RES: HALT ; Wait for an interrupt - used to sync the changeover! > LD A,(FRAMES) ; Wait > LD C,A ; for the > SYNC1: LD A,(FRAMES) ; next > CP C ; new > JR Z SYNC1 ; tv frame - used to sync the changeover! Ahh - hooking the interrupt and then counting clock ticks until the video trace is in the correct place. Brings me back to David Webb's book on Spectrum assembly language released in around 1985. I will I still owned it, it was a wonderful book. He had one routine to increase the colour resolution of the Spectrum by a value of 8, that worked in a simillar way. Hook the interrupt. Execute dummy instructions until the writable part of the screen was being generated. Change the colour attributes for that row. Repeat above for all remaining rows. Due to very clever timing this actually worked without annoying flicker. Unfortunatly there was only enough CPU time available between sucessive scanlines to update 8 of the 32 character cells. Hooking the interrupt on a Spectrum was difficult. The Z80s interrupt entry point is computed using the I register as the MSB and a value obtained from the I/O bus as the LSB. The latter was always 0 on bare machines, but most hardware addons polluted the bus with garbage. This meant setting up a table of 257 bytes each containing the same value, so that no matter what the LSB contained, the start address of the interrupt routine was constant. At least that is what I assumed was performed - it was around 14 years ago that I last looked into this. ###### From: dg@tao.co.uk (David Given) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Thu, 29 Apr 1999 13:08:17 +0100 Organization: I'm organised? Wow! Message-ID: References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <7g77uk$lt6$1@ucsnew1.ncl.ac.uk> <37277A42.41C67EA6@sdrc.com> NNTP-Posting-Host: taos.demon.co.uk X-NNTP-Posting-Host: taos.demon.co.uk:158.152.120.224 X-Trace: news.demon.co.uk 925390866 nnrp-04:23562 NO-IDENT taos.demon.co.uk:158.152.120.224 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 X-Newsreader: knews 1.0b.1 Content-Type: text/plain; charset=us-ascii Lines: 21 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!dispose.news.demon.net!demon!news.demon.co.uk!demon!taos.demon.co.uk!pearl.tao.co.uk!nobody In article <37277A42.41C67EA6@sdrc.com>, Larry Jones writes: [...] > The 6502 used a two-phase clock, which allowed it to do twice as much > work per clock cycle as the Z80 with its single-phase clock. Which is > why... I remember the CBM disk drives had two 6502 processors (and the main computer had one --- I'm sure there's some logic there somewhere) with the clocks connected out of phase. So that while one processor was doing memory access, the other was processing. I believe that one processor did the low-level floppy disc access and the other ran the DOS. They communicated via shared memory. Hmm. SMB on a 6502... -- +- David Given ---------------McQ-+ This is a test. This is only a test. Had | Work: dg@tao-group.com | this been a real emergency, you would all | Play: dgiven@iname.com | be dead by now. +- http://wired.st-and.ac.uk/~dg -+ ###### Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) From: lisard@zetnet.co.uk X-Everything: Net-Tamer V 1.08X Date: 29 Apr 1999 21:05:49 GMT Lines: 23 Message-ID: <3728c9ad$0$489@news.zetnet.co.uk> NNTP-Posting-Host: man-103.dialup.zetnet.co.uk X-Trace: news.zetnet.co.uk 925419949 489 194.247.40.132 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!newsfeed.icl.net!newspeer.clara.net!news.clara.net!peernews!peernews.manap.net!peer.news.zetnet.net!master.news.zetnet.net!not-for-mail On 1999-04-28 dg@tao.co.uk(DavidGiven) said: :don@news.daedalus.co.nz (Don Stokes) writes: :[...] :> In FAST mode, the display bit-banging only happened when the :>system was waiting for keyboard input; the rest of the time the :>screen was blank. With most of the 3.5 MHz or thereabouts Z80A to :>yourself the thing was no slug. :3.5? I thought the ZX81 was 1MHz? Nope. The ZX81 was 3.25MHz. The Spectrum was 3.5MHz. I'd guess that these timings were chosen because they coincided well with with the screen circuitry. (The ZX81 crystal is 6.5MHz, as is the pixel rate. A Z80 NOP is 4 cycles, and you get 8 pixels in the same width. A horizontal refresh rate of 15625 lines per second gives you 416 pixels per line, with 256 visible; the vertical rate is 312 lines, with 192 visible. So on most TVs you'll get perfectly square pixels.) -- Communa (lisard@zetnet.co.uk) -- you know soft spoken changes nothing ###### Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) From: lisard@zetnet.co.uk X-Everything: Net-Tamer V 1.08X Date: 29 Apr 1999 21:05:49 GMT Lines: 23 Message-ID: <3728c9ad$0$489@news.zetnet.co.uk> NNTP-Posting-Host: man-103.dialup.zetnet.co.uk X-Trace: news.zetnet.co.uk 925419949 489 194.247.40.132 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!newsfeed.icl.net!newspeer.clara.net!news.clara.net!peernews!peernews.manap.net!peer.news.zetnet.net!master.news.zetnet.net!not-for-mail On 1999-04-28 dg@tao.co.uk(DavidGiven) said: :don@news.daedalus.co.nz (Don Stokes) writes: :[...] :> In FAST mode, the display bit-banging only happened when the :>system was waiting for keyboard input; the rest of the time the :>screen was blank. With most of the 3.5 MHz or thereabouts Z80A to :>yourself the thing was no slug. :3.5? I thought the ZX81 was 1MHz? Nope. The ZX81 was 3.25MHz. The Spectrum was 3.5MHz. I'd guess that these timings were chosen because they coincided well with with the screen circuitry. (The ZX81 crystal is 6.5MHz, as is the pixel rate. A Z80 NOP is 4 cycles, and you get 8 pixels in the same width. A horizontal refresh rate of 15625 lines per second gives you 416 pixels per line, with 256 visible; the vertical rate is 312 lines, with 192 visible. So on most TVs you'll get perfectly square pixels.) -- Communa (lisard@zetnet.co.uk) -- you know soft spoken changes nothing ###### From: rob.nicholson@zetnet.co.uk (Rob Nicholson) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Thu, 29 Apr 1999 18:41:32 GMT Organization: Rainow Systems Ltd. Reply-To: rob.nicholson@zetnet.co.uk Message-ID: <3729a126.37540270@news.zetnet.co.uk> References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <7g77uk$lt6$1@ucsnew1.ncl.ac.uk> <37277A42.41C67EA6@sdrc.com> X-Newsreader: Forte Agent 1.5/32.452 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit NNTP-Posting-Host: manr-003.dialup.zetnet.co.uk X-Trace: news.zetnet.co.uk 925411297 494 194.247.43.133 Lines: 8 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.belnet.be!news-feed.inet.tele.dk!bofh.vszbr.cz!dispose.news.demon.net!demon!peer.news.zetnet.net!master.news.zetnet.net!not-for-mail >clocks connected out of phase. So that while one processor was doing >memory access, the other was processing. I believe that one processor did >the low-level floppy disc access and the other ran the DOS. They Entirely probable. By the time the C64 came along, it had dropped down to one processor doing the I/O and GCR encoding/decoding. Rob. ###### From: rob.nicholson@zetnet.co.uk (Rob Nicholson) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Thu, 29 Apr 1999 18:41:33 GMT Organization: Rainow Systems Ltd. Reply-To: rob.nicholson@zetnet.co.uk Message-ID: <372aa189.37639152@news.zetnet.co.uk> References: <8DABB1185phoenyx@news.southwind.net> <371a6236.10946648@news.earthlink.net> <371f8438.0@news.iglou.com> <37202531.82C2CD2D@tnglwood.demon.co.uk> <7fqb72$18du$2@ausnews.austin.ibm.com> <7fs8uu$hii$3@ligarius.ultra.net> <37235D9B.683BB191@virgin.net> <37262f53.1931100@news.zetnet.co.uk> <6ur9p53itr.fsf_-_@chonsp.franklin.ch> <372a7b86.15086260@news.zetnet.co.uk> <372834AF.C2C1370F@virgin.net> X-Newsreader: Forte Agent 1.5/32.452 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit NNTP-Posting-Host: manr-003.dialup.zetnet.co.uk X-Trace: news.zetnet.co.uk 925411299 494 194.247.43.133 Lines: 36 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!newsfeed.tli.de!newsfeed.nacamar.de!dispose.news.demon.net!demon!diablo.theplanet.net!news5.cableinet.net!peer.news.zetnet.net!master.news.zetnet.net!not-for-mail >Ahh - hooking the interrupt and then counting clock ticks until the >video trace is in the correct place. Brings me back to David Webb's book >on Spectrum assembly language released in around 1985. I will I still >owned it, it was a wonderful book. Memories indeed, >He had one routine to increase the colour resolution of the Spectrum by >a value of 8, that worked in a simillar way. John White did this on one of our games at Mr. Micro - Koronis Rift I think. His routine did something similar to get a rainbow effect on the TV screen. >Due to very clever timing this actually worked without annoying flicker. >Unfortunatly there was only enough CPU time available between sucessive >scanlines to update 8 of the 32 character cells. Fortunately, the mini TV's screens where at the top of the screen so it only had to do this for the first 3 character rows. >Hooking the interrupt on a Spectrum was difficult. The Z80s interrupt >entry point is computed using the I register as the MSB and a value >obtained from the I/O bus as the LSB. The latter was always 0 on bare >machines, but most hardware addons polluted the bus with garbage. This >meant setting up a table of 257 bytes each containing the same value, so >that no matter what the LSB contained, the start address of the >interrupt routine was constant. At least that is what I assumed was >performed - it was around 14 years ago that I last looked into this. Sounds about right although it wasn't exactly garbage :-) In this I/O mode, the Z80 expects an external device to put the low byte on the bus in order to implement a 128 entry jump table. This wasn't implemented on the Spectrum so you had to do as you describe: fill the table with something like $FEFE. I seem to remember trying all sorts of values to try and prevent holes in the memory map. Rob. ###### From: "AndyC" Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Thu, 29 Apr 1999 22:52:40 +0100 Organization: University of East Anglia, Norwich, Norfolk, NR47TJ, UK Lines: 19 Message-ID: <7gakg7$omf@cpca3.uea.ac.uk> References: <8DABB1185phoenyx@news.southwind.net> <371a6236.10946648@news.earthlink.net> <371f8438.0@news.iglou.com> <37202531.82C2CD2D@tnglwood.demon.co.uk> <7fqb72$18du$2@ausnews.austin.ibm.com> <7fs8uu$hii$3@ligarius.ultra.net> <37235D9B.683BB191@virgin.net> <37262f53.1931100@news.zetnet.co.uk> <6ur9p53itr.fsf_-_@chonsp.franklin.ch> <372a7b86.15086260@news.zetnet.co.uk> <372834AF.C2C1370F@virgin.net> <372aa189.37639152@news.zetnet.co.uk> NNTP-Posting-Host: oak6d.vlg1.uea.ac.uk Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!nntp.news.xara.net!xara.net!server5.netnews.ja.net!server3.netnews.ja.net!server1.netnews.ja.net!cpca3.uea.ac.uk!news Rob Nicholson wrote in message news:372aa189.37639152@news.zetnet.co.uk... > Sounds about right although it wasn't exactly garbage :-) In this I/O > mode, the Z80 expects an external device to put the low byte on the bus > in order to implement a 128 entry jump table. This wasn't implemented > on the Spectrum so you had to do as you describe: fill the table with > something like $FEFE. I seem to remember trying all sorts of values > to try and prevent holes in the memory map. There was a trick though. You could make use of a bit of unused space in the ROM, IIRC. Although that went wrong when the later 128K machines came out. AndyC ###### From: rob.nicholson@zetnet.co.uk (Rob Nicholson) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Fri, 30 Apr 1999 11:21:59 GMT Organization: Rainow Systems Ltd. Reply-To: rob.nicholson@zetnet.co.uk Message-ID: <37298f74.6862647@news.zetnet.co.uk> References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <7g77uk$lt6$1@ucsnew1.ncl.ac.uk> <37277A42.41C67EA6@sdrc.com> <3728863B.5175A9BB@lucent.com> <7v4slz1a7m.fsf@axue00.andr.ub.com> X-Newsreader: Forte Agent 1.5/32.452 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit NNTP-Posting-Host: manr-033.dialup.zetnet.co.uk X-Trace: news.zetnet.co.uk 925471327 491 194.247.43.163 Lines: 3 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!dispose.news.demon.net!demon!ayres.ftech.net!news.ftech.net!peer.news.zetnet.net!master.news.zetnet.net!not-for-mail >6809 Best of the eight bitters. ###### From: Sam.Wilson@ed.ac.uk (Sam Wilson) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Fri, 30 Apr 1999 14:05:36 +0100 Organization: Network_Services_Division Lines: 24 Message-ID: References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <37262f53.1931100@news.zetnet.co.uk> <6ur9p53itr.fsf_-_@chonsp.franklin.ch> <925255174.346148@estelle.paradise.net.nz> NNTP-Posting-Host: wormhole.ucs.ed.ac.uk X-Trace: scotsman.ed.ac.uk 925477349 22844 129.215.200.202 (30 Apr 1999 13:02:29 GMT) X-Complaints-To: usenet@scotsman.ed.ac.uk NNTP-Posting-Date: 30 Apr 1999 13:02:29 GMT Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news0.de.colt.net!colt.net!newspeer.clara.net!news.clara.net!nntp.news.xara.net!xara.net!server6.netnews.ja.net!newsfeed.ed.ac.uk!wormhole.ucs.ed.ac.uk!user In article , dg@tao.co.uk (David Given) wrote: >The *Spectrum* was 4MHz (and the BBC was a 2MHz 6502, and I'd still like >to know how BBC Basic managed to be an order of magnitude faster than >Speccy Basic considering that it was (a) more powerful and (b) running on >a slower computer). I good coding - BBC Basic was very carefully written - and a misconception. The Z80 and 6502 were very different hardware architectures. The Z80 had a more complex set of machine code instructions, but would typically take 4 clock cycles to what a 6502 would do in one, but the 6502 would achieve less with each instruction. For most tasks a 2MHz 6502 is between 1x and 2x as fast as a 4MHz Z80. Sam Wilson Network Services Division, Computing Services The University of Edinburgh Edinburgh, Scotland, UK -- Sam Wilson Network Services Division, Computing Services The University of Edinburgh Edinburgh, Scotland, UK ###### From: rob.nicholson@zetnet.co.uk (Rob Nicholson) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Fri, 30 Apr 1999 16:49:35 GMT Organization: Rainow Systems Ltd. Reply-To: rob.nicholson@zetnet.co.uk Message-ID: <3729d998.1846320@news.zetnet.co.uk> References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <37262f53.1931100@news.zetnet.co.uk> <6ur9p53itr.fsf_-_@chonsp.franklin.ch> <925255174.346148@estelle.paradise.net.nz> X-Newsreader: Forte Agent 1.5/32.452 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 31 NNTP-Posting-Host: manr-053.dialup.zetnet.co.uk X-Trace: news.zetnet.co.uk 925490976 495 194.247.43.183 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news0.de.colt.net!colt.net!ayres.ftech.net!news.ftech.net!peer.news.zetnet.net!master.news.zetnet.net!not-for-mail >do in one, but the 6502 would achieve less with each instruction. For >most tasks a 2MHz 6502 is between 1x and 2x as fast as a 4MHz Z80. True. The 6502 had an almost RISC like architecture except when it came to the number of registers. However, it was very efficient at using zero page (2 cycles?) which to a certain extent overcame this. The Z80 was pathetic when it came to access memory. Wasn't a simple ld a,(nnnn) ~10 cycles? ld a,(hl) was better but not a lot (7 from memory). And as for the (IX+nn) addressing modes, it got crazy. The strengths of the Z80 were it's block instructions, the 16 bit registers for slightly faster 16 bit arithmetic and more registers. The later meant that *if* you could write your routine (e.g. bitblit) using registers only (apart from the obvious memory access), it was reasonably efficient. However, the totally un orthogonal instruction set meant that you could re-write a routine in a different way, it would run faster. The net result was you spent a lot more time optimising Z80 routines than the equivalent 6502 routine. For this reason and the fact that 6502 code was easier to read (as you tended to use named memory variables instead of cryptic registers), I always preferred the 6502. The 6809 (which added 16 bit registers) was superior to the Z80 but unfortunately arrived a too late. We're still stuck with the legacy of the Z80 and 8008 in the current Pentium processors. The 6502 lean & mean approach seemed to carry on into the Motorola 68K format. The 68K was/is still a better design than the Intel IMHO. If only Intel hadn't had that lucky break with the IBM PC, the world might be a far better place than it is today :-) Rob. ###### From: joachim@ece.concordia.ca (Joachim Thiemann) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: 30 Apr 1999 22:17:36 GMT Organization: ECE - Concordia University Lines: 56 Message-ID: <7gda60$13d$1@newsflash.concordia.ca> References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <7g77uk$lt6$1@ucsnew1.ncl.ac.uk> <37277A42.41C67EA6@sdrc.com> <3728863B.5175A9BB@lucent.com> <7v4slz1a7m.fsf@axue00.andr.ub.com> Reply-To: joachim at ece dot concordia dot ca NNTP-Posting-Host: snow-white.ece.concordia.ca NNTP-Posting-User: joachim X-Newsreader: TIN [version 1.2 PL2] Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!newsfeed-zh.ip-plus.net!news.ip-plus.net!News.Amsterdam.UnisourceCS!newshunter!cosy.sbg.ac.at!news-feed.inet.tele.dk!bofh.vszbr.cz!news.maxwell.syr.edu!sunqbc.risq.qc.ca!newsflash.concordia.ca!not-for-mail Tom Buskey (tbuskey@newbridge.com) wrote: : Philippe Nave writes: : > David Given wrote: : > : > Has anyone else ever worked with a "Super Pet?" It was a CBM with : > 96K (yes, 96 KILObytes... quit giggling!), but the upper memory : > was a set of 16KB blocks that were accessed with some kind of : > bizarre bank-switching technique. We had one in the store, but it : > never sold; the only app we had that was written to fully use the : > extra memory was (I think) some kind of database app called : > (maybe) Ozz or something. : > : My high school had one! It had a 6502 and a 6809. There was a 3 : position switch that would toggle between them & an auto chose mode. : When you booted up from the 8050 it would choose the cpu. : U. of Waterloo created a bunch of languages for 'em on the 6809 side. : We had Fortran, Pascal (interpreted, not compiled), Basic, assembler, : APL, and I think Cobol. : I remember trying to teach myself APL on it. I had the CBM manual for : APL (still do somewhere) and some printouts from the APL on : Dartmouth's DTSS APL stuff that worked from an ASCII terminal. I : didn't get too far, but I remember thinking it was neat to play w/ the : symbols and try to figure out what they did. I've got one in my parent's basement. Full kit'n'kaboodle, with 4040 dual drive, all the waterloo stuff, etc. Rescued it from the McGill Physics Dept a bunch of years back. I've got a picture of it along with some other junk at http://www.tsp.ece.mcgill.ca/~joachim/computer/top.html. Also check out Hrothgar's page, I passed a 2001 over to him. Warning: crappy layout, bad photos and no really useful information on my page, but now that my finals are all written, I'll update it (well, eventually) I actually did some FORTRAN, pascal and APL on that machine. (Just about the only interpreter that I got along with it that I have not used is the COBOL one, for obvious reasons :) The 6809 ML development environment is also very cool. I would still like to actually go and do something useful with it. It's got one of the most amazing screens... super-long (whazz the word...) Anyways, if the machine is off, and you switch off the lights in the room, you can still see the screen glowing green for a bunch of minutes. (Coming to thing of it, the "computery" display from "The Matrix" should be easy to do on that....) -- ------------------------------- cut here -------------------------------------- Joachim Thiemann joachim"at"ece"dot"concordia"dot"ca E-Mail addresses are modified to foil spambots. Please make the obvious changes to reply to this message. ###### Path: chonsp.franklin.ch!usenet From: Neil Franklin Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: 01 May 1999 17:38:34 +0200 Organization: My own Private Self Lines: 24 Sender: neil@chonsp.franklin.ch Message-ID: <6u3e1giyv9.fsf@chonsp.franklin.ch> References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <7g77uk$lt6$1@ucsnew1.ncl.ac.uk> <37277A42.41C67EA6@sdrc.com> <3729a126.37540270@news.zetnet.co.uk> X-Newsreader: Gnus v5.3/Emacs 19.34 rob.nicholson@zetnet.co.uk (Rob Nicholson) writes: > > >clocks connected out of phase. So that while one processor was doing > >memory access, the other was processing. I believe that one processor did > >the low-level floppy disc access and the other ran the DOS. They Right. There was an 6502 doing the DOS and an 6504 doing the disk controller. > Entirely probable. By the time the C64 came along, it had dropped down to one > processor doing the I/O and GCR encoding/decoding. That would be the 1541. An entirely different beast. Had only one drive (8050 was an dual) and an lower data density of 170kByte/floppy (8050 had a bit over 1MByte/floppy). -- Neil Franklin, Nerd, Geek, Unix Guru, Hacker, Mystic neil@franklin.ch.remove http://neil.franklin.ch/ 20th century record companies fit the 21st century data highways as good as 19th century stagecoaches fit the 20th century freeways ###### Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) From: lisard@zetnet.co.uk X-Everything: Net-Tamer V 1.08X Date: 01 May 1999 14:22:20 GMT Lines: 23 Message-ID: <372b0e1c$0$494@news.zetnet.co.uk> NNTP-Posting-Host: man-022.dialup.zetnet.co.uk X-Trace: news.zetnet.co.uk 925568540 494 194.247.41.27 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!feed2.news.luth.se!luth.se!news-peer-europe.sprintlink.net!news.sprintlink.net!news.algonet.se!algonet!newsfeed.icl.net!newspeer.clara.net!news.clara.net!peer.news.zetnet.net!master.news.zetnet.net!not-for-mail On 1999-04-30 Sam.Wilson@ed.ac.uk(SamWilson) said: :I good coding - BBC Basic was very carefully written - and a :misconception. The Z80 and 6502 were very different hardware :architectures. The Z80 had a more complex set of machine code :instructions, but would typically take 4 clock cycles to what a :6502 would do in one, 2, actually. The 6502 had no one-cycle instructions. However, a 6502 can read memory once every cycle, whilst a Z80 takes 3 cycles; moreover, the 6502 leaves the bus entirely alone for 50% of the time, which allowed the BBC's 6845 to get in there and generate the video without troubling the CPU. The Z80, because of its irregularity in memory accessing cycles, needs wait states. But there was another reason for BBC Basic doing so well on benchmarks, apparently. The benchmarks had to run on everything, so they used single character variable names (and the Camputers Lynx was actually built with that restriction, so it was reasonable). BBC Basic just happens to run about twice as fast if you stick to single character names, it seems... -- Communa (lisard@zetnet.co.uk) -- you know soft spoken changes nothing ###### Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) From: lisard@zetnet.co.uk X-Everything: Net-Tamer V 1.08X Date: 02 May 1999 00:35:05 GMT Message-ID: <372b9db9$0$491@news.zetnet.co.uk> NNTP-Posting-Host: man-121.dialup.zetnet.co.uk X-Trace: news.zetnet.co.uk 925605305 491 194.247.40.155 Lines: 16 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news0.de.colt.net!colt.net!dispose.news.demon.net!demon!btnet-peer!btnet-feed1!btnet!peer.news.zetnet.net!master.news.zetnet.net!not-for-mail On 1999-04-30 joachimatecedotconcordiadotca said: :I would still like to actually go and do something useful with :it. It's got one of the most amazing screens... super-long (whazz :the word...) Persistence. A lot of monitors were like that, in the earlier days when computers weren't very fast. A long-persistence monitor means you can get away with a substantially lower refresh rate and it won't flicker. I think the original IBM MDA monitor had quite a long persistence; it had to, with a refresh rate a tad under 50Hz. My Tandon one doesn't, and it's painful to look at with a lot of white (well, amber) on the screen. -- Communa (lisard@zetnet.co.uk) -- you know soft spoken changes nothing ###### From: dg@tao.co.uk (David Given) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) Date: Tue, 4 May 1999 17:13:30 +0100 Organization: I'm organised? Wow! Message-ID: References: <372b0e1c$0$494@news.zetnet.co.uk> NNTP-Posting-Host: taos.demon.co.uk X-NNTP-Posting-Host: taos.demon.co.uk:158.152.120.224 X-Trace: news.demon.co.uk 925837163 nnrp-13:16882 NO-IDENT taos.demon.co.uk:158.152.120.224 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 X-Newsreader: knews 1.0b.1 Content-Type: text/plain; charset=us-ascii Lines: 59 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.belnet.be!newsfeed.ecrc.net!newsfeed.nacamar.de!newsfeed.nacamar.de!dispose.news.demon.net!demon!news.demon.co.uk!demon!taos.demon.co.uk!pearl.tao.co.uk!nobody In article <372b0e1c$0$494@news.zetnet.co.uk>, lisard@zetnet.co.uk writes: [...] > But there was another reason for BBC Basic doing so well on benchmarks, > apparently. The benchmarks had to run on everything, so they used single > character variable names (and the Camputers Lynx was actually built with > that restriction, so it was reasonable). BBC Basic just happens to run > about twice as fast if you stick to single character names, it seems... Me! Me! I know this one! BBC Basic had several classes of variables: DIM array(45) this_is_a_float = 4.2 this_is_an_integer% = 4 this_is_a_string$ = "hello" So far, so standard. Integers were 32-bit quantities, I forget how big a float was; I thing 5-byte. All these were stored on the heap and accessed via hash tables. But there was another class of integer: P% = 4 Single-letter integer variable names weren't stored on the heap, they were stored in a table at &400. There were 64 of these, occupying 256 bytes, named A-Z, a-z, and a handful of punctuation (including the infamous @%). These were persistent over soft resets, program loads, everything like that. Application ROM writers were recommended to use this area for storing user-accessible values, so that Basic programs could be written to use them. Wordwise Plus, for example, used this area for variable storage for its scripting language; you could interoperate between Basic and Wordwise very easily. Oh, yes, and because they didn't use a hash table to look them up, they were about twice as fast. [Aside: BBC Basic was truly excellent, but it had a few major flaws. The biggest of these, IMHO, was that it didn't garbage collect strings on the heap. This program: 10 string$ = "" 20 FOR i=0 TO 200 30 string$ = string$ + "!" 40 NEXT ..would waste huge amounts of memory, because every time you appended a character to the string, new space would have to be allocated for it and the old space wouldn't be reclaimed. This made writing programs in tight memory situations a bit problematic.] -- +- David Given ---------------McQ-+ | Work: dg@tao-group.com | "Premature optimisation is the root of all | Play: dgiven@iname.com | evil." --- Don Knuth, quoting Tony Hoare +- http://wired.st-and.ac.uk/~dg -+ ###### From: "Rob Nicholson" Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) Date: Tue, 4 May 1999 20:31:08 +0100 Organization: Customer of Planet Online Message-ID: <7gnj32$co1$2@news4.svr.pol.co.uk> References: <372b0e1c$0$494@news.zetnet.co.uk> NNTP-Posting-Host: modem-90.quack.dialup.pol.co.uk X-Trace: news4.svr.pol.co.uk 925847458 13057 62.136.128.218 (4 May 1999 19:50:58 GMT) NNTP-Posting-Date: 4 May 1999 19:50:58 GMT X-Complaints-To: abuse@theplanet.net X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Lines: 17 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.belnet.be!news-feed.inet.tele.dk!bofh.vszbr.cz!dispose.news.demon.net!demon!colt.net!newspeer.clara.net!news.clara.net!diablo.theplanet.net!news.theplanet.net!newspost.theplanet.net!not-for-mail > Single-letter integer variable names weren't stored on the heap, they were > stored in a table at &400. There were 64 of these, occupying 256 bytes, > named A-Z, a-z, and a handful of punctuation (including the infamous @%). IMSMR, that came from the Acorn Atom... > ..would waste huge amounts of memory, because every time you appended a > character to the string, new space would have to be allocated for it and > the old space wouldn't be reclaimed. This made writing programs in tight > memory situations a bit problematic.] Yes, a shame really as I'm sure they could have crammed some garbage collection in there. Even MS Basic had this :-) Rob. ###### From: Simon Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) Date: Wed, 05 May 1999 13:05:48 +0100 Organization: Imperial College Lines: 34 Message-ID: <3730341C.7FA7@ic.ac.uk> References: <372b0e1c$0$494@news.zetnet.co.uk> <7gnj32$co1$2@news4.svr.pol.co.uk> Reply-To: s.j.harris@ic.ac.uk NNTP-Posting-Host: linpc.me.ic.ac.uk Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.0 (Win95; I) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!fu-berlin.de!server1.netnews.ja.net!server5.netnews.ja.net!server3.netnews.ja.net!server4.netnews.ja.net!news.cc.ic.ac.uk!not-for-mail Rob Nicholson wrote: > > > Single-letter integer variable names weren't stored on the heap, they were > > stored in a table at &400. There were 64 of these, occupying 256 bytes, > > named A-Z, a-z, and a handful of punctuation (including the infamous @%). > > IMSMR, that came from the Acorn Atom... > Except that on the Atom there were only 27 variables (@,A,B..Z). They were stored with all the least significant bytes first in a 27 byte block, then the next most significant byte for each variable in a 27 byte block, then the next, and finally the MSB of each in a 27 byte block. Floating point variables (all 27 of them %@ to %Z) were also stored in a memory block that was persistent between resets, starting at #2800, each fp. variable being 5 bytes (can't remember if they were split up as for integers, or whether the bytes for each variable were contingous). ISTR that the formatting variable @ was always set to 8 after a reset. Simon. -- -------------------------------------------------------------------------- Simon J. Harris email: s.j.harris@ic.ac.uk Mechatronics in Medicine Laboratory, tel: 0171 589-5111 x 57068 Department of Mechanical Engineering, http://www.me.ic.ac.uk/case/mim Imperial College of Science, Technology and Medicine, Exhibition Road, London SW7 2BX -------------------------------------------------------------------------- Carlton Dramatic Society web site: http://come.to/carltondrama -------------------------------------------------------------------------- ###### From: "T.W. Seddon" Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) Date: 5 May 1999 13:52:00 GMT Organization: University of Newcastle upon Tyne Lines: 30 Message-ID: <7gpie0$gt8$1@ucsnew1.ncl.ac.uk> References: <372b0e1c$0$494@news.zetnet.co.uk> NNTP-Posting-Host: aidan.ncl.ac.uk X-Newsreader: TIN [version 1.2 PL2] Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.belnet.be!news-raspail.gip.net!news-lond.gip.net!news.gsl.net!gip.net!nntp.news.xara.net!xara.net!server5.netnews.ja.net!news.ncl.ac.uk!aidan!n5013784 David Given (dg@tao.co.uk) wrote: > These were persistent over soft resets, program loads, everything like > that. Application ROM writers were recommended to use this area for > storing user-accessible values, so that Basic programs could be written to > use them. Ack, no, most definitely not, &400 to &7FF was (is) reserved for use by the currently active language ROM and not to be changed by anything else. BASIC uses it only when it is active; page 7 is the keyboard buffer, 4 the integer variables buffer. 5 and 6 are for something, I believe one of them holds pointers to lists of variables whose names begin with a given letter. Application/language ROMs also got unrestricted use of zero page &00 to &7F, and all memory from OSHWM up to HIMEM. Only one application ROM may be active at once, so it never happens that one accesses another's workspace unlesss there happens to be data lying there from the previous use. Service ROMs could have accessed the memory, and probably some did (BASIC utility ROMs etc.), but this was obviously dodgy as there was no guarantee that the format of this memory would stay consistent from version to version (though luckily I believe it did, in BASIC's case at least). The only memory a service ROM was properly permitted to use was its privately allocated workspace at some point between &e00 and OSHWM, along with a paltry set of bytes in zero page (&A8 to &AF) which weren't guaranteed to stay the same between OS calls, but 99.9% of the time did. -- --Tom this space filled with this | this space not filled with this space filled intentionally ............. | with this intentionally unintentionally .... ###### From: "Rob Nicholson" Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) Date: Wed, 5 May 1999 18:44:49 +0100 Organization: Customer of Planet Online Lines: 29 Message-ID: <7gq0uk$9h9$4@news6.svr.pol.co.uk> References: <372b0e1c$0$494@news.zetnet.co.uk> <7gnj32$co1$2@news4.svr.pol.co.uk> <3730341C.7FA7@ic.ac.uk> NNTP-Posting-Host: modem-117.nefazodone.dialup.pol.co.uk X-Trace: news6.svr.pol.co.uk 925927188 9769 62.136.81.245 (5 May 1999 17:59:48 GMT) NNTP-Posting-Date: 5 May 1999 17:59:48 GMT X-Complaints-To: abuse@theplanet.net X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 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!news.theplanet.net!newspost.theplanet.net!not-for-mail > Except that on the Atom there were only 27 variables (@,A,B..Z). They > were > stored with all the least significant bytes first in a 27 byte block, > then > the next most significant byte for each variable in a 27 byte block, > then > the next, and finally the MSB of each in a 27 byte block. Floating point Hey, I can almost see: Add: ldx Var1 ; which variables to add ldy Var2 lda LowByte,x clc adc LowByte,y sta Answer+0 ; in zero page of course lda MidByte,x adc LowByte,y sta Answer+1 lda HighByte,x adc HighByte,y sta Answer+2 rts Rob. ###### From: dg@tao.co.uk (David Given) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) Date: Thu, 6 May 1999 13:04:01 +0100 Organization: I'm organised? Wow! Message-ID: References: <372b0e1c$0$494@news.zetnet.co.uk> <7gnj32$co1$2@news4.svr.pol.co.uk> <3730341C.7FA7@ic.ac.uk> <7gq0uk$9h9$4@news6.svr.pol.co.uk> NNTP-Posting-Host: taos.demon.co.uk X-NNTP-Posting-Host: taos.demon.co.uk:158.152.120.224 X-Trace: news.demon.co.uk 925993868 nnrp-03:21739 NO-IDENT taos.demon.co.uk:158.152.120.224 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 X-Newsreader: knews 1.0b.1 Content-Type: text/plain; charset=us-ascii Lines: 29 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!feed1.news.rcn.net!rcn!dispose.news.demon.net!demon!news.demon.co.uk!demon!taos.demon.co.uk!pearl.tao.co.uk!nobody In article <7gq0uk$9h9$4@news6.svr.pol.co.uk>, "Rob Nicholson" writes: > Hey, I can almost see: > > Add: > ldx Var1 ; which variables to add > ldy Var2 > lda LowByte,x > clc > adc LowByte,y > sta Answer+0 ; in zero page of course > lda MidByte,x > adc LowByte,y > sta Answer+1 > lda HighByte,x > adc HighByte,y > sta Answer+2 > rts 24-bit integers? Interesting choice... BTW, I've heard rumours of a 200MHz Z80 processor someone's made. Has anyone else heard of this? -- +- David Given ---------------McQ-+ According to the latest official figures, | Work: dg@tao-group.com | 43% of all statistics are totally | Play: dgiven@iname.com | worthless. +- http://wired.st-and.ac.uk/~dg -+ ###### From: slavins.at.hearsay.demon.co.uk@localhost (Simon Slavin) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) Date: Thu, 06 May 1999 21:25:31 +0100 Organization: First Sirian Bank Message-ID: References: <372b0e1c$0$494@news.zetnet.co.uk> NNTP-Posting-Host: hearsay.demon.co.uk X-NNTP-Posting-Host: hearsay.demon.co.uk:194.222.24.177 X-Trace: news.demon.co.uk 926022316 nnrp-12:2401 NO-IDENT hearsay.demon.co.uk:194.222.24.177 X-Complaints-To: abuse@demon.net Lines: 23 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news0.de.colt.net!colt.net!newspeer.clara.net!news.clara.net!dispose.news.demon.net!demon!news.demon.co.uk!demon!hearsay.demon.co.uk!user In article , dg@tao.co.uk (David Given) wrote: > BBC Basic was truly excellent, but it had a few major flaws. The > biggest of these, IMHO, was that it didn't garbage collect strings on the > heap. A friend of mine agreed with you. So strongly did he feel about this that he wrote a garbage-collection program -- in BASIC ! It worked ! He did have to put something in it so that it never moved any variables that the routine that moved variables used. He wrote a couple of versions later: there was a faster one that used screen space as temporary storage space for the variable contents. That was so fun to watch he got interested in graphics and ended-up doing a project on replicating movement blurring on computers. Simon. -- No junk email please. | [Furbies imitate their owners.] | "Where's the Furby?" | "Oh, he's alone in a dark corner writing | bad poetry."-- Rebecca Gray ###### rom: "Rob Nicholson" Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) Date: Thu, 6 May 1999 22:52:31 +0100 Organization: Customer of Planet Online Lines: 14 Message-ID: <7guek2$8hp$3@news6.svr.pol.co.uk> References: <372b0e1c$0$494@news.zetnet.co.uk> <7gnj32$co1$2@news4.svr.pol.co.uk> <3730341C.7FA7@ic.ac.uk> <7gq0uk$9h9$4@news6.svr.pol.co.uk> NNTP-Posting-Host: modem-114.androstenedione.dialup.pol.co.uk X-Trace: news6.svr.pol.co.uk 926072258 8761 62.136.52.242 (7 May 1999 10:17:38 GMT) NNTP-Posting-Date: 7 May 1999 10:17:38 GMT X-Complaints-To: abuse@theplanet.net X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!newsfeed.ecrc.net!news-lond.gip.net!news.gsl.net!gip.net!diablo.theplanet.net!news.theplanet.net!newspost.theplanet.net!not-for-mail > 24-bit integers? Interesting choice... I'm assuming they were 24 bit integers if they use low, mid & high tables. I guess 24 bit is a good compromise on the 6502 where anything >8 bits starts hurting. > BTW, I've heard rumours of a 200MHz Z80 processor someone's made. Has > anyone else heard of this? Overclocked Spectrum? Rob ###### From: dg@tao.co.uk (David Given) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) Date: Fri, 7 May 1999 12:13:17 +0100 Organization: I'm organised? Wow! Message-ID: References: <372b0e1c$0$494@news.zetnet.co.uk> NNTP-Posting-Host: taos.demon.co.uk X-NNTP-Posting-Host: taos.demon.co.uk:158.152.120.224 X-Trace: news.demon.co.uk 926076791 nnrp-07:16549 NO-IDENT taos.demon.co.uk:158.152.120.224 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 X-Newsreader: knews 1.0b.1 Content-Type: text/plain; charset=us-ascii Lines: 29 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.belnet.be!isdnet!newsfeed.icl.net!dispose.news.demon.net!demon!news.demon.co.uk!demon!taos.demon.co.uk!pearl.tao.co.uk!nobody In article , slavins.at.hearsay.demon.co.uk@localhost (Simon Slavin) writes: > In article , > dg@tao.co.uk (David Given) wrote: > >> BBC Basic was truly excellent, but it had a few major flaws. The >> biggest of these, IMHO, was that it didn't garbage collect strings on the >> heap. > > A friend of mine agreed with you. So strongly did he feel about this > that he wrote a garbage-collection program -- in BASIC ! It worked ! > He did have to put something in it so that it never moved any > variables that the routine that moved variables used. Look, my mind is boggling. How did this work? Did he decode the heap structures manually, in Basic? Is his code around anywhere? I'd really like to have a look at that! (Unfortunately, I doubt if I'll ever use it. I just don't use BBC's any more. Perhaps one day I'll revive an old Master and use it as a home automation machine, but it'd probably be simpler to hook up an old PC instead. Pity. Nice machines.) -- +- David Given ---------------McQ-+ A friend is someone you call to help you | Work: dg@tao-group.com | move. A real friend is someone you call to | Play: dgiven@iname.com | help you move a body. +- http://wired.st-and.ac.uk/~dg -+ ###### From: amroth@zetnet.co.uk (Phil Edwards) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) Date: Thu, 06 May 1999 22:57:10 GMT Message-ID: <373c1b0f.5061987@news.zetnet.co.uk> References: <372b0e1c$0$494@news.zetnet.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: 13 NNTP-Posting-Host: manr-060.dialup.zetnet.co.uk X-Trace: news.zetnet.co.uk 926027762 491 194.247.43.190 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.belnet.be!newsfeed.wirehub.nl!newspeer.clara.net!news.clara.net!peer.news.zetnet.net!master.news.zetnet.net!not-for-mail On Thu, 06 May 1999 21:25:31 +0100, slavins.at.hearsay.demon.co.uk@localhost (Simon Slavin) wrote: >He did have to put something in it so that it never moved any >variables that the routine that moved variables used. I'm going to have to stop looking at this sentence now, my head is starting to hurt. Phil -- Phil Edwards http://www.users.zetnet.co.uk/amroth/ "Let the good Lord do the driving" - Jon Langford ###### From: Stefan Skoglund Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Tue, 04 May 1999 22:27:10 +0200 Organization: Telenordia Lines: 21 Message-ID: <372F581E.7BF4260A@ebox.tninet.se> References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <7g77uk$lt6$1@ucsnew1.ncl.ac.uk> <37277A42.41C67EA6@sdrc.com> <3728863B.5175A9BB@lucent.com> <7v4slz1a7m.fsf@axue00.andr.ub.com> <7gda60$13d$1@newsflash.concordia.ca> NNTP-Posting-Host: du47-241.ppp.algonet.se Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: zingo.tninet.se 926026559 114 195.100.241.47 (6 May 1999 21:35:59 GMT) X-Complaints-To: abuse@algo.net NNTP-Posting-Date: 6 May 1999 21:35:59 GMT X-Mailer: Mozilla 4.06 [en] (Win95; I) Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!feed2.news.luth.se!luth.se!news.algonet.se!algonet!pepsi.tninet.se!not-for-mail Joachim Thiemann wrote: > : > Has anyone else ever worked with a "Super Pet?" It was a CBM with > : > 96K (yes, 96 KILObytes... quit giggling!), but the upper memory > : > was a set of 16KB blocks that were accessed with some kind of > : > bizarre bank-switching technique. We had one in the store, but it > : > never sold; the only app we had that was written to fully use the > : > extra memory was (I think) some kind of database app called > : > (maybe) Ozz or something. Luxor did something like that in their ABC 806. That machine had 128kb of memory and you could get CP/M for it too. Normally the OS was an pretty good BASIC interpreter with support for compressed BASIC-code. I still have one which i think is fully functional. A very nice screen ie much better than a type-writer. ###### Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) From: lisard@zetnet.co.uk X-Everything: Net-Tamer V 1.08X Date: 07 May 1999 21:01:24 GMT Lines: 11 Message-ID: <373354a4$0$494@news.zetnet.co.uk> NNTP-Posting-Host: man-138.dialup.zetnet.co.uk X-Trace: news.zetnet.co.uk 926110884 494 194.247.40.176 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news0.de.colt.net!colt.net!newspeer.clara.net!news.clara.net!peer.news.zetnet.net!master.news.zetnet.net!not-for-mail On 1999-05-06 dg@tao.co.uk(DavidGiven) said: :24-bit integers? Interesting choice... :BTW, I've heard rumours of a 200MHz Z80 processor someone's made. :Has anyone else heard of this? No, but I want one! Preferably in a small oblong box with a rainbow splash across one corner and 40 rubber keys... ;> -- Communa (lisard@zetnet.co.uk) -- you know soft spoken changes nothing ###### From: Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) Date: Sat, 08 May 1999 03:00:14 GMT Message-ID: <926132414.28112.0.nnrp-13.9e98d142@news.demon.co.uk> References: <373354a4$0$494@news.zetnet.co.uk> NNTP-Posting-Host: mauve.demon.co.uk X-NNTP-Posting-Host: mauve.demon.co.uk:158.152.209.66 X-Trace: news.demon.co.uk 926132414 nnrp-13:28112 NO-IDENT mauve.demon.co.uk:158.152.209.66 X-Complaints-To: abuse@demon.net User-Agent: tin/pre-1.4-980818 ("Laura") (UNIX) (Linux/2.2.5 (i586)) Originator: root@mauve.demon.co.uk Lines: 13 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!newsfeed.gamma.ru!Gamma.RU!dispose.news.demon.net!demon!news.demon.co.uk!demon!mauve.demon.co.uk!root lisard@zetnet.co.uk wrote: >On 1999-05-06 dg@tao.co.uk(DavidGiven) said: > :24-bit integers? Interesting choice... > :BTW, I've heard rumours of a 200MHz Z80 processor someone's made. > :Has anyone else heard of this? >No, but I want one! Preferably in a small oblong box with a rainbow >splash across one corner and 40 rubber keys... ;> Now, 200Mhz at 14 clocks per instruction, or 200Mhz at 1 clock per instruction ... ###### From: "Rob Nicholson" Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) Date: Sat, 8 May 1999 12:54:16 +0100 Organization: Customer of Planet Online Lines: 19 Message-ID: <7h3ofk$m3q$2@news5.svr.pol.co.uk> References: <372b0e1c$0$494@news.zetnet.co.uk> NNTP-Posting-Host: modem-59.anadrol.dialup.pol.co.uk X-Trace: news5.svr.pol.co.uk 926246196 22650 62.136.51.187 (9 May 1999 10:36:36 GMT) NNTP-Posting-Date: 9 May 1999 10:36:36 GMT X-Complaints-To: abuse@theplanet.net X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news0.de.colt.net!colt.net!newspeer.clara.net!news.clara.net!diablo.theplanet.net!news.theplanet.net!newspost.theplanet.net!not-for-mail > character variable names (and the Camputers Lynx was actually built with > that restriction, so it was reasonable). BBC Basic just happens to run Ah yes, the Camputer's Lynx. Now there was a bad design. I remember when I decided to replace my ZX81 and at the time, there was the Spectrum, Oric and Camputer's Lynx. I ordered the Lynx with my hard earned cash and then waited months for it to arrive. When it finally did arrive, I hated it. It had 64K of RAM but used 32K of it for the screen buffer. Sure it was very pretty but it only had a Z80 driving it and it COULDN'T SCROLL! So when you were editing, it got to the bottom of the screen and then went back to the top. I sent it back in disgust and got an Oric instead. Had lots of fun with that. Rob. ###### From: slavins.at.hearsay.demon.co.uk@localhost (Simon Slavin) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Living legends) Date: Sun, 09 May 1999 19:17:59 +0100 Organization: First Sirian Bank Message-ID: References: <372b0e1c$0$494@news.zetnet.co.uk> NNTP-Posting-Host: hearsay.demon.co.uk X-NNTP-Posting-Host: hearsay.demon.co.uk:194.222.24.177 X-Trace: news.demon.co.uk 926273866 nnrp-03:25873 NO-IDENT hearsay.demon.co.uk:194.222.24.177 X-Complaints-To: abuse@demon.net Lines: 27 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.belnet.be!news-feed.inet.tele.dk!bofh.vszbr.cz!dispose.news.demon.net!demon!news.demon.co.uk!demon!hearsay.demon.co.uk!user In article , dg@tao.co.uk (David Given) wrote: > slavins.at.hearsay.demon.co.uk@localhost (Simon Slavin) writes: > > > he wrote a garbage-collection program -- in BASIC ! It worked ! > > He did have to put something in it so that it never moved any > > variables that the routine that moved variables used. > > Look, my mind is boggling. > > How did this work? Did he decode the heap structures manually, in Basic? > Is his code around anywhere? I'd really like to have a look at that! You'd have to ask him. I have no copy and haven't been in touch for over a decade. I do remember that it wasn't a case of just parsing a symbol-table but we didn't discuss the complete workings of the program. He only mentioned it to me because he thought it was nice that the BBC OS was well-enough designed that he could meddle with BASIC inside BASIC. Simon. -- No junk email please. | [Furbies imitate their owners.] | "Where's the Furby?" | "Oh, he's alone in a dark corner writing | bad poetry."-- Rebecca Gray ###### From: Scott Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Wed, 26 May 1999 00:06:41 -0400 Organization: PETA (People for the Eating of Tasty Animals) Lines: 29 Message-ID: <260519990006415266%scottm25@bigfoot.com> References: <3714CF96.4FF41330@mc.hik.se> <8DABB1185phoenyx@news.southwind.net> <371a6236.10946648@news.earthlink.net> <371f8438.0@news.iglou.com> <37202531.82C2CD2D@tnglwood.demon.co.uk> <7fqb72$18du$2@ausnews.austin.ibm.com> <7fs8uu$hii$3@ligarius.ultra.net> <37235D9B.683BB191@virgin.net> <37262f53.1931100@news.zetnet.co.uk> <6ur9p53itr.fsf_-_@chonsp.franklin.ch> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Trace: Z3gJZ/Iba3te0BZcj2g0wcH21K72sXrI9ylWzawLKpo= X-Complaints-To: abuse@rcn.com NNTP-Posting-Date: 26 May 1999 04:06:51 GMT X-Face: "_p7hm!(`R/h:x.fFi's;ncuxZ`[YALx6^qjs>UnIu!^{.#Fcv'n3?\]tApx6 T%'@]NRNZ3Yy>|*}>.X_BP0KeiXDhQCx" User-Agent: YA-NewsWatcher/4.2.3 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!newsfeed.cwix.com!207.172.3.37!feed1.news.rcn.net!rcn!scottm25 In article <6ur9p53itr.fsf_-_@chonsp.franklin.ch>, Neil Franklin wrote: >rob.nicholson@zetnet.co.uk (Rob Nicholson) writes: >> >> None of the video chip nonsense :-) > >Surely there must have been some form of I/O circuitry to generate the >display. Where else did the video out signal come from? > >Or do you mean no DMA stuff? > It could be like the TI-99/4A where EVERYTHING went through the video chip. I still don't understand exactly how that worked. >> This lead to the FAST and SLOW instructions where, in fast mode, the >> display was turned off allowing the ~4MHz Z80 to devote all it's >> time to your program and not 75% of it to generating the display. > >No cycle stealing certainly makes it faster (or less slow). > The C-128 did that with FAST and SLOW commands as well. 1MHz. vs 2MHz. on the 8502. Come to think of it the C-64 did that when loading from tape. -- -- Scott Maxwell - scottm25 (at) bigfoot (dot) com My shrink? I just go to him for refills! ###### From: Scott Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Wed, 26 May 1999 00:12:26 -0400 Organization: PETA (People for the Eating of Tasty Animals) Lines: 19 Message-ID: <260519990012266084%scottm25@bigfoot.com> References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <7g77uk$lt6$1@ucsnew1.ncl.ac.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Trace: Na2tMiUau+qxQhb+OV3dwPABaPBTmMUkuQ1s1LRH68k= X-Complaints-To: abuse@rcn.com NNTP-Posting-Date: 26 May 1999 04:12:36 GMT X-Face: "_p7hm!(`R/h:x.fFi's;ncuxZ`[YALx6^qjs>UnIu!^{.#Fcv'n3?\]tApx6 T%'@]NRNZ3Yy>|*}>.X_BP0KeiXDhQCx" User-Agent: YA-NewsWatcher/4.2.3 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!feed1.news.rcn.net!rcn!scottm25 In article <7g77uk$lt6$1@ucsnew1.ncl.ac.uk>, T.W. Seddon wrote: >I've heard that the 6502 is about the same speed as a Z80 at twice the >clock speed, but I can't remember why. (I am sure someone else will know.) > I don't know why it's true but I remember reading that. >Another point is that the bottom 16K of the Spectrum's RAM was shared >between the video system and the CPU, with the video system having >priority for memory access. When accessing the bottom 16K the CPU could >get blocked on occasion. > Hmm, that sounds like Chip RAM on the Amiga. -- -- Scott Maxwell - scottm25 (at) bigfoot (dot) com My shrink? I just go to him for refills! ###### From: Scott Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Wed, 26 May 1999 00:17:02 -0400 Organization: PETA (People for the Eating of Tasty Animals) Lines: 23 Message-ID: <260519990017022727%scottm25@bigfoot.com> References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <7g77uk$lt6$1@ucsnew1.ncl.ac.uk> <37277A42.41C67EA6@sdrc.com> <3728863B.5175A9BB@lucent.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Trace: RA4Gq6BWZESm0eyZA/a+zoJL8qChXCMXONvDFSiyzn8= X-Complaints-To: abuse@rcn.com NNTP-Posting-Date: 26 May 1999 04:17:13 GMT X-Face: "_p7hm!(`R/h:x.fFi's;ncuxZ`[YALx6^qjs>UnIu!^{.#Fcv'n3?\]tApx6 T%'@]NRNZ3Yy>|*}>.X_BP0KeiXDhQCx" User-Agent: YA-NewsWatcher/4.2.3 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!isdnet!netnews.com!feed1.news.rcn.net!rcn!scottm25 In article <3728863B.5175A9BB@lucent.com>, Philippe Nave wrote: >I remember mulling over the feasibility of writing a piece of code >that would crawl across the interface cable, take up residence >in the 8050's on-board controller, and run there; I think the idea >was to try and work around copy protection, or something. It would >have been neat to install something co-resident with the DOS on >the disk drive and do 'distributed processing' with 6502s, though.. > There were programs that did just that for the 15xx drives. They could be stored in USR files and loaded in with & in a DOS command to the drive. Gotta love smart peripherals! >Has anyone else ever worked with a "Super Pet?" > Yes! I have 2 of them with an 8050. They, and a regular PET, are hooked up via a Muppet II box so they can all share the drives. -- -- Scott Maxwell - scottm25 (at) bigfoot (dot) com My shrink? I just go to him for refills! ###### From: triso@remove-me.inasec.ca (Tris Orendorff) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Thu, 27 May 1999 22:08:08 GMT Organization: UUNET Canada News Transport Lines: 38 Message-ID: <7ikfve$3au$2@demon.uunet.ca> References: <3714CF96.4FF41330@mc.hik.se> <8DABB1185phoenyx@news.southwind.net> <371a6236.10946648@news.earthlink.net> <371f8438.0@news.iglou.com> <37202531.82C2CD2D@tnglwood.demon.co.uk> <7fqb72$18du$2@ausnews.austin.ibm.com> <7fs8uu$hii$3@ligarius.ultra.net> <37235D9B.683BB191@virgin.net> <37262f53.1931100@news.zetnet.co.uk> <6ur9p53itr.fsf_-_@chonsp.franklin.ch> <260519990006415266%scottm25@bigfoot.com> NNTP-Posting-Host: 209.47.93.2 Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-Newsreader: News Xpress 2.01 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!cyclone.news.idirect.com!island.idirect.com!news1.tor.metronet.ca!news1.cal.metronet.ca!news.uunet.ca!tris In article <260519990006415266%scottm25@bigfoot.com>, Scott wrote: > In article <6ur9p53itr.fsf_-_@chonsp.franklin.ch>, Neil Franklin > wrote: > > >rob.nicholson@zetnet.co.uk (Rob Nicholson) writes: > >> > >> None of the video chip nonsense :-) > > > >Surely there must have been some form of I/O circuitry to generate the > >display. Where else did the video out signal come from? > > > >Or do you mean no DMA stuff? > > > It could be like the TI-99/4A where EVERYTHING went through the video > chip. I still don't understand exactly how that worked. > > >> This lead to the FAST and SLOW instructions where, in fast mode, the > >> display was turned off allowing the ~4MHz Z80 to devote all it's > >> time to your program and not 75% of it to generating the display. > > > >No cycle stealing certainly makes it faster (or less slow). > > > The C-128 did that with FAST and SLOW commands as well. 1MHz. vs 2MHz. > on the 8502. Come to think of it the C-64 did that when loading from > tape. I hope everybody still remembers that the C64 would lock up if there were more than 3 sprites alligned horizontally, the display was on and the floppy disk was loading a program. ----- BEGIN GEEK CODE BLOCK ----- Version: 3.12 GCS d++ s a C+ UC++++ P+ L E- W+ N++ o- K++ w+ O+ M !V PS+ PE Y+ PGP t+ !5 X- R- tv--- b++ DI++ D+ G+ e+ h---- r+++ y+ ------ END GEEK CODE BLOCK ------ ###### From: "AndyC" Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Fri, 28 May 1999 15:13:14 +0100 Organization: University of East Anglia, Norwich, Norfolk, NR47TJ, UK Lines: 15 Message-ID: <7im8dg$vmd$1@cpca14.uea.ac.uk> References: <3714CF96.4FF41330@mc.hik.se> <8DABB1185phoenyx@news.southwind.net> <371a6236.10946648@news.earthlink.net> <371f8438.0@news.iglou.com> <37202531.82C2CD2D@tnglwood.demon.co.uk> <7fqb72$18du$2@ausnews.austin.ibm.com> <7fs8uu$hii$3@ligarius.ultra.net> <37235D9B.683BB191@virgin.net> <37262f53.1931100@news.zetnet.co.uk> <6ur9p53itr.fsf_-_@chonsp.franklin.ch> <260519990006415266%scottm25@bigfoot.com> <7ikfve$3au$2@demon.uunet.ca> NNTP-Posting-Host: oak6d.vlg1.uea.ac.uk X-Trace: cpca14.uea.ac.uk 927900912 32461 139.222.184.40 (28 May 1999 14:15:12 GMT) X-Complaints-To: news@uea.ac.uk NNTP-Posting-Date: 28 May 1999 14:15:12 GMT X-Newsreader: Microsoft Outlook Express 4.72.3612.1700 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3612.1700 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!fu-berlin.de!server1.netnews.ja.net!news.uea.ac.uk!not-for-mail Tris Orendorff wrote in message <7ikfve$3au$2@demon.uunet.ca>... >I hope everybody still remembers that the C64 would lock up if there were > more than 3 sprites alligned horizontally, the display was on and the floppy > disk was loading a program. Really? I think I'll have to save that post. You never know when something like that might come in handy... AndyC ###### From: lakerDeleteThisBit@tcp.co.uk (Markus Laker) Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Organization: . Message-ID: <37511ecc.34169102@news.tcp.co.uk> References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <7g77uk$lt6$1@ucsnew1.ncl.ac.uk> <260519990012266084%scottm25@bigfoot.com> X-Newsreader: Forte Agent 1.5/32.451 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 24 Date: Fri, 28 May 1999 23:04:32 GMT NNTP-Posting-Host: 195.80.1.106 X-Complaints-To: abuse@tcp.net.uk X-Trace: news.tcp.co.uk 927932809 195.80.1.106 (Sat, 29 May 1999 00:06:49 BST) NNTP-Posting-Date: Sat, 29 May 1999 00:06:49 BST Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!feed2.news.luth.se!luth.se!feed1.news.rcn.net!rcn!nntp.abs.net!outfeed1.news.cais.net!news.tcp.co.uk!not-for-mail Scott wrote: > In article <7g77uk$lt6$1@ucsnew1.ncl.ac.uk>, T.W. Seddon > wrote: > > >I've heard that the 6502 is about the same speed as a Z80 at twice the > >clock speed, but I can't remember why. (I am sure someone else will know.) > > > I don't know why it's true but I remember reading that. Short answer: Z80 instructions used about twice as many clock cycles as equivalent 6502 instructions did. Longer answer: the clock speed of a computer doesn't tell you how many instructions it executes in a second. What it tells you is the number if processor clock cycles that occur in a second. On processors such as the Z80 and 6502, all instructions took more than one cycle. On the 6502, the fastest instructions took two cycles; on the Z80 they took four. Markus -- Delete the 'delete this bit' bit of my address to reply ###### From: "Rob Nicholson" Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Sat, 29 May 1999 16:48:19 +0100 Organization: Customer of Planet Online Lines: 11 Message-ID: <7ip2k4$1oq$2@news6.svr.pol.co.uk> References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <7g77uk$lt6$1@ucsnew1.ncl.ac.uk> <260519990012266084%scottm25@bigfoot.com> <37511ecc.34169102@news.tcp.co.uk> NNTP-Posting-Host: modem-8.terbium.dialup.pol.co.uk X-Trace: news6.svr.pol.co.uk 927993284 1818 62.136.32.8 (29 May 1999 15:54:44 GMT) NNTP-Posting-Date: 29 May 1999 15:54:44 GMT X-Complaints-To: abuse@theplanet.net X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!newscore.univie.ac.at!btnet-peer!btnet!diablo.theplanet.net!news.theplanet.net!newspost.theplanet.net!not-for-mail > the Z80 and 6502, all instructions took more than one cycle. On the > 6502, the fastest instructions took two cycles; on the Z80 they took > four. And I seem to remember reading that the Amstrad CPC rounded all timings up to the nearest four. So a cycle that took 6 cycles was stretched to take 8. Something to do with the video maybe? Rob. ###### From: "AndyC" Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Sat, 29 May 1999 17:41:51 +0100 Organization: University of East Anglia, Norwich, Norfolk, NR47TJ, UK Lines: 17 Message-ID: <7ip5g4$630$1@cpca14.uea.ac.uk> References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <7g77uk$lt6$1@ucsnew1.ncl.ac.uk> <260519990012266084%scottm25@bigfoot.com> <37511ecc.34169102@news.tcp.co.uk> <7ip2k4$1oq$2@news6.svr.pol.co.uk> NNTP-Posting-Host: oak6d.vlg1.uea.ac.uk X-Trace: cpca14.uea.ac.uk 927996228 6240 139.222.184.40 (29 May 1999 16:43:48 GMT) X-Complaints-To: news@uea.ac.uk NNTP-Posting-Date: 29 May 1999 16:43:48 GMT X-Newsreader: Microsoft Outlook Express 4.72.3612.1700 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3612.1700 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!newscore.univie.ac.at!195.211.211.32.MISMATCH!newscore.gigabell.net!newscore.ipf.de!newsfeed.tli.de!newsfeed.nacamar.de!nntp.news.xara.net!xara.net!server6.netnews.ja.net!server4.netnews.ja.net!server2.netnews.ja.net!news.uea.ac.uk!not-for-mail Rob Nicholson wrote in message <7ip2k4$1oq$2@news6.svr.pol.co.uk>... >And I seem to remember reading that the Amstrad CPC rounded all timings up >to the nearest four. So a cycle that took 6 cycles was stretched to take 8. >Something to do with the video maybe? Contention between the Z80 and the video gate array. Sometimes it was a pain because a lot of procesor cycles are wasted. However it makes accurate cycle timing very easy, much easier than on a standard Z80, since every instruction is a multiple of 1 NOP. Hence Amstrad programmers often ignored Z80 cycles and worked exclusively in NOP cycle timing. AndyC ###### From: Ian Stirling Newsgroups: alt.folklore.computers Subject: Re: ZX81 video (was Re: Living legends) Date: Tue, 01 Jun 1999 01:00:08 GMT Message-ID: <928198808.15201.0.nnrp-08.9e98d142@news.demon.co.uk> References: <3714CF96.4FF41330@mc.hik.se> <37235D9B.683BB191@virgin.net> <7g77uk$lt6$1@ucsnew1.ncl.ac.uk> <260519990012266084%scottm25@bigfoot.com> <37511ecc.34169102@news.tcp.co.uk> NNTP-Posting-Host: mauve.demon.co.uk X-NNTP-Posting-Host: mauve.demon.co.uk:158.152.209.66 X-Trace: news.demon.co.uk 928198808 nnrp-08:15201 NO-IDENT mauve.demon.co.uk:158.152.209.66 X-Complaints-To: abuse@demon.net User-Agent: tin/pre-1.4-980818 ("Laura") (UNIX) (Linux/2.2.5 (i586)) Originator: root@mauve.demon.co.uk Lines: 21 Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!enews.sgi.com!newsfeed.berkeley.edu!dispose.news.demon.net!demon!news.demon.co.uk!demon!mauve.demon.co.uk!root Markus Laker wrote: >Scott wrote: >> In article <7g77uk$lt6$1@ucsnew1.ncl.ac.uk>, T.W. Seddon >> wrote: >> >> >I've heard that the 6502 is about the same speed as a Z80 at twice the >> >clock speed, but I can't remember why. (I am sure someone else will know.) >> > >> I don't know why it's true but I remember reading that. >Short answer: Z80 instructions used about twice as many clock cycles as >equivalent 6502 instructions did. >Longer answer: the clock speed of a computer doesn't tell you how many >instructions it executes in a second. What it tells you is the number >if processor clock cycles that occur in a second. On processors such as And it gets more confusing, when polyphasic clocks are taken into account. Hey, that's almost star-trek speak.