a464@mindlink.UUCP (Bruce Dawson) (01/02/90)
Chapter seven of my hardware manual discusses 'system control hardware'. In there it discusses sprite priorities. The eight sprites are broken up into four sets of two. The priority control register can be set though that each playfield (or the playfield if you aren't using dual playfield mode) can be either in front of all eight, in front of six, in front of four, in front of two, or behind all. The sprites are always in the same order. .Bruce.
gbbrooks@sybil.cs.Buffalo.EDU (G. Brandon Brooks) (01/03/90)
I've been fiddling around with Amiga's sprites recently and it doesn't seem possible to control the depth of a sprite. When I had an Atari 800 way back in the 80's, this was possible to do - and very easy. I must be missing the command(s) to do this on my Amiga. What I am asking is how to have a sprite go BEHIND certain bitplanes or certain colors and IN FRONT of other colors or bitplanes. Specifically, I want to be able to write text over my sprites rather than have the sprites obscure my text. -Brandon!
Jeff.Petkau@weyr.FIDONET.ORG (Jeff Petkau) (01/03/90)
> I've been fiddling around with the Amiga's sprites recently and it > doesn't seem possible to control the depth of a sprite. When I had In the custom structure (hardware/custom.h) you will find the BPLCON2 register. The bits in here are defined as follows (from p.200 of the hardware manual): Bit No. Name Function 15-7 Not used (keep at 0) 6 PF2PRI Playfield 2 priority relative to playfield 1 5-3 PF2Px Playfield 2 priority with respect to sprites 2-0 PF1Px Playfield 1 priority with respect to sprites Priority of playfields based on values in bits PF1P2-PF1P0: Value Placement (from most important to least) 000 PF1 SP01 SP23 SP45 SP67 001 SP01 PF1 SP23 SP45 SP67 010 SP01 SP23 PF1 SP45 SP67 011 SP01 SP23 SP45 PF1 SP67 100 SP01 SP23 SP45 SP67 PF1 Where PF1 stands for playfield 1, SP01 stands for sprites 0 and 1, SP23 stands for sprites 2 and 3, etc. The other bits (6-3) are only important in dual-playfield mode. Now that I've described the register in struct Custom, DON'T USE IT. There is a ubyte in the ViewPort structure (vport->SpritePriorities) which has exactly the same meaning. So to fool with sprite priorities,change this byte, then do a MakeScreen() and RethinkDisplay() and life will become wonderful. -- Jeff Petkau - via FidoNet node 1:140/22 UUCP: alberta!dvinci!weyr!Jeff.Petkau Internet: Jeff.Petkau@weyr.FIDONET.ORG Standard Disclaimers Apply...