Welcome, Guest. Please login or register.

Author Topic: Amiga Animation and CHIP RAM versus FAST RAM  (Read 21424 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline amigaksi

  • Hero Member
  • *****
  • Join Date: Dec 2006
  • Posts: 827
    • Show all replies
    • http://www.krishnasoft.com
Re: Amiga Animation and CHIP RAM versus FAST RAM
« on: March 30, 2008, 06:29:12 AM »
>Cyperpaint on the ST was Zoetrope on the Amiga- was the Amiga version capable of 60fps? My question is does any Amiga software for the 500,1000, or 2000 allow full screen 320x200 animations at 60fps? Turbo Silver 3.0, VideoScape 3d, Photon Video Cel Animator, Deluxe Paint III, and Photon Paint II all had animation capabilities on the Amiga. But none of my magazines mentioned how fast these animations could go. The reviewers always neglected to mention if it could. That along with my personal experience suggests the Amiga could not. Am I wrong?

There are so many applications written for Amiga, Atari, PC.  Perhaps, you want to define the nature of the data that is being animated.  Obviously, if the data is for a cartoon with large runs of the same color, decompressing a simple RLE stream into a double buffered video memory would be faster than copying data from RAM (unless the processor is slower than the RAM speed.)  Is the original image 320*200 or is it being zoomed/stretched to 320*200?  
--------
Use PC peripherals with your amiga: http://www.mpdos.com
 

Offline amigaksi

  • Hero Member
  • *****
  • Join Date: Dec 2006
  • Posts: 827
    • Show all replies
    • http://www.krishnasoft.com
Re: Amiga Animation and CHIP RAM versus FAST RAM
« Reply #1 on: March 30, 2008, 06:38:52 AM »
>An attemt to make a modern OS display and loop a +16MB raw feed flawlessly in 60fps will in 99.9% of all cases fail miserably.

If you are running stuff in the background.  If you are only running the animation, even the VESA local bus VGA card on a 486 can do 15MB/second (as measured on an ATI Mach64 using Rep MOVSD) and a 320*200*16 (5-6-5 VESA mode) at 60 frames/second is only 7.68MB and if you are using Win98SE/ME (and not XP/Vista), you can use the Int 10h to set the VESA BIOS mode and directly write to the A000:0000 memory mapped VGA area.
I guess I see your point if you were using XP with all the virus-scanners running in the background and you can't set the mode to 320*200*16; then you would be forced to write to the entire 1024*768*32 or 1280*1024*32 stretching and converting the image to the color format of the screen.
--------
Use PC peripherals with your amiga: http://www.mpdos.com
 

Offline amigaksi

  • Hero Member
  • *****
  • Join Date: Dec 2006
  • Posts: 827
    • Show all replies
    • http://www.krishnasoft.com
Re: Amiga Animation and CHIP RAM versus FAST RAM
« Reply #2 on: March 31, 2008, 12:30:03 PM »
>...when I had side by side comparisons I noticed that the Amiga 500 never could do 60fps animations? We even had Antic software with Cad 3D 2.0 on both computers, but the Amiga was limited to 30fps at best. I remember having several (albeit slightly downgraded graphicly) Amiga HAM-6 animations such as the juggler, or a Scult 3D demo converted to Spectrum 512 running at 60fps on the ST....

You need to give some better way of proving that the ST version actually ran at 60fps in 320*200*16 since the naked eye has its limitations of noticing frame rates above 25fps.  I'll give you an example how to quantify your results.  Without using the blitter chip and with the sound and copper running in the background, I was able to paint 320*200 full frames at the following rate on an A500 running at 7.16Mhz: at 3 planes (8 colors/pixel) 52 fps, at 4 planes (16 colors/pixel) 39 fps and in HAM mode 19 fps.  The following is the code used to test and it compiles and uploads to the real Amiga with MPDOS Pro (www.mpdos.com):


      ORG $10000

      Bra.s   ProgStart

CopperList:   
      DW $E0,$0000,$E2,$4000   ;Bplane#0 at $4000
      DW $E4,$0000,$E6,$4028   ;Bplane#1 at $4000 + 40
      DW $E8,$0000,$EA,$4050   ;Bplane #2 at $4000 + 80
      DW $EC,$0000,$EE,$4078   ;Bplane #3 at $4000 + 120
      DW $F0,$0000,$F2,$40A0   ;Bplane #4 at $4000 + 160
      DW $F4,$0000,$F6,$40C8   ;Bplane #5 at $4000 + 200
      DW $180,$F00      ;red color
                 DW $2c81,$fffeh         ;WAIT for video beam (X,Y) = (112,44)
      DW $180,$0      ;black color
      DW $5E01,$FF00h   ;wait for (x,y) = (0,94)
      DW $180,$0F0      ;green color
      DW $9001,$FF00h   ;wait for (x,y) = (0,144)
      DW $180,$00F      ;blue color
      DW $C201,$FF00h   ;wait for (x,y) = (0,194)
      DW $180,$FF0      ;yellow
      DW $F401,$FF00h   ;wait for (x,y) = (0,244)
      DW $180,$0FF   ;cyan
      DW $FF01,$FF00h   ;wait for (x,y) = (0,255)
      DW $180,$F0F      ;magenta
      DW $FFFF,$FFFE
ProgStart:
      Move.l   #CopperList,$DFF080   ;1st copper list.  
      Move       #2,$dff088         
      Move       #$2c81,$dff08e        
      Move       #$F4C1,$dff090       
      Move.l   #$3800D0,$dff092    
      ;Move   #$d0,$dff094          
      Move       #$4204,$dff100     ;use $6A04 for HAM mode
      Move       #0,$dff102             
      Move   #$24,$dff104           
      Move   #0,$DFF106   ;unused in OCS
      Move       #$C8,$dff108        
      Move   #$C8,$dff10a             
      Move   #$C080,$DFF09a   
      Move       #$8381,$dff096   
      Move   #16-1,D1
      Move.l   #$DFF180,A0 ;color register #0
      Clr.w   D0
SetPalette:   Move   D0,(a0)+
      Add.w   #$111,D0   ;next shade
      Dbra   D1,SetPalette

      Move.l   #1200,D3
      ;Move.l   #$0000FFFF,D3
      
NextFrame:   Lea   $4000,A0  ;plane #0 at $4000
      Move   #200-1,D1
NextLine:      Moveq   #5-1,D0   
SetPixels:      ;Move.l   #-1,$C8(a0)   ;plane #5
      ;Move.l   #$0,$A0(a0)   ;plane #4
      Move.l   D3,$78(a0)   ;plane #3
      Move.l   #$00FF00FF,$50(a0)   ;plane #2
      Move.l   #$0F0F0F0F,$28(a0)   ;plane #1
      Move.l   #$33333333,(a0)+   ;plane #0
      ;Move.l   #-1,$C8(a0)   ;plane #5
      ;Move.l   #$0,$A0(a0)   ;plane #4
      Move.l   D3,$78(a0)   ;plane #3
      Move.l   #$00FF00FF,$50(a0)   ;plane #2
      Move.l   #$0F0F0F0F,$28(a0)   ;plane #1
      Move.l   #$33333333,(a0)+   ;plane #0
      Dbra   D0,SetPixels
      Adda   #200,A0
      Dbra   D1,NextLine
      Dbra   D3,NextFrame
      
AllDone:      Move.w   $DFF006,D1
      Lsr.w   #4,D1
      Move   D1,$DFF180
      Jmp   AllDone

      DW   2 dup(0)
--------
Use PC peripherals with your amiga: http://www.mpdos.com
 

Offline amigaksi

  • Hero Member
  • *****
  • Join Date: Dec 2006
  • Posts: 827
    • Show all replies
    • http://www.krishnasoft.com
Re: Amiga Animation and CHIP RAM versus FAST RAM
« Reply #3 on: April 02, 2008, 06:42:51 AM »
>Well, this wasn't rocket science. For one, the software on the ST said it was 60fps, and for proof all I would have to do is load 30 frames and play it as 60fps and I'd see all of them displayed twice every second- id notice if it went only once...

It may skip frames while attempting to play at 60fps.  Given the fact that ST is 8Mhz and Amiga 500/1000 are at 7.16Mhz simple processor-based memory transfers would be slightly faster on ST but not 30fps vs 60fps and this is also assuming the RAM chips are not the bottleneck.  The code I gave before was running from Chip RAM and copying to Chip RAM the slowest RAM in the Amiga.

>...funntion key did. with that knowledge, and placing the two computers side-by-side with 3 of the same animation demos, I was shocked to notice the ST was page flipping at least twice as fast- ableit once again with graphic pictures that took up less memory- (well Spectrum 512 pictures uncompressed took up 50kilobytes- versus uncompressed 16 color 32 kilobyte files on the ST).

There could be a software limitation on the application used.  What's the format of the 50Kb of Spectrum 512-- is that also 320*200*16 with palette changes every scan line?  50Kb per frame at 60fps would be 3Megabytes/second.

>I hope that is proof enough- as for the interlaced issue, I spent days drawing pictures with my eyeball pressed up against my Atari 12" RGB monitor- it was not flickering.

I wasn't asking about interlaced stuff since you can always enable/disable interlace with one bit in register mentioned before (one that was poked with 4204h) without affecting performance.
--------
Use PC peripherals with your amiga: http://www.mpdos.com
 

Offline amigaksi

  • Hero Member
  • *****
  • Join Date: Dec 2006
  • Posts: 827
    • Show all replies
    • http://www.krishnasoft.com
Re: Amiga Animation and CHIP RAM versus FAST RAM
« Reply #4 on: April 08, 2008, 10:25:13 AM »
>So is this a confirmation that the software writen for all these animation programs by 1989 never let the users to 60fps?

You need to make it clear whether you want to compare what frame rates the softwares written for both machines can accomplish or what the hardware is capable of doing.  My Atari ST disk drive is down right now-- perhaps someone can write code or port the one I wrote previously to see what frame rates they get on the ST at 4bits/pixel.  I guess on the ST everything is fast RAM or everything is chip RAM.

Sorry for delay in replying-- was too busy discussing death here: http://www.atariage.com/forums/index.php?showtopic=123710

--------
Use PC peripherals with your amiga: http://www.mpdos.com
 

Offline amigaksi

  • Hero Member
  • *****
  • Join Date: Dec 2006
  • Posts: 827
    • Show all replies
    • http://www.krishnasoft.com
Re: Amiga Animation and CHIP RAM versus FAST RAM
« Reply #5 on: April 12, 2008, 11:42:02 AM »
>As for the Graphic superiority of the Amiga- well overall I agree the Amiga was better- but I would argue and have some proof from pictures I've made using Spectrum 512, that some things at 320x200 looked better than the Amiga Ham-6 pictures.

I have one of those pictures you linked to in a Newtek Demo and it's better on the Amiga-- there are more shades in the picture.  The Atari ST is limited to 8 shades/color whereas Amiga is 16 shades/color.

> Spectrum 512 wasn't just a 16 colors per scan line program like Apple IIGS graphics were, you could display almost 50 unique colors per scan line- this offered some advantages over HAM-6 which had to modify one of the 16 unique colors RGB values to display up to 4096 colors- the look would look smudgy at times. I had fun converting GIF and BMP pictures to HAM-6 and Spectrum 512. Amiga wasn't always better...

I would not give credit for scan line changes to Apples IIGS-- they were trying to imitate the Atari/Amiga DLI/CLI on their platform.  I heard that Newtek invented a mode called Dynamic HAM which changed colors every scan line in HAM mode to prevented that problem where you had to wait up to 3 pixels to change a RGB completely.  Perhaps, someone knows the link to that new mode.

By the way, you mentioned Mega ST w/4MB RAM for animations; well if you are going to go to high end machines, I just ran that same code on the Amiga 4000 and it does 120fps in 16 color mode and 85 frames/second in HAM-6 mode.  And that code was brute force frame painting with no compression.
--------
Use PC peripherals with your amiga: http://www.mpdos.com
 

Offline amigaksi

  • Hero Member
  • *****
  • Join Date: Dec 2006
  • Posts: 827
    • Show all replies
    • http://www.krishnasoft.com
Re: Amiga Animation and CHIP RAM versus FAST RAM
« Reply #6 on: April 14, 2008, 06:58:52 AM »
>SHAM was HAM-6 per scan line, so same limitations only you get a fresh 16 colors every line. Sham was soon after I left the computer store I believe. 1990 probably or even later-...

It's not the same limitations since you have fresh 16 colors out of 320 pixels and the hold-and-modify option for those 16 colors.
Well, if we are talking hardware capabilities, it was possible to have a better HAM in 1985.  I'm sure people were modifying palettes on the Amiga using copper list before the dynamic HAM mode.

>But back to my comparison- around 1987-1989 the software available for the ST and Amiga used HAM-6 and Spectrum 512 for animations.

Was the animation compressed with delta compression?  How much space did it take up on the disk?

>I mentioned the Mega ST4 because it was available in 1987 about the same time Amiga released the 500 and 2000.

Didn't they make accelerated Amigas or accelerator boards by 1987?  The 120fps I got was in OCS mode on an Amiga 4000.  I got 39 fps on Amiga 500/1000 at 7.16Mhz.  
--------
Use PC peripherals with your amiga: http://www.mpdos.com
 

Offline amigaksi

  • Hero Member
  • *****
  • Join Date: Dec 2006
  • Posts: 827
    • Show all replies
    • http://www.krishnasoft.com
Re: Amiga Animation and CHIP RAM versus FAST RAM
« Reply #7 on: April 15, 2008, 04:05:52 AM »
>Isn't that what I said "a fresh 16 colors every line" plus hold and modify? Well if not, that's what I meant. Still even so- I could do some things in Spectrum 512 that would still cause even SHAM problems. But obviously, the reverse is possible as well- even more so with SHAM. And like I said, by the time SHAM was available (I'm not sure if paint programs supported it?) I know the demo world was even pushing the ST with more colors on scan lines and overscan etc.

Even Spectrum 512 is allowing only 48 unique colors for 320 possible pixels.  And there's a half-bright mode that does 64 unique colors and I'm sure you can toggle between half-bright and HAM-6 using the Copper list as well as change palette colors every scanline.  Everything the Spectrum 512 does with producing more colors can be done with the Amiga as well along with having more shades.

And comments about more shades are pertinent to the topic since the animation that uses more shades compresses less and thus requires greater processor power to display.  That's why I was asking whether the animation was compressed?  If they were uncompressed, a 1040ST only would hold 32 frames in memory (half a second of ST video at 60 fps since 32K*32=1Meg) assuming the application is highly optimized and does not hog up memory.
--------
Use PC peripherals with your amiga: http://www.mpdos.com
 

Offline amigaksi

  • Hero Member
  • *****
  • Join Date: Dec 2006
  • Posts: 827
    • Show all replies
    • http://www.krishnasoft.com
Re: Amiga Animation and CHIP RAM versus FAST RAM
« Reply #8 on: April 15, 2008, 04:09:41 AM »
>Thirdly, in answer to the OP question... Yes the Amiga can display animations at 60fps with out problems. In fact, these animations can even be in HAM-6 mode and use very little CPU time. I or in fact anyone with a modicum of programming ability can easily write a program to prove this, if need be.

He's talking about minimum of 320*200*16 frames.  He can't be talking just about changing pointers of the display memory since that would only allow for 32 frames even on a 1040ST.  Perhaps, if you have an animation running at 60fps on an Amiga 500, you can give him a link.
--------
Use PC peripherals with your amiga: http://www.mpdos.com
 

Offline amigaksi

  • Hero Member
  • *****
  • Join Date: Dec 2006
  • Posts: 827
    • Show all replies
    • http://www.krishnasoft.com
Re: Amiga Animation and CHIP RAM versus FAST RAM
« Reply #9 on: April 15, 2008, 04:39:22 AM »
>The whole discussion is silly imo.

He does a valid point that 8Mhz vs 7.16Mhz and given that ST videos would compress better and produce smaller files given less shades at 320*200*16 that decompressing from RAM to display buffer would be faster on ST.  But the question becomes is that sufficient to prevent the Amiga from displaying 60fps and is the ST actually doing 60fps?
--------
Use PC peripherals with your amiga: http://www.mpdos.com
 

Offline amigaksi

  • Hero Member
  • *****
  • Join Date: Dec 2006
  • Posts: 827
    • Show all replies
    • http://www.krishnasoft.com
Re: Amiga Animation and CHIP RAM versus FAST RAM
« Reply #10 on: April 15, 2008, 05:57:22 AM »
We are trying to understand him not pick on some word he used-- "page flipping".  You do see that he claimed 320*200*16 frames and on an A500 and Atari 1040ST?  Let him speak for himself as to how many seconds was the animation.
--------
Use PC peripherals with your amiga: http://www.mpdos.com
 

Offline amigaksi

  • Hero Member
  • *****
  • Join Date: Dec 2006
  • Posts: 827
    • Show all replies
    • http://www.krishnasoft.com
Re: Amiga Animation and CHIP RAM versus FAST RAM
« Reply #11 on: April 16, 2008, 08:35:05 PM »
>...The reason- well the picture has 33 colors on a scan line with the color black between each one. That will give Ham-6 hell...

I would need the original image that you believe will give HAM-6 hell.  JPG will distort the image.  Halfbrite mode can do 33 unique colors easily and the copper can change 32 color registers in a scanline without involving the processor.

>I have a hard time just accepting people saying it could. But I'll just take the word of everyone here. The Amiga could, the software demos just sucked at achieving 60fps, and move on. ..

>http://home.comcast.net/~erniew/juggler.html

If that's one of the animations (juggler) then you can calculate yourself the frame rate given the speed of full frame updates vs the percentage of changes in the picture (in this case appears to be less than 1/3).  Do you have a more complex animation where more things change?  I remember Amiga had a demo of cat walking and spinning.  The jolt can demo has the same issues of less than 1/3 of the screen updating.
--------
Use PC peripherals with your amiga: http://www.mpdos.com
 

Offline amigaksi

  • Hero Member
  • *****
  • Join Date: Dec 2006
  • Posts: 827
    • Show all replies
    • http://www.krishnasoft.com
Re: Amiga Animation and CHIP RAM versus FAST RAM
« Reply #12 on: April 17, 2008, 05:28:08 AM »
BMP would be good since I have programs that can read and convert it other formats.  Email just the one you claim is the worst one for Amiga to display: krishna@krishnasoft.com.

--------
Use PC peripherals with your amiga: http://www.mpdos.com
 

Offline amigaksi

  • Hero Member
  • *****
  • Join Date: Dec 2006
  • Posts: 827
    • Show all replies
    • http://www.krishnasoft.com
Re: Amiga Animation and CHIP RAM versus FAST RAM
« Reply #13 on: April 18, 2008, 03:40:03 AM »
>Although Delta encoded, it doesn't help as pretty much every pixel changes every frame...

>Load it into DPaintIV and it will run at 60fps.

What's your Amiga spec?  68030-25Mhz?
--------
Use PC peripherals with your amiga: http://www.mpdos.com