Brainstorm - Apple ii - Replica

  • Hier hat sich schon jemand an einem Apple II(e) Nachbau versucht:


    Retro II - An Apple II Compatible Computer (Project with WDC 65C02 and 2x Propeller)


    https://hackaday.io/project/17…le-ii-compatible-computer


    Vielleicht kann man sich ein wenig daran orientieren und es ggf. besser machen. Sehr cool wäre, wenn die neue Platine in ein Apple IIe-Gehäuse passte. Dann könnte man sie ggf. in so einem neuen Gehäuse einbauen:

    https://maceffects.com/product…-clear-case-for-apple-iie


    Oder man legt es so aus, dass man es bequem in ein neues, handelsübliches Gehäuse einbauen kann. Letzteres wäre sicherlich irgendwie nicht so schön, aber besser so als ein naktes Board betreiben oder ein Board zu haben, was man nur mit viel Bastellei in irgendein Gehäuse bekommt.

  • Hier die frisch von mir gescannte deutsche Version von "Understanding the Apple //e", die ich heute durch diese Aktion endlich vor dem Gilb retten konnte.


    Übrigens sind hier auch die Ausgangstherme der HAL beschrieben (S. 62).


    Bei schief sitzenden oder schlecht kopiert aussehenden Tabellen oder Schaltplänen handelt es sich tatsächlich um die Originale, die in der deutschen Version wohl einfach reinkopiert wurden. :sunny:


    Apple IIe Hardware - Jim Sather.pdf (300 dpi Version mit ~190MB)

  • Ich schrieb weiter oben eigentlich(!), daß ich aushelfen kann. Die hier vorliegende Version hat 24,1MB, allerdings keinen hinterlegten Text zur Suche.

  • Apple IIe Hardware - Jim Sather.pdf (300 dpi Version mit ~190MB)

    opps, leider falscher Link, ist jetzt oben korrigiert.



    Ich schrieb weiter oben eigentlich(!), daß ich aushelfen kann. Die hier vorliegende Version hat 24,1MB, allerdings keinen hinterlegten Text zur Suche.

    Hab ich wohl nicht gelesen. Sei's drum, ist ne schön hochauflösende Version, aber auch nicht durchsuchbar. Kann man aber noch nach OCRen...


    Edit: Hatte OCR doch an. Ist durchsuchbar.

  • Ich war vor ca. 40 Jahren von einem Apple //e begeistert. Und von dem was Steve Wozniak da Designmäßig geleistet hat. Darum auch nach meinem Wunsch eines Apple Clone. Woz hat den Apple aus einfachen und billigen Teilen entworfen. Hier wurden Spezial Chips erwähnt, bitte mal genau Bezeichnung (da ist mir nichts bekannt). Er hat gern kleine ROM's eingesetzt, die heute nicht mehr erhältlich sind, die sollten sich aber leicht nachbilden lassen. Vielleicht auch nicht mehr erhältliche Logik Chips, die sollten auch leicht zu ersetzen sein (PAL).

    Ein moderner SRAM, 64K sollten reichen. Es gibt sehr viel Software für den //e und "keine" braucht mehr, und ich will keine neue schreiben. Mehr vielleicht für eine RAM Disk entfremden?

    Das Original hatte (glaube ich) 8 Slots, mir würden auch 4 reichen. Eine Original Floppy mit Controller sollte möglich sein. Ich weiß nicht wer da noch viel mehr Karten braucht.

    Die 80 Zeichen Karte sollte enthalten sein. Die Z80 Karte sollte optional bestückbar sein. Das PCB Format so das es in ein Original Apple II Gehäuse passt und die Slots an der richtigen Stelle sein (kann also auch etwas kleiner sein).

    Was ich noch nicht gelesen habe, einen zeitgemäßen Videoausgang würde ich mir wünschen (SVideo/VGA).

    FPGA ist für mich keine Lösung, des ist für mich das Gleiche wie ein Apple Emulator auf einem Raspberry Pi (20€?).

    Ich hatte mir auch schon den Repro II angesehen, aber er ist Erstens richtig teuer (RAM >100€) und Zweitens immer noch nicht fertig. Da könnte man sich allerdings die Stromversorgung abgucken.

  • Hier wurden Spezial Chips erwähnt, bitte mal genau Bezeichnung (da ist mir nichts bekannt).

    Lies Dir den Jim Sather durch!


    Er hat gern kleine ROM's eingesetzt, die heute nicht mehr erhältlich sind,

    Es gab damals keine größeren. Die 2716 als EPROM oder 2316 als Masken-ROMs waren damals teuer genug, wenn 1977 überhaupt schon erhältlich.


    Vielleicht auch nicht mehr erhältliche Logik Chips, die sollten auch leicht zu ersetzen sein (PAL).

    PALs brauchen erheblich mehr Strom, und es gibt sie nicht in 14- und 16-poligen Gehäusen als Chip-Ersatz für seltene 74LS. Zudem können sie kein pinkompatibler Ersatz sein, da bei PALs viele Ein- und Ausgänge als solche festgelegt sind und nicht zu 74er-Gattern passen. Kurz: das geht nicht. Notfalls müßten 74LS-Chips aus anderen Platinen kannibalisiert oder aus China gekauft werden.



    Ein moderner SRAM, 64K sollten reichen. Es gibt sehr viel Software für den //e und "keine" braucht mehr, und ich will keine neue schreiben. Mehr vielleicht für eine RAM Disk entfremden?

    Es gibt sehr viel Software für den IIe und IIc, die die vollen 128kB nutzt oder darüberhinaus auch 1MB und mehr. Alleine das p-System ab Version 1.2 läuft mit 128kB Hauptspeicher sehr viel flüssiger und mit 1MB RAM-Disk richtig gut. Und das nutzt man, um neue Software zu schreiben :)


    Ich weiß nicht wer da noch viel mehr Karten braucht.

    Ich kenne jemanden :)


    Die 80 Zeichen Karte sollte enthalten sein.

    Eine übliche Videoterm ist viel zu kompliziert in der Nachbildung, weil deren RAM-Zugriffe völlig asynchron zu allem sind, was sich auf der Hauptplatine abspielt. Eine IIe-80-Zeichenkarte sollte dagegen möglich sein. Also IIe-Nachbau!


    Die Z80 Karte sollte optional bestückbar sein.

    Wer einen 6502-Rechner will, braucht keine zusätzliche Z80-CPU, IMHO. Wer sie möchte, kann im billigen Fall eine M$-Z80-Softcard in einen freien Slot stecken oder eine leistungsfähige wie z.B. die von IBS mit 8-12MHz und eigenem RAM einbauen.


    Gruß, Ralf

  • Vielleicht auch nicht mehr erhältliche Logik Chips, die sollten auch leicht zu ersetzen sein (PAL).

    Welche TTLs sollten das sein? Selbst im Apple ][ Europlus steckt nichts, was nicht erhältlich wäre. Den Tastaturencoder kann man leicht mit einem Microcontroller nachbauen. Ansonsten sind PALs glaube ich schwerer zu bekommen als seltene TTLs, wenn dann nimmt man sowieso heute einen GAL.

    Aber trotzdem, was spricht gegen einen FPGA als Ersatz für die Spezialbausteinchen? Wir können ja schlecht irgendwas bei Ferranti Custom designen lassen. Und auch wenn, wie weiter oben beschrieben, ZX81 Nachbauten existieren, die die ULA in TTL nachbauen (den ich wohl auch irgendwann noch bastele), so bin ich doch eher ein Gegner von solchen Lösungen, wenn es möglich ist, sowas kompakt in Hardware zu gießen. Eine Emulation wie der MiSTer ist das dann ja auch noch lange nicht. Der wäre nur interessant, wenn man zum Beispiel die Apple IIe Karte für den Macintosh LC nachbauen wollte.


    Ein moderner SRAM, 64K sollten reichen

    Ich glaube, das ist mittlerweile Konsens und wesentlich einfach zu handhaben als DRAM. Das würde einen Nachbau der MMU oder IOU auch wesentlich vereinfachen. Allerdings sind Refreshzyklen von Programmierern ja auch manchmal für seltsame Dinge missbraucht worden. Wer weiss, ob dann nicht doch irgendwas inkompatibel wird, wenn man da das Timing ändert.


    Eine IIe-80-Zeichenkarte sollte dagegen möglich sein. Also IIe-Nachbau!

    Da auf einer 80 Zeichenkarte für den IIe auxilary Slot sowieso nicht arg viel mehr steckt als RAM, halte ich eine 80 Zeichenkarte nicht nur für möglich, sondern als geradezu notwendig. Der IIe ist eigentlich DER Apple II Rechner. Auf keinem anderen lief mehr Software. Bei einem Plus brauche ich die Language Card und die 80 Zeichenkarten waren zwar meistens Videx Videoterm (kompatible) Karten, die aber bei weitem von Software nicht so gut unterstützt wurde wie die des Apples IIe. Vom Double Hires Mode mal ganz abgesehen. Der IIc hat keine Slots und ein paar kompatibilitäts Problemchen. Der IIGS fällt aus komplexitätsgründen total flach. Aber trotzdem kann man über eine 65816 nachdenken, weil sie ja doch ein paar neue Türen öffnet.

    Wer einen 6502-Rechner will, braucht keine zusätzliche Z80-CPU

    Wenn der Rechner voll kompatibel sein soll, muss eine MS kompatible Z80 Karte auf alle Fälle im Slot funktionieren. Onboard halte ich das auch für übertrieben. Es gab ja auch ein paar Asia Clone, die eine Z80 schon auf dem Mainboard hatten, ob die sich allerdings deshalb besser verkauft haben ist fraglich.


    Hier noch der Schaltplan des Apple ][ Plus für alle die wegen der TTLs nochmal nachschauen wollen.

  • Allerdings sind Refreshzyklen von Programmierern ja auch manchmal für seltsame Dinge missbraucht worden. Wer weiss, ob dann nicht doch irgendwas inkompatibel wird, wenn man da das Timing ändert.

    Nicht in der Apple-II-Welt, weil es keine expliziten Refresh-Zyklen gibt. Der Video-Generator für den 40-Zeichen-Modus ist so genial gebaut, daß er den Refresh nebenbei erledigt. D.h. die 6502-CPU verschwendet niemals einen Zyklus für den Refresh. Der Preis im Jahr 1977 bei der Entwicklung war, daß das DRAM mit 2MHz (Zugriffszeit: 450nsec) laufen konnte. Ein Jahr zuvor beim Apple 1 war das noch nicht möglich.


    Wg. Zusatzfunktionen für Videoterm- oder Z80-Karten: diese sollten beim Nachbau möglich sein, denn die benötigen Basisfunktionalitäten der Slots, die auch für andere Karten notwendig sind.


    BTW für mein p-System bevorzuge ich tatsächlich eine Videoterm-Karte für die 80-Zeichendarstellung, weil bei der das Scrollen extrem viel schneller geht, und der Bildspeicher dem frei verfügbaren RAM der p-Maschine zugeordnet werden kann.


    Gruß, Ralf, in diesem Moment vor der GTAC-2-Platine (mit nicht bestücktem Z80-Teil) sitzend, um PAL-Karten und 6502-CPUs zu testen.

  • BTW für mein p-System bevorzuge ich tatsächlich eine Videoterm-Karte für die 80-Zeichendarstellung, weil bei der das Scrollen extrem viel schneller geht, und der Bildspeicher dem frei verfügbaren RAM der p-Maschine zugeordnet werden kann.

    Klar, die 6845 war da natürlich beim Scrollen kilometerweit voraus. Aber Double Hires war damit halt nicht möglich. 1:1 (OK 1,5:1 die Videx war schon toll und DH-Res wurde nicht wirklich oft genutzt. :)


    Nicht in der Apple-II-Welt, weil es keine expliziten Refresh-Zyklen gibt. Der Video-Generator für den 40-Zeichen-Modus ist so genial gebaut, daß er den Refresh nebenbei erledigt. D.h. die 6502-CPU verschwendet niemals einen Zyklus für den Refresh

    Ich meinte das auch eher in Verindung mit eventueller externer Hardware, die auch auf das RAM zugreift und dort die Firmware irgendwas seltsames macht oder braucht, das nur mit DRAM geht. Bei so vielen Karten für den Apple, kann man das wahrscheinlich nicht ausschließen. Und auch für die Videx gab es ja den Patch für die Umschaltung zwischen Groß-/Kleinbuchstaben, der jetzt natürlich nichts mit Refresh zu tun hat, aber von Woz so garantiert auch nicht eingeplant war. Und das A20 Gate beim PC zeigt einem ja auch, was für einen $ch€iss man alles für 100% kompatibilität mitschleppen muss... :wand:


    in diesem Moment vor der GTAC-2-Platine (mit nicht bestücktem Z80-Teil) sitzend, um PAL-Karten und 6502-CPUs zu testen.

    Dann noch viel Spass und eine gute Nacht. :thumbup:

  • Klar, die 6845 war da natürlich beim Scrollen kilometerweit voraus. Aber Double Hires war damit halt nicht möglich. 1:1 (OK 1,5:1 die Videx war schon toll und DH-Res wurde nicht wirklich oft genutzt. :)

    Diverse Videoterm-Nachbauten hatten ein Relais an Bord, um das Videosignal auf die Hauptplatine umschalten zu können. Genau dafür, also die Grafikmodi. Für die originalen Videx Videotem konnte man eine zusätzliche kleine Platine mit dem Umschalter kaufen.

    in diesem Moment vor der GTAC-2-Platine (mit nicht bestücktem Z80-Teil) sitzend, um PAL-Karten und 6502-CPUs zu testen.

    Dann noch viel Spass und eine gute Nacht. :thumbup:

    Erledigt :) Leider mit dem unschönen, aber fast erwarteten Ergebnis, daß 5 vor ein paar Jahren aus China gelieferte R6502P1 leider genau gar keinen Code ausführen.


    Das Positive des Abends: zwei MOS 6502A, also 2MHz, mit Datecode aus dem Jahr 1982 funktionieren :)

  • Ein kurzer Blick in die Funktionsbeschreibung lässt mich sehr stark vermuten, dass sich MMU und IOU jeweils mit ein bis zwei GALs nachbilden lassen.

    Soll der Rechner SRAM benutzen, ist sowieso ein neues Platinenlayout vonnöten, also sollte die Unterbringung der GALs kein Problem sein.


    Bezüglich des Gehäuses bleibe ich dabei, dass ein Holzgehäuse wahrscheinlich am praktikabelsten ist. Für eine „Bausatz-Apfelkiste“ wäre es auch durchaus stilecht.

    • Official Post

    Hier wurden Spezial Chips erwähnt, bitte mal genau Bezeichnung (da ist mir nichts bekannt).

    Das bezieht sich auf den //e, der hat gegenüber dem II / IIplus einige Änderungen erfahren. Zum Nachlesen z.B. hier: http://www.applelogic.org/APPLEASICs.html

    Erfahrung ist Wissen, das wir erwerben, kurz nachdem wir es gebraucht hätten.


    Mein Netz: Acorn | Atari | Milan | Amiga | Apple IIGS | Macintosh | SUN Sparc | NeXT |SGI | IBM RS/6000 | DEC Vaxstation| Raspberry Pi | PCs mit OS/2, BeOS, Linux, AROS, Windows, BSD | Stand-alone: Apple //c | Sinclair QL | Amstrad | PDAs

  • Hallo zusammen, ich wollte auch mal mein Senf dazu geben, da ich die Idee sehr interessant finde.

    • eine reine FPGA Lösung
    • eine exakte Replica mit möglichst denselben Bauteilen wie beim original

    Die beiden Varianten gibt es schon:


    Ich habe vor Kurzem einen IIPlus Klon wieder in Betrieb genommen und erst festgestellt wie riesig die Platine eigentlich ist. Dafür sind vor allem die 48 RAM Chips und die 6 ROM Chips zuständig. Wenn man diese mit einem SRAM ähnlich wie die aktuelle Saturn Klon Karte und so etwas wie dieser ROM Adapter entwirft, könnte man mit einer deutlich kleineren Platine auskommen, welche sich viel billiger herstellen lassen würde. Diese könnte trotzdem in bestehenden Gehäusen eingebaut werden. Es hätte nur DIP Bauteile ohne FPGAs oder GALs, welche noch programmiert werden mussten, was auch von Vorteil wäre.


    Anderseits wäre ein Apple IIe deutlich flexibler und bietet schon die Erweiterungen, die sonst separat installiert werden mussten. Kann man die IOU und MMU Logik aus dem Apple II Core für den MiSTer schon ableiten?


    Vielleicht sollte man das ganze ähnlich wie bei Apple in zwei Evolutionsschritte machen: zuerst ein einfacher, kleinerer II Plus und dann ein IIe mit ein bisschen FPGA Hilfe.


    Was der CPU angeht finde ich, dass der 65C816 eine gute Option wäre, selbst wenn man kein IIgs Modus vorsieht. Applied Engineering bat bei den Z-RAM Ultra Karten die Möglichkeit diesen statt den 6502 ohne weiteren Änderungen zu installieren. So viel ich weiß konnte man damit nur MERLIN-16 auf dem Apple II nutzen aber es würde sicherlich die Türe für zukünftigen Entwicklungen aufmachen.


    Zum Thema PAL oder NTSC finde ich die NTCS Variante besser. Heutzutage können fast alle moderne Bildschirme NTSC Signale über FBAS entgegennehmen und so hat man Farbe ohne Zusatzaufwand. Es wäre aber gut, wenn ein Header mit den 5 Signalen für ein RGBtoHDMI Adapter vorhanden wäre.

  • Was der CPU angeht finde ich, dass der 65C816 eine gute Option wäre, selbst wenn man kein IIgs Modus vorsieht.


    Das sehe ich auch so.


    Was die Platinen Größe angeht.

    Mit modernen Bausteine kann man das Format schon recht klein kriegen ...


    Hier ein komplett funktionierendes 65816 System:

    • W65C816
    • 10 bis 16 MHz
    • 512 K ROM
    • 512K RAM
    • 115200 Bd Terminal
    • Miniport - 8 LED




    Wenn man da drum herum die Apple II spezifischen Dinge baut ...

    ... würde schon ein schöner Rechner heraus kommen.

  • Zum Thema Tastatur habe ich gerade diese Lösung "Apple II PS/2 keyboard adapter" getestet:

    https://www.blue-print.be/#portfolioModal3

    Das basiert auf diesem Ansatz:

    https://knzl.at/ps2-keyboard-for-apple-ii/

    Als Protokollkonverter dient ein PIC 16F630 oder 16F676, mehr braucht es nicht.


    Das Platinchen lag jetzt schon ein paar Monate herum und wartete auf seine Inbetriebnahme: reinstecken in die Hauptplatine, PS/2-Tastatur dran, einschalten. Erkenntnis 1: die schöne IBM Model M funktioniert nicht. Aber die zickt an diversen anderen Adaptern und Rechnern auch rum. Dann habe ich die nächsterreichbare Tastatur geholt, eine Logitech. Die geht völlig problemlos.


    Für einen Nachbau der Apple-Hauptplatine würde ich überlegen solch einen PIC inkl. MiniDIN-6-Buchse vorzusehen.

  • Es ist still geworden hier ...


    Aber die meisten wollen

    • eine "echte" CPU
    • womöglich sogar Richtung 65816
    • kompatibel zu II-e
    • Slots
    • Optimierungen durch CPLD ist für die meisten okay



    Nun, es gibt Rückenwind für die Sache:

    https://github.com/fachat/csa_ultracpu




    Man beachte die letzten Zeilen ... ;)


    "Future Plans":

    https://github.com/fachat/csa_ultracpu#future-plans

  • Bei einer 65816 bleibt das Problem, daß manche Software, die die undokumentierten Befehle der 6502 nutzt ("illegal opcodes"), nicht läuft und u. U. nicht sinnvoll gepatcht werden kann. Dann lieber einen 6502, so daß man zwischen einer klassischen und "modernen" CPU wie der 65SC02 wählen kann. Mir wäre wichtig, daß man - zumindest optional - das gleiche Timing wie beim originalen europlus hat.

    Suche Apple ][+, gern auch einen Klon, dann aber ohne die Layoutänderung mit Z80 on board und ROMs auf Slotkarte

  • Bei einer 65816 bleibt das Problem, daß manche Software, die die undokumentierten Befehle der 6502 nutzt ("illegal opcodes"), nicht läuft

    Da sehe ich kein Problem. Diese Befehle heißen genau richtig. Sie waren von den Herstellern nie dokumentiert, sie sind ein Zufallsprodukt entstanden aus dem Zwang Transistoren zu sparen. Dazu der Hinweis: ein NMOS-6502 benötigt die erstaunlich geringe Anzahl von rund 3500 Transistoren [1].


    BTW CPUs kann man in Sockel stecken. Und für Hardware, die unbedingt die Illegal Opcodes haben soll, kann man ggf. auf eine alte Platine mit einem NMOS-6502 zurückgreifen, IMHO.


    Mir wäre wichtig, daß man - zumindest optional - das gleiche Timing wie beim originalen europlus hat.

    Dann ist ein 65[S]C02 schon ausgeschlossen, denn bei dem gibt es ein paar Zyklenzahlabweichungen im Vergleich zur NMOS-Variante. Der 65802/65816 im Emulationsmodus ist dagegen viel näher am NMOS-Timing als die CMOS-6502-Varianten.


    Nicht, daß Du mich falsch verstehst: ich finde die Illegal Opcodes eine spannende Sache an den NMOS-Chips.


    Zuletzt meine Frage nach der Apple-II-Software, die Illegal Opcodes benutzt.


    Gruß, Ralf


    [1]

    6502: 3500

    6800/6802: 4000

    6809: 9000

    8080: 6000

    8085: 6500

    Z80: 8500

  • Da sehe ich kein Problem. Diese Befehle heißen genau richtig. Sie waren von den Herstellern nie dokumentiert, sie sind ein Zufallsprodukt entstanden aus dem Zwang Transistoren zu sparen.

    Dennoch sind sie AFAIR vereinzelt verwendet worden. Ich meine mich zu erinnern, daß insbesondere einige Spiele nicht liefen, sobald ein 65c02 in der Kiste steckte. Leider kann ich Dir aber keine konkreten Titel nennen, bei denen das vorgekommen sein soll.

    Nicht, daß Du mich falsch verstehst: ich finde die Illegal Opcodes eine spannende Sache an den NMOS-Chips.

    Zweifellos, obwohl deren Nutzen vermutlich in den meisten Fällen eher begrenzt war. Aber damals[tm] zählte jedes Byte und jede Mikrosekunde.


    Mathias, diesmal mit besten Grüßen (sorry für das Weglassen im Vorposting, ich bin von MacSOUP gewöhnt, daß das automagisch eingefügt wird.)

    Suche Apple ][+, gern auch einen Klon, dann aber ohne die Layoutänderung mit Z80 on board und ROMs auf Slotkarte

  • Na ja, für die Illegal opcodes würde ich es aber nicht machen. Die wenige Spiele, welche diese brauchten sind meistens schon gepatcht worden, damit sie auf dem 65C02 laufen. Mir fällt da Gemstone Warrior zum Beispiel ein. Sonst sind in Total Replay einige Spiele, die extra für 65C02 gefixt worden sind.

  • Hey 2ee,

    leider funktioniert der Link zum PDF nicht mehr. Kannst Du aushelfen?

    Herzliche Grüße vom Newbie Georg

  • Hey 2ee,

    leider funktioniert der Link zum PDF nicht mehr. Kannst Du aushelfen?

    Herzliche Grüße vom Newbie Georg

    Hallo Goonies . Ja, der Link führ mittlerweile tatsächlich ins Leere. Ich hatte da mal ein wenig meine Seite umgebaut. Der Aktuelle Link ist jetzt hier. :)