I can highly recommend TuringComplete. If you know what you're doing the start can feel a little hand-holdy, but by the end of the game you have a functioning computer running an assembly language of your design and it's fairly close to an open sandbox.
Building up to that point having started from the basics was very neat
Building up to that point having started from the basics was very neat