News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_Puresox

Can Anyone explain(In Laymans)the process Porting A Speccy Game too a CPC ?

Started by Puresox, 11:01, 26 May 12

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Puresox

I have wondered how this is done , how much extra % of Data is needed?
Do you keep the same listing,but just write  a further process to allow it to work.
Or is it a case of altering each line ?


MacDeath

Quote(In Laymans)
What does it means ?

Ok, Z80 is the same on both machines.
The thing that changes mostly are the various addresses...


RAM map and various chips addresses too.


So mostly the porter must re-address many things.


Then. Sounds is almost the same on both CPC and Speccy128 (not 48...) : an AY.
but Speccy's one is clocked faster, so you can change nothing and get the sound deeper/lower on CPC... or re-code it.


Concerning graphics, the problem is, CPC native graphics = (Speccygraphics-colour Attributes) X2... for the same surface/resolution, but CPC is 320x200 and speccy is 256x192...


Anyway you can resize the CPC to be 256x192 so it fit well.


Then the display routines.


If you put the graphics into CPC format, it is bigger, problem :
Speccy 48 has 48K RAM... with something like 7K used as VRAM

CPC 464 has 64K... with 16K used as VRAM... (which becomes nearly 12K  when resized "properly" into 256x192) (approx) but still... 16K.



48-7 = 41K.


64-16 = 48K.




so, CPC has to often keep the graphic datas in 1bpp and just add a routine that convert the tiles in Data into proper CPC graphics when copied into the VRAM.


CPU intense.
Add to this sounds and music sometimes.


And so on.
All this to do in 3 weeks deadline only.


But i guess this can be a bit trickier too.

steve

We have more than enough speccy ports on the CPC, we do not need any more. ;)

Puresox

Layman's terms means , to explain in a patronizing way , or simple terms , so someone not in that field of knowledge can roughly get there head round it! Thanks for your efforts , much appreciated , I can grasp some of it , sort of.

Ygdrazil

What about well done speccy ports... I think this would be interesting ..  :P

Quote from: steve on 14:03, 26 May 12
We have more than enough speccy ports on the CPC, we do not need any more. ;)

TotO

Do you take a look to the cpcwiki homepage and click on this baner?



You got all answers to your questions here. :)
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

Puresox


arnoldemu

Quote from: Puresox on 11:01, 26 May 12
I have wondered how this is done , how much extra % of Data is needed?
Do you keep the same listing,but just write  a further process to allow it to work.
Or is it a case of altering each line ?
Generally the game logic is the same.

You need different functions for drawing graphics, playing sound, reading keyboard/joysticks and interrupts.

You also need to convert the graphics into the form you can use on the cpc. Most are done lazy without recolouring, and often by loosing colours.

Then you may need to change it's location in ram.

When you're done you have a working game, it often runs a little more slowly and has less colours, but it works.
What happens next depends on how much the person was paid and how much love they have for the Amstrad.

I did the opposite for Sudoku. I wrote the cpc version first and ported it to the Speccy. I had to reorganise the screens because the Spectrum screen is narrower. I altered the gfx and used the Speccy attributes to add colour. I modified the music playback routine, implemented new graphics drawing and input routines. It didn't take long ;)

My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

Powered by SMFPacks Menu Editor Mod