home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #26 / NN_1992_26.iso / spool / alt / sys / amiga / demos / 1563 < prev    next >
Encoding:
Internet Message Format  |  1992-11-12  |  3.3 KB

  1. Path: sparky!uunet!mcsun!uknet!edcastle!dcs.ed.ac.uk!jxp
  2. From: jxp@dcs.ed.ac.uk (Joe Potter)
  3. Newsgroups: alt.sys.amiga.demos
  4. Subject: Re: Music and Code from Demos
  5. Message-ID: <BxLLGL.uF@dcs.ed.ac.uk>
  6. Date: 12 Nov 92 10:07:32 GMT
  7. References: <MKNIP.92Nov5110420@silver-surfer.hut.fi> <1992Nov05.155826.9766@crash> <MKNIP.92Nov9165110@blob.hut.fi>
  8. Sender: cnews@dcs.ed.ac.uk (UseNet News Admin)
  9. Organization: Department of Computer Science, University of Edinburgh
  10. Lines: 61
  11.  
  12. In article <MKNIP.92Nov9165110@blob.hut.fi>, mknip@niksula.hut.fi (Mats Anders Knip) writes:
  13. > The copper, my dear PC-user, is what makes the Amiga so superior to
  14. > the PC when it comes to (among other things) scrolling and color-
  15. > cycling. The copper (Graphics CoProcessor) takes care of all bitmap
  16. > and color handling, and has direct access to chip-mem by DMA.
  17.  
  18.     Makes cups of tea as well? :-)
  19.  
  20. > If you want to do anything with the screen, tell the copper about
  21. > it, and it takes care of it all. (well, almost...)
  22.  
  23.     Don't forget the blitter!
  24.  
  25. > For example - let's imagine you have got a 1000-pixel wide bitmap that
  26. > you want to scroll from left to right. On the PC, each frame you copy
  27. > 200*320 (= 64k) bytes from memory to the graphics-handler (right?),
  28. > which takes a LOT of CPU time. You can't even make a 50hz scroll on a 
  29. > slower PC. (the C64 could do that...poor work, PC-designers!)
  30.  
  31.     Ah, but the C64 could only do it on a character mapped screen.
  32. Try it with the bitmap mode!
  33.  
  34. >                             On the
  35. > amiga, you tell the copper what part of memory you want to show, and
  36. > the number of pixels to step over before it starts drawing and - POOF!
  37.                 ^ after it finishes :-)
  38.     And anyway, that's the display DMA that does that. Is it
  39. Agnus that does DMA?  That's what's responsible for modulos.
  40.  
  41. > There you go. This requires a total of 2 word-moves per bitmap + one
  42. > move for the fine-tune. Compare that to the PC's 64000...
  43.  
  44.     And when you want a block-mapped screen, do you unfold the
  45. *lot* at the start, into a Megs worth of screen data?  At some point, in
  46. real time, you need to blit blocks about.  It's the blitter that's fast in the
  47. Amiga!
  48.  
  49. >                       And this steals nearly no proces-
  50. > sing time from the CPU at all, since the copper only works on odd cycles.
  51.  
  52.     Well, the copper uses whatever cycle is available, odd or even. 
  53. The display DMA uses only odd cycles, unless you want to display lots of
  54. colours, when it starts pinching even cycles.  The copper has priority over
  55. the 68000, since it requires synchronous operation with the display.
  56.  
  57. > The blitter is another co-processor that has DMA access to the Amigas
  58. > chip-memory. It can be used to move big heaps of data and
  59. > perform operations on the data (like and, or etc...) at the same time
  60. > without any load on the CPU (not completely true, but basically.
  61. > Really complicated operations steal more cycles from the CPU, while
  62. > a simple operations like a plain copy steals nearly no time at all). 
  63.  
  64.     A=>D copy uses every other cycle, and on a 4-bitplane lo-res
  65. screen, steals every positive clock edge from the 68000 for chipmem access.
  66. If the 68000 is running out of fast RAM, it is *never* bothered by the
  67. DMA processors.  Except for their interrupts.
  68.     If you've got a 4-colour lo-res screen, A->D is essentially free.
  69. Of course, you have to include the overhead for setting up the blitter.
  70.  
  71.                         Joe.
  72. jxp@dcs.ed.ac.uk
  73.