Nachdem ich schon so etwas getan habe, würde ich e.James zustimmen und mit etwas wie dem 6502 gehen. Der 6502 ist überschaubar, ich denke weniger als 256 Befehle. Die z80 multiplext zum Beispiel einige der Opcodes und ist viel mehr Arbeit. Mit dem 6502 können Sie nach dem vic20 den Commodore64, usw. sowie Standups wie Asteroiden, Mondlander, Breakout und einige andere suchen. Der Apfel Iie und Atari Vcs (2600) und andere sind auch 6502 basiert.
Es ist gut, mit etwas zu gehen, das bereits emuliert wurde (und es gibt Open Source). Etwas, dass Sie beide Datenblätter und Implementierungen zusammen überprüfen können, wenn Sie Ihre eigenen erstellen. Vorsicht, nicht alle sind fehlerfrei, sie können eine Sache gut emulieren, vielleicht weil diese eine Sache niemals diese gebrochene Anweisung oder diese Flagge verwendet. Möglicherweise finden Sie auch unterschiedliche Interpretationen des Datenblattes.
Dank Mame und andere gibt es eine Menge Videospiele (nicht unbedingt 6502 basiert, im Allgemeinen) da draußen, vielleicht haben Sie einen Favoriten. Die Prozessor-Emulatoren in Mame sowie andere da draußen werden oft für Ausführungsgeschwindigkeit geschrieben und können schwierig zu folgen sein. Sicherlich kein Bildungscode, aber stark auf Leistung abgestimmt (wurde für eine 486-Plattform benötigt, braucht aber heute nicht unbedingt diese Stimmung).
Wenn der 6502 zu groß ist, um zu verdauen, oder wenn Sie die zu emulierenden Peripheriegeräte betrachten, könnten Sie nur mit dem Prozessor oder einem Mikrocontroller wie dem 12-Bit-Mikrochip-Bild- oder msp430-Befehlssatz arbeiten. sehr verdaulich, noch in der Produktion, so Tools zur Verfügung, beide haben c Compiler zum Beispiel. Keine sexy bekannten Programme laufen zu lassen oder ähnliches, aber nicht weniger lehrreich.