09 March 2016, 20:23 | #1 |
Banned
Join Date: Sep 2011
Location: Cardiff, UK
Age: 51
Posts: 2,871
|
How did Amiga sprites work?
I'm going by the supposition that Jay Miner based his Amiga sprite hardware on the Atari 8-Bit series of computers, but more advanced, of course. So these sprites would've been the full height of the screen, were 16 colours and 16 pixels wide for OCS/ECS.
However, I don't know if sprites could be combined or not or how they were manipulated vertically (was a nightmare for players and missiles on A8, that's for sure!) Other things are: what palette did the sprites use? From my own experience it seems to be the main colour palette for the bitplane graphics. And what about AGA sprites? I heard they were 64 pixels wide, but that sounds nuts! And how many colours? This is the thing that I'm lacking info on about Amiga hardware, but then it's hard to tell which are the sprites and which are bobs or blitter objects. Are there any demos that specifically show off sprites on Amiga, in both OCS/ECS and AGA? |
09 March 2016, 20:29 | #2 |
Lemon. / Core Design
Join Date: Mar 2016
Location: Tier 5
Posts: 1,212
|
There are 8 hardware sprites
Each is 16 pixels wide, by unlimited height, in 4 colours (3+transparent) Sprites 1&2 take their palette from Colours 16,17,18,19 (16 is ignored.. transparent) Sprites 3&4 take their palette from Colours 20,21,22,23 (20 is ignored.. transparent) Sprites 5&6 take their palette from Colours 24,25,26,27 (24 is ignored.. transparent) Sprites 7&8 take their palette from Colours 28,29,30,31 (16 is ignored.. transparent) 2 sprites can be combined, by setting their positions to the same place, and setting the "attach" bit in the control word. This gives you a 16 colour sprite that uses from colours 16 to 31 (although again, 16 is treated as transparent) If you search on google for "Amiga Hardware Sprites", you will easily find the Hardware Reference Manual official information on how they all work |
09 March 2016, 20:30 | #3 |
Lemon. / Core Design
Join Date: Mar 2016
Location: Tier 5
Posts: 1,212
|
Here you go
http://amigadev.elowar.com/read/ADCD.../node00AE.html There are of course some tricks you can do, using the copper (for example) to write new X positions, and data for a sprite, thereby reusing it across the screen. Codetappers webpage explains how this was done in a selection of games: http://www.codetapper.com/amiga/sprite-tricks/ |
09 March 2016, 20:58 | #4 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,510
|
Most AGA only sprite features:
- AGA sprites can be 32 pixel or 64 pixel wide (all sprites share same size). - AGA sprites also support hires and superhires resolutions (all sprites share same resolution). - Sprites can be visible in borders (=no bitplanes active). Also possible in OCS/ECS with BPL1DAT copper hack, with some restrictions. - Sprite palette start offset can be moved (from OCS/ECS only offset=16) in 16 color steps. (0, 16, 32, 48, .. , 240). Separate setting for odd and even sprites. - Sprite can be vertically doubled (Sprite scan doubling) - Sprite can appear twice in same horizontal scanline without using copper tricks. (Side-effect of a bit hacky scan doubling implementation, very limited but can be used for some background sprite effects) All AGA sprite features are 100% independent from bitplane resolution. |
12 March 2016, 20:27 | #5 | |
Banned
Join Date: Sep 2011
Location: Cardiff, UK
Age: 51
Posts: 2,871
|
As in interlace graphics modes? I always wondered about that.
Quote:
If Amiga sprites have vertical positions as well as horizontal positions, then how is that possible when the sprites are capable of being as much as 256 pixels vertical (the height of the screen) and just 16 bits wide? And if they're NOT capable of that height, then what's the deal with those glitchy graphical corruptions that sometimes span the top and bottom of the screen, usually loading demos? |
|
12 March 2016, 21:18 | #6 | ||
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,510
|
It was meant for doublescanned modes where each bitplane line was doubled for VGA monitor compatibility. (WB monitor drivers like "Multiscan", "DBLPAL", "DBLNTSC")
Quote:
Each sprite has only 2 available DMA slots/scanline. Single slot can transfer 16 bits from chip RAM (OCS/ECS). AGA has 32-bit data bus and can do 2 data transfers/DMA cycle which enables 32 pixel/64 pixel wide sprites. (EDIT: 2 slots because single sprite is made from 2 planes = 4 colors) Quote:
Last edited by Toni Wilen; 13 March 2016 at 10:54. |
||
22 April 2016, 13:59 | #7 | |
Registered User
Join Date: Feb 2011
Location: Italy/Rome
Posts: 2,281
|
Quote:
|
|
27 May 2017, 02:02 | #8 | |
Registered User
Join Date: Oct 2009
Location: Vannes France
Posts: 44
|
Do you know if there's any possible copper type trick to repeat sprites across the entire screen like with ECS Amiga's (aside from the ability to clone it once at 256 pixels farther to the right)? Without that ability, in a scrolling game, creating a back layer going across the entire screen is impossible, as there would be a 64 pixel gap between each repeat of the sprite pattern.
Also, I have a vague memory about sprites being set wider at by making its pixels twice as wide. Am I confused, was that for the c64? When you set all sprites to 64 pixels wide, do you still have 8 per scan line and are their pixels not horizontally doubled? Quote:
|
|
27 May 2017, 05:15 | #9 | |
Total Chaos forever!
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 49
Posts: 2,186
|
Quote:
BTW, good to hear from you again! |
|
27 May 2017, 09:19 | #10 | |
Registered User
Join Date: Oct 2009
Location: Vannes France
Posts: 44
|
Hi Samual_Crow. It's great to reconnect with you too. I'm not sure I understand your answer. Are you verifying AGA can not ever tile 64 pixel wide 16 color sprites across the screen and also have horizontal screen scrolling?
Do we lose a sprite if we want hardware scrolling, which would leave the possibility for three 16 color sprites (X64 pixels=192) and one 3 color sprite (X64 pixels) which is a total of 256 pixels (4 sprites) so theoretically, for a full screen back "playfield" created with sprites, it would have to be made entirely out of 3 color sprites or 3 16 color sprites with 1 3 color sprite for one 64 pixel column? Another question: Do Risky Woods and Jim power run properly on AGA Amiga's? If so, how? Thanks for your time and knowledge Quote:
|
|
27 May 2017, 16:28 | #11 |
Total Chaos forever!
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 49
Posts: 2,186
|
AGA can but ECS only reuses the sprite image data because there is not time for the Copper to reload new image data and also move the sprite in 16 pixels' time.
On AGA it is another story. The manual mode of feeding data into the sprite with the Copper can't happen but sprites can be duplicated horizontally by abusing the scan double circuit to make each sprite appear twice on the same row of pixels. As such, three page-fetched sprites can cover the screen width if they're low resolution. (Page fetch mode is the one with 64 pixel wide sprites.) Last edited by Samurai_Crow; 27 May 2017 at 16:38. |
29 May 2017, 16:24 | #12 | ||
Registered User
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 6,336
|
Quote:
Quote:
|
||
29 May 2017, 16:31 | #13 | |
Total Chaos forever!
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 49
Posts: 2,186
|
Quote:
The only reason you need to narrow the display on AGA page mode was for the scroll offsets of the playfields. Sprites could globally be super high resolution, high resolution or low resolution. This was a pixel doubler or quadrupler relative to the AGA 1280x200 super high resolution mode. |
|
29 May 2017, 16:41 | #14 | ||
Registered User
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 6,336
|
Quote:
Quote:
|
||
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Programs to do sprites/palletes for Amiga on PC | Shatterhand | support.Apps | 2 | 05 December 2015 23:42 |
Amiga Game Sprites? | Dreedo | request.Other | 2 | 30 November 2011 19:47 |
Need Help with Sprites and Amiga Imaging Software | XDelusion | support.Apps | 0 | 17 September 2011 00:59 |
Game for WM2003/2005 to come with Amiga Sprites | astuermer | Retrogaming General Discussion | 10 | 07 April 2006 21:27 |
Amiga sprites restoration project | Jim | project.Sprites | 385 | 03 April 2005 00:23 |
|
|