Log in

View Full Version : Screen resolution and colour tricks of OCS/ECS games



Khephren
23rd February 2011, 12:58
So iv'e had a look at games with a high number of colours to see how they did it, inspired by this thread:
http://forum.classicamiga.com/forum/showthread.php/4373-screen-resolution-OCS-ECS-AGA
And also an arguement with an artist friend of mine who worked on some megadrive stuff 'Amiga games are 32 colour, megadrive could display more than that' (Yes, these are the 15 year old arguements that come from an industry filled exclusively with fanboys...and girls).

Your average game will be in the resolutions/bit depth that Phantom quoted in that topic , but some are much higher in colour count.And some try to con you... As a games artist, and Amiga freak, I find this interesting. I'm going to post some pictures with some theorising.

Pioneer Plague
Quite early, and not brilliantly drawn, but appears to be a fixed HAM palette of 256 colours. from an era of ST ports this is very cool!
776

No second prize
Gives a the impression the game is in 26 colours. But it's actually appears to be a 16 colour game screen, and a 16 colour dash, with shared palette colours to make the two blend. The new screen starts where the last line of the 3D road meets the HUD.
770

Settlers
Looks like it's the same thing again, but the main game screen has 40 colours on it. so probably halfbrite.
771

Trex warrior
Getting complicated now. 87 colours on screen in this one, more elsewhere. It actually has 3 seperate copper fades going on, adding to the colour count. One for the sky, another for the sea, and another for the sun. A seperate screen with it's own palette for the HUD. And i'm betting the 3D is actually 16 colour (due to the lack of chunky, as we all know) -Frontier does the same thing.
772

Universe
Having spoke to some coders, this game is apparently changing the palette entries for each line.Up to 200+ colours in some scenes. Similar to how some Atari ST art packages got more colours on screen.
773

Fire And Ice
Plenty going on here. looks like three screens. One for the game screen, and two for the map. The map might just be one screen with copper palatte manipulation to change the reflection colours though. Multiple copper bars as well. Looks like four. End result is 170+colours on screen.
774

Lionheart
184 colours going on here. two seperate copper fades, later you get some water reflection like fire and ice. In areas with no copper bars/reflection....it's in plain old 32 colour mode :)
775

For comparison, most megadrive games have between 28-45 colours (A couple slip over this). SNES between 90-150, (quite a few manage over this). So not to shabby from 1985 hardware.

burns flipper
23rd February 2011, 15:53
Very interesting! I remember reading an article on Universe - yes, the coders of it said they modified the palette during the display of teh screen, very clever! I never knew about Lionheart, it certainly looks good from the screenshot.

Khephren
23rd February 2011, 16:15
Thanks, i'm not a coder, so hopefully some more tech savy people will fill us in :)
The fixed HAM palette in Pioneer Plague is very interesting, only that Coder seemed to use it. Sadly he passed away :( I wonder if that means AGA could have a 1000 colour fixed palette mode without fringing?
Lionheart was drawn by one of my favourite pixel artists: Henk Nieborg http://www.henknieborg.nl/ he also did several other Amiga games. The best looking other than lionheart was probably
'The Misadventures of Flink'. I just missed out working with him when I was doing nintendoDS stuff for EA :(

Harrison
23rd February 2011, 17:24
That is very interesting. Great detective work. Really shows just how good coders were in the 16/32bit era, and how much they could get out of the Amiga hardware. Also shows just how well designed the Amiga architecture was. I bet a lot of coders today couldn't do similar tricks because they now have hardware powerful enough to allow bad coding. Imagine if today's coders wrote code to the same level as they did then, hitting the hardware level directly.

BTW, have you looked at the Shadow of the Beast games? Would be interesting to find out how many colours their screens contain.

For other systems, as far as I remember:

The Megadrive had a more limited 512 colour palette to draw from, similar to that available to the ST, but was meant to be able to display a maximum of 64 total colours on screen (split into 16 colour palettes for each of the 3 planes and a sprite field). I don't know what this console had that compared to the Amiga's blitter or copper. Anyone know?

And the SNES had a much more complex video hardware, having a 15 bit colour palette to draw from, meaning 32,768 colours, so much more the OCS/ECS Amigas, but not as much as AGA. It also had available a lot of different screen modes, with them all giving scaling, resolution, number of layer (planes) and palette size options. Modes 3 and Mode 4 offered a 256 colour palette layer, and the most advanced, Mode 7 offered the ability to scale one layer of 128x128 tiles in a 3D plane, which could be interpreted as a 256 colour one-plane layer, or a 128 colour 2 plane later. And using tricks to change the matrix parameters for each scanline, perspective effects could be created.

BTW, did you know that AGA HAM8 was actually not meant to have a colour limit, but was only limited by resolution? So in theory a lot more than 262K colours were possible on the screen.

Shoonay
23rd February 2011, 17:39
If only coders back then had the knowledge/time... imagine all the awesome arcade/SNES/Genesis/FM-Towns ports on the Amiga!

Khephren
23rd February 2011, 19:44
That is very interesting. Great detective work. Really shows just how good coders were in the 16/32bit era, and how much they could get out of the Amiga hardware. Also shows just how well designed the Amiga architecture was. I bet a lot of coders today couldn't do similar tricks because they now have hardware powerful enough to allow bad coding. Imagine if today's coders wrote code to the same level as they did then, hitting the hardware level directly.

BTW, have you looked at the Shadow of the Beast games? Would be interesting to find out how many colours their screens contain.

For other systems, as far as I remember:

The Megadrive had a more limited 512 colour palette to draw from, similar to that available to the ST, but was meant to be able to display a maximum of 64 total colours on screen (split into 16 colour palettes for each of the 3 planes and a sprite field). I don't know what this console had that compared to the Amiga's blitter or copper. Anyone know?

And the SNES had a much more complex video hardware, having a 15 bit colour palette to draw from, meaning 32,768 colours, so much more the OCS/ECS Amigas, but not as much as AGA. It also had available a lot of different screen modes, with them all giving scaling, resolution, number of layer (planes) and palette size options. Modes 3 and Mode 4 offered a 256 colour palette layer, and the most advanced, Mode 7 offered the ability to scale one layer of 128x128 tiles in a 3D plane, which could be interpreted as a 256 colour one-plane layer, or a 128 colour 2 plane later. And using tricks to change the matrix parameters for each scanline, perspective effects could be created.

BTW, did you know that AGA HAM8 was actually not meant to have a colour limit, but was only limited by resolution? So in theory a lot more than 262K colours were possible on the screen.

Hi Harrison, iv'e looked at a lot more, SNES, MD, ST PCE etc. As well as more OCS/ECS and AGA (Including SOTB). I was judging interest before spamming the boards though :)
A for HAM8, I think we both posted about this on another thread. The old 'load mutiple DPaints with HAM8 images, and screen drag so they are all displayed trick' -some of the methods above are similar, but of course limited by the old 6bit palette.

@Shoonay -If only UK publishers (And commodore) actually paid atention to the east back then, we would not have been so gob smacked by japanese shooters, fighters and RPG's. Megadrive, X68000 and PCE ports would definetly have been doable.

Teho
23rd February 2011, 21:58
If I recall correctly, Body Blows Galactic pulled a HAM-mode trick for the backgrounds showing many, many more colours on screen than should normally be possible.

Harrison
23rd February 2011, 23:36
Hi Harrison, iv'e looked at a lot more, SNES, MD, ST PCE etc. As well as more OCS/ECS and AGA (Including SOTB). I was judging interest before spamming the boards though :).

Please do post as much as you like about all this. Very interesting subject for all of us as the comparison between hardware and what was achieved in comparison is fascinating and an ever on going discussion between fans.

burns flipper
24th February 2011, 15:59
You should do a blog about it if you've looked at lots of different systems - so everyone in the world can read about it.

Shoonay
24th February 2011, 16:14
Indeed, this is uber-interesting stuff no matter the system, please post moar! :D

Harrison
24th February 2011, 16:35
Once I do some updates the these forums next month we can start to suggest threads like this, which we can promote to site articles. Things like this really do add some interesting things to the site for sure.

You are also more than welcome to use the blog feature built into this forum to start your own blog about this subject. Would be interesting to see it explored more.

Khephren
25th February 2011, 14:41
The only problem with a blog is i'd be afraid it would get lost. And I like post feedback to hear what everyone else has to say.

Brian the lion
Here's an interesting one.

Brian starts off with some techniques we have already seen- 32 colour main screen, copper fade on main screen, 32 colour status bar as a new screen. Adds up to over 100 colours on screen.

778

Now it gets clever. This section uses a demo scene technique developed by Chaos/Sanity called the '102 register trick'. It uses the copper chip to shrink the scan line. It also appears to change the palette on each line as well.

779

here's a video of it in action:
http://www.youtube.com/watch?v=mZzeA6JmRqc&playnext=1&list=PL88D56469635FAEB6

ElfMania
Another interesting one is elf mania. In some places featuring over 100 colours. Now you can see a purple copper fade, but take that away and it is still 80 colours. The answer is in the red energy bars and 'Janika' text, as well as in the cyan fade. Again they are well disguised copper bars. Remove those, and the game is 64 colour extra halfbrite. cunning!
780

Shadow of the beast
Probably the one of the games that pioneered sublte use of some of these techniques. It also uses bobs (blitter objects) or software sprites to you and me, to create the parallax layers. I also has more than the maximum (8) Sprites on screen at once using multiplexing in the code. SotB features one big copper fade, and then a smaller one in the actual score at the top. Has over 100+ colours at some points. One of the costs of heavy use of these techniques is resolution, whether because of processor/Co-processor bandwith, or memory, I don't know. I'm not coder enough to know such arcanery :)

781

So far then, whatever trick you use, the main sprites and background tiles remain at regular Amiga colour formats. Pioneer plague seems to be the only one here to go above those limitations.

Harrison
25th February 2011, 14:59
Didn't some games combine multiple sprite's to exceed the maximum sprite dimensions and number of colours? Or am I thinking about Megadrive and SNES game tricks? I seem to remember reading they did this with the SNES version of Street Fighter II, which was the best home version. but I'm also sure i read somewhere about some Amiga games using a similar technique.

Regarding demoscene techniques. It was definitely always the demoscene which invented the best hardware coding tricks that we ended up seeing in games. If it wasn't for the demoscene we wouldn't have seen any of the later doom style games. They were told Doom couldn't be made to run on the Amiga due to the graphical hardware differences (Chunky vs Planer) and this made them prove that was wrong and it could be done... The Amiga demoscene was, and still is an amazing thing. I also thought it was such a shame the CD32's Akiko chip was never really explored by many developers. Having the Chunky to Planer conversion in hardware should have provided a lot of possibilities, but did we ever see it utilised? (I know that is a bit off the main topic but it is interesting to me).

Harrison
25th February 2011, 15:01
The only problem with a blog is i'd be afraid it would get lost. And I like post feedback to hear what everyone else has to say.

Blogs on here have a comment feature underneath, and new blog entries show in the home page portal and in the right-hand new blog entry listings. But I get what you are saying. A full forum thread like this allows much greater discussion.

The reason I mentioned promoting to an article, is because it is possible to link an article to a discussion thread like this one, so a main article can exist and be updated, whilst the discussion can continue in a thread. This is something I want to explore more and getting working on here soon.

Khephren
25th February 2011, 15:19
Ah, I see what you mean about blogs. To be honest, i'm pretty rubbish. I only learnt to inset pictures for this thread :) I'm on EAB and Amiga.org as well, I never use half the features they offer.

Regarding Sprites/colours:

Yeah, just added sprite multiplexing to the SotB section. To those who don't know, the Amiga (OCS/ECS) can display 8 sprites, in 3 colours, per scan line (16 pixels wide, any in height). It can 'Attatch' sprites to get 4, 16 colour sprites. You can then 'multiplex' the sprites in code to gain more than eight per line. I don't know what the limit is. I guess you could overlay sprites on top of one another...may be I should rip some sprites next :) ....if I ever get WinUae working again.

After that you have software sprites, less limited in number, colour, and resolution, but needing more bandwith and processor time.

I also love demos, maybe one day i'll do some notes on which Demo groups formed their own games companies, or which members worked on which games. Many of them still do, it's been my privalage to work with a few.

As for Akiko, so under used :( And really, the A1200 should have had it as well. But then, I also think the A1200 should have ran at full speed out of the box, had fast ram and a HD floppy drive. But them's the breaks!

Harrison
25th February 2011, 15:42
There definitely have been a lot of ex demosceners working in the games industry. Their scene releases really showcased what they could do and that alone got a lot of them jobs. IThere are a lot of people who started out with the Amiga, whom are now heavy weights in the games industry as a whole. The Amiga basically "kickstarted" their carriers! (pun intended).

Regarding A1200. Fully agree. If it were not for the A4000 I think more of these features would have been standard. But Commodore had to distance the top end system from the budget end home system. If they had included fast ram, a HD floppy and a HDD as standard there would have been little reason for the A4000 in its vanilla state at its much higher price point (£999 compared to £299).

burns flipper
25th February 2011, 15:58
Didn't Brian The Lion feature some sort of Mode7 thing for the intro?

And how did you get all this knowledge? That would be as interesting as the knowledge itself!

Khephren
25th February 2011, 16:06
Had an amiga since '88 and just read magazines and kept up with technical discussions on forums, and sometimes with guys iv'e worked with. As for the analysis itself, once you know what to look for, photoshop is your friend! :)

Lord Riton
10th March 2011, 10:33
To those who don't know, the Amiga (OCS/ECS) can display 8 sprites, in 3 colours, per scan line (16 pixels wide, any in height). It can 'Attatch' sprites to get 4, 16 colour sprites. You can then 'multiplex' the sprites in code to gain more than eight per line.

To get more than 8 per line, the copper will have to change the horizontal position of one of the "real" 8 sprites somewhere at each rasterbeam line. This is not only DMA time consuming, but also you then will have problems to move your "doubbled" sprites horizontaly. You won't be able to move them across the vertical line at where the copper changes the sprite position anymore. Same goes with changing the sprites color every scan-line, a normal sprite has up to 4 colors, if you want to change it each scan line you have to use the copper.





After that you have software sprites, less limited in number, colour, and resolution, but needing more bandwith and processor time.

Software sprites do not really exist. I mean, they are not really sprites, but simply blitter objects, "bobs" if you preffer.

I came from the Commodore 64, and seriously, they didn't improve sprites much for the Amiga, i was rather disapointed. While the sprites were really a main core thing in C64 games, they were much less important for the Amiga, because small, with only 4 colors, and still only 8, like on the c64.

I remember the Nintendo 16 bit that was out about that time had up to 128 real hardware sprites, in 16 colors each, up to 64x64 pixels.

---------- Post added at 11:33 ---------- Previous post was at 11:18 ----------



ElfMania
Another interesting one is elf mania. In some places featuring over 100 colours. Now you can see a purple copper fade, but take that away and it is still 80 colours. The answer is in the red energy bars and 'Janika' text, as well as in the cyan fade. Again they are well disguised copper bars. Remove those, and the game is 64 colour extra halfbrite. cunning!
780


I don't know, maybe you are right, but if you remove the copper bars we see in the back, for me this looks rather like a 16 color picture, eventualy 32, for sure not more :p