https://github.com/lloydsparkes/MicropolisSharp/blob/master/Micropolis.Core/Micropolis.Main.cs The code is pretty nasty, and uses "fake" mem copy and tries to mimick pointer maths from the original. Rewrite it to become Idomatic in C#