RIP to BT Garner of MindRec.com... He passed away early 2023 from health problems. BT was one of the top PCE homebrew developers and founder of the OG Turbo List, then PCECP.com. Condolences to family and friends.
IMG
IMG
Main Menu

How much work goes into porting a game to another system?

Started by crazydean, 11/25/2016, 02:37 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

crazydean

Say a game is made for PS4 and I wanted to port it to the XBone, would I have to write the entire code for the game on the Xbone? Is the goal to just use the PS4 version of the game as a model and crunch out the entire game, one line at a time?

I know Henshin Engine is supposed to come out for PCE, but there may be a DC port. Do they have to write the whole game from scratch?

I have only minimal experience with any coding whatsoever, so please dumb it down, if possible.  :dance:

Arkhan Asylum

Quote from: crazydean on 11/25/2016, 02:37 PMSay a game is made for PS4 and I wanted to port it to the XBone, would I have to write the entire code for the game on the Xbone? Is the goal to just use the PS4 version of the game as a model and crunch out the entire game, one line at a time?

I know Henshin Engine is supposed to come out for PCE, but there may be a DC port. Do they have to write the whole game from scratch?

I have only minimal experience with any coding whatsoever, so please dumb it down, if possible.  :dance:
It depends.

If you're talking going from one old console to another, porting assembly is sort of a pain, because each CPU architecture operates different.   Some logic/code flow may have to be rewritten when moving from 6502 to Z80, and vice versa.   

Then, you have to convert your libraries for graphics to talk to the new machine's video chip.   and do the same for sound.  That can all be a bit annoying.   It really depends how well it was written the first time.

Now, if you used C, life is a little less sucky, because you can get away with just compiling for a new CPU type (6502 or z80), and then you just need to make sure your libraries are written right for each machine so the graphics/sound do what you want.


When going from old to new, it depends again.

If the game's mostly assembly, you're going to be rewriting it for Dreamcast.  Not that it's a big deal since the dreamcast is way overpowered.

If you left the game in some sort of C state, you can move large chunks of code without changing anything, and again just have to worry about talking to the graphics/sound stuff.


Either way, it's work.   It sucks less if you left it in a portable language.
This "max-level forum psycho" (:lol:) destroyed TWO PC Engine groups in rage: one by Aaron Lambert on Facebook "Because Chris 'Shadowland' Runyon!," then the other by Aaron Nanto "Because Le NightWolve!" Him and PCE Aarons don't have a good track record together... Both times he blamed the Aarons in a "Look-what-you-made-us-do?!" manner, never himself nor his deranged, destructive, toxic turbo troll gang!

OldRover

^^^ what Ark said. :)

In the specific case of HE... the programmers are using my PC source as a base and building from that instead of the PCE original source. The reasons for this are legion but it mainly comes down to the fact that both the PC version and the DC version are built using gcc. The PC and PCE versions share only about 25% of their code; the rest was rewritten for the PC. Also, not all assets were directly portable either; the PCE version has to use some specific planning methods and mapping techniques to pull off its various effects, whereas on the PC such things can be done in a much more straightforward manner. Even though the PC source forms the basis of the DC conversion, a direct port was not possible despite library support on the DC... reason being is that SDL on the DC is painfully slow... so the programmers are using the PowerVR directly.
Turbo Badass Rank: Janne (6 of 12 clears)
Conquered so far: Sinistron, Violent Soldier, Tatsujin, Super Raiden, Shape Shifter, Rayxanber II