Anzeige
Offener Apple II (CC SA 3.0)
Offener Apple II (CC SA 3.0) (Bild: Hellisp)

Bastelrechner: Apple II mit einem Arduino nachgebaut

Offener Apple II (CC SA 3.0)
Offener Apple II (CC SA 3.0) (Bild: Hellisp)

Der Apple-II-Nachbau überrascht nicht nur durch seinen einfachen Hardwareaufbau, sondern auch seine clevere Implementierung, um die Limitierungen des Arduinos zu umgehen.

Anzeige

Damian Peckett hat einen Apple II mit Hilfe eines Arduino Uno nachgebaut - inklusive Videoausgabe, der Datenspeicherung per Kassettenrekorder, Tastaturanschluss und der Audioausgabe. Bemerkenswert ist dabei nicht nur, dass zum Anschluss der Periphere kaum zusätzliche Bauteile notwendig waren, sondern auch, dass es überhaupt umsetzbar war: Der Apple II hatte 4 KByte RAM, der Atmega328 des Arduino Uno hat lediglich 2 KByte, und den muss sich ein Apple-Programm auch noch mit dem Emulator teilen.

Der Ausgangspunkt für das Projekt war eine Emulation des im Apple II verbauten 6502-Mikroprozessors. Peckett vereinfachte die Emulation. So mussten die Unterschiede in den Ausführungszeiten der Opcodes nicht identisch zum Original sein ("cycle accurate"). Außerdem wird keine BCD-Arithmetik emuliert. Das ist möglich, da sie vom Apple-Basic nicht benutzt wird.

Die Videoausgabe erledigt nicht der große Mikrocontroller des Arduinos, sondern der kleinere Atmel16u2. Er dient normalerweise als Verbindungsglied zwischen der USB-Schnittstelle und dem Atmega328. Er lässt sich aber auch selbst programmieren. Dessen Rechenleistung reicht aus, um eine Grafikausgabe per VGA zu implementieren.

Der Kassettenrekorder, eine PS/2-Tastatur sowie der Lautsprecher konnten direkt an den Arduino angeschlossen werden. Lediglich vom Audioausgang des Kassettenrekorders zum Arduino waren ein zusätzlicher Widerstand und Kondensator notwendig.

Clevere Tricks gegen den RAM-Mangel

Peckett nutzte mehrere Tricks, um Apple-Programmen möglichst viel RAM zur Verfügung zu stellen. Dabei konnten Programmierer auch beim Original schon nicht auf die vollen 4 KByte zugreifen. Ein KByte wurde als Videospeicher benutzt. Ein weiterer Teil des Speichers wurde für systeminterne Daten verwendet.

Da die Videoausgabe über den zweiten, kleineren Mikrocontroller läuft, muss von den 2 KByte des großen Mikrocontrollers kein Videospeicher abgezweigt werden. Vorteilhaft für den Nachbau ist auch die Größe des Flash-Speichers des Atmel-Mikrocontrollers. In dessen 32 KByte passt nicht nur das 16 KByte große Original-ROM des Apple II, sondern auch der komplette Emulator. Durch den vergleichsweise großen Flash-Speicher konnte der Emulator RAM-sparend implementiert werden. Dadurch verbleiben effektiv 1,5 KByte RAM für Anwendungen beziehungsweise 1 KByte für Apple-Basic-Programme.

Dass sein Nachbau funktioniert, zeigt Damian Peckett mit Hilfe eines Apple-Basic-Programms, das ein Mandelbrot-Fraktal generiert. Dabei zeigt sich aber auch, dass die Emulation relativ langsam ist, das Programm benötigte mehrere Minuten. Peckett selbst schätzt, dass sein Nachbau circa fünf- bis achtmal langsamer ist als das Original. Er geht jedoch davon aus, dass es noch Optimierungsmöglichkeiten gibt.

Der vollständige Quellcode steht auf Github zur Verfügung.


eye home zur Startseite
clemisch 12. Apr 2015

Das war ja auch nicht Ziel des Projekts; die technische Umsetzung mit eigentlich...

k.Mitnick 09. Apr 2015

Dass das Interesse in »heutigen Generation« verschwunden sei, kann ich nicht bestätigen...

Kommentieren



Anzeige

  1. (Senior-) Berater (m/w) Business Intelligence / Data Warehouse
    Capgemini Deutschland GmbH, verschiedene Standorte
  2. Funktions- und SW-Entwickler/-in für Value Added Functions
    Robert Bosch GmbH, Abstatt
  3. Sachbearbeiterin / Sachbearbeiter Energiedatenmanagement
    Stadtwerke Solingen GmbH, Solingen
  4. Frontend-Entwickler (m/w) E-Commerce
    LIDL Stiftung & Co. KG, Neckarsulm oder Berlin

Detailsuche



Anzeige
Top-Angebote
  1. NEU: CSL - Gamepad für Android + Windows PC + PS3 inkl. OTG-Adapter
    13,85€ inkl. Versand
  2. NUR BIS MONTAG 9 UHR: Xbox One 1TB Tom Clancy‘s The Division Bundle USK 18
    239,00€ inkl. Versand
  3. Need for Speed - PlayStation 4
    25,00€ inkl. Versand

Weitere Angebote


Folgen Sie uns
       


  1. Dota

    Athleten müssen im E-Sport mehr als nur gut spielen

  2. Die Woche im Video

    Superschnelle Rechner, smarte Zähler und sicherer Spam

  3. Axanar

    Paramount/CBS erlaubt Star-Trek-Fanfilme

  4. FTTH/FTTB

    Oberirdische Glasfaser spart 85 Prozent der Kosten

  5. Botnet

    Necurs kommt zurück und bringt Locky millionenfach mit

  6. Google

    Livestreaming direkt aus der Youtube-App

  7. Autonome Autos

    Fahrer wollen vor allem ihr eigenes Leben schützen

  8. Boston Dynamics

    Spot Mini, die Roboraffe

  9. Datenrate

    Tele Columbus versorgt fast 840.000 Haushalte mit 400 MBit/s

  10. Supercomputer

    China und Japan setzen auf ARM-Kerne für kommende Systeme



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
E-Mail-Verschlüsselung: EU-Kommission hat Angst vor verschlüsseltem Spam
E-Mail-Verschlüsselung
EU-Kommission hat Angst vor verschlüsseltem Spam
  1. Netflix und Co. EU schafft Geoblocking ein bisschen ab
  2. Android FTC weitet Ermittlungen gegen Google aus
  3. Pay-TV Paramount gibt im Streit um Geoblocking nach

Rust: Ist die neue Programmiersprache besser?
Rust
Ist die neue Programmiersprache besser?
  1. Oracle-Anwältin nach Niederlage "Google hat die GPL getötet"
  2. Java-Rechtsstreit Oracle verliert gegen Google
  3. Oracle vs. Google Wie man Geschworene am besten verwirrt

Telefonabzocke: Dirty Harry erklärt mein Windows für kaputt
Telefonabzocke
Dirty Harry erklärt mein Windows für kaputt
  1. Security Ransomware-Bosse verdienen 90.000 US-Dollar pro Jahr
  2. Security-Studie Mit Schokolade zum Passwort
  3. Festnahme und Razzien Koordinierte Aktion gegen Cybercrime

  1. Habt Ihr das Teil irgendwo für den Preis gesehen?

    Ravenbird | 12:22

  2. Re: Glückwunsch an die Briten

    tingelchen | 12:21

  3. Re: Als ob ein Mensch in so einer Situation

    ChMu | 12:21

  4. Re: Was spricht denn dagegen

    Gandalf2210 | 12:21

  5. Re: Preispolitik nVidia bzw. gut, dass Polaris kommtp

    eXXogene | 12:19


  1. 10:00

  2. 09:03

  3. 17:47

  4. 17:01

  5. 16:46

  6. 15:51

  7. 15:48

  8. 15:40


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel