What was a Z80 computer capable of ?

edited November 2007 in Hardware
I have always wondered, and maybe the techy people on here could answer, with what you know about the Z80 processor, was the spectrum hampered by the resolution and colours that were given it by the speccy designers if so, what graphics could a Z80 be capable of ? it always puzzled me why a limit of colours ( usually 2 or 4 ) was always put on certain resolutions, back then even i knew that software writers would improve techniques and maybe be able to get a game written in maybe 320 X 240 using the same colours. I don't think i have explained myself very well, but if anyone understands i would love to know the answer :)
Post edited by swordheart on

Comments

  • edited November 2007
    The beauty of the Spectrum is that the Z80 does everything except transfer the bitmaps (screen bytes) to the display. On the ZX81 the Z80 did this too.
    A teletext chip would mean that the programmer just had to load a memory location with the value 65 and a letter 'A' would appear. Dedicated chips to do hardware scrolling and move areas of memory would speed the display up but any larger bit-mapped display would use huge amounts of memory necessitating bank-switching like most other computers.
    As a single banked Z80 machine, the ZX Spectrum design is superbly balanced giving an exciting display and memory to allow BASIC and commercial applications.
    Once you add bank-switching and more memory the design is crap.
  • edited November 2007
    I think the SAM Coup? would be the best example I can think of.

    The Amstrad 9512 was a pretty powerful machine though.
  • edited November 2007
    I think the SAM is a useful data point here: significantly improved graphics over the Spectrum, but not enough grunt on the processor side to do it justice (which is why programmers struggled to come up with anything beyond puzzle games). You could think of the SAM as the upper bound of what's possible graphically with a Z80 - of course, with the right support hardware thrown in (sprites, hardware scrolling, DMA...) anything's possible.

    (edit) bah, beaten to it!
  • edited November 2007
    Space Shuttle is a pretty good example of the heights the Z80 can get too! :lol:
  • edited November 2007
    Many arcade machines in the early '80s were designed around the z80. Maybe that answers your question.

    The z80 was also the only 8-bit uP (until more modern times) able to generate video. I believe the first instance of that was by Don Lancaster who published his "cheap and dirty video" article in a magazine in the US. I think Sinclair customized this for the ZX80/81 as Geoff points out. In SLOW mode the z80 is responsible for generating the video picture and in FAST mode the z80 only does computation and hence there is no video picture displayed. This also makes the ZX81 a very interesting hobby machine as since the build-up of the display is done in software you can change the resolution to 256x192 with appropriate ingenuity.

    Aside from this one example the video is generated by circuitry other than the cpu and therefore resolution is not determined by the processor. The reduced colour resolution you noted has much to do with the amount of RAM required to hold the display file. The higher resolution you have the more memory you require for the display which also means you have much less memory available for programs and the system. A 256x192x8 colour display without colour clash would require 256x192 = 48K of RAM to store. All 8-bit processors are limited to a 64k address space so that leaves 16K for your programs and your BASIC interpretter. In other words, impractical unless you move to a kludgier bankswitched scheme.

    RAM was also an expensive part of the system cost so higher resolution required more RAM = higher cost computer. In other words the Spectrum's display resolution (and all other computers') was chosen as a compromise between cost / flat memory model and high resolution display.

    Another thing to keep in mind is with the large RAM size required by a high resolution display, the processor's burden in manipulating images in the display file increases. This means you'd need a faster processor to manage the display file in order to play arcade games. Some other machines (the C64 is a prime example) opted for a cheaper processor so that they could invest in video hardware and provide hw support for games. This way a fast processor was not necessary to support a high resolution display for games.
  • edited November 2007
    I didn't make it clear in my first post but i meant a Z80 computer with no dedicated graphics chip, ie the spectrum, with the CPU doing all the work.
  • edited November 2007
    swordheart wrote: »
    I didn't make it clear in my first post but i meant a Z80 computer with no dedicated graphics chip, ie the spectrum, with the CPU doing all the work.

    The ULA does the graphics in the Spectrum....

    Colin.
    Quazar - Celebrating 27 years of Developing for the SAM Coupé
    Hardware, Software, Magazines and more for the SAM Coupé
    Website: www.samcoupe.com
    Twitter: QuazarSamCoupe
  • edited November 2007
    All these years i have always thought it was the Z80 that did everything :)
  • edited November 2007
    gasman wrote: »
    I think the SAM is a useful data point here: significantly improved graphics over the Spectrum, but not enough grunt on the processor side to do it justice (which is why programmers struggled to come up with anything beyond puzzle games).

    Oooh below the belt there with your puzzle games reference - that really sounds like YS comments! ;)

    Yes, 24K for a full screen is a lot of data to shift around for the Sam's slow processor, not enough for scrolling the screen every frame, but there were games that really pushed the Sam. Exodus is probably one of the best examples I can think of with 50+ 16x16 sprites, in the full colour graphics mode, all moving around at a solid 25fps.

    As with any slow machine, to get the most out of it really have to do some rather crafty assembly coding to optimise everything efficiently. A lot of people on the Sam didn't venture near z80 assembler (which is a shame) and used the likes of GamesMaster and SCADs - two games creation packages - which really just weren't up for doing anything where speed was of the essence.

    Colin.
    Quazar - Celebrating 27 years of Developing for the SAM Coupé
    Hardware, Software, Magazines and more for the SAM Coupé
    Website: www.samcoupe.com
    Twitter: QuazarSamCoupe
  • edited November 2007
    swordheart wrote: »
    All these years i have always thought it was the Z80 that did everything :)

    The only example of a commercial computer where the processor does (almost) everything is in the ZX80/ZX81 as mentioned :) And the max resolution you see in the ZX81 is 256x192x1 which is what a 3.25MHz z80 is capable of doing. Faster z80s could conceivably do more.

    The ULA reads the display file to generate the display independently of the z80. In the spectrum there is no dedicated hw support for anything else so the z80 does have to take care of the sprites / scrolling / text printing all by itself whereas on many other of its contemporaries there was special hw that took care of some or all these things.
  • edited November 2007
    Well, I'm a n00b about this stuff, but in the 128k Speccys....with it's memory-bank-switching....are there any more available memory for graphics ?
  • edited November 2007
    Pilsener wrote: »
    Well, I'm a n00b about this stuff, but in the 128k Speccys....with it's memory-bank-switching....are there any more available memory for graphics ?

    The one new feature that the 128K provides for graphics is a second screen buffer which you can flip to and from immediately. This 'shadow' screen behaves just like the regular one, so this doesn't directly give you any better graphic modes, but you can use it for new tricks such as double-buffering (drawing the new screen in the background and immediately flipping to it, to prevent flicker) and people have come up with various multicolour effects that rely on it, most notably Dithvide (disclaimer: the real thing doesn't look quite as nice as that 'idealised' screenshot...)
    Quazar wrote: »
    Oooh below the belt there with your puzzle games reference - that really sounds like YS comments! ;)
    Hey, and I thought I'd worded that in a suitably diplomatic way too! :-) I never said that the SAM was only good for puzzle games, only that programmers had to struggle to do anything else - it just so happens that a fair few programmers have taken on that struggle, and succeeded admirably...
  • edited November 2007
    More sprite based graphics games would have been a better usage of speed.
    No one important.
Sign In or Register to comment.