Hi, die meisten Emulatoren sind in C/C++ geschrieben und verwenden für einige Aufgaben auch schon mal InlineASM.
Allerdings gibt es auch welche die ganz normale Libs benutzen wie C++/Allegro. Dies ist aber nur für sehr alte Systeme interessant. Für die aktuellen geht da Tempo verloren und man hat nicht absolut freie Hand was zb das erweitern von Filtern etc angeht. Ansonsten gibts auch zb Java/C64 Kandidaten doch diese haben immmer mit kleinen SlowDowns zu kämpfen wegen der Runtimes. Sehr viele Emus sind OpneSource. Du kannst dir ja mal MAME oder MESS ansehen.
Da rein die CPU zuständig ist spielt die Graka keine Rolle und ein altes DX7 (DirektDraw) oder OpenGL1.0 reichen aus. Selbst ein alte MatroxMillenium mit 1MB reichen aus. Viele verwenden aber heute DX8 und höher (oder OpenGL) um zb von zusätzlichem Antialiasing oder anderen Goodies zu profitieren. Da darf die Graka dann mitmachen.
Bei den allerneusten Emus wird fast nur noch OpenGL benutzt (DX nur alternativ). Da alle diese Systeme mit OpenGL verwant sind gibts hier auch für die Graka was zu tun.
cu