czx81
A brave (some would say foolish) attempt to emulate the ZX81 in CURSES in a text terminal. It needs a Unicode friendly terminal if you want to display the ZX81 block graphics. Note that two characters aren't available in Unicode (the half grey blocks) so aren't displayed correctly.
It supports loading and saving of .P files. Most arcade games are a bit ropey due to the key reading, but some do work well (like the public domain Tetris).
It incorporates the ZX81 ROM which is © 1981 Nine Tiles Networks Ltd.
The sources for V1.1 can be grabbed here.
The latest development sources can be grabbed here.