Poster | Thread |
kamelito
| |
Re: Classic AGA programming tools and technical reference Posted on 13-Nov-2016 18:01:04
| | [ #21 ] |
|
|
|
Cult Member |
Joined: 26-Jul-2004 Posts: 813
From: Unknown | | |
|
| @ppcamiga1
it didn't knew the bare 1200 with fast ram would outperform the blitter but even so, you could use both in parallel and being faster that way. Kamelito |
|
Status: Offline |
|
|
ppcamiga1
| |
Re: Classic AGA programming tools and technical reference Posted on 13-Nov-2016 21:12:20
| | [ #22 ] |
|
|
|
Cult Member |
Joined: 23-Aug-2015 Posts: 762
From: Unknown | | |
|
| @kamelit0
Well written code for Amiga 1200 with Fast RAM should be faster than code for blitter plus cpu. Blitter has no access to FAST RAM where one can keep pre-calculated data. It's just a matter of proper optimization of code.
|
|
Status: Offline |
|
|
ErikBauer
| |
Re: Classic AGA programming tools and technical reference Posted on 14-Nov-2016 15:57:27
| | [ #23 ] |
|
|
|
Super Member |
Joined: 25-Feb-2004 Posts: 1141
From: Italy | | |
|
| @ppcamiga1
I tought you'd need a 030 to outperform blitter. Keep in mind CPU still has to do a lot of other things (Enemy AI and movement patterns, prepare data to display and so on...) Btw if I ever manage to start this project I'll do some tests.
And about the choosen platform... it is what I need in order to express what I do have in mind _________________ God created Paula so that Allister Brimble and Dave Whittaker could do music
Check my Amiga gameplays (ITA)! |
|
Status: Offline |
|
|
ppcamiga1
| |
Re: Classic AGA programming tools and technical reference Posted on 14-Nov-2016 17:27:10
| | [ #24 ] |
|
|
|
Cult Member |
Joined: 23-Aug-2015 Posts: 762
From: Unknown | | |
|
| @ErikBauer
Amiga blitter is 7 MHz 16 bit.
68020 is 14 MHz 32 bit and You have access to 2 MB RAM more.
If You precalculate data, care about cache, make Your code operating on all bitplanes, cpu only code will be faster.
|
|
Status: Offline |
|
|
ErikBauer
| |
Re: Classic AGA programming tools and technical reference Posted on 15-Nov-2016 10:35:31
| | [ #25 ] |
|
|
|
Super Member |
Joined: 25-Feb-2004 Posts: 1141
From: Italy | | |
|
| @ppcamiga1
Quote:
ppcamiga1 wrote: @ErikBauer
Amiga blitter is 7 MHz 16 bit.
68020 is 14 MHz 32 bit and You have access to 2 MB RAM more.
If You precalculate data, care about cache, make Your code operating on all bitplanes, cpu only code will be faster.
|
Is it just math, "they say", or personal experience?_________________ God created Paula so that Allister Brimble and Dave Whittaker could do music
Check my Amiga gameplays (ITA)! |
|
Status: Offline |
|
|
Hypex
| |
Re: Classic AGA programming tools and technical reference Posted on 15-Nov-2016 14:41:48
| | [ #26 ] |
|
|
|
Elite Member |
Joined: 6-May-2007 Posts: 11180
From: Greensborough, Australia | | |
|
| @ppcamiga1
You can also use the blitter to operate on or blit into all bitplanes at once. But the blitter does more than a simple copy. It also draws lines. And can blit images to any position.
For the CPU to do this it has to duplicate the operation or do it another way that is faster. To duplicate the blitter, even working in 32-bits, it has to load in a source word, load in a dest word, combine them with the logical operation then store it back in the dest or another place. On top of that, for every first and last word in the blit, it has to be masked off. And for every word it has to be rotated to match dest X offset into the bitmap. That's a bit of work!
I don't know if the CPU is as efficient for screen scrolling as the blitter is. One could use the CPU for that. But using the CPU to scroll a bitmap looks like such a PC thing to do. And yes for both screen offset registers shoud be used.
For filling in off screen blocks scrolled into view obviously using the CPU can be faster for such a simple operation. |
|
Status: Offline |
|
|
NutsAboutAmiga
| |
Re: Classic AGA programming tools and technical reference Posted on 15-Nov-2016 16:50:59
| | [ #27 ] |
|
|
|
Elite Member |
Joined: 9-Jun-2004 Posts: 12795
From: Norway | | |
|
| |
Status: Offline |
|
|
ppcamiga1
| |
Re: Classic AGA programming tools and technical reference Posted on 15-Nov-2016 21:06:20
| | [ #28 ] |
|
|
|
Cult Member |
Joined: 23-Aug-2015 Posts: 762
From: Unknown | | |
|
| @ErikBauer
Personal experience of course. |
|
Status: Offline |
|
|
ppcamiga1
| |
Re: Classic AGA programming tools and technical reference Posted on 15-Nov-2016 21:15:37
| | [ #29 ] |
|
|
|
Cult Member |
Joined: 23-Aug-2015 Posts: 762
From: Unknown | | |
|
| @Hypex
Quote:
For the CPU to do this it has to duplicate the operation or do it another way that is faster. To duplicate the blitter, even working in 32-bits, it has to load in a source word, load in a dest word, combine them with the logical operation then store it back in the dest or another place.
|
Yes, and if You use 32 bit and Your code fit in cache 68020 is faster than blitter.
Quote:
And for every word it has to be rotated to match dest X offset into the bitmap. |
On Amiga 1200 with Fast ram You can avoid rotation by using precalculated data. You have additional 2 MB at least not visible for blitter.
|
|
Status: Offline |
|
|
ErikBauer
| |
Re: Classic AGA programming tools and technical reference Posted on 16-Nov-2016 8:18:20
| | [ #30 ] |
|
|
|
Super Member |
Joined: 25-Feb-2004 Posts: 1141
From: Italy | | |
|
| @ppcamiga1 Ok, that's interesting. Thank you :) _________________ God created Paula so that Allister Brimble and Dave Whittaker could do music
Check my Amiga gameplays (ITA)! |
|
Status: Offline |
|
|
Hypex
| |
Re: Classic AGA programming tools and technical reference Posted on 16-Nov-2016 14:37:23
| | [ #31 ] |
|
|
|
Elite Member |
Joined: 6-May-2007 Posts: 11180
From: Greensborough, Australia | | |
|
| @ppcamiga1
Quote:
On Amiga 1200 with Fast ram You can avoid rotation by using precalculated data. |
Well you could but you'd have to store a bitmap around 8 times and duplicate it at 8 scroll positions which fits in one byte. This doesn't seem like an efficient use of memory. And it only knocks out the rotation since the bitmap data still has to be merged.
Storing a bitmap that is a 3d rendered pan 8 times over looks like a better use of memory with bonus 3d effects! |
|
Status: Offline |
|
|
ppcamiga1
| |
Re: Classic AGA programming tools and technical reference Posted on 16-Nov-2016 17:34:15
| | [ #32 ] |
|
|
|
Cult Member |
Joined: 23-Aug-2015 Posts: 762
From: Unknown | | |
|
| @Hypex
Yes You are right it is not efficient use of memory. But it is fast.
|
|
Status: Offline |
|
|
bison
| |
Re: Classic AGA programming tools and technical reference Posted on 19-Nov-2016 4:35:02
| | [ #33 ] |
|
|
|
Elite Member |
Joined: 18-Dec-2007 Posts: 2112
From: N-Space | | |
|
| @ErikBauer
Quote:
in order to hobby learn programming an AGA Amiga with C/C++ and Assembly |
Keep us informed on how this goes. I'm always doing things like this, so it's good to know that other people are too.
_________________ "Unix is supposed to fix that." -- Jay Miner |
|
Status: Offline |
|
|