jau... das kann einen "wahnsinnig" machen...
... bitte checke deine Lötarbeit nochmal genau gegen.
There are 3,006 replies in this Thread which has previously been viewed 370,823 times. The latest Post (
jau... das kann einen "wahnsinnig" machen...
... bitte checke deine Lötarbeit nochmal genau gegen.
wie du oben gesehen hast...
habe ich 9pol auf 9pol...
und ist alles "getestet"... es liegt ja nicht daran, dass "elektrisch" es nicht klappt..
ich hatte ja hier nach gelötet: https://de.wikipedia.org/wiki/Nullmodem-Kabel
Parser , bitte nicht weiter darüber spekulieren.. es geht ja mehr um die PS2 Mikel-Willegal Platine..
da kann wohl nur Ralf & Co direkt vergleichen und/oder der "Entwickler"...
mfG.
Also mein letzter Kenntnisstand zu der COM-Schnittstelle auf dem PS/2 Adapter ist so: Es gibt auf M.Willegals Seiten ja die Firmware für den Attiny Chiip auf dem PS/2 Adapter in 2 Varianten: Einmal klaibriert und einmal "normal". Dahinter stecken wohl irgendwelche Timing-Einstellungen, damit die Zeichen an der seriellen Schnittstelle des PS/2 Adapters richtig übertragen werden. Wenn das Timing nicht stimmt, kommen falsche Zeichen, wie bei uns. Das Timing muss wohl für jeden Apple 1 / PS/2-Adapter individuell eingestellt werden. Dazu muss bei einer der beiden Firmwares irgendetwas irgendwie mit dem Oszi eingestellt werden und dann wird der richtige Timing-Wert in den Flash-Speicher des Attinys geschrieben ..... Eine Anleitung dazu ist nicht (mehr) im Netz zu finden. Höchstens M.Willegal persönlich könnte dazu vielleicht noch etwas sagen .... Ich habe beide Firmware-Varianten in meinen Attony geflashed (mehr dürfte unser Pole auch nicht gemacht haben), es bleibt bei beiden Varinaten dabei: PS/2 Adaptierung geht immer, COM Schnittstelle geht nicht.
Aktivierung der weiteren 4K: Den Jumper "W" (untere 4K Reihe) mit der Ziffer / Buchstaben (0-F) verbinden, wo der 4K Ram Block adressmäßig liegen soll. Um Basic zu nutzen, sollte der Jumper nach "E" (für $E000) gehen, da der Basic-Code in diesem Bereich liegt.
Aktivierung des ACI (softwaremäßig): Vor dem Ladevorgang "C100R" eingeben. Dass es aktiv ist, sieht man daran, dass der Apple statt mit einem "/" nun mit einem "*" prompted. Bei Basic ist es ein ">".
Ich werde heute bei dem Belgier den MM5740AAE reklamieren. Entweder ist mein Chip defekt oder der funktioniert im Apple 1 Dagtanetics Keyboard grundsätzlich nicht. Ich werde das Keyboard trotzdem fertig aufbauen, auch wenn es dann vielleicht nur als Deko dient (Reset und CLS funktionieren ja
). Am besten wäre es, den Atmega selbst entsprechend programmieren zu können. Die Hardware (Platine und Atmega) ist eine Frage von ein paar Euros .... Aber mir fehlt leider das Wissen / Fähigkeit / Erfahrung, die Firmware für die entsprechende Adaptierung des MM5740AAE zu schreiben .... Ich habe gestern ausführlich nach Informationen zu einer solchen Adaptierung gegoogelt, leider nichts gefunden.
Im Anhang nochmal ein ausführliches Datenblatt zum MM5740AAE.
Please login to see this attachment.
Hier habe ich etwas gefunden, dort scheint es aber eher darum zu gehen, alte Keyboards an USB anzuschließen:
da ich leider mit der COM Schnittstelle über die PS2-RS232 Mikel-Willegal Platine nicht weiter kommen
(man hätte da besser auch nicht 9600baud, sondern eher was langsameres z-B. mit 2400 auf der Platine programmiert,
dann hätte man sicher weniger Probleme mit dem Timing,.. o.k. dafür dann langsamer beim Einladen
)
will ich als nächstes die ACI Karte einbauen. (werde dafür R-C Brücken).
ich muss noch wegen dem "Mono-Kabel" gucken, habe es aber wohl "im Griff" ![]()
Ob 9600 oder 2400 macht keinen Unterschied, da die Geschwindigkeit fremdbestimmt wird. (Richtig müssen die Einstellung trotzdem sein sonst kommen die falschen Zeichen)
Das ganze ist eh ein übelster Hack.
Es gibt diverse saubere Lösungen dafür z.B. https://sowerbutts.com/replica1-serial/
Das ganze wurde ja von Woz als Keyboardinterface implementiert aber auch er hat schon erkannt, das man es als serielle Schnittstelle nutzen kann und hat im WozMon entsprechende Vorbereitungen getroffen.
Durch Pausen in der Software wird ein Handshake überflüssig und die Übertragung unnötig langsam.
Um aber einen Hardware-Handshake zu realisieren müssen noch ein paar Leitungen gezogen werden.
Sowerbutts nutzt hier den von Briel verwendeten Parallax Propeller (geht natürlich auch mit dem Atmel vom Willegal) für die Parallel 2 Seriell Wandlung (dort erledigt er noch viele weitere Dinge).
Old School hätte man das wohl mit einer Hand voll TTLs und einen ACIA gemacht siehe MFA Computer.
Leider ist auch das Cassetten interface übelst zusammen gehackt, die Implementation im Apple II ist um Welten schöner und weniger hackig.
Somit bleibt nur eins die Sache einmal neu zu denken. Dies hat man mit dem CFFA1 getan.
Aus meiner Sicht gibt es genau zwei Erweiterungen für den Apple I die interessant sind das CFFA1 und das FRAM Board.
Mir schwebt da eine Hybride Version im Kopf rum die beides vereint.
Das Original Apple I Mainboard hat für mich einfach zu viele Designschwächen, die auch damals aus technischer Sicht nicht notwendig waren wohl aber um den Preis zu drücken.
Beim RC6502 die Modul-Version, nicht die Ein-Platinen-Version hat man versucht das zu korrigieren. Wenn ich die Lösung mit dem MFA-Computer vergleiche dann ist das nur zum Teil gelungen.
Alle Verbindungen zwischen Terminal Teil und Computerteil trennen und nur ein Interface mit Handshake übriglassen. Das hat man beim RC6502 mit der Serial IO geschafft.
Jetzt gibt es dort auch die RC6502 Terminal Karte. Leider ist die Karte so wie ich es verstehe nur alternativ betreibbar.
Nicht wie beim MFA-Computer wo die seriellen Leitungen auf dem Backplane geführt werden und das Terminal seriell angeschlossen ist.
https://github.com/tebl/RC6502-Ap…2%20Serial%20IO dies ist quasi vergleichbar mit dem Keyboard interface von Willegal nur nutzt es nicht den Tastaturanschluss sondern den "6820 Sockel" bzw. den Bus Anschluss.
Hier wird ein Bauteil mehr verwendet als bei der Version die ich mit Ralf zusammen geklöppelt habe, leider wird von den zusätzlichen IO Pins kein Gebrauch gemacht und kein PS2 Interface eingebaut.
Meiner Meinung nach macht es keinen Sinn sich weiter mit dem Apple I aufzuhalten, der ist so unnütz, das er nur für die Vitrine taugt.
Zum spielen langen die einfachen Replicas ohne den Terminal Teil. Der Apple II kann mit dem Wozanium Pack den Apple I mehr als ausreichend gut emulieren, da die Hardware sehr ähnlich ist.
Mit eingriffen in die Hardware müssten sogar nahezu 100% möglich sein. (Verlegen des Textspeichers und Nutzung des Charactergenerators statt Generierung von Hires-Grafik"
Aber was es nicht zu geben scheint ist ein modernisiertes Apple II Mainboard.
Wer gerne mit TTL Video generieren möchte sollte sich mal die Atari Pong Schaltung oder den Megatron ansehen.
Hier ein Testprogram für die zweiten 4k-RAM @$E000
https://www.applefritter.com/content/experi…allenge-program
Problem ist wenn man nicht extra Kondensatoren benutzt produziert es dank des schlechten Designs von Woz oft tatsächlich vorhandene Fehler.
Daher kann ich nur jedem raten, der tatsächlich vor hat den Apple I zu benutzen ihm unten abgebildeten Fix zu verpassen, selbst wenn es ein 500.000€ original ist.
Please login to see this picture.
As UncleBernie likes to say: "The catch is that all Apple-1 without mods are marginal and almost work most the time."
Vermutlich kommen die eigentlichen Problme nicht von Woz sondern von Jobs da er der dafür sorgte das Fristen eingehalten werden und der Gewinn möglichst hoch ist.
TurboMicha : Das Testprogramm von UncleBernie testet den 4K Ram Block ab $E000. Du musst also erst die weiteren 4K aktivieren ab $E000. Wenn alles okay ist, gibt das Programm alle 1,6 Sekunden einen Punkt (".") aus.
Eben wollte ich das Ram-Testprogramm über Hypertherm in den Apple hochladen und musste feststellen, dass der Reset nicht mehr funktioniert. Wenn ich die Arduino-Nano Adapterplatine wegnehme (also den 6520 oder 6821 direkt einsetze), funktioniert alles wie gewohnt. Die Lochraster-Adapterplatine ist in Ordnung. Also kann doch nur der Arduino Nano defekt sein ? Ich habe mal ein 3er Pack neue bestellt, kann man immer brauchen.
Bei der Datanetics-Platine habe ich schonmal die Platinenunterseite für das Einsetzen der Tastenschalter vorbereitet:
Please login to see this attachment.
Um den richtigen Abstand der Tasten zur Platine hinzubekommen, habe ich M4 Unterlegscheiben aus Polyamid bestellt, sie sind 1mm dick und passen vom Durchmesser genau unter die Taster. Der freundliche Belgier, der den MM5740-Ersatz verkauft, nimmt den alten Chip zurück und schickt mir einen neuen. Zur Sicherheit habe ich auf der Datanetics Platine nochmals die aufgebohrten "Matrixfelder" sowie die Verkabelung zum Apple geprüft - alles stimmt.
Hatte heute auch erst einen "Rückschlag"...
und dann gerade den "Durchbruch"
![]()
![]()
![]()
.. den passenden Kassetten-Recorder angeschlossen ... ich hoffe , dass klappt nachher auch noch mal
![]()
Please login to see this attachment.+Please login to see this attachment.+Please login to see this attachment.
Wir brauchen ein Video...
Eben wollte ich das Ram-Testprogramm über Hypertherm in den Apple hochladen und musste feststellen, dass der Reset nicht mehr funktioniert. Wenn ich die Arduino-Nano Adapterplatine wegnehme (also den 6520 oder 6821 direkt einsetze), funktioniert alles wie gewohnt. Die Lochraster-Adapterplatine ist in Ordnung. Also kann doch nur der Arduino Nano defekt sein ? Ich habe mal ein 3er Pack neue bestellt, kann man immer brauchen.
Vergleich doch nochmal den Lochrasteraufbau mit der Platine.
Insbesondere die Verbindung Header und PIA Sockel Pin 34, evtl. falsch bestückt? Sockel und Pinheader verwechselt?
Okay, der Nano hat doch keine Verbindung mit dem Reset und hat somit keinen Einfluss, das ist eher ein Kontaktproblem zwischen dem Sockel (Mainboard) und der PIA.
Oder noch wahrscheinlicher zwischen deinem Rest Button oder Keyboardadapter und dem Keyboard Sockel.
Hatte heute auch erst einen "Rückschlag"...
und dann gerade den "Durchbruch"
![]()
.. den passenden Kassetten-Recorder angeschlossen ... ich hoffe , dass klappt nachher auch noch mal
![]()
Und ein Tapesimulator mit max. 255 Tapes aus wählbar via Monitor wäre keine interessante Ergänzung?
Wir brauchen ein Video...
ich habe bei mir folgendes gemacht:
ich habe von hier: http://www.isdi.com/Apple1/SW/
die "WAV" Datei von Apple 30th Graphics Demo über mein Notebook ( Audio-Klinke mit ca. 90% Lautstärke( ausgegeben,
und per Klinke mit dem Panasonic RQ-2102 aufgenommen. (bei dem Recorder steht der Lautstärke Regler auf ca. 3,5 ( bei 1-10) ,
aber ich denke für die Aufnahme nicht relevant).
Dann das Audio-Kabel in IN (from TAPE) bei der ACI Karte:
dort: C100R (enter), 280FFFR (enter), 280R -> läuft
als nächstes würde mich interessieren, ob ich auch "aufnehmen" kann, also ein Programm selbst auf Cassette speichern,..
Schreibbefehl per 280.300W (z.B.) ....
Danke an Ralf / Natas (!) und den Beteiligten für die Unterstützung bis hier hin... ![]()
Ich denke, ich kann jetzt "beruhigt" auf die zweiten 4k RAM einbauen und weiter testen...
Das Modul:
Nachbau eines Apple 1
sollte sich direkt am ACI anschließen lassen.
Um es vom Monitor aus zu steuern müsste ein 74373, ein 7402, evtl. ein 74123 und ein paar Kondensatoren und Widerstände genügen.
Wenn ich es richtig verstehe müssen R/!W und !CSB NOR verknüpft werden.
Der Ausgang des NOR einmal mit Enable G verbinden und einmal mit B von einem halben 72123 verbinden.
!A des halben 74123 mit GND verbinden !Q gibt bei korrekter Wahl von R und C einen verlängerten negativen Impuls aus der an !OE vom 71373 angeschlossen wird.
Wenn man jetzt im Monitor B000: 03 eingibt sollte das dritte File abgespielt werden.
Und ein Tapesimulator mit max. 255 Tapes aus wählbar via Monitor wäre keine interessante Ergänzung?
ich finde die "modernen" Sachen.. (für später) auch super und interessant..
ich möchte zuerst alles "Retro-mässig" am laufen haben.. danach kann man ja "optional" MODen und tunen ![]()
ich finde auch super, was Ralf zusammen mit dir schon am laufen hat...
(und ist vieles auch viel praktischer).
ich werde jetzt die RAMs erhöhen und checken,
=> danach muss ich schauen, warum das ACI speichern nicht funktioniert...
(und wenn doch die PS2-RS232 Schnittstelle doch auch noch funktionieren würde
)
Problem sind die Lieferzeiten aus China dauert gut einen Monat.
Die Baudrate des Adapters sollte sich im Quelltext ändern lassen.
ldi scratch,25 -> ldi scratch,103 Die Abweichung ist in beiden Fällen etwa 0.2%
Problem sind die Lieferzeiten aus China dauert gut einen Monat.
Die Baudrate des Adapters sollte sich im Quelltext ändern lassen.
ldi scratch,25 (9600) -> ldi scratch,103 (2400) Die Abweichung ist in beiden Fällen etwa 0.2%
Zur Kalibrierung müsste man wenn ich alles richtig verstanden habe wie folgt:
den ATiny vollständig löschen.
dann AVRPS2_keyboard_calib.hex programmieren.
high fuse byte should be programmed to: DB programmieren
low fuse byte should be programmed to:E2 programmieren
Dann ein OSZI an einen beliebigen Pin von PortB (Keyboard Anschluss) hängen (results in 125 usec long levels - 250 usec long wave)
Mit den Tasten (PS2-Keyboard) I: erhöhen, D: erniedrigen, W: warten, Q: beenden und speichern
EEPROM auslesen.
Chip löschen
PS-2keyboardv3.0.hex, ausgelesenes EEPROM und Fuses wie oben programmieren.
Display MoreZur Kalibrierung müsste man wenn ich alles richtig verstanden habe wie folgt:
den ATiny vollständig löschen.dann AVRPS2_keyboard_calib.hex programmieren.
high fuse byte should be programmed to: DB programmieren
low fuse byte should be programmed to:E2 programmieren
Dann ein OSZI an einen beliebigen Pin von PortB (Keyboard Anschluss) hängen (results in 125 usec long levels - 250 usec long wave)
Mit den Tasten (PS2-Keyboard) I: erhöhen, D: erniedrigen, W: warten, Q: beenden und speichern
EEPROM auslesen.
Chip löschen
PS-2keyboardv3.0.hex, ausgelesenes EEPROM und Fuses wie oben programmieren.
Das möchte ich mal ausprobieren. Der Attiny 2313 hat ja wenn ich das richtig verstanden habe 2K Flashrom und 128 Bytes EEprom. Ich muss mal sehen ob und wie ich mit meinem TL866CS auch auf das EEprom zugreifen kann.
Mit den Tasten des PS/2 Keyboards (I, D) stelle ich das Signal von einem B-Pin des 16-poligen Keyboard-Sockels so ein, dass der längste im Signal auffindbare Level (high oder low) genau 125 uS lang ist und die längste vollständige "Welle" genau 250 uS lang ist ?
Dann mit "Q" Speichern der Werte in die 128 Bytes des EEproms. Nun das EEprom mit dem TL866CS auslesen und am PC speichern. Jetzt den Attiny 2313 komplett löschen, dann die PS-2keyboard3.0 und den zuvor ausgelesenen Eeprom-Inhalt programmieren. Richtig so ?
Bei dem 6820-Arduino Nano Adapter (Lochraster) werde ich nochmal alle Sockelverbindungen und Verbindungen zum nano durchpiepsen. An dem Sockel mit den Reset / CLS Minitastern, den ich direkt auf den Tastatursockel stecke, liegt das Problem nicht: Wenn ich den 6520 / 6821 direkt einsetze, funktioniert der Reset mit dem "Minitaster".
Ob es wirklich richtig ist kann uns nur Marc Willegal sagen, aber so habe ich es verstanden.
Alternativ kann man auch den Wert im EEPROM (letztes Byte) mit dem Programmer anpassen kleinerer Wert MCU läuft schneller größerer Wert sie läuft langsamer. Die Werte im Quellcode sind Dezimal und sind mit etwas Glück direkt im Editor vom TL866 auffindbar so das man auch dort ohne Assembler die Baudrate ändern kann.
Korrekte Fuses nicht vergessen.
Wenn das nicht hilft kann man auch die Fuses auf extern ändern und einen 4MHz Quarz nutzen.