Changes

Speccy Port

2,989 bytes added, 05:53, 14 April 2011
A typical Spectrum port to the Amstrad is said to have been done in 3 days.
===Games Cross development===
Serious games companies often released their games on multiple Games Platforms (Computers or Consoles).
More info at [[Games Crossdev]].
===Consequences===
The Amstrad CPC was one of the best 8-bit computers of his time in term of graphical capabilities. But this had a price...well, a weight in term of CPU ressources.
'''===The infamous killer list of the shamefull 30 speccy porks of death that killed the Amstrad CPC :'''===
*Shadow of the beast
Or Tiles/sprites could simply be completely well re-done/re-drawn, even in Mode 0 sometimes...
===Rushed and Lazy===
The game is exactly as on speccy, even displaying graphical artifacts as Colour attributes, and/or monochrome display for the game's window (a shame on a computer told as Colour Personnal Computer) but not always the HUD, which may even often feature extra colours thanks to Raster colour changes, yet this doesn't really help to see what happens on the game's window.
Some of those games were still good, as they were yet very good on Speccy, the Amstrad Portage wasn't enough to waste it. But those remained inferior to their original Speccy counterpart (which was often smoother or faster...).
===Semi-lazy===
Well redone graphically, but not always as would actually be needed.
*Shadow of the Beast : (perhaps...) No real 3-4 coloured ditherings or even "additional colours" thanks to dithering the 2 medium colours together in many graphics (Exteriors or for many sprites), yet the square speccy attributes are not displayed, while the speccy version remains monochrome (in game window, not HUD) in order to simply advert Colour clashes. Would have needed a few more development time perhaps.
===Good Job===
Those games are often more to be seen as proper Cross-Dev.
Example of such games :
*Space Gun : Mode 0 and even PLUS features, yet the attribute-designed-unmasked sprites remain, in a sluggish game.
 
=Technics used=
 
===Convertion of 1bpp graphics===
 
A common way to get the Speccy game running on a CPC was to get some routine to convert the existing 1bpp GraphicDatas (Tiles and sprites in equivalent to Mode2 on CPC) into 2bpp datas (proper Mode1) when put into the video RAM.
 
Needless to say, this enabled to use no additionnal graph artist (a costly man at the time) to redrawn the Graphic Datas...
 
Nor a coder to re-code the RAM mapping/addresses of such datas...
 
But this have a cost CPU wise... the CPU instead of simply take some bytes of datas from reserve into Video RAM, have to convert this along the way too.
 
===Monocolour playfield and Sprite Masks===
 
*Having a monocolour playfield on ZX Spectrum is a common way to have no colour clashes... Simply because you have no colours.
 
*Most of those games then had masked sprites.
 
This means that each set of sprites have another "sprite set" for the mask, being actually 2x1bpp (bit per pixel) set of Datas.
 
Some games coders actually used this to get the Sprites coded in 2bpp and used one of the 4 inks in mode1 to be the mask. This then made no more RAM used by Datas as the original.
 
As a result some of those speccy ports have sprites in another colour than the background, which is actually better in term of playability/look.
 
'''exemples :'''
 
*Super wonder boy : could have even used one more colours for the sprites, but didn't..
*Double dragon 3 : this one had the Sprites actually in a monochromatic 3 colours.
 
Needless to say, the Background Tiles and Letter fonts were still in 1bpp converted ATM of display... so the CPU had no rest and such games weren't faster nor that much better looking.
 
'''Some games, despite having such Masked sprite totalling 2bpp... had absolutly no sprite re-code at all... while they could easily had this.'''
 
*Black tiger is such an infamous case.
 
===Masked Backgrounds===
 
Some games actually used a mask for the Bakcground tiles too. This axplains why they could be fully recoded with no additionnal Weight for the Data.
 
Such games are often Isometric games.
 
'''exemples :'''
 
*Heroquest : the Background tiles are also in 3 colours.
 
*Head over Heels : probably... yet the colours are better used than in Heroquest.
 
 
===Rasters===
 
A common cheat was to get some Raster interrupt colour change so you could argue that the game is actually displaying more than 4 colours on screen while being Mode1.
 
This is only to mimic some sort or Raster based Colours attributes.
 
And this is actually not a clever move in many way as getting some raster interrupt may have some heavy-weight on the CPU.
 
And despite the game "displaying more than the allowed colours on screen", the games playfield was still monocolour !!!
 
All this did was getting the game even slowlier.
 
On the other hand this could also be done right.
 
*Deflektor : Raster done right.
*Strider : Raster done right.
 
*R-Type : Failed!
*PacMania : Failed!
*black Tiger : every thing is failed !
 
4,585
edits