English Amiga Board


Go Back   English Amiga Board > Coders > Coders. Asm / Hardware

 
 
Thread Tools
Old 03 July 2015, 08:14   #1
sandruzzo
Registered User
 
Join Date: Feb 2011
Location: Italy/Rome
Posts: 2,145
Blitter filling speed, how much?

Hy all

I've found that blitter can move 4 mb per second and draw 1 milion pixels per second. What about filling? How many pixels it can draw per second?
sandruzzo is offline  
Old 03 July 2015, 11:48   #2
roondar
Registered User

 
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,286
Hi Sandruzzo, I've read your Rygar thread with interest so I thought I'd add what I know.

The blitter clear/copies about ~3.5MB/second (but only if the CPU is blocked and there is no bitplane DMA). OCS Bitplane DMA loses you ~0.24MB/sec for a 320x256 PAL bitplane (or ~0,97MB/sec less for a 4 bitplane screen).

It draws line pixels at about 1 million per second, again lowered by Bitplane DMA.

Filling is 'free' in that it is done during the copy and costs no extra cycles.

Edit: accidently doubled DMA contention figures

Last edited by roondar; 03 July 2015 at 12:06.
roondar is offline  
Old 03 July 2015, 12:27   #3
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 47
Posts: 25,731
Filling unfortunately is not always free. D=A and 3 other less commonly used channel combinations add 1 extra cycle to blit's cycle diagram. (for example D=A copy with fill becomes 3 cycle blit).
Toni Wilen is offline  
Old 03 July 2015, 12:28   #4
sandruzzo
Registered User
 
Join Date: Feb 2011
Location: Italy/Rome
Posts: 2,145
so filling is going near to 4 mb per second
sandruzzo is offline  
Old 03 July 2015, 12:51   #5
roondar
Registered User

 
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,286
Quote:
Originally Posted by Toni Wilen View Post
Filling unfortunately is not always free. D=A and 3 other less commonly used channel combinations add 1 extra cycle to blit's cycle diagram. (for example D=A copy with fill becomes 3 cycle blit).
Ok, I did not know that, the HRM seems to suggest it is free (or has hidden the information in a place I didn't find).

Thanks for the information, that might save me some headaches if I start using fills on bigger objects!

Quote:
Originally Posted by sandruzzo View Post
so filling is going near to 4 mb per second
If I understand Toni correctly, it's going to be more like ~2,3MB/sec because the blitter is slowed down while filling in the most commonly used mode (D=A).

Last edited by roondar; 03 July 2015 at 12:54. Reason: Merged back-to-back posts
roondar is offline  
Old 03 July 2015, 13:11   #6
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 47
Posts: 25,731
Yeah, max real world rate is about 2.33Mbytes/s (3.5M DMA slots in 1 second ((227-4)*312.5*50), 3.5M/3*(16/8)=2.33Mbytes/s)

Quote:
Ok, I did not know that, the HRM seems to suggest it is free (or has hidden the information in a place I didn't find).
It was only documented in some early HRM revision, it had blitter cycle diagram that included fill mode special cases. I didn't even know about that HRM until few years ago, I originally found out it by experimenting (I am sure most Amiga coders only had later "blue" or "black" HRM revision), then later it was 100% confirmed using logic analyzer.

Note that all blitter idle cycles are special, it needs to be free cycle (not used by any higher Agnus DMA channels) but blitter does not "use" it, it is also free for the CPU!
Toni Wilen is offline  
Old 03 July 2015, 15:13   #7
sandruzzo
Registered User
 
Join Date: Feb 2011
Location: Italy/Rome
Posts: 2,145
not so bad! It's fast!!
sandruzzo is offline  
Old 03 July 2015, 15:38   #8
Vot
Registered User

 
Join Date: Aug 2012
Location: Australia
Posts: 651
Now thats some good advice some info he can use!
Vot is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Using blitter for filling 3D polygons kovacm Amiga scene 34 25 January 2018 16:30
Blitter poly-line draw & filling - the 100th Herpes Coders. Asm / Hardware 12 14 May 2014 02:34
CPU Filling vs. Blitter Filling Routine victim Coders. General 18 26 January 2014 03:15
Blitter filling routine used in games Codetapper Coders. General 2 26 January 2012 11:20
Filling with the blitter... Lonewolf10 Coders. Tutorials 7 13 September 2011 15:30

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 10:13.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2023, vBulletin Solutions Inc.
Page generated in 0.07976 seconds with 13 queries