English Amiga Board


Go Back   English Amiga Board > Main > Retrogaming General Discussion

 
 
Thread Tools
Old 11 November 2023, 21:58   #81
Photon
Moderator
 
Photon's Avatar
 
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,655
Quote:
Originally Posted by rothers View Post
Leaving it for coders to figure out was a shame.
Well here, Commodore-Amiga cannot be blamed, for there is an entire example (illustrated with pictures no less!) in HRM on how to construct a game with playfields and sprites.
Photon is offline  
Old 12 November 2023, 10:02   #82
JudasEZT
Registered User
 
JudasEZT's Avatar
 
Join Date: May 2003
Location: mercury
Posts: 577
What I had understood that, and in fact is happening in a project of mine, that in Dual Playfield mode you lose a channel of sprites. Channels 6 and 7.

There are ways to not lose them??
JudasEZT is offline  
Old 12 November 2023, 11:25   #83
jotd
This cat is no more
 
jotd's Avatar
 
Join Date: Dec 2004
Location: FRANCE
Age: 52
Posts: 8,368
I used DPF on AGA on Xevious, and used all sprites at some point, and never got that dreaded sprite bug (I heard that the 7th sprite could be hidden because of the bug). I guess it happens in some particular cases.
jotd is offline  
Old 12 November 2023, 11:37   #84
ross
Defendit numerus
 
ross's Avatar
 
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 54
Posts: 4,491
This has been discussed in many many threads

It has nothing to do with dual playfield and depends exclusively on the value used in DDFSTRT.
The lower the value, the more slots are subtracted for the sprites fetching.
In the HRM there is a diagram of the DMA slots which gives a rough idea of the situation.

In addition to this there is a HW bug in OCS that prevents the use of the last sprite slot when it is back-to-back with the start of the bitplanes first fetch block.
ross is offline  
Old 12 November 2023, 12:00   #85
aros-sg
Registered User
 
Join Date: Nov 2015
Location: Italy
Posts: 192
Quote:
Originally Posted by ross View Post
Yep, this works

But at the 'wrap' you need an already fully built backbuffer (basically you must have a double image in memory).

I'm not sure what you mean, but you only have 3 normal sized buffers. 1 for display, one for backbuffer rendering and one for restoring. After bob restoring you have 2 clean buffers and for the next frame depending on the next y scroll position you choose which one of this 2 buffers will become the next display buffer (= current backbuffer where to paint bobs) (the one which does not wrap). The other becomes the restore buffer for restoring job in the frame after.


The precaution I mentioned, that is necessary, is that the scroll position between current frame and next frame must not be too hugely different
(unless you had huge safety gaps) because the 3 buffers share the same available ~memory/~area in the ~"master buffer" and must not trash each other. During scrolling both in x and in y direction the buffers move around in this ~memory/~area.


For example at scroll y position 0, buffer #1 may live here:



Code:
1111
1111
1111
1111
####
####
####
####
####
####
####
####
While, after scrolling half a screen up it will live here:


Code:
####
####
1111
1111
1111
1111
####
####
####
####
####
####
Buffers 2 and 3 need to always live somewhere else in the # area. There must be some saftey space/gap between buffers such that scrolling one buffer (if you scroll them individually, and not all 3 at the same time) does not overlap/Trash into the other nearby one.
aros-sg is offline  
Old 12 November 2023, 13:15   #86
ross
Defendit numerus
 
ross's Avatar
 
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 54
Posts: 4,491
Quote:
Originally Posted by aros-sg View Post
After bob restoring you have 2 clean buffers and for the next frame depending on the next y scroll position you choose which one of this 2 buffers will become the next display buffer (= current backbuffer where to paint bobs) (the one which does not wrap). The other becomes the restore buffer for restoring job in the frame after.
I was referring to this.

Of course it's not a bad thing per se, on the contrary!
It is simply because you are forced to use this technique and not others, this could be more expensive in certain situations/conditions.

If in any case that was the main rendering choice, nothing would change in terms of speed
ross 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
16c single playfield vs dual playfield for bobs n sprites donnie Nostalgia & memories 1 20 January 2019 17:24
Dual Playfield Palette Assignments LuMan Coders. Blitz Basic 1 24 February 2016 15:35
Help with Dual Playfield Shatterhand Coders. Blitz Basic 15 14 December 2015 13:05
Dual playfield colors and AGA losso Coders. Asm / Hardware 1 03 December 2013 02:48
Dual Playfield BippyM project.Maptapper 6 03 July 2013 00:43

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 02:22.

Top

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