<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://www.mikrocontroller.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Cuby</id>
	<title>Mikrocontroller.net - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://www.mikrocontroller.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Cuby"/>
	<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/articles/Spezial:Beitr%C3%A4ge/Cuby"/>
	<updated>2026-04-10T10:08:53Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.39.7</generator>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52432</id>
		<title>AVR 6502 Emulator</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52432"/>
		<updated>2010-10-30T23:58:12Z</updated>

		<summary type="html">&lt;p&gt;Cuby: /* Eine neue Idee? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 6502-Emulation auf Atmel AVR-Controllern ==&lt;br /&gt;
&lt;br /&gt;
Diese Seite faßt Diskussionen aus dem Thread &amp;quot;KIM-1 in AVR?&amp;quot; ([http://www.mikrocontroller.net/topic/193632]) zusammen und soll als Sammelstelle für weitere Informationen und zur Koordination der Entwicklung einer 6502-Emulationsbibliothek für AVR-Controller dienen.&lt;br /&gt;
&lt;br /&gt;
== Warum? ==&lt;br /&gt;
&lt;br /&gt;
In &amp;quot;alten&amp;quot; Homecomputer-Zeiten war der MOS 6502 und seine Derivate - neben dem Z80 von Zilog - die CPU der Wahl für (damals) schnelle, kostengünstige Systeme. Beispiele sind die Commodore-Systeme (C64, VC20, C128, PET, CBM), ATARI XL/XE und Apple II. Aber auch Spielekonsolen der 80er-Jahre verwenden vielmals einen 6502 - Atari 2600 und Nintendo NES sind wohl die bekanntesten Beispiele&lt;br /&gt;
&lt;br /&gt;
Mit einer Taktfrequenz von 1 MHz ist die verfügbare Rechenleistung eher gering. Daraus entstand der Gedanke, ein 8-Bit-System der 80er auf einem modernen, kostengünstigen 8-Bit-Controller in Software zu emulieren. Ein Projekt, das den intel 8080 (Vorgänger des Z80) emuliert und das damalige Standardbetriebssystem CP/M ausführen kann, ist in Ursprüngen [http://spritesmods.com/?art=avrcpm hier] zu finden und wird in [http://www.mikrocontroller.net/topic/177481 diesem Thread] weiterentwickelt (siehe auch die [http://www.mikrocontroller.net/articles/AVR_CP/M Projektseite]).&lt;br /&gt;
&lt;br /&gt;
Was mit einem 8080 möglich ist, sollte für den 6502 auch möglich sein! Das dürfte genug Herausforderung sein - die &amp;quot;Grabenkämpfe&amp;quot; der 80er-Jahre fanden meist zwischen 8080/Z80-Anhängern und 6502-Begeisterten statt...&lt;br /&gt;
&lt;br /&gt;
== Eine neue Idee? ==&lt;br /&gt;
&lt;br /&gt;
Einen 6502 auf AVR zu emulieren ist keine neue Idee. Es existieren bereits einige Projekte, die mehr oder weniger erfolgreich einen 6502 emulieren:&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2009/bhp7_teg25/bhp7_teg25/index.html NES-Emulator] - Projekt von Studenten der Cornell University.&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2007/bcr22/final%20webpage/final.html Apple II-Emulator], ebenfalls von Cornell.&lt;br /&gt;
&lt;br /&gt;
[http://www.belanger.pwp.blueyonder.co.uk/Projects/Vic%20Emu/vicemu.htm Commodore VC20-Emulator] (6502, VIC, Display, Tastatur) als AVR-Studio Assembler-Projekt.&lt;br /&gt;
&lt;br /&gt;
== Projekt: 6502-Emulations-Bibliothek ==&lt;br /&gt;
&lt;br /&gt;
Ein Ziel des Projektes soll es sein, eine universelle 6502-Emulations-Bibliothek für AVR-Mikrocontroller zu erstellen, die dann Basis für weitere Entwicklungen (Systememulatoren für KIM-1, Commodore 1541 usw.) sein soll. &lt;br /&gt;
&lt;br /&gt;
Eine optionale Anforderung an die Emulation ist Zyklenexaktheit der Software. Dies wird z.B. für die Verwendung von Floppy-Speedern für die Emulation des Commodore 1541-Diskettenlaufwerks benötigt. &lt;br /&gt;
&lt;br /&gt;
Wenn Zyklenexaktheit erreicht werden kann, ist die nächste Frage, ob die Software-6502-Emulation auch (mit Hilfe einer Adapterplatine) als pinkompatibler   Ersatz für einen &amp;quot;echten&amp;quot; 6502/6510 dienen kann. Dies ist aktuell unter Diskussion.&lt;br /&gt;
&lt;br /&gt;
== KIM 1-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Der KIM-1 war eine Entwicklungsplattform für den 6502. Die Idee, den KIM-1 als Software-Emulation im AVR zu realisieren, war der Startpunkt für dieses Projekt. Der Fortschritt des Projekts wird [http://t-winkler.net/dokuwiki/doku.php?id=kim:kim1284 hier] beschrieben.&lt;br /&gt;
&lt;br /&gt;
== Commodore 1541-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Bisherige Emulationsprojekte basierten auf einer Reimplementierung des IEC-Bus-Protokolls sowie der Funktionalität der 1541-Firmware (DOS), bekanntestes Projekt hier ist [http://www.c64-wiki.com/index.php/sd2iec_%28firmware%29 sd2iec].&lt;br /&gt;
&lt;br /&gt;
Eine komplette Hardware-Reimplementierung der 1541-Elektronik auf FPGA findet sich bei [http://commodore-gg.hobby.nl/innovatie_1541kaart_eng.htm 1541 &amp;quot;Ultimate&amp;quot;]und [http://www.das-labor.org/wiki/1541_im_FPGA das Labor].&lt;br /&gt;
&lt;br /&gt;
Ideen zur 1541-Realisierung auf AVR mit 6502-Emulator finden sich [http://t-winkler.net/dokuwiki/doku.php?id=1541-emul:start hier].&lt;br /&gt;
&lt;br /&gt;
== Alternativen? ==&lt;br /&gt;
&lt;br /&gt;
Es gibt jede Menge 6502-Implementierungen für FPGAs (in VHDL und Verilog):&lt;br /&gt;
&lt;br /&gt;
[http://www.syntiac.com/fpga64.html Peter Wendrichs C64 für FPGAs]&lt;br /&gt;
&lt;br /&gt;
[http://www.fpgaarcade.com/vic20_main.htm VC20 im FPGA bei fpgaarcade]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Projekte bei Opencores:&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,6502vhdl 6502 in VHDL]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,t65 T65 CPU (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,cpu6502_true_cycle Zyklengenauer 6502 (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,lattice6502 6502 in VHDL für Lattice FPGAs]&lt;br /&gt;
&lt;br /&gt;
Software-Emulation des 6502 in C und Assembler:&lt;br /&gt;
&lt;br /&gt;
[http://www.piumarta.com/software/lib6502/ lib6502 (C) von Ian Piumarta]&lt;br /&gt;
&lt;br /&gt;
[http://www.6502.org/tools/emu/la6502emu.txt 6502-Emulation in 68k-Assembler]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Software-Simulation des 6502:&lt;br /&gt;
&lt;br /&gt;
[http://www.visual6502.org/ Simulation des 6502 auf Transistorebene]&lt;/div&gt;</summary>
		<author><name>Cuby</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52430</id>
		<title>AVR 6502 Emulator</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52430"/>
		<updated>2010-10-30T23:40:02Z</updated>

		<summary type="html">&lt;p&gt;Cuby: /* Warum? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 6502-Emulation auf Atmel AVR-Controllern ==&lt;br /&gt;
&lt;br /&gt;
Diese Seite faßt Diskussionen aus dem Thread &amp;quot;KIM-1 in AVR?&amp;quot; ([http://www.mikrocontroller.net/topic/193632]) zusammen und soll als Sammelstelle für weitere Informationen und zur Koordination der Entwicklung einer 6502-Emulationsbibliothek für AVR-Controller dienen.&lt;br /&gt;
&lt;br /&gt;
== Warum? ==&lt;br /&gt;
&lt;br /&gt;
In &amp;quot;alten&amp;quot; Homecomputer-Zeiten war der MOS 6502 und seine Derivate - neben dem Z80 von Zilog - die CPU der Wahl für (damals) schnelle, kostengünstige Systeme. Beispiele sind die Commodore-Systeme (C64, VC20, C128, PET, CBM), ATARI XL/XE und Apple II. Aber auch Spielekonsolen der 80er-Jahre verwenden vielmals einen 6502 - Atari 2600 und Nintendo NES sind wohl die bekanntesten Beispiele&lt;br /&gt;
&lt;br /&gt;
Mit einer Taktfrequenz von 1 MHz ist die verfügbare Rechenleistung eher gering. Daraus entstand der Gedanke, ein 8-Bit-System der 80er auf einem modernen, kostengünstigen 8-Bit-Controller in Software zu emulieren. Ein Projekt, das den intel 8080 (Vorgänger des Z80) emuliert und das damalige Standardbetriebssystem CP/M ausführen kann, ist in Ursprüngen [http://spritesmods.com/?art=avrcpm hier] zu finden und wird in [http://www.mikrocontroller.net/topic/177481 diesem Thread] weiterentwickelt (siehe auch die [http://www.mikrocontroller.net/articles/AVR_CP/M Projektseite]).&lt;br /&gt;
&lt;br /&gt;
Was mit einem 8080 möglich ist, sollte für den 6502 auch möglich sein! Das dürfte genug Herausforderung sein - die &amp;quot;Grabenkämpfe&amp;quot; der 80er-Jahre fanden meist zwischen 8080/Z80-Anhängern und 6502-Begeisterten statt...&lt;br /&gt;
&lt;br /&gt;
== Eine neue Idee? ==&lt;br /&gt;
&lt;br /&gt;
Einen 6502 auf AVR zu emulieren, ist keine neue Idee. Es existieren bereits einige Projekte, die mehr oder weniger erfolgreich einen 6502 emulieren:&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2009/bhp7_teg25/bhp7_teg25/index.html NES-Emulator] - Projekt von Studenten der Cornell University.&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2007/bcr22/final%20webpage/final.html Apple II-Emulator], ebenfalls von Cornell.&lt;br /&gt;
&lt;br /&gt;
[http://www.belanger.pwp.blueyonder.co.uk/Projects/Vic%20Emu/vicemu.htm Commodore VC20-Emulator] (6502, VIC, Display, Tastatur) als AVR-Studio Assembler-Projekt.&lt;br /&gt;
&lt;br /&gt;
== Projekt: 6502-Emulations-Bibliothek ==&lt;br /&gt;
&lt;br /&gt;
Ein Ziel des Projektes soll es sein, eine universelle 6502-Emulations-Bibliothek für AVR-Mikrocontroller zu erstellen, die dann Basis für weitere Entwicklungen (Systememulatoren für KIM-1, Commodore 1541 usw.) sein soll. &lt;br /&gt;
&lt;br /&gt;
Eine optionale Anforderung an die Emulation ist Zyklenexaktheit der Software. Dies wird z.B. für die Verwendung von Floppy-Speedern für die Emulation des Commodore 1541-Diskettenlaufwerks benötigt. &lt;br /&gt;
&lt;br /&gt;
Wenn Zyklenexaktheit erreicht werden kann, ist die nächste Frage, ob die Software-6502-Emulation auch (mit Hilfe einer Adapterplatine) als pinkompatibler   Ersatz für einen &amp;quot;echten&amp;quot; 6502/6510 dienen kann. Dies ist aktuell unter Diskussion.&lt;br /&gt;
&lt;br /&gt;
== KIM 1-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Der KIM-1 war eine Entwicklungsplattform für den 6502. Die Idee, den KIM-1 als Software-Emulation im AVR zu realisieren, war der Startpunkt für dieses Projekt. Der Fortschritt des Projekts wird [http://t-winkler.net/dokuwiki/doku.php?id=kim:kim1284 hier] beschrieben.&lt;br /&gt;
&lt;br /&gt;
== Commodore 1541-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Bisherige Emulationsprojekte basierten auf einer Reimplementierung des IEC-Bus-Protokolls sowie der Funktionalität der 1541-Firmware (DOS), bekanntestes Projekt hier ist [http://www.c64-wiki.com/index.php/SD2IEC SD2IEC].&lt;br /&gt;
&lt;br /&gt;
Eine komplette Hardware-Reimplementierung der 1541-Elektronik auf FPGA findet sich bei [http://commodore-gg.hobby.nl/innovatie_1541kaart_eng.htm 1541 &amp;quot;Ultimate&amp;quot;]und [http://www.das-labor.org/wiki/1541_im_FPGA das Labor].&lt;br /&gt;
&lt;br /&gt;
Ideen zur 1541-Realisierung auf AVR mit 6502-Emulator finden sich [http://t-winkler.net/dokuwiki/doku.php?id=1541-emul:start hier].&lt;br /&gt;
&lt;br /&gt;
== Alternativen? ==&lt;br /&gt;
&lt;br /&gt;
Es gibt jede Menge 6502-Implementierungen für FPGAs (in VHDL und Verilog):&lt;br /&gt;
&lt;br /&gt;
[http://www.syntiac.com/fpga64.html Peter Wendrichs C64 für FPGAs]&lt;br /&gt;
&lt;br /&gt;
[http://www.fpgaarcade.com/vic20_main.htm VC20 im FPGA bei fpgaarcade]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Projekte bei Opencores:&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,6502vhdl 6502 in VHDL]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,t65 T65 CPU (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,cpu6502_true_cycle Zyklengenauer 6502 (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,lattice6502 6502 in VHDL für Lattice FPGAs]&lt;br /&gt;
&lt;br /&gt;
Software-Emulation des 6502 in C und Assembler:&lt;br /&gt;
&lt;br /&gt;
[http://www.piumarta.com/software/lib6502/ lib6502 (C) von Ian Piumarta]&lt;br /&gt;
&lt;br /&gt;
[http://www.6502.org/tools/emu/la6502emu.txt 6502-Emulation in 68k-Assembler]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Software-Simulation des 6502:&lt;br /&gt;
&lt;br /&gt;
[http://www.visual6502.org/ Simulation des 6502 auf Transistorebene]&lt;/div&gt;</summary>
		<author><name>Cuby</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52429</id>
		<title>AVR 6502 Emulator</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52429"/>
		<updated>2010-10-30T23:38:50Z</updated>

		<summary type="html">&lt;p&gt;Cuby: weiterer 6502 emu link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 6502-Emulation auf Atmel AVR-Controllern ==&lt;br /&gt;
&lt;br /&gt;
Diese Seite faßt Diskussionen aus dem Thread &amp;quot;KIM-1 in AVR?&amp;quot; ([http://www.mikrocontroller.net/topic/193632]) zusammen und soll als Sammelstelle für weitere Informationen und zur Koordination der Entwicklung einer 6502-Emulationsbibliothek für AVR-Controller dienen.&lt;br /&gt;
&lt;br /&gt;
== Warum? ==&lt;br /&gt;
&lt;br /&gt;
In alten Homecomputer-Zeilen war der MOS 6502 und seine Derivate - neben dem Z80 von Zilog - die CPU der Wahl für (damals) schnelle, kostengünstige Systeme. Beispiele sind die Commodore-Systeme (C64, VC20, C128, PET, CBM), ATARI XL/XE und Apple II. Aber auch Spielekonsolen der 80er-Jahre verwenden vielmals einen 6502 - Atari 2600 und Nintendo NES sind wohl die bekanntesten Beispiele&lt;br /&gt;
&lt;br /&gt;
Mit einer Taktfrequenz von 1 MHz ist die verfügbare Rechenleistung eher gering. Daraus entstand der Gedanke, ein 8-Bit-System der 80er auf einem modernen, kostengünstigen 8-Bit-Controller in Software zu emulieren. Ein Projekt, das den intel 8080 (Vorgänger des Z80) emuliert und das damalige Standardbetriebssystem CP/M ausführen kann, ist in Ursprüngen [http://spritesmods.com/?art=avrcpm hier] zu finden und wird in [http://www.mikrocontroller.net/topic/177481 diesem Thread] weiterentwickelt (siehe auch die [http://www.mikrocontroller.net/articles/AVR_CP/M Projektseite]).&lt;br /&gt;
&lt;br /&gt;
Was mit einem 8080 möglich ist, sollte für den 6502 auch möglich sein! Das dürfte genug Herausforderung sein - die &amp;quot;Grabenkämpfe&amp;quot; der 80er-Jahre fanden meist zwischen 8080/Z80-Anhängern und 6502-Begeisterten statt...&lt;br /&gt;
&lt;br /&gt;
== Eine neue Idee? ==&lt;br /&gt;
&lt;br /&gt;
Einen 6502 auf AVR zu emulieren, ist keine neue Idee. Es existieren bereits einige Projekte, die mehr oder weniger erfolgreich einen 6502 emulieren:&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2009/bhp7_teg25/bhp7_teg25/index.html NES-Emulator] - Projekt von Studenten der Cornell University.&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2007/bcr22/final%20webpage/final.html Apple II-Emulator], ebenfalls von Cornell.&lt;br /&gt;
&lt;br /&gt;
[http://www.belanger.pwp.blueyonder.co.uk/Projects/Vic%20Emu/vicemu.htm Commodore VC20-Emulator] (6502, VIC, Display, Tastatur) als AVR-Studio Assembler-Projekt.&lt;br /&gt;
&lt;br /&gt;
== Projekt: 6502-Emulations-Bibliothek ==&lt;br /&gt;
&lt;br /&gt;
Ein Ziel des Projektes soll es sein, eine universelle 6502-Emulations-Bibliothek für AVR-Mikrocontroller zu erstellen, die dann Basis für weitere Entwicklungen (Systememulatoren für KIM-1, Commodore 1541 usw.) sein soll. &lt;br /&gt;
&lt;br /&gt;
Eine optionale Anforderung an die Emulation ist Zyklenexaktheit der Software. Dies wird z.B. für die Verwendung von Floppy-Speedern für die Emulation des Commodore 1541-Diskettenlaufwerks benötigt. &lt;br /&gt;
&lt;br /&gt;
Wenn Zyklenexaktheit erreicht werden kann, ist die nächste Frage, ob die Software-6502-Emulation auch (mit Hilfe einer Adapterplatine) als pinkompatibler   Ersatz für einen &amp;quot;echten&amp;quot; 6502/6510 dienen kann. Dies ist aktuell unter Diskussion.&lt;br /&gt;
&lt;br /&gt;
== KIM 1-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Der KIM-1 war eine Entwicklungsplattform für den 6502. Die Idee, den KIM-1 als Software-Emulation im AVR zu realisieren, war der Startpunkt für dieses Projekt. Der Fortschritt des Projekts wird [http://t-winkler.net/dokuwiki/doku.php?id=kim:kim1284 hier] beschrieben.&lt;br /&gt;
&lt;br /&gt;
== Commodore 1541-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Bisherige Emulationsprojekte basierten auf einer Reimplementierung des IEC-Bus-Protokolls sowie der Funktionalität der 1541-Firmware (DOS), bekanntestes Projekt hier ist [http://www.c64-wiki.com/index.php/SD2IEC SD2IEC].&lt;br /&gt;
&lt;br /&gt;
Eine komplette Hardware-Reimplementierung der 1541-Elektronik auf FPGA findet sich bei [http://commodore-gg.hobby.nl/innovatie_1541kaart_eng.htm 1541 &amp;quot;Ultimate&amp;quot;]und [http://www.das-labor.org/wiki/1541_im_FPGA das Labor].&lt;br /&gt;
&lt;br /&gt;
Ideen zur 1541-Realisierung auf AVR mit 6502-Emulator finden sich [http://t-winkler.net/dokuwiki/doku.php?id=1541-emul:start hier].&lt;br /&gt;
&lt;br /&gt;
== Alternativen? ==&lt;br /&gt;
&lt;br /&gt;
Es gibt jede Menge 6502-Implementierungen für FPGAs (in VHDL und Verilog):&lt;br /&gt;
&lt;br /&gt;
[http://www.syntiac.com/fpga64.html Peter Wendrichs C64 für FPGAs]&lt;br /&gt;
&lt;br /&gt;
[http://www.fpgaarcade.com/vic20_main.htm VC20 im FPGA bei fpgaarcade]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Projekte bei Opencores:&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,6502vhdl 6502 in VHDL]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,t65 T65 CPU (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,cpu6502_true_cycle Zyklengenauer 6502 (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,lattice6502 6502 in VHDL für Lattice FPGAs]&lt;br /&gt;
&lt;br /&gt;
Software-Emulation des 6502 in C und Assembler:&lt;br /&gt;
&lt;br /&gt;
[http://www.piumarta.com/software/lib6502/ lib6502 (C) von Ian Piumarta]&lt;br /&gt;
&lt;br /&gt;
[http://www.6502.org/tools/emu/la6502emu.txt 6502-Emulation in 68k-Assembler]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Software-Simulation des 6502:&lt;br /&gt;
&lt;br /&gt;
[http://www.visual6502.org/ Simulation des 6502 auf Transistorebene]&lt;/div&gt;</summary>
		<author><name>Cuby</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52428</id>
		<title>AVR 6502 Emulator</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52428"/>
		<updated>2010-10-30T23:35:43Z</updated>

		<summary type="html">&lt;p&gt;Cuby: /* Projekt */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 6502-Emulation auf Atmel AVR-Controllern ==&lt;br /&gt;
&lt;br /&gt;
Diese Seite faßt Diskussionen aus dem Thread &amp;quot;KIM-1 in AVR?&amp;quot; ([http://www.mikrocontroller.net/topic/193632]) zusammen und soll als Sammelstelle für weitere Informationen und zur Koordination der Entwicklung einer 6502-Emulationsbibliothek für AVR-Controller dienen.&lt;br /&gt;
&lt;br /&gt;
== Warum? ==&lt;br /&gt;
&lt;br /&gt;
In alten Homecomputer-Zeilen war der MOS 6502 und seine Derivate - neben dem Z80 von Zilog - die CPU der Wahl für (damals) schnelle, kostengünstige Systeme. Beispiele sind die Commodore-Systeme (C64, VC20, C128, PET, CBM), ATARI XL/XE und Apple II. Aber auch Spielekonsolen der 80er-Jahre verwenden vielmals einen 6502 - Atari 2600 und Nintendo NES sind wohl die bekanntesten Beispiele&lt;br /&gt;
&lt;br /&gt;
Mit einer Taktfrequenz von 1 MHz ist die verfügbare Rechenleistung eher gering. Daraus entstand der Gedanke, ein 8-Bit-System der 80er auf einem modernen, kostengünstigen 8-Bit-Controller in Software zu emulieren. Ein Projekt, das den intel 8080 (Vorgänger des Z80) emuliert und das damalige Standardbetriebssystem CP/M ausführen kann, ist in Ursprüngen [http://spritesmods.com/?art=avrcpm hier] zu finden und wird in [http://www.mikrocontroller.net/topic/177481 diesem Thread] weiterentwickelt (siehe auch die [http://www.mikrocontroller.net/articles/AVR_CP/M Projektseite]).&lt;br /&gt;
&lt;br /&gt;
Was mit einem 8080 möglich ist, sollte für den 6502 auch möglich sein! Das dürfte genug Herausforderung sein - die &amp;quot;Grabenkämpfe&amp;quot; der 80er-Jahre fanden meist zwischen 8080/Z80-Anhängern und 6502-Begeisterten statt...&lt;br /&gt;
&lt;br /&gt;
== Eine neue Idee? ==&lt;br /&gt;
&lt;br /&gt;
Einen 6502 auf AVR zu emulieren, ist keine neue Idee. Es existieren bereits einige Projekte, die mehr oder weniger erfolgreich einen 6502 emulieren:&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2009/bhp7_teg25/bhp7_teg25/index.html NES-Emulator] - Projekt von Studenten der Cornell University.&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2007/bcr22/final%20webpage/final.html Apple II-Emulator], ebenfalls von Cornell.&lt;br /&gt;
&lt;br /&gt;
[http://www.belanger.pwp.blueyonder.co.uk/Projects/Vic%20Emu/vicemu.htm Commodore VC20-Emulator] (6502, VIC, Display, Tastatur) als AVR-Studio Assembler-Projekt.&lt;br /&gt;
&lt;br /&gt;
== Projekt: 6502-Emulations-Bibliothek ==&lt;br /&gt;
&lt;br /&gt;
Ein Ziel des Projektes soll es sein, eine universelle 6502-Emulations-Bibliothek für AVR-Mikrocontroller zu erstellen, die dann Basis für weitere Entwicklungen (Systememulatoren für KIM-1, Commodore 1541 usw.) sein soll. &lt;br /&gt;
&lt;br /&gt;
Eine optionale Anforderung an die Emulation ist Zyklenexaktheit der Software. Dies wird z.B. für die Verwendung von Floppy-Speedern für die Emulation des Commodore 1541-Diskettenlaufwerks benötigt. &lt;br /&gt;
&lt;br /&gt;
Wenn Zyklenexaktheit erreicht werden kann, ist die nächste Frage, ob die Software-6502-Emulation auch (mit Hilfe einer Adapterplatine) als pinkompatibler   Ersatz für einen &amp;quot;echten&amp;quot; 6502/6510 dienen kann. Dies ist aktuell unter Diskussion.&lt;br /&gt;
&lt;br /&gt;
== KIM 1-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Der KIM-1 war eine Entwicklungsplattform für den 6502. Die Idee, den KIM-1 als Software-Emulation im AVR zu realisieren, war der Startpunkt für dieses Projekt. Der Fortschritt des Projekts wird [http://t-winkler.net/dokuwiki/doku.php?id=kim:kim1284 hier] beschrieben.&lt;br /&gt;
&lt;br /&gt;
== Commodore 1541-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Bisherige Emulationsprojekte basierten auf einer Reimplementierung des IEC-Bus-Protokolls sowie der Funktionalität der 1541-Firmware (DOS), bekanntestes Projekt hier ist [http://www.c64-wiki.com/index.php/SD2IEC SD2IEC].&lt;br /&gt;
&lt;br /&gt;
Eine komplette Hardware-Reimplementierung der 1541-Elektronik auf FPGA findet sich bei [http://commodore-gg.hobby.nl/innovatie_1541kaart_eng.htm 1541 &amp;quot;Ultimate&amp;quot;]und [http://www.das-labor.org/wiki/1541_im_FPGA das Labor].&lt;br /&gt;
&lt;br /&gt;
Ideen zur 1541-Realisierung auf AVR mit 6502-Emulator finden sich [http://t-winkler.net/dokuwiki/doku.php?id=1541-emul:start hier].&lt;br /&gt;
&lt;br /&gt;
== Alternativen? ==&lt;br /&gt;
&lt;br /&gt;
Es gibt jede Menge 6502-Implementierungen für FPGAs (in VHDL und Verilog):&lt;br /&gt;
&lt;br /&gt;
[http://www.syntiac.com/fpga64.html Peter Wendrichs C64 für FPGAs]&lt;br /&gt;
&lt;br /&gt;
[http://www.fpgaarcade.com/vic20_main.htm VC20 im FPGA bei fpgaarcade]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Projekte bei Opencores:&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,6502vhdl 6502 in VHDL]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,t65 T65 CPU (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,cpu6502_true_cycle Zyklengenauer 6502 (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,lattice6502 6502 in VHDL für Lattice FPGAs]&lt;br /&gt;
&lt;br /&gt;
Software-Emulation des 6502 in C:&lt;br /&gt;
&lt;br /&gt;
[http://www.piumarta.com/software/lib6502/ lib6502 von Ian Piumarta]&lt;br /&gt;
&lt;br /&gt;
Software-Simulation des 6502:&lt;br /&gt;
&lt;br /&gt;
[http://www.visual6502.org/ Simulation des 6502 auf Transistorebene]&lt;/div&gt;</summary>
		<author><name>Cuby</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52427</id>
		<title>AVR 6502 Emulator</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52427"/>
		<updated>2010-10-30T23:32:51Z</updated>

		<summary type="html">&lt;p&gt;Cuby: /* Commodore 1541-Emulation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 6502-Emulation auf Atmel AVR-Controllern ==&lt;br /&gt;
&lt;br /&gt;
Diese Seite faßt Diskussionen aus dem Thread &amp;quot;KIM-1 in AVR?&amp;quot; ([http://www.mikrocontroller.net/topic/193632]) zusammen und soll als Sammelstelle für weitere Informationen und zur Koordination der Entwicklung einer 6502-Emulationsbibliothek für AVR-Controller dienen.&lt;br /&gt;
&lt;br /&gt;
== Warum? ==&lt;br /&gt;
&lt;br /&gt;
In alten Homecomputer-Zeilen war der MOS 6502 und seine Derivate - neben dem Z80 von Zilog - die CPU der Wahl für (damals) schnelle, kostengünstige Systeme. Beispiele sind die Commodore-Systeme (C64, VC20, C128, PET, CBM), ATARI XL/XE und Apple II. Aber auch Spielekonsolen der 80er-Jahre verwenden vielmals einen 6502 - Atari 2600 und Nintendo NES sind wohl die bekanntesten Beispiele&lt;br /&gt;
&lt;br /&gt;
Mit einer Taktfrequenz von 1 MHz ist die verfügbare Rechenleistung eher gering. Daraus entstand der Gedanke, ein 8-Bit-System der 80er auf einem modernen, kostengünstigen 8-Bit-Controller in Software zu emulieren. Ein Projekt, das den intel 8080 (Vorgänger des Z80) emuliert und das damalige Standardbetriebssystem CP/M ausführen kann, ist in Ursprüngen [http://spritesmods.com/?art=avrcpm hier] zu finden und wird in [http://www.mikrocontroller.net/topic/177481 diesem Thread] weiterentwickelt (siehe auch die [http://www.mikrocontroller.net/articles/AVR_CP/M Projektseite]).&lt;br /&gt;
&lt;br /&gt;
Was mit einem 8080 möglich ist, sollte für den 6502 auch möglich sein! Das dürfte genug Herausforderung sein - die &amp;quot;Grabenkämpfe&amp;quot; der 80er-Jahre fanden meist zwischen 8080/Z80-Anhängern und 6502-Begeisterten statt...&lt;br /&gt;
&lt;br /&gt;
== Eine neue Idee? ==&lt;br /&gt;
&lt;br /&gt;
Einen 6502 auf AVR zu emulieren, ist keine neue Idee. Es existieren bereits einige Projekte, die mehr oder weniger erfolgreich einen 6502 emulieren:&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2009/bhp7_teg25/bhp7_teg25/index.html NES-Emulator] - Projekt von Studenten der Cornell University.&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2007/bcr22/final%20webpage/final.html Apple II-Emulator], ebenfalls von Cornell.&lt;br /&gt;
&lt;br /&gt;
[http://www.belanger.pwp.blueyonder.co.uk/Projects/Vic%20Emu/vicemu.htm Commodore VC20-Emulator] (6502, VIC, Display, Tastatur) als AVR-Studio Assembler-Projekt.&lt;br /&gt;
&lt;br /&gt;
== Projekt ==&lt;br /&gt;
&lt;br /&gt;
Ein Ziel des Projektes soll es sein, eine universelle 6502-Emulations-Bibliothek für AVR-Mikrocontroller zu erstellen, die dann Basis für weitere Entwicklungen (Systememulatoren für KIM-1, Commodore 1541 usw.) sein soll. &lt;br /&gt;
&lt;br /&gt;
Eine optionale Anforderung an die Emulation ist Zyklenexaktheit der Software. Dies wird z.B. für die Verwendung von Floppy-Speedern für die Emulation des Commodore 1541-Diskettenlaufwerks benötigt. &lt;br /&gt;
&lt;br /&gt;
Wenn Zyklenexaktheit erreicht werden kann, ist die nächste Frage, ob die Software-6502-Emulation auch (mit Hilfe einer Adapterplatine) als pinkompatibler   Ersatz für einen &amp;quot;echten&amp;quot; 6502/6510 dienen kann. Dies ist aktuell unter Diskussion.&lt;br /&gt;
&lt;br /&gt;
== KIM 1-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Der KIM-1 war eine Entwicklungsplattform für den 6502. Die Idee, den KIM-1 als Software-Emulation im AVR zu realisieren, war der Startpunkt für dieses Projekt. Der Fortschritt des Projekts wird [http://t-winkler.net/dokuwiki/doku.php?id=kim:kim1284 hier] beschrieben.&lt;br /&gt;
&lt;br /&gt;
== Commodore 1541-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Bisherige Emulationsprojekte basierten auf einer Reimplementierung des IEC-Bus-Protokolls sowie der Funktionalität der 1541-Firmware (DOS), bekanntestes Projekt hier ist [http://www.c64-wiki.com/index.php/SD2IEC SD2IEC].&lt;br /&gt;
&lt;br /&gt;
Eine komplette Hardware-Reimplementierung der 1541-Elektronik auf FPGA findet sich bei [http://commodore-gg.hobby.nl/innovatie_1541kaart_eng.htm 1541 &amp;quot;Ultimate&amp;quot;]und [http://www.das-labor.org/wiki/1541_im_FPGA das Labor].&lt;br /&gt;
&lt;br /&gt;
Ideen zur 1541-Realisierung auf AVR mit 6502-Emulator finden sich [http://t-winkler.net/dokuwiki/doku.php?id=1541-emul:start hier].&lt;br /&gt;
&lt;br /&gt;
== Alternativen? ==&lt;br /&gt;
&lt;br /&gt;
Es gibt jede Menge 6502-Implementierungen für FPGAs (in VHDL und Verilog):&lt;br /&gt;
&lt;br /&gt;
[http://www.syntiac.com/fpga64.html Peter Wendrichs C64 für FPGAs]&lt;br /&gt;
&lt;br /&gt;
[http://www.fpgaarcade.com/vic20_main.htm VC20 im FPGA bei fpgaarcade]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Projekte bei Opencores:&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,6502vhdl 6502 in VHDL]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,t65 T65 CPU (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,cpu6502_true_cycle Zyklengenauer 6502 (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,lattice6502 6502 in VHDL für Lattice FPGAs]&lt;br /&gt;
&lt;br /&gt;
Software-Emulation des 6502 in C:&lt;br /&gt;
&lt;br /&gt;
[http://www.piumarta.com/software/lib6502/ lib6502 von Ian Piumarta]&lt;br /&gt;
&lt;br /&gt;
Software-Simulation des 6502:&lt;br /&gt;
&lt;br /&gt;
[http://www.visual6502.org/ Simulation des 6502 auf Transistorebene]&lt;/div&gt;</summary>
		<author><name>Cuby</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52426</id>
		<title>AVR 6502 Emulator</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52426"/>
		<updated>2010-10-30T23:31:43Z</updated>

		<summary type="html">&lt;p&gt;Cuby: /* Alternativen? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 6502-Emulation auf Atmel AVR-Controllern ==&lt;br /&gt;
&lt;br /&gt;
Diese Seite faßt Diskussionen aus dem Thread &amp;quot;KIM-1 in AVR?&amp;quot; ([http://www.mikrocontroller.net/topic/193632]) zusammen und soll als Sammelstelle für weitere Informationen und zur Koordination der Entwicklung einer 6502-Emulationsbibliothek für AVR-Controller dienen.&lt;br /&gt;
&lt;br /&gt;
== Warum? ==&lt;br /&gt;
&lt;br /&gt;
In alten Homecomputer-Zeilen war der MOS 6502 und seine Derivate - neben dem Z80 von Zilog - die CPU der Wahl für (damals) schnelle, kostengünstige Systeme. Beispiele sind die Commodore-Systeme (C64, VC20, C128, PET, CBM), ATARI XL/XE und Apple II. Aber auch Spielekonsolen der 80er-Jahre verwenden vielmals einen 6502 - Atari 2600 und Nintendo NES sind wohl die bekanntesten Beispiele&lt;br /&gt;
&lt;br /&gt;
Mit einer Taktfrequenz von 1 MHz ist die verfügbare Rechenleistung eher gering. Daraus entstand der Gedanke, ein 8-Bit-System der 80er auf einem modernen, kostengünstigen 8-Bit-Controller in Software zu emulieren. Ein Projekt, das den intel 8080 (Vorgänger des Z80) emuliert und das damalige Standardbetriebssystem CP/M ausführen kann, ist in Ursprüngen [http://spritesmods.com/?art=avrcpm hier] zu finden und wird in [http://www.mikrocontroller.net/topic/177481 diesem Thread] weiterentwickelt (siehe auch die [http://www.mikrocontroller.net/articles/AVR_CP/M Projektseite]).&lt;br /&gt;
&lt;br /&gt;
Was mit einem 8080 möglich ist, sollte für den 6502 auch möglich sein! Das dürfte genug Herausforderung sein - die &amp;quot;Grabenkämpfe&amp;quot; der 80er-Jahre fanden meist zwischen 8080/Z80-Anhängern und 6502-Begeisterten statt...&lt;br /&gt;
&lt;br /&gt;
== Eine neue Idee? ==&lt;br /&gt;
&lt;br /&gt;
Einen 6502 auf AVR zu emulieren, ist keine neue Idee. Es existieren bereits einige Projekte, die mehr oder weniger erfolgreich einen 6502 emulieren:&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2009/bhp7_teg25/bhp7_teg25/index.html NES-Emulator] - Projekt von Studenten der Cornell University.&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2007/bcr22/final%20webpage/final.html Apple II-Emulator], ebenfalls von Cornell.&lt;br /&gt;
&lt;br /&gt;
[http://www.belanger.pwp.blueyonder.co.uk/Projects/Vic%20Emu/vicemu.htm Commodore VC20-Emulator] (6502, VIC, Display, Tastatur) als AVR-Studio Assembler-Projekt.&lt;br /&gt;
&lt;br /&gt;
== Projekt ==&lt;br /&gt;
&lt;br /&gt;
Ein Ziel des Projektes soll es sein, eine universelle 6502-Emulations-Bibliothek für AVR-Mikrocontroller zu erstellen, die dann Basis für weitere Entwicklungen (Systememulatoren für KIM-1, Commodore 1541 usw.) sein soll. &lt;br /&gt;
&lt;br /&gt;
Eine optionale Anforderung an die Emulation ist Zyklenexaktheit der Software. Dies wird z.B. für die Verwendung von Floppy-Speedern für die Emulation des Commodore 1541-Diskettenlaufwerks benötigt. &lt;br /&gt;
&lt;br /&gt;
Wenn Zyklenexaktheit erreicht werden kann, ist die nächste Frage, ob die Software-6502-Emulation auch (mit Hilfe einer Adapterplatine) als pinkompatibler   Ersatz für einen &amp;quot;echten&amp;quot; 6502/6510 dienen kann. Dies ist aktuell unter Diskussion.&lt;br /&gt;
&lt;br /&gt;
== KIM 1-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Der KIM-1 war eine Entwicklungsplattform für den 6502. Die Idee, den KIM-1 als Software-Emulation im AVR zu realisieren, war der Startpunkt für dieses Projekt. Der Fortschritt des Projekts wird [http://t-winkler.net/dokuwiki/doku.php?id=kim:kim1284 hier] beschrieben.&lt;br /&gt;
&lt;br /&gt;
== Commodore 1541-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Bisherige Emulationsprojekte basierten auf einer Reimplementierung des IEC-Bus-Protokolls sowie der Funktionalität der 1541-Firmware (DOS), bekanntestes Projekt hier ist [http://www.c64-wiki.com/index.php/SD2IEC SD2IEC].&lt;br /&gt;
&lt;br /&gt;
Eine komplette Hardware-Reimplementierung der 1541-Elektronik auf FPGA findet sich bei [http://commodore-gg.hobby.nl/innovatie_1541kaart_eng.htm 1541 &amp;quot;Ultimate&amp;quot;]und [http://www.das-labor.org/wiki/1541_im_FPGA das Labor].&lt;br /&gt;
&lt;br /&gt;
== Alternativen? ==&lt;br /&gt;
&lt;br /&gt;
Es gibt jede Menge 6502-Implementierungen für FPGAs (in VHDL und Verilog):&lt;br /&gt;
&lt;br /&gt;
[http://www.syntiac.com/fpga64.html Peter Wendrichs C64 für FPGAs]&lt;br /&gt;
&lt;br /&gt;
[http://www.fpgaarcade.com/vic20_main.htm VC20 im FPGA bei fpgaarcade]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Projekte bei Opencores:&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,6502vhdl 6502 in VHDL]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,t65 T65 CPU (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,cpu6502_true_cycle Zyklengenauer 6502 (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,lattice6502 6502 in VHDL für Lattice FPGAs]&lt;br /&gt;
&lt;br /&gt;
Software-Emulation des 6502 in C:&lt;br /&gt;
&lt;br /&gt;
[http://www.piumarta.com/software/lib6502/ lib6502 von Ian Piumarta]&lt;br /&gt;
&lt;br /&gt;
Software-Simulation des 6502:&lt;br /&gt;
&lt;br /&gt;
[http://www.visual6502.org/ Simulation des 6502 auf Transistorebene]&lt;/div&gt;</summary>
		<author><name>Cuby</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52425</id>
		<title>AVR 6502 Emulator</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52425"/>
		<updated>2010-10-30T23:27:06Z</updated>

		<summary type="html">&lt;p&gt;Cuby: Link zu vc20-fpga-implementierung bei fpgaarcade&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 6502-Emulation auf Atmel AVR-Controllern ==&lt;br /&gt;
&lt;br /&gt;
Diese Seite faßt Diskussionen aus dem Thread &amp;quot;KIM-1 in AVR?&amp;quot; ([http://www.mikrocontroller.net/topic/193632]) zusammen und soll als Sammelstelle für weitere Informationen und zur Koordination der Entwicklung einer 6502-Emulationsbibliothek für AVR-Controller dienen.&lt;br /&gt;
&lt;br /&gt;
== Warum? ==&lt;br /&gt;
&lt;br /&gt;
In alten Homecomputer-Zeilen war der MOS 6502 und seine Derivate - neben dem Z80 von Zilog - die CPU der Wahl für (damals) schnelle, kostengünstige Systeme. Beispiele sind die Commodore-Systeme (C64, VC20, C128, PET, CBM), ATARI XL/XE und Apple II. Aber auch Spielekonsolen der 80er-Jahre verwenden vielmals einen 6502 - Atari 2600 und Nintendo NES sind wohl die bekanntesten Beispiele&lt;br /&gt;
&lt;br /&gt;
Mit einer Taktfrequenz von 1 MHz ist die verfügbare Rechenleistung eher gering. Daraus entstand der Gedanke, ein 8-Bit-System der 80er auf einem modernen, kostengünstigen 8-Bit-Controller in Software zu emulieren. Ein Projekt, das den intel 8080 (Vorgänger des Z80) emuliert und das damalige Standardbetriebssystem CP/M ausführen kann, ist in Ursprüngen [http://spritesmods.com/?art=avrcpm hier] zu finden und wird in [http://www.mikrocontroller.net/topic/177481 diesem Thread] weiterentwickelt (siehe auch die [http://www.mikrocontroller.net/articles/AVR_CP/M Projektseite]).&lt;br /&gt;
&lt;br /&gt;
Was mit einem 8080 möglich ist, sollte für den 6502 auch möglich sein! Das dürfte genug Herausforderung sein - die &amp;quot;Grabenkämpfe&amp;quot; der 80er-Jahre fanden meist zwischen 8080/Z80-Anhängern und 6502-Begeisterten statt...&lt;br /&gt;
&lt;br /&gt;
== Eine neue Idee? ==&lt;br /&gt;
&lt;br /&gt;
Einen 6502 auf AVR zu emulieren, ist keine neue Idee. Es existieren bereits einige Projekte, die mehr oder weniger erfolgreich einen 6502 emulieren:&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2009/bhp7_teg25/bhp7_teg25/index.html NES-Emulator] - Projekt von Studenten der Cornell University.&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2007/bcr22/final%20webpage/final.html Apple II-Emulator], ebenfalls von Cornell.&lt;br /&gt;
&lt;br /&gt;
[http://www.belanger.pwp.blueyonder.co.uk/Projects/Vic%20Emu/vicemu.htm Commodore VC20-Emulator] (6502, VIC, Display, Tastatur) als AVR-Studio Assembler-Projekt.&lt;br /&gt;
&lt;br /&gt;
== Projekt ==&lt;br /&gt;
&lt;br /&gt;
Ein Ziel des Projektes soll es sein, eine universelle 6502-Emulations-Bibliothek für AVR-Mikrocontroller zu erstellen, die dann Basis für weitere Entwicklungen (Systememulatoren für KIM-1, Commodore 1541 usw.) sein soll. &lt;br /&gt;
&lt;br /&gt;
Eine optionale Anforderung an die Emulation ist Zyklenexaktheit der Software. Dies wird z.B. für die Verwendung von Floppy-Speedern für die Emulation des Commodore 1541-Diskettenlaufwerks benötigt. &lt;br /&gt;
&lt;br /&gt;
Wenn Zyklenexaktheit erreicht werden kann, ist die nächste Frage, ob die Software-6502-Emulation auch (mit Hilfe einer Adapterplatine) als pinkompatibler   Ersatz für einen &amp;quot;echten&amp;quot; 6502/6510 dienen kann. Dies ist aktuell unter Diskussion.&lt;br /&gt;
&lt;br /&gt;
== KIM 1-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Der KIM-1 war eine Entwicklungsplattform für den 6502. Die Idee, den KIM-1 als Software-Emulation im AVR zu realisieren, war der Startpunkt für dieses Projekt. Der Fortschritt des Projekts wird [http://t-winkler.net/dokuwiki/doku.php?id=kim:kim1284 hier] beschrieben.&lt;br /&gt;
&lt;br /&gt;
== Commodore 1541-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Bisherige Emulationsprojekte basierten auf einer Reimplementierung des IEC-Bus-Protokolls sowie der Funktionalität der 1541-Firmware (DOS), bekanntestes Projekt hier ist [http://www.c64-wiki.com/index.php/SD2IEC SD2IEC].&lt;br /&gt;
&lt;br /&gt;
Eine komplette Hardware-Reimplementierung der 1541-Elektronik auf FPGA findet sich bei [http://commodore-gg.hobby.nl/innovatie_1541kaart_eng.htm 1541 &amp;quot;Ultimate&amp;quot;]und [http://www.das-labor.org/wiki/1541_im_FPGA das Labor].&lt;br /&gt;
&lt;br /&gt;
== Alternativen? ==&lt;br /&gt;
&lt;br /&gt;
Es gibt jede Menge 6502-Implementierungen für FPGAs (in VHDL und Verilog):&lt;br /&gt;
&lt;br /&gt;
[http://www.syntiac.com/fpga64.html Peter Wendrichs C64 für FPGAs]&lt;br /&gt;
&lt;br /&gt;
[http://www.fpgaarcade.com/vic20_main.htm VC20 im FPGA bei fpgaarcade]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Projekte bei Opencores:&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,6502vhdl 6502 in VHDL]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,t65 T65 CPU (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,cpu6502_true_cycle Zyklengenauer 6502 (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,lattice6502 6502 in VHDL für Lattice FPGAs]&lt;br /&gt;
&lt;br /&gt;
Software-Simulation des 6502:&lt;br /&gt;
&lt;br /&gt;
[http://www.visual6502.org/ Simulation des 6502 auf Transistorebene]&lt;/div&gt;</summary>
		<author><name>Cuby</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52424</id>
		<title>AVR 6502 Emulator</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52424"/>
		<updated>2010-10-30T23:25:01Z</updated>

		<summary type="html">&lt;p&gt;Cuby: /* 6502-Emulation auf Atmel AVR-Controllern */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 6502-Emulation auf Atmel AVR-Controllern ==&lt;br /&gt;
&lt;br /&gt;
Diese Seite faßt Diskussionen aus dem Thread &amp;quot;KIM-1 in AVR?&amp;quot; ([http://www.mikrocontroller.net/topic/193632]) zusammen und soll als Sammelstelle für weitere Informationen und zur Koordination der Entwicklung einer 6502-Emulationsbibliothek für AVR-Controller dienen.&lt;br /&gt;
&lt;br /&gt;
== Warum? ==&lt;br /&gt;
&lt;br /&gt;
In alten Homecomputer-Zeilen war der MOS 6502 und seine Derivate - neben dem Z80 von Zilog - die CPU der Wahl für (damals) schnelle, kostengünstige Systeme. Beispiele sind die Commodore-Systeme (C64, VC20, C128, PET, CBM), ATARI XL/XE und Apple II. Aber auch Spielekonsolen der 80er-Jahre verwenden vielmals einen 6502 - Atari 2600 und Nintendo NES sind wohl die bekanntesten Beispiele&lt;br /&gt;
&lt;br /&gt;
Mit einer Taktfrequenz von 1 MHz ist die verfügbare Rechenleistung eher gering. Daraus entstand der Gedanke, ein 8-Bit-System der 80er auf einem modernen, kostengünstigen 8-Bit-Controller in Software zu emulieren. Ein Projekt, das den intel 8080 (Vorgänger des Z80) emuliert und das damalige Standardbetriebssystem CP/M ausführen kann, ist in Ursprüngen [http://spritesmods.com/?art=avrcpm hier] zu finden und wird in [http://www.mikrocontroller.net/topic/177481 diesem Thread] weiterentwickelt (siehe auch die [http://www.mikrocontroller.net/articles/AVR_CP/M Projektseite]).&lt;br /&gt;
&lt;br /&gt;
Was mit einem 8080 möglich ist, sollte für den 6502 auch möglich sein! Das dürfte genug Herausforderung sein - die &amp;quot;Grabenkämpfe&amp;quot; der 80er-Jahre fanden meist zwischen 8080/Z80-Anhängern und 6502-Begeisterten statt...&lt;br /&gt;
&lt;br /&gt;
== Eine neue Idee? ==&lt;br /&gt;
&lt;br /&gt;
Einen 6502 auf AVR zu emulieren, ist keine neue Idee. Es existieren bereits einige Projekte, die mehr oder weniger erfolgreich einen 6502 emulieren:&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2009/bhp7_teg25/bhp7_teg25/index.html NES-Emulator] - Projekt von Studenten der Cornell University.&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2007/bcr22/final%20webpage/final.html Apple II-Emulator], ebenfalls von Cornell.&lt;br /&gt;
&lt;br /&gt;
[http://www.belanger.pwp.blueyonder.co.uk/Projects/Vic%20Emu/vicemu.htm Commodore VC20-Emulator] (6502, VIC, Display, Tastatur) als AVR-Studio Assembler-Projekt.&lt;br /&gt;
&lt;br /&gt;
== Projekt ==&lt;br /&gt;
&lt;br /&gt;
Ein Ziel des Projektes soll es sein, eine universelle 6502-Emulations-Bibliothek für AVR-Mikrocontroller zu erstellen, die dann Basis für weitere Entwicklungen (Systememulatoren für KIM-1, Commodore 1541 usw.) sein soll. &lt;br /&gt;
&lt;br /&gt;
Eine optionale Anforderung an die Emulation ist Zyklenexaktheit der Software. Dies wird z.B. für die Verwendung von Floppy-Speedern für die Emulation des Commodore 1541-Diskettenlaufwerks benötigt. &lt;br /&gt;
&lt;br /&gt;
Wenn Zyklenexaktheit erreicht werden kann, ist die nächste Frage, ob die Software-6502-Emulation auch (mit Hilfe einer Adapterplatine) als pinkompatibler   Ersatz für einen &amp;quot;echten&amp;quot; 6502/6510 dienen kann. Dies ist aktuell unter Diskussion.&lt;br /&gt;
&lt;br /&gt;
== KIM 1-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Der KIM-1 war eine Entwicklungsplattform für den 6502. Die Idee, den KIM-1 als Software-Emulation im AVR zu realisieren, war der Startpunkt für dieses Projekt. Der Fortschritt des Projekts wird [http://t-winkler.net/dokuwiki/doku.php?id=kim:kim1284 hier] beschrieben.&lt;br /&gt;
&lt;br /&gt;
== Commodore 1541-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Bisherige Emulationsprojekte basierten auf einer Reimplementierung des IEC-Bus-Protokolls sowie der Funktionalität der 1541-Firmware (DOS), bekanntestes Projekt hier ist [http://www.c64-wiki.com/index.php/SD2IEC SD2IEC].&lt;br /&gt;
&lt;br /&gt;
Eine komplette Hardware-Reimplementierung der 1541-Elektronik auf FPGA findet sich bei [http://commodore-gg.hobby.nl/innovatie_1541kaart_eng.htm 1541 &amp;quot;Ultimate&amp;quot;]und [http://www.das-labor.org/wiki/1541_im_FPGA das Labor].&lt;br /&gt;
&lt;br /&gt;
== Alternativen? ==&lt;br /&gt;
&lt;br /&gt;
Es gibt jede Menge 6502-Implementierungen für FPGAs (in VHDL und Verilog):&lt;br /&gt;
&lt;br /&gt;
[http://www.syntiac.com/fpga64.html Peter Wendrichs C64 für FPGAs]&lt;br /&gt;
&lt;br /&gt;
Projekte bei Opencores:&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,6502vhdl 6502 in VHDL]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,t65 T65 CPU (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,cpu6502_true_cycle Zyklengenauer 6502 (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,lattice6502 6502 in VHDL für Lattice FPGAs]&lt;br /&gt;
&lt;br /&gt;
Software-Simulation des 6502:&lt;br /&gt;
&lt;br /&gt;
[http://www.visual6502.org/ Simulation des 6502 auf Transistorebene]&lt;/div&gt;</summary>
		<author><name>Cuby</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52423</id>
		<title>AVR 6502 Emulator</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52423"/>
		<updated>2010-10-30T23:24:11Z</updated>

		<summary type="html">&lt;p&gt;Cuby: Link zu KIM1-Wiki-Seite&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 6502-Emulation auf Atmel AVR-Controllern ==&lt;br /&gt;
&lt;br /&gt;
Diese Seite faßt Diskussionen aus dem Thread &amp;quot;KIM-1 in AVR?&amp;quot; ([http://www.mikrocontroller.net/topic/193632]) zusammen und soll als Sammelstelle für weitere Informationen dienen.&lt;br /&gt;
&lt;br /&gt;
== Warum? ==&lt;br /&gt;
&lt;br /&gt;
In alten Homecomputer-Zeilen war der MOS 6502 und seine Derivate - neben dem Z80 von Zilog - die CPU der Wahl für (damals) schnelle, kostengünstige Systeme. Beispiele sind die Commodore-Systeme (C64, VC20, C128, PET, CBM), ATARI XL/XE und Apple II. Aber auch Spielekonsolen der 80er-Jahre verwenden vielmals einen 6502 - Atari 2600 und Nintendo NES sind wohl die bekanntesten Beispiele&lt;br /&gt;
&lt;br /&gt;
Mit einer Taktfrequenz von 1 MHz ist die verfügbare Rechenleistung eher gering. Daraus entstand der Gedanke, ein 8-Bit-System der 80er auf einem modernen, kostengünstigen 8-Bit-Controller in Software zu emulieren. Ein Projekt, das den intel 8080 (Vorgänger des Z80) emuliert und das damalige Standardbetriebssystem CP/M ausführen kann, ist in Ursprüngen [http://spritesmods.com/?art=avrcpm hier] zu finden und wird in [http://www.mikrocontroller.net/topic/177481 diesem Thread] weiterentwickelt (siehe auch die [http://www.mikrocontroller.net/articles/AVR_CP/M Projektseite]).&lt;br /&gt;
&lt;br /&gt;
Was mit einem 8080 möglich ist, sollte für den 6502 auch möglich sein! Das dürfte genug Herausforderung sein - die &amp;quot;Grabenkämpfe&amp;quot; der 80er-Jahre fanden meist zwischen 8080/Z80-Anhängern und 6502-Begeisterten statt...&lt;br /&gt;
&lt;br /&gt;
== Eine neue Idee? ==&lt;br /&gt;
&lt;br /&gt;
Einen 6502 auf AVR zu emulieren, ist keine neue Idee. Es existieren bereits einige Projekte, die mehr oder weniger erfolgreich einen 6502 emulieren:&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2009/bhp7_teg25/bhp7_teg25/index.html NES-Emulator] - Projekt von Studenten der Cornell University.&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2007/bcr22/final%20webpage/final.html Apple II-Emulator], ebenfalls von Cornell.&lt;br /&gt;
&lt;br /&gt;
[http://www.belanger.pwp.blueyonder.co.uk/Projects/Vic%20Emu/vicemu.htm Commodore VC20-Emulator] (6502, VIC, Display, Tastatur) als AVR-Studio Assembler-Projekt.&lt;br /&gt;
&lt;br /&gt;
== Projekt ==&lt;br /&gt;
&lt;br /&gt;
Ein Ziel des Projektes soll es sein, eine universelle 6502-Emulations-Bibliothek für AVR-Mikrocontroller zu erstellen, die dann Basis für weitere Entwicklungen (Systememulatoren für KIM-1, Commodore 1541 usw.) sein soll. &lt;br /&gt;
&lt;br /&gt;
Eine optionale Anforderung an die Emulation ist Zyklenexaktheit der Software. Dies wird z.B. für die Verwendung von Floppy-Speedern für die Emulation des Commodore 1541-Diskettenlaufwerks benötigt. &lt;br /&gt;
&lt;br /&gt;
Wenn Zyklenexaktheit erreicht werden kann, ist die nächste Frage, ob die Software-6502-Emulation auch (mit Hilfe einer Adapterplatine) als pinkompatibler   Ersatz für einen &amp;quot;echten&amp;quot; 6502/6510 dienen kann. Dies ist aktuell unter Diskussion.&lt;br /&gt;
&lt;br /&gt;
== KIM 1-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Der KIM-1 war eine Entwicklungsplattform für den 6502. Die Idee, den KIM-1 als Software-Emulation im AVR zu realisieren, war der Startpunkt für dieses Projekt. Der Fortschritt des Projekts wird [http://t-winkler.net/dokuwiki/doku.php?id=kim:kim1284 hier] beschrieben.&lt;br /&gt;
&lt;br /&gt;
== Commodore 1541-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Bisherige Emulationsprojekte basierten auf einer Reimplementierung des IEC-Bus-Protokolls sowie der Funktionalität der 1541-Firmware (DOS), bekanntestes Projekt hier ist [http://www.c64-wiki.com/index.php/SD2IEC SD2IEC].&lt;br /&gt;
&lt;br /&gt;
Eine komplette Hardware-Reimplementierung der 1541-Elektronik auf FPGA findet sich bei [http://commodore-gg.hobby.nl/innovatie_1541kaart_eng.htm 1541 &amp;quot;Ultimate&amp;quot;]und [http://www.das-labor.org/wiki/1541_im_FPGA das Labor].&lt;br /&gt;
&lt;br /&gt;
== Alternativen? ==&lt;br /&gt;
&lt;br /&gt;
Es gibt jede Menge 6502-Implementierungen für FPGAs (in VHDL und Verilog):&lt;br /&gt;
&lt;br /&gt;
[http://www.syntiac.com/fpga64.html Peter Wendrichs C64 für FPGAs]&lt;br /&gt;
&lt;br /&gt;
Projekte bei Opencores:&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,6502vhdl 6502 in VHDL]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,t65 T65 CPU (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,cpu6502_true_cycle Zyklengenauer 6502 (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,lattice6502 6502 in VHDL für Lattice FPGAs]&lt;br /&gt;
&lt;br /&gt;
Software-Simulation des 6502:&lt;br /&gt;
&lt;br /&gt;
[http://www.visual6502.org/ Simulation des 6502 auf Transistorebene]&lt;/div&gt;</summary>
		<author><name>Cuby</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52422</id>
		<title>AVR 6502 Emulator</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52422"/>
		<updated>2010-10-30T23:21:12Z</updated>

		<summary type="html">&lt;p&gt;Cuby: Details zu 1541-Emulation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 6502-Emulation auf Atmel AVR-Controllern ==&lt;br /&gt;
&lt;br /&gt;
Diese Seite faßt Diskussionen aus dem Thread &amp;quot;KIM-1 in AVR?&amp;quot; ([http://www.mikrocontroller.net/topic/193632]) zusammen und soll als Sammelstelle für weitere Informationen dienen.&lt;br /&gt;
&lt;br /&gt;
== Warum? ==&lt;br /&gt;
&lt;br /&gt;
In alten Homecomputer-Zeilen war der MOS 6502 und seine Derivate - neben dem Z80 von Zilog - die CPU der Wahl für (damals) schnelle, kostengünstige Systeme. Beispiele sind die Commodore-Systeme (C64, VC20, C128, PET, CBM), ATARI XL/XE und Apple II. Aber auch Spielekonsolen der 80er-Jahre verwenden vielmals einen 6502 - Atari 2600 und Nintendo NES sind wohl die bekanntesten Beispiele&lt;br /&gt;
&lt;br /&gt;
Mit einer Taktfrequenz von 1 MHz ist die verfügbare Rechenleistung eher gering. Daraus entstand der Gedanke, ein 8-Bit-System der 80er auf einem modernen, kostengünstigen 8-Bit-Controller in Software zu emulieren. Ein Projekt, das den intel 8080 (Vorgänger des Z80) emuliert und das damalige Standardbetriebssystem CP/M ausführen kann, ist in Ursprüngen [http://spritesmods.com/?art=avrcpm hier] zu finden und wird in [http://www.mikrocontroller.net/topic/177481 diesem Thread] weiterentwickelt (siehe auch die [http://www.mikrocontroller.net/articles/AVR_CP/M Projektseite]).&lt;br /&gt;
&lt;br /&gt;
Was mit einem 8080 möglich ist, sollte für den 6502 auch möglich sein! Das dürfte genug Herausforderung sein - die &amp;quot;Grabenkämpfe&amp;quot; der 80er-Jahre fanden meist zwischen 8080/Z80-Anhängern und 6502-Begeisterten statt...&lt;br /&gt;
&lt;br /&gt;
== Eine neue Idee? ==&lt;br /&gt;
&lt;br /&gt;
Einen 6502 auf AVR zu emulieren, ist keine neue Idee. Es existieren bereits einige Projekte, die mehr oder weniger erfolgreich einen 6502 emulieren:&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2009/bhp7_teg25/bhp7_teg25/index.html NES-Emulator] - Projekt von Studenten der Cornell University.&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2007/bcr22/final%20webpage/final.html Apple II-Emulator], ebenfalls von Cornell.&lt;br /&gt;
&lt;br /&gt;
[http://www.belanger.pwp.blueyonder.co.uk/Projects/Vic%20Emu/vicemu.htm Commodore VC20-Emulator] (6502, VIC, Display, Tastatur) als AVR-Studio Assembler-Projekt.&lt;br /&gt;
&lt;br /&gt;
== Projekt ==&lt;br /&gt;
&lt;br /&gt;
Ein Ziel des Projektes soll es sein, eine universelle 6502-Emulations-Bibliothek für AVR-Mikrocontroller zu erstellen, die dann Basis für weitere Entwicklungen (Systememulatoren für KIM-1, Commodore 1541 usw.) sein soll. &lt;br /&gt;
&lt;br /&gt;
Eine optionale Anforderung an die Emulation ist Zyklenexaktheit der Software. Dies wird z.B. für die Verwendung von Floppy-Speedern für die Emulation des Commodore 1541-Diskettenlaufwerks benötigt. &lt;br /&gt;
&lt;br /&gt;
Wenn Zyklenexaktheit erreicht werden kann, ist die nächste Frage, ob die Software-6502-Emulation auch (mit Hilfe einer Adapterplatine) als pinkompatibler   Ersatz für einen &amp;quot;echten&amp;quot; 6502/6510 dienen kann. Dies ist aktuell unter Diskussion.&lt;br /&gt;
&lt;br /&gt;
== KIM 1-Emulation ==&lt;br /&gt;
&lt;br /&gt;
(tbd)&lt;br /&gt;
&lt;br /&gt;
== Commodore 1541-Emulation ==&lt;br /&gt;
&lt;br /&gt;
Bisherige Emulationsprojekte basierten auf einer Reimplementierung des IEC-Bus-Protokolls sowie der Funktionalität der 1541-Firmware (DOS), bekanntestes Projekt hier ist [http://www.c64-wiki.com/index.php/SD2IEC SD2IEC].&lt;br /&gt;
&lt;br /&gt;
Eine komplette Hardware-Reimplementierung der 1541-Elektronik auf FPGA findet sich bei [http://commodore-gg.hobby.nl/innovatie_1541kaart_eng.htm 1541 &amp;quot;Ultimate&amp;quot;]und [http://www.das-labor.org/wiki/1541_im_FPGA das Labor].&lt;br /&gt;
&lt;br /&gt;
== Alternativen? ==&lt;br /&gt;
&lt;br /&gt;
Es gibt jede Menge 6502-Implementierungen für FPGAs (in VHDL und Verilog):&lt;br /&gt;
&lt;br /&gt;
[http://www.syntiac.com/fpga64.html Peter Wendrichs C64 für FPGAs]&lt;br /&gt;
&lt;br /&gt;
Projekte bei Opencores:&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,6502vhdl 6502 in VHDL]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,t65 T65 CPU (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,cpu6502_true_cycle Zyklengenauer 6502 (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,lattice6502 6502 in VHDL für Lattice FPGAs]&lt;br /&gt;
&lt;br /&gt;
Software-Simulation des 6502:&lt;br /&gt;
&lt;br /&gt;
[http://www.visual6502.org/ Simulation des 6502 auf Transistorebene]&lt;/div&gt;</summary>
		<author><name>Cuby</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=6502&amp;diff=52421</id>
		<title>6502</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=6502&amp;diff=52421"/>
		<updated>2010-10-30T23:16:26Z</updated>

		<summary type="html">&lt;p&gt;Cuby: Link zur 6502-Emu-Lib, Link zu WDC&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Der 6502 - Prozessor war einer der ersten Prozessoren, die in Heimcomputern verwendet wurden, und existiert seit dem Jahr 1976 (?)&lt;br /&gt;
&lt;br /&gt;
Er wurde eingesetzt in:&lt;br /&gt;
* KIM-1 (MOS technology)&lt;br /&gt;
* AIM-65 (Rockwell)&lt;br /&gt;
* EMUF Einplatinencomputer mit universeller Festprogrammierung mit 6504 (Franzis-Verlag &amp;quot;mc&amp;quot;)&lt;br /&gt;
* Elektor Junior Computer&lt;br /&gt;
* Apple II&lt;br /&gt;
* Commodore PET und folgende&lt;br /&gt;
* Atari 400 /800&lt;br /&gt;
* Atari 2600&lt;br /&gt;
* Atari 7800&lt;br /&gt;
* Nintendo Entertainment System&lt;br /&gt;
&lt;br /&gt;
auch der Prozessor im VIC20 und C64 gehört zur 6502-Familie.&lt;br /&gt;
&lt;br /&gt;
Es gibt heute noch neue Mikroprozessoren der 6502-Serie von [http://www.westerndesigncenter.com/wdc/ WDC] (Western Design Center) sowie verschiedene Mikrocontroller mit 6502-Kern.&lt;br /&gt;
&lt;br /&gt;
Ein Projekt zur Entwicklung einer 6502-Emulationsbibliothek für AVR-Controller ist unter [http://www.mikrocontroller.net/articles/AVR_6502_Emulator] beschrieben und wird [http://www.mikrocontroller.net/topic/193632 in diesem Thread] diskutiert.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Mikrocontroller]]&lt;/div&gt;</summary>
		<author><name>Cuby</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52420</id>
		<title>AVR 6502 Emulator</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52420"/>
		<updated>2010-10-30T23:12:00Z</updated>

		<summary type="html">&lt;p&gt;Cuby: Projektziele, weitere Links&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 6502-Emulation auf Atmel AVR-Controllern ==&lt;br /&gt;
&lt;br /&gt;
Diese Seite faßt Diskussionen aus dem Thread &amp;quot;KIM-1 in AVR?&amp;quot; ([http://www.mikrocontroller.net/topic/193632]) zusammen und soll als Sammelstelle für weitere Informationen dienen.&lt;br /&gt;
&lt;br /&gt;
== Warum? ==&lt;br /&gt;
&lt;br /&gt;
In alten Homecomputer-Zeilen war der MOS 6502 und seine Derivate - neben dem Z80 von Zilog - die CPU der Wahl für (damals) schnelle, kostengünstige Systeme. Beispiele sind die Commodore-Systeme (C64, VC20, C128, PET, CBM), ATARI XL/XE und Apple II. Aber auch Spielekonsolen der 80er-Jahre verwenden vielmals einen 6502 - Atari 2600 und Nintendo NES sind wohl die bekanntesten Beispiele&lt;br /&gt;
&lt;br /&gt;
Mit einer Taktfrequenz von 1 MHz ist die verfügbare Rechenleistung eher gering. Daraus entstand der Gedanke, ein 8-Bit-System der 80er auf einem modernen, kostengünstigen 8-Bit-Controller in Software zu emulieren. Ein Projekt, das den intel 8080 (Vorgänger des Z80) emuliert und das damalige Standardbetriebssystem CP/M ausführen kann, ist in Ursprüngen [http://spritesmods.com/?art=avrcpm hier] zu finden und wird in [http://www.mikrocontroller.net/topic/177481 diesem Thread] weiterentwickelt (siehe auch die [http://www.mikrocontroller.net/articles/AVR_CP/M Projektseite]).&lt;br /&gt;
&lt;br /&gt;
Was mit einem 8080 möglich ist, sollte für den 6502 auch möglich sein! Das dürfte genug Herausforderung sein - die &amp;quot;Grabenkämpfe&amp;quot; der 80er-Jahre fanden meist zwischen 8080/Z80-Anhängern und 6502-Begeisterten statt...&lt;br /&gt;
&lt;br /&gt;
== Eine neue Idee? ==&lt;br /&gt;
&lt;br /&gt;
Einen 6502 auf AVR zu emulieren, ist keine neue Idee. Es existieren bereits einige Projekte, die mehr oder weniger erfolgreich einen 6502 emulieren:&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2009/bhp7_teg25/bhp7_teg25/index.html NES-Emulator] - Projekt von Studenten der Cornell University.&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2007/bcr22/final%20webpage/final.html Apple II-Emulator], ebenfalls von Cornell.&lt;br /&gt;
&lt;br /&gt;
[http://www.belanger.pwp.blueyonder.co.uk/Projects/Vic%20Emu/vicemu.htm Commodore VC20-Emulator] (6502, VIC, Display, Tastatur) als AVR-Studio Assembler-Projekt.&lt;br /&gt;
&lt;br /&gt;
== Projekt ==&lt;br /&gt;
&lt;br /&gt;
Ein Ziel des Projektes soll es sein, eine universelle 6502-Emulations-Bibliothek für AVR-Mikrocontroller zu erstellen, die dann Basis für weitere Entwicklungen (Systememulatoren für KIM-1, Commodore 1541 usw.) sein soll. &lt;br /&gt;
&lt;br /&gt;
Eine optionale Anforderung an die Emulation ist Zyklenexaktheit der Software. Dies wird z.B. für die Verwendung von Floppy-Speedern für die Emulation des Commodore 1541-Diskettenlaufwerks benötigt. &lt;br /&gt;
&lt;br /&gt;
Wenn Zyklenexaktheit erreicht werden kann, ist die nächste Frage, ob die Software-6502-Emulation auch (mit Hilfe einer Adapterplatine) als pinkompatibler   Ersatz für einen &amp;quot;echten&amp;quot; 6502/6510 dienen kann. Dies ist aktuell unter Diskussion.&lt;br /&gt;
&lt;br /&gt;
== Alternativen? ==&lt;br /&gt;
&lt;br /&gt;
Es gibt jede Menge 6502-Implementierungen für FPGAs (in VHDL und Verilog):&lt;br /&gt;
&lt;br /&gt;
[http://www.syntiac.com/fpga64.html Peter Wendrichs C64 für FPGAs]&lt;br /&gt;
&lt;br /&gt;
Projekte bei Opencores:&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,6502vhdl 6502 in VHDL]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,t65 T65 CPU (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,cpu6502_true_cycle Zyklengenauer 6502 (VHDL)]&lt;br /&gt;
&lt;br /&gt;
[http://opencores.org/project,lattice6502 6502 in VHDL für Lattice FPGAs]&lt;br /&gt;
&lt;br /&gt;
Software-Simulation des 6502:&lt;br /&gt;
&lt;br /&gt;
[http://www.visual6502.org/ Simulation des 6502 auf Transistorebene]&lt;/div&gt;</summary>
		<author><name>Cuby</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52419</id>
		<title>AVR 6502 Emulator</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR_6502_Emulator&amp;diff=52419"/>
		<updated>2010-10-30T23:01:32Z</updated>

		<summary type="html">&lt;p&gt;Cuby: Erste Version der Seite&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 6502-Emulation auf Atmel AVR-Controllern ==&lt;br /&gt;
&lt;br /&gt;
Diese Seite faßt Diskussionen aus dem Thread &amp;quot;KIM-1 in AVR?&amp;quot; ([http://www.mikrocontroller.net/topic/193632]) zusammen und soll als Sammelstelle für weitere Informationen dienen.&lt;br /&gt;
&lt;br /&gt;
== Warum? ==&lt;br /&gt;
&lt;br /&gt;
In alten Homecomputer-Zeilen war der MOS 6502 und seine Derivate - neben dem Z80 von Zilog - die CPU der Wahl für (damals) schnelle, kostengünstige Systeme. Beispiele sind die Commodore-Systeme (C64, VC20, C128, PET, CBM), ATARI XL/XE und Apple II. Aber auch Spielekonsolen der 80er-Jahre verwenden vielmals einen 6502 - Atari 2600 und Nintendo NES sind wohl die bekanntesten Beispiele&lt;br /&gt;
&lt;br /&gt;
Mit einer Taktfrequenz von 1 MHz ist die verfügbare Rechenleistung eher gering. Daraus entstand der Gedanke, ein 8-Bit-System der 80er auf einem modernen, kostengünstigen 8-Bit-Controller in Software zu emulieren. Ein Projekt, das den intel 8080 (Vorgänger des Z80) emuliert und das damalige Standardbetriebssystem CP/M ausführen kann, ist in Ursprüngen [http://spritesmods.com/?art=avrcpm hier] zu finden und wird in [http://www.mikrocontroller.net/topic/177481 diesem Thread] weiterentwickelt (siehe auch die [http://www.mikrocontroller.net/articles/AVR_CP/M Projektseite]).&lt;br /&gt;
&lt;br /&gt;
Was mit einem 8080 möglich ist, sollte für den 6502 auch möglich sein! Das dürfte genug Herausforderung sein - die &amp;quot;Grabenkämpfe&amp;quot; der 80er-Jahre fanden meist zwischen 8080/Z80-Anhängern und 6502-Begeisterten statt...&lt;br /&gt;
&lt;br /&gt;
== Eine neue Idee? ==&lt;br /&gt;
&lt;br /&gt;
Einen 6502 auf AVR zu emulieren, ist keine neue Idee. Es existieren bereits einige Projekte, die mehr oder weniger erfolgreich einen 6502 emulieren:&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2009/bhp7_teg25/bhp7_teg25/index.html NES-Emulator] - Projekt von Studenten der Cornell University.&lt;br /&gt;
&lt;br /&gt;
[http://instruct1.cit.cornell.edu/courses/ee476/FinalProjects/s2007/bcr22/final%20webpage/final.html Apple II-Emulator], ebenfalls von Cornell.&lt;br /&gt;
&lt;br /&gt;
[http://www.belanger.pwp.blueyonder.co.uk/Projects/Vic%20Emu/vicemu.htm Commodore VC20-Emulator] (6502, VIC, Display, Tastatur) als AVR-Studio Assembler-Projekt.&lt;/div&gt;</summary>
		<author><name>Cuby</name></author>
	</entry>
</feed>