Back in the day nearly every "port" was a full reimplementation, from the code to custom graphics and sound. Such are the perils of writing to bare metal.
There are lots of ports from the 8-bit home computer era which don't have this problem. See for example, the number of ZX Spectrum ports to the Amstrad CPC machines.