Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(2 edits) (+1)

this is a great process (for a great result). How much time does it take to port a game like this? How are you handling the custom chip read/writes? And how can you do widescreen when the scrolling of those games is super-optimized not to have a lot of data on screen? I suppose you have to throw all the code away except for the high-level logic, which takes a lot of RE time.

(1 edit) (+1)

Custom chip operations are rewritten by purpose. Copper lists, hardware sprites and colour-register writes are SDL texture draws and GPU effects so old calls are basically triggers of intent like „fade this screen to black in 50 ticks”. Paula channel writes become mixer commands (like music fade). CIA/beam-position reads used for timing become a fixed 50 Hz game tick to maintain correct game speed, joystick reads become normal input etc.

For widescreen, Original Superfrog maintains a small scrolling buffer and draws only newly exposed rows or columns. This version keeps the whole decoded level map available in memory, so a wider viewport can simply look up and draw every tile it covers. Coordinates, collision and integer movement remain unchanged. Objects also remain active in the wider view but behaviours based on the original screen distance still use an invisible rectangle that has size of original playfield and act as a proximity trigger. Like in Ruff n Tumble where enemies don’t chase me from across the super ultra wide screen.

I won't tell how long it took to ship Frog as it would raise many eyebrows (and probably make some people upset)

Epic work :)

Impressive! Blows my mind :D