Hallo, in der "Reihe" der AVR Computer gibt es ein neues Mitglied, den AX81. Geschrieben in ASM emuliert er einen ZX81 (Z80 und restliche Hardware) und ist bei einem 20MHz AVR etwas schneller als das Original. http://www.jcwolfram.de/projekte/avr/ax81/main.php Die Hardware ist identisch mit der vom AVR-BASIC-Computer, als Controller können ATMega644, ATMega644P und ATMega1284P genutzt werden, wobei nur die beiden letzteren VGA-Signal ausgeben können. Als Datenspeicher können sowohl Atmel Dataflash als auch SD-Karten verwendet werden. Dabei kommt ein Tape-orientiertes "Dateisystem" zum Einsatz, bei dem die Programme einfach jeweils 16K hintereinander auf dem Medium belegen. Dadurch ist das Dateisystem leider nicht zum ChipBasic2 Dateisystem kompatibel. Für SD-Karten gibt es Perl-Scripte mit denen sich Dateien einfach auf SD-Karte lesen und schreiben können. Alternativ gibt es noch einen "Bootloader" über die serielle Schnittstelle, über den Programme per X-Modem Transfer auf das Medium übertragen werden können. Auch habe ich angefangen Programme, die ich im Internet finden konnte auf Funktion zu testen und mit zum Download bereitzustellen. Viel Spaß damit Gruß Jörg
Wieder einmal genial :-) Ein ZX81 auf einem AVR laufen lassen und dabei schneller sein ... Ich zitiere : "Ihr wahnsinngen ... ihr habt es schon wieder getan" :-) Aber nur weiter so. Echt klasse :-)
> Wieder einmal genial :-)
Naja, vermutlich ganz einfach. Schliess wird man noch nichtmal exterenes
Ram brauchen um die 1k eines ZX81 zu simulieren oder? :-D
Aber man muss auch die Tastatur und diesen Brutzeldrucker simulieren
wenn man Haptik und Olfaktorik der 80er erneut geniessen will.
Olaf
Auf deiner Seite gibts nur ne Fehlermeldung: "Closed Systems are not supported"?
>Schliess wird man noch nichtmal exterenes >Ram brauchen um die 1k eines ZX81 zu simulieren oder? :-D :-)) Da haste wohl recht. Aber dennoch ne stolze Leistung nen Z80 nebst Grafikausgabe/Verwaltung/PS/2 Tastatur auf nem AVR so laufen lassen das er schneller ist als das Original. Das nenn ich echt ne Leistung :-) >Aber man muss auch die Tastatur und diesen Brutzeldrucker simulieren >wenn man Haptik und Olfaktorik der 80er erneut geniessen will. Lässt sich bestimmt auch dran-tackern :-)
Naja, ganz so simpel ist es nicht ;-) Der ZX81 hat ja auch noch 8K ROM und sowohl ROM als auch RAM tauchen mehrfach in den 64K Adressraum auf. Gelöst habe ich das mit einer Memory-Map Tabelle, wo ich 256-Byte-weise den Z80 Adressraum auf AVR Flash oder AVR-Ram mappe. Leider bekommt am auf diese Weise keine 16K sondern nur 15,75K, da der AVR selbst auch noch etwas RAM braucht. @Kantor Kann es sein ,dass Du mit einem iPAD versucht hast die Seite aufzurufen? Derarige geschlossenen Systeme sind für mich unvereinbar mit open Source und deswegen möchte ich so etwas auch nicht unterstützen. @Ronny Geplant ist so etwas derzeit nicht, da ich selbt dafür die ChipBasic Hardware mit dem Uni-Anschluss nutze. Für VGA braucht es dann einfach noch einen Adapter mit R,G,B,HSYNC und VSYNC von 9-polig (UNI) auf 15-polig (VGA). Gruß Jörg
Joerg Wolfram schrieb: > Kann es sein ,dass Du mit einem iPAD versucht hast die Seite aufzurufen? > Derarige geschlossenen Systeme sind für mich unvereinbar mit open Source > und deswegen möchte ich so etwas auch nicht unterstützen. Hmm, ich dachte die Open-Source-Gemeinde wäre etwas toleranter. So nach dem Motto: "Jeder soll so leben, wie es ihm gefällt." Naja, wie auch immer: Es ist deine Seite, wenn du keine schwarzen, weißen, deutschen, ausländer, schlipsträger, ipdadbenutzer oder sonstwen auf deine Seite lassen willst ist das deine Sache. Ich muss mir deine Seite nicht antun. Es handelt sich also um die klassische Win-Win-Situation: - Du willst mir deine Seite nicht zeigen - Ich lege keinen Wert darauf, die Seite eines intoleranten [ZENSIERT] zu besuchen. Haben wir also beide was davon...
Großartiges Projekt. Der ZX81 war damals mein erster Rechner. Kaum zu Glauben, das das alles heutzutage in einen AVR passt. OT: Fürs iPad gibt's doch auch jede Menge Opensource Projekte. Warum sprichst du da von einem geschlossenen System?
@Jörg: Super! Möchte mir den AX81 auf LR aufbauen in einzelnen Schritten: 1. 1284p +5V 20MHz Quarz+2x22pf und BAS (1k+1k8+3k3). Damit sollte ich dann schon mal eine Einschaltmeldung erhalten an einem VIDEO Monitor. 2. PS/2 Tastaturanschluß. Damit wäre der ZX81 quasi schon vollständig und bedienbar. Nur kein Massenspeicher.. 3. Anschluß SD Card. Schaltung würde ich so wie beim ChipBasic2 BAS Version aufbauen wollen (siehe Bild) - ok? Welche HEX Datei muss ich aus dem Download Paket nehmen? Und wie sind die Fuses für 1284P zu setzen? Peter
Hallo Peter, die 1K8 und 3K3 solltest Du weglassen, da die dazugehörigen Portpins als Eingang geschaltet sind. Alternativ kann man PORTC.5, PORTC.6 und PORTC.7 bei bestehenden ChipBasic Boards brücken. Die Fuses müssten beim Mega666, 644P und Mega1284P gleich sein, also: FUSE LOW = 0xe6 FUSE HIGH = 0xd1 FUSE EXT = 0xfc Die Dokumentation der Hexfile-Bezeichnungen muss ich wohl noch etwas überarbeiten. Außerdem haben ein paar Varianten leider falsche Bezeichnungen, da muss ich noch etwas an meinem Build-system ändern. Z.B. liegt bei allen Varianten mit VGA output der Bootloader Output Pin bei PORTB.2 und nicht bei PORTD.4, da dort bei VGA der Pixeltakt rauskommt. Ebenso geht dort nicht PORTD.3 als Bootloader Input Pin. Die Bezeichnung der Hexfiles schlüsselt sich folgendermaßen auf: ax81_[controllertyp]_[videosystem]_[storage_system]_[bootloader_pins].he x controllertyp ------------- m644 ATMega644 m644p ATMega644P m1284p ATMega1284P video_system ----------- t-l nur TV TV(PORTC.7) und LCD (PORTA) tvl VGA (PORTD.3), TV(PORTC.7) und LCD (PORTA) storage_system --------------- df Dataflash (AT45DB041D oder AT45DB081D) sd SD-Karte, RAW Sektoren ab Sektor 0 bootloader_pins --------------- pd3pd4 originale ChipBasic2 Hardware pd1pd4 modifizierte Hardware, um VGA zu ermöglichen also wäre ax81_m1284p_xxx_xxx.hex das richtige Hexfile für Dich. Inzwischen habe ich auch angefangen, ein erweitertes SD-Filesystem zu schreiben. Dabei liegen die Tapes als Dateien hintereinander in einem mehr oder weniger beliebigen Dateisystem. Damit sollten dann auch Windows-Computer besser klar kommen. Allerdings müsste sich dann vielleicht jemand die Mühe machen ein Programm zu schreiben, mit dem man P-Files in die Tape-Datei und auch wieder zurück bekommt. Von mir wird es nur Perl-Scripts und eventuell ein GTK-Programm (für die Mausfreunde) geben. Gruß Jörg
Das sieht nach nem zimlich coolen Projekt aus. Aber warum erfindest du ein neues Dateisystem? Nimm doch einfach tar - is sehr einfach gestrickt, und man kann einfach mit "tar cf /dev/sda /path/to/source/dir" einpacken (bzw. mit "tar xf /dev/sda" auspacken)
ok. Die 'Einfachst' Schaltung sollte dann also in etwa so aussehen..? Als HEX Datei werde ich nehmen: ax81_m1284p_t-l_sd_pd1pd4.hex Gruß Peter
Genauso ist es. Sinnvoll sind noch zwei Pullup-Widerstände an den Tastaturleitungen und eventuell den Widerstand an PORTC.7 auf 510 Ohm verkleinern. Gruß Jörg
Zum Thema Dateisystem. Ich versuche auf Controllerseite mit so wenig wie möglich Aufwand hinzukommen und den lieber auf die PC-Seite zu verlagern. So sind alle Dateien gleich lang (16K) und haben am Anfang den Dateinamen (im ZX81 Charset) und die Länge der Nutzdaten. So lassen sich ohne großen Aufwand Dateien laden oder schreiben oder auch überschreiben. Das Bestimmen der Nummer eines Sektors in einer bestimmten Datei ist damit nur noch eine einfache Rechenaufgabe. Auf FAT, EXT etc. zu verzichten und die Sektoren direkt zu benutzen ist eigentlich für den gegebenen Zweck die beste Methode solange nicht mit einem Windows-Computer auf die Daten zugegriffen werden soll. Das "neue" Dateisystem entspricht eigentlich fast dem alten, ausser dass es am Anfang jeder Tape-Datei einen Markierungs-Sektor gibt. Da das gesamte Dateisystem 128MB belegt, wird zum Systemstart von 64MB an rückwärts nach einem solchen Markierungssektor gesucht. Aus diesem und der Clustergröße in Sektoren wird dann der Startsektor des Dateisystems berechnet und bis zu einem Neustart im RAM gespeichert. Bei frisch formatierten Karten funktioniert das eigentlich sicher. Wer will, kann sich natürlich auch Routinen für andere Dateisysteme schreiben, letztendlich werden 6 Subroutinen benötigt:
1 | fsys_init initialisiert IO und das Dateisystem zum Systemstart |
2 | fsys_rname liest den Name und die Länge einer Datei (r16) |
3 | fsys_rfile lädt Programm nach Dateiname |
4 | fsys_rfile_02 lädt Programm nach Dateinummer |
5 | fsys_wfile speichert Programm nach Dateiname |
6 | fsys_dfile löscht ein Programm nach Dateinummer |
dazu noch zwei, wenn der Bootloader benutzt wird. Gruß Jörg
Hi. Evtl. eine Alternative wäre auf den FAT16 Routinen vom AVR CPM aufzusetzen in der Weise, das nur eine 128MB Image Datei (Aufbau wie von dir beschrieben und mit den Perl Tools erzeugt) mit festem Namen auf der SD Karte lokalisiert wird. Name z.B AX81APPS.IMG o.ä. Dann könnte der gemeine Windows User eine fertige Imagedatei einfach auf eine FAT16 formatierte SD Karte ins Wurzelverzeichnis kopieren und gut ist. Ich gehe sowieso davon aus, das wenige oder sogar nur 1-2 Imagedateien einmal erstellt werden und dann nur noch 'genutzt' werden.. Unter Windows mit DD etc, direkt auf ein device zu schreiben, wird spätestens dann zum Problem, wenn man nicht die gewünschte SD Karte, sondern die Festplatte erwischt hat ;-) Peter
Hier mal auf die Schnelle Eagle Dateien dazu. Video-Out Version mit SD Karte. Und Ja, 'sche**' Autorouter! Nicht meckern, sondern freuen, das man es besser machen darf ;-) Bin z.Z durch Grippe etwas angeschlagen.. da übersieht man auch mal leicht was.. wäre schön, wenn mal wer drüber schaut.. Peter
@ Peter mit 10 min Aufwand bekommst du das Layout auch einseitig! Darfst dich aber erst mal auskurrieren, gute Besserung.
Joerg Wolfram schrieb: > @Kantor > Kann es sein ,dass Du mit einem iPAD versucht hast die Seite aufzurufen? > Derarige geschlossenen Systeme sind für mich unvereinbar mit open Source > und deswegen möchte ich so etwas auch nicht unterstützen. Sowas ist natürlich Komplettblödsinn erster Güte. Du tust mehr für Opensource, wenn du, anstatt mit solchen Aktionen die Besucher zu verschrecken, konsequent auf offene Standards setzt. Dann kann es jeder sehen, egal welches Gerät/Browser/OS er nutzt. Übrigens: Komplett offene Standards zu nutzen, verbessert auch das Google-Ranking, das macht es leichter für den Googlebot, die relevanten Informationen zu indexieren. Das dazu. Zum Projekt selbst: Saubere Arbeit. Ich denke, da habe ich was für den Weihnachtsurlaub. Gruß Jadeclaw.
@ Joerg ich habe hier noch ein Display mit einem SED1330 Controller, passt das, oder für was für ein Display hast du vorgesehen?
@Tüddel Nein, das dürfte nicht gehen. Der Code ist nur für controlllerlose Displays geeignet. Jörg
@Peter Wahrscheinlich werde ich eine einzige Image-Datei benutzen, wie von Dir vorgeschlagen. Allerdings werde ich nicht über FAT etc. gehen, sondern mit Markierungssektoren arbeiten. Dann ist das zugrunde liegende FS egal, solange die Datei innerhalb der ersten 64MB beginnt. Jörg
Bin etwas ratlos.. Erster Lochrasteraufbau ist fertig. Ca. wie Einfachstversion weiter oben, also ohne SD Card oder Dataflash! Nur +5V, 20MHz Quarz+2xC, PS2 Anschluß mit 2x10k Pullup und Videoout 510 Ohm an pc7 und 1k an pd5. 100nf Abbock-C, 10uF und 220uF in der Versorgung. Atmega1284p geflasht mit: avrdude -c usbtiny -p m1284p -e -U flash:w:ax81_m1284p_t-l_sd_pd1pd4.hex avrdude -c usbtiny -p m1284p -U lfuse:w:0xe6:m -U hfuse:w:0xd1:m -U efuse:w:0xfc:m Nun zum Problem.. Der AX81 scheint nicht wirklich so 'starten' zu wollen..? Von ca. 50x Strom drauf, startet er vielleicht 1x ?? Wenn er dann läuft arbeitet er aber stabil! Rumdrücken auf der LR Platine kein Problem.. (Nur Quarz anfassen mögen sie nicht). Bei Reset an Pin9 (10k Pullup) wieder nichts..? Ich weiß nicht wie ich es besser beschreiben könnte.. Netzteil +5,32 V/2A! (Da hing sonst ein Z80 SBC dran der mehr Strom braucht) Auch schon anderes Netzteil probiert (hatte nur 4,85V - sollte aber auch noch gehen) - keine Änderung. Andere PS/2 Tastatur probiert - keine Änderung. Ohne Tastatur angeschlossen - keine Änderung. Bei erfolgreichem Start kommt das Einschaltbild AX81 mit 'No Card' Meldung. und man kann wie gesagt arbeiten (kleines Basicprogramm ok). Einzige Erklärung die mir so spontan einfallen würde.. die Firmware hat ein Problem, wenn gar kein Speicher (SD Karte/Dataflash) dran hängt..? ??? Peter
Hallo Peter, Ich habe die Universion aufgebaut. Mit der AVR-Chip-Basic2 und einem Mega644 läuft sie soweit. Mit dem ZX81 bekomme ich sie auch nicht zum starten. Habe keinen Mega644P da. Mal schauen was Jörg sagt. Gruß Manfred
Ja.. muss natürlich nicht am Speicher (SD/Dataflash) liegen, sondern kann auch an etwas anderen (Eingangspins) liegen, wo die Firmware etwas erwartet, das aber bei der Einfachstvariante nicht da ist..?? Mega644/P habe ich z.Z nicht da. Peter
Hallo, macht mal an den Bootloader-Input-Pin einen Pulldown von ca. 1K. Ursache kann sein, dass im TV-Modus die internen Pull-Ups zeitweilig abgeschalten werden, damit es bei der ChipBasic Hardware nicht zu Bildstörungen über die internen PullUps an PORTC6 und PORTC.5 kommt. Wenn "Gewackel" an der BL-Input Leitung erkannt wird, aktiviert sich der Bootloader und schaltet die Bildausgabe ab. Ich hatte immer ein serielles Kabel dran, darum könnte mir das nicht aufgefallen sein. Ansonsten werde ich noch eine Version ohne Bootloader generieren, das geht aber erst heute abend. Jörg
Hi Jörg. Dachte erst es hätte etwas bewirkt.. aber nein. 1k über GND an pd4 als auch einmal an pd1 zeigten nicht die gewünschte Wirkung. Beim Vergleich Einfachst- gegen HW auf der AX81 Seite sind mir noch weiter aufgefallen: pc5 + pc6 sind bei mir unbeschaltet. Auf der AX81 Seite sind sie für S/W mit pc7 gebrückt. pc2,3,4 sind bei mir ebenfalls unbeschaltet=offen. Auch kein Pullup (10k) wie auf der AX81 Seite. Habe man pc5+6+7 gebrückt - kein Erfolg. Evtl. mal eine Version die fest Videoout hat und ohne Bootloader ist.. Peter
So, ich habe jetzt mal nur Varianten mit TV-out only und ohne Bootloader erzeugt. Die Pullups an PC 2..4 müssen auf jeden Fall ran, damit das richtige Videosystem (PAL, CSYNC) eingestellt wird und bleibt. Der grund dafür ist, dass das PORT Register durch die "Bitschieberei" ständig andere Werte hat und die internen Pull-Ups damit ein- und ausgeschaltet werden. Gruß Jörg
Hi Jörg. Danke! Ich denke das wars. Die 3x10k Pullup an pc2,3,4 haben auch die 0.21 Firmware verbessert im Startverhalten.. es dauert nach Bestromung ca. 4-5s dann kommt die Einschaltmeldung. Aber nach Reset an pin9 bleibt der Rechner weg..? V0.22 ohne Bootloader (habe genommen: ax81_m1284p_t--_sd_nobl.hex) arbeitet aber noch besser. Einschaltbildschirm kommt nach ca. 2s und auch nach Reset kommt wieder der Einschaltbildschirm. Prima! Sollte ich um den Kontrast noch etwas zu erhöhen, pc5+6 mit pc7 brücken? Hänge hier noch ein Bild der ZX81 Tastatur an, um die Bedienung zu erleichtern. --- Noch ein paar Gedanken zum Image der Programme in einer Datei. Evtl. kann man auch die Größe bestimmen und durch 16kb teilen. Muss glatt aufgehen sonst illegal File. Dann zuordnen zu Tape# und Programm#. 40 Programme (40x16kb Größe) 'füllt' dann Tape 1 Programm 1 - 32 und Tape 2 Programm 1 - 8. So ist man nicht gefordert alles in ein Image zu packen und kann bei Bedarf eigene Zusammenstellungen erstellen.. Hier auch noch mal die berühmten 1kchess und 1ktetris als .p im Zip. Peter
Hallo Jörg, Ich habe jetzt auch die X81 Version V0.22 am Laufen, aber nur eine Anzeige bei der M644 t sd nicht bei der m644 t-l sd. Beim Start zeigt er mir no Card. Gruß Manfred
Hallo, Hat einer eine Idee wie ich die Programme unter Windows auf die SD-Karte schreiben kann ? Gruß Manfred
@Manfred Entweder mit Perl und dd für Windows oder mit dem Bootloader. Ab der nächsten Version geht dann auch eine Image-Datei auf der SD-Karte. @Peter Mit den Scripten kann man dann ja problemlos einzelne Dateien in das Image hinein und auch wieder heraus transferieren ohne dd zu benötigen. Um die Verwendung von Perl wird man bei meinen Projekten eh schlecht "drumrumkommen". Und wer halt lieber klicken will, muss sich halt selbst was schreiben. Gruß Jörg
@Jörg: Perl unter Win$ sollte ok gehen.. Evtl. gibts dann später ja ein eigendes Programm dazu (java - dann kann man es fast überall nutzen). Ich habe mir das auf deiner Seite durchgelesen mit den Images/Tapes/SD Karte.. und es trotzdem noch nicht ganz verstanden.. ich habe aber auch die Scripte noch nicht angesehen.. ich denke da wird ein 'Image' sozusagen hintereinander hart auf die SD Karte geschrieben.. sowas hatten wir ja im Prinzip bei AVP CPM auch zuerst.. gefällt mir aber nicht wirklich.. Ich denke da muss ich wohl auf die nächste Version warten, die zumindest mal eine Imagedatei unter FAT16 von der SD Karte verarbeiten kann.. Ich denke die Geschichte mit dem Bootloader und der Dateiübertragung ist eine Frickelei und stört mehr als das es nützt. Just my 2 cents ;-) Sobald eine Imagedartei existiert, die einfach auf eine SD Karte kopiert werden kann, wird niemand mehr eine solche Lösung (Bootloader+Dataflash) einsetzen.. Ich werde in den nächsten Tagen meinen LR Aufbau schon mal um die SD Kartenlösung erweitern. DD unter Windows habe ich leidlich schon für AVR CPM genutzt. Perl habe ich nicht installiert. Kannst du bitte für Testzwecken eine Imagedatei z.B von Tape 11 oder auch mehreren Tapes hier als ZIP einstellen? Dann kann man die direkt mit dd if=image.datei of=(sdcard) b=512 o.ä auf eine SD Karte schreiben und ein bißchen weiter testen.. Ansonsten auf jeden Fall ein schönes Projekt! Peter
@Jörg Das mit der Imagedatei finde ich gut. dd für Windows habe ich mir schon mal runtergeladen. Da können wir schon mal testen. Ich stelle mal 2 Bilder ein. @Peter Das Layout für die SD-Karte kann ich Dir schicken, wenn Du mir Deine E-Mail schickst. Gruß Manfred
@Manfred: Prima! Und Danke, aber das Layout für die Erw. der Chipbasic Platine ist für mich nicht so interessant.. (Evtl. für Jörg oder Chipbasic2 Besitzer schon!) Ersteinmal ein LR Aufbau und dann alles auf einer neuen Platine (noch nicht fertig!).. Peter
Wenn man DD mit bs=16384 seek=prognummer count=1 aufruft, kann man die PX Dateien aus den Archiven von meiner Homepage direkt nehmen, halt erstmal Programm für Programm. Für die Imagedatei habe ich mir noch etwas ausgedacht. Und zwar kommen neben der Imagedatei auch noch 256 Verzeichnisse mit auf die SD-Karte. In jedes dieser Verzeichnisse wird bei der Installation eine Lese- und eine Schreibapplikation kopiert. Dann braucht man nur noch die .P Dateien in das Verzeichnis zu kopieren und das to-image Programm zu starten, welches dann die Dateien an der richtigen Stelle in das Image schreibt. Und umgekehrt genauso. "Perl-unwillige" Windows-Nutzer bekommen ein Kompilat, der Rest der Welt ein Perl-Script. Gruß Jörg
Habe unter Win$ ein Image aus 4 PX Dateien erzeugt: copy /b 1.px+2.px+3.px+4.px ax81.img Ist auch eaxkt 64kb 'groß'. Wurde auch 1x so halb erkannt.. 3 der 4 Programme.. konnte HELI sogar laden.. aber habe den Eindruck, das beim laden, starten der Programme die SD Karte durcheinander gebracht/logisch zerstört wird..? Der SD Anschluß ist allerdings auch Frickelwerk.. muss ich noch ma bei.. Peter
Habe die Karte nun mit dem Panasonic SD Card Formatter wieder ins Win$ Leben zurückgeholt.. erneut mit dd das image drauf und Kuchen gebacken (mein Kleiner wird morgen 12) und gerade wieder getestet und die 4 Programme werden korrekt angezeigt. HELI wird auch geladen und läuft (da ist bei Zeile 200 noch ein SAVE drin.. habe ich gelöscht). So weit so gut.. Frage: Was (sollte) passieren, wenn ich nun ein winziges Basic Programm ala '10 PRINT 42' mit SAVE "42" speichere? Peter
Hier noch ein paar Links mit P Files und Info's (inkl. Emulatoren): http://www.zx81.nl/ http://www.aptanet.org/eightyone/ Peter
Hallo Peter, Kannst Du mir bitte erklären wie Du das Image unter Windows erstellt hast auch mit den .p files. Und mit dd auf den Stick speichererst. Ich sehe da nicht durch. Gruß Manfred
Hallo Peter, wenn Du das Programm "42" speicherst, müsste es dann bei "LLIST" auftauchen. Voraussetzung ist natürlich, dass mindestens ein freier Speicherplatz (Name=0xff) oder ein Programm mit gleichem Namen im aktuellen Tape vorhanden sind. Durch die vorherige Formatierung können noch irgendwelche anderen Daten drinstehen, so dass das Speichern fehlschlägt. Dann sollte es aber eine Fehlermeldung (S oder T, weiß ich im Moment nicht genau) geben. Mit SAVE "-ALL" könntest Du das Tape vor dem DD erstmal "formatieren". Ansonsten habe ich mich ein bisschen mit dem MINGW Crosscompiler rumgeschlagen, so dass es für das "neue" Dateisystem fertige .exe Dateien (inclusive einem Filesystem-Installer) für die Windows-Fraktion geben wird. Gruß Jörg
@mkBurkersdorf: Einfach die 16kb PX Dateien mit copy /b hintereinander gehangen... Dann diese Datei mit DD auf die Karte geschrieben.. @Jörg: Ich meine mich zu erinnern, das das eben nicht ging mit SAVE "42".. teste ich aber nochmal.. Peter
Hmm.. also jetzt geht die SD Karte irgendwie überhaupt nicht (mehr)..? No Card. Schon mehrfach formatiert. Alle Verbindungen durchgemessen.. kann keinen Fehler finden.. Wie sieht es denn bei den anderen Mitstreitern mit SD Card Zugriff aus? EDIT: Eine andere Karte probiert, die ich schon entsorgen wollte, da sie sich unter Win$ nicht mehr formatieren läßt (auch mit dem Panasonic Tools nicht!) Und siehe da.. Card Meldung. SAVE "-all" initialisiert. Basicprogramm gesichert und wird angezeigt! Wieder LOAD geht auch. Nach Reset auch wieder CARD und gespeicherte Programme sind da.. Mag er die 128MB SD Karte nicht, die aber z.B bei mmc2iec/sd2iec und AVR CPM einwandfrei gehen..? Auch Win$ kann mit der Karte.. Peter
Vielleicht ließe sich mein Bootloader für das Projekt verwenden: http://hackaday.com/2011/09/09/program-an-arduino-using-your-sound-card/
hmm.., warum wird der FBas hier mit 3 leitungen beschaltet: Autor: Peter Sieg (Gast) Datum: 03.11.2011 08:10 der zx81 kennt doch keine graustufen,nur s/w oder haben die 3 widerstände noch eine andere bedeutung? die sogenannte grautönung die man manchmal auf bildern erkennt werden durch die starke verzögerung vom alten röntgen(röhrenfernseher) gerät erzeugt. danke. gruss
So wie ich das verstanden habe, wird ja eine bestimmte HW (AVR-Basic-Computer?) wieder verwendet. Und ich gehe mal davon aus, das bei dieser HW es so verschaltet ist. Und damit es dann s/w und nicht grün wird, gibt es eben eine Verbindung zwischen den 3 Leitungen.
I am still missing some games that I use to run on my brazilian made TK-85 (discrete ZX-81, i.e. without ULA). Tk-MAN, Dragon, Guerrilla Cosmica... I still have the tapes somewhere I think... Well Mazogs is there, so who needs something else ;-)
Wenn ich ein Feature vorschlagen darf, dann wäre das einen "Einschaltzustand" zu speichern. Sprich, die Möglichkeit einen momentanen Zustand zu speichern, der dann beim Einschalten eingenommen wird. Dann könnte man damit recht einfach Steuerungsaufgaben machen.
Etwas Ähnliches habe ich auch schon in Erwägung gezogen. Allerdings mit einem Mega 328 oder Mega 32 ohne Videoausgabe. Das Programm wird mit im Flash gespeichert, die Übertragung erfolgt im ZX81 (Audio-) Format, damit man den Steuerchip auch mit einem originalen oder nachgebauten ZX81 nutzen kann. Dafür werde ich noch entsprechende Routinen in den AX81 einfügen, dass mittels eines führenden Leerzeichens beim Dateinamen über den Audiopin gesaved wird. Am AX81 selbst kann man den Steuerchip zum Debuggen der Programme dann wohl über I2C anschließen, für den ZX81 müsste dafür halt eine Art Interface (mit CPLD) kreiert werden. Das Übertragen zum Steuerchip ist davon aber unabhängig. Das "neue" Dateisystem ist fast fertig, eigentlich bin ich schon bei enem anderen Projekt. Und wenn ich mir das Verhältnis von Aufwand zu Nutzen (für mich =0 ) ansehe, werde ich beim nächsten Projekt wohl konsequent beim Dataflash bleiben... Gruß Jörg
@Jörg: Na da bin ich mal gespannt! Ich denke aber, das die SD Routinen noch nicht so sind, das (fast) alle Karten funktionieren.. Das ist beim AVR CPM Projekt auch so (obwohl dort die Karte geht, die hier nicht will..?) und war beim sd2iec so, geht inzwischen aber viel besser.. Ich vermute irgendwelche Anleitungen im Netz enthalten einen veralteten Stand, wie SD Karten zu initialieren/anzusprechen sind.. die eben nicht mit allen/vielen gehen.. Hier könnte ggf. ein Blick in das GPL Projekt sd2iec unter www.sd2iec.de und im dort verfügbaren Sourcecode etwas bringen. Ist ein Dataflash so viel umkomplizierter im Einsatz? Was wäre mit seriellen Eproms ala 24Cxx? Diese kann man z.B im Eprombrenner dann auslesen und ein solches Image einfach duplizieren.. Gruß Peter
Wenn du mir die Eagle-Daten (SD-Slot lib, mega1284p lib und deinen Schaltplan im eagle Format) hochlädst, mach ich dir ein schönes selbst-ätzbares, einseitiges Layout. Zusätzlich würde ich dann noch die AD-Kanäle und ISP auf Standard-Pfostenstecker rausführen.
Hmm.. also jetzt geht die SD Karte irgendwie überhaupt nicht (mehr)..? No Card. Schon mehrfach formatiert. Alle Verbindungen durchgemessen.. kann keinen Fehler finden.. Ich habe ein Atmegaboard mit einem Spannungsregler 3,3Volt für die Sd-Karte, überhaupt keine Schwierigkeiten, alle SD-Karten funktionieren. Ob Sectorbeschreibung/lesen oder Fat-System. Wenn ihr diese komische Widerstandsschaltung habt für die SD-karte, wisst ihr manchmal nicht wo welche Störung auftritt, dann könnt ihr euch tot suchen. mfg
@bastler: Habe das gleiche Problem. Ich bin mir sehr sicher, das es weder ein Problem der Verkabelung oder der SD Karte ist. Bis mich jemand eines besseren überzeugt halte ich die Routinen in der Firmware für das Problem. Unter Umständen macht auch DD unter Win$ da was, was unter Linux nicht so ist. Müßte man mal unter einer Live-CD mit Linux testen.. Aber ich warte jetzt einfach auf die nächste Version, die ein Image unter einem FAT Filesystem unterstützt.. dann mal weitersehen.. Peter
Ich habe nur zwei SD-Karten, eine 1GB Panasonic und eine 2GB Hama, die gehen beide ohne Probleme. Und da ich für andere Projekte auch nur diese beiden Karten einsetze kann ich zu anderen Karten keine Angaben machen. Die Initialisierung benutzt nur CMD0, CMD55/ACMD41 und CMD16, gelesen wird zu diesem Zeitpunkt nichts von der SD-Karte. Theoretisch könnte man die Initialisierung noch weiter ausbauen und auf SD(V1), MMC, SD(V2) und SDHC testen... Eventuell hilft ein ja Pullup vom Datenausgang der SD-Karte nach +3,3V. EEPROMs brauchen zum Schreiben recht lange, daher eignen sie sich nur für wenig Daten. Die Dataflash-Bausteine haben meiner Meinung nach mehrere Vorteile. Zum ersten zwei RAM-Buffer, die man auch für temporäre Daten nutzen kann wenn im µC kein Platz mehr ist. Außerdem bekommt man damit konstante Schreibraten hin, da man die Buffer wechselseitig benutzen kann. Dann lassen sich gegenüber anderen Flash-Bausteinen (z.B. M25P16) einzelne Pages löschen und nicht nur größere Sektoren. Zuguterletzt hat der AT45DB081 5V-tolerante Eingänge und er ist gegenüber Spannungsschwankungen sehr tolerant (2,7-3,6V gehen) was den Hardwareaufwand minimiert. Nachteil ist die geringere Speicherkapazität, aber das kommt halt auf die Anwendung an. Und er lässt sich nicht bequem an einen PC anschliessen, wobei mich das meistens eh nicht stört. Gruß Jörg
Gestern konnte ich das neue FS auch bei jemanden mit Windows (XP) testen, jetzt fehlt nur noch die Doku. Da ja die Mehrzahl der Nutzer mit Bootloader, Dataflash und "Rohdaten" auf SD-Karte nichts so richtig anfangen können, werde ich ab der nächsten Version zum Projekt ein Binary- und ein Source-Paket zur Verfügung stellen. Ersteres enthält nur noch Hexfiles für die neue SD-Variante ohne Bootloader und die Install-Programme für das "neue" FS. Auch die offizielle Doku wird sich nur noch auf dieses Paket beziehen. Das zweite Paket enthält dann Entwicklungs-Snapshots der Source ohne Hexfiles zum selber-assemblieren und eventuell eine erweiterte Doku. Gruß Jörg
>Etwas Ähnliches habe ich auch schon in Erwägung gezogen. Allerdings mit >einem Mega 328 oder Mega 32 ohne Videoausgabe. Das Programm wird mit im >Flash gespeichert, die Übertragung erfolgt im ZX81 (Audio-) Format, >damit man den Steuerchip auch mit einem originalen oder nachgebauten >ZX81 nutzen kann. Der Bootloader ist eigentlich nicht ZX81 Kasettenrecoder kompatibel, ermöglicht aber mit sehr geringem Aufwand ( 3 Bauteile ) die Programmierung via Soundkarte: http://www.hobby-roboter.de/forum/viewtopic.php?f=4&t=128 Der Vorteil gegenüber dem Orginal ZX81-Format: Die Datenrate beträgt mindestens 10KBaud. Man könnte jedes mal die 8K ZX81 Betriebssystem übertragen und den Rest eines Atmega328 für die Programme verwenden.
Hallo, ich habe jetzt die aktuelle (Binär-) Version online gestellt. Source folgt demnächst, da will ich noch etwas "umräumen". Um das Dateisystem anzulegen, sollte die SD-Karte vorher formatiert werden. Dann ist es auch "egal", ob man das Dateisystem in einem extra Unterordner anlegt. Dorthin werden dann die "install_fs.exe" bzw. die drei Perl-Scripte aus dem tool Ordner kopiert und dort die exe oder das Install-Script gestartet. Das Anlegen des Dateisystems dauert dann etwas, da neben der Image-Datei auch 256 Tape-Ordner mit den entsprechenden Tools angelegt werden. Dabei erzeugt die exe sowohl exe-Dateien als auch Perl-Scripte in den Unterordnern, während das Perl-Install-Script nur Perl-Scripte in den Unterordnern anlegt. chris schrieb: > Der Vorteil gegenüber dem Orginal ZX81-Format: Die Datenrate beträgt > mindestens 10KBaud. Man könnte jedes mal die 8K ZX81 Betriebssystem > übertragen und den Rest eines Atmega328 für die Programme verwenden. Das "Blöde" daran ist nur, dass der ZX81 einen Z80 als Prozessor hat und auf dem AVR ein Emulator laufen muss. Und da bleibt in einem Mega328 eher kein Platz für mehr Programme. Und außerdem könnte man dann mit einem originalen ZX81 keine Programme übertragen... Gruß Jörg
@Jörg: Das ist mir leider noch überhaupt nicht klar geworden.. wie das funktioniert..?? Also einige *.p Dateien und install_fs.exe in einem Verzeichnis und dann einfach exe starten..? Ergibt ein Imagedatei, die wie heißt? Diese dann einfach auf eine formattierte (FAT16) SD Karte kopieren..? Oder MUSS das alles AUF einer SD Karte laufen? Sind *.p die Grundlage oder *.px Dateien? Wird eine definierte Anzahl solcher Dateien erwartet oder soviele wie da sind werden zu einem Image umgesetzt..? Gruß Peter
Hallo Peter, Hast Du die Anleitung auf der Webseite oder im doc Ordner gelesen? ... 3.2.2 das Dateisystem initialisieren Dazu sollte die SD-Karte frisch formatiert sein. Zuerst werden entweder das Install-Programm oder die drei Install-Scripte in einen beliebigen Ordner auf der Karte kopiert. Dann wird einfach install_fs.exe oder das Perl-script mit "perl install_fs.pl" gestartet. Dann braucht es bis zu 5 Minuten, bis das Dateisystem angelegt ist. Neben der Image Datei gibt es einen Unterordner TAPES in dem sich die Verzeichnisse für die einzelnen Tapes befinden. Nach der Installation sollte das Installationsprogramm wieder gelöscht werden, da ein versehentlicher Aufruf eine neue, leere Image-Datei anlegt und dort bisher vorhandene Daten löscht. ... Ist das für Windows-Benutzer wirklich so schwer zu verstehen? Jörg
@Jörg: Ich habe beides gelesen. Kann auch sein, das heute nicht mein Tag ist.. aber meine Fragen sind dadurch in keinster Weise beantwortet. Nach Durchsicht der Perl Quellen sehe ich das das Image: ax81_image.bin heißt. --- Also einige *.p Dateien und install_fs.exe in einem Verzeichnis und dann einfach exe starten..? Ergibt ein Imagedatei, die wie heißt? -> ax81_image.bin Diese dann einfach auf eine formattierte (FAT16) SD Karte kopieren..? Oder MUSS das alles AUF einer SD Karte laufen? -> ? Ich würde das gerne unter Windows laufen lassen und nur die resultierende Imagedatei auf SD Karte kopieren. Frage aber lieber vorher, bevor ich mir hier meinen Arbeitsrechner lahmlege.. Sind *.p die Grundlage oder *.px Dateien? -> lt. perl Quellen sind es *.p Dateien. Wird eine definierte Anzahl solcher Dateien erwartet oder soviele wie da sind werden zu einem Image umgesetzt..? -> ? Das Image wird wohl immer in max. Größe angelegt.. Überzählige Plätze bleiben dann wohl leer.. (Ich bin weißgott kein Perl Experte..) --- Anstatt genervt zu wirken, solltest du evtl. dankbar für Hinweise sein, wo deine Doku noch nicht ganz klar bzw. ausgeprägter sein könnte.. denn ich denke das du so ein Projekt nicht machst, damit sich sonst niemand damit beschäftigt.. ;-) Gruß Peter
Peter Sieg schrieb: > @Jörg: Ich habe beides gelesen. Kann auch sein, das heute nicht mein Tag > ist.. aber meine Fragen sind dadurch in keinster Weise beantwortet. Ich finde die Anweisungen eigentlich ziemlich klar, ich nehme die einzelnen Sätze hier mal auseinander: 1. Dazu sollte die SD-Karte frisch formatiert sein. Also: SD-Karte formatieren 2. Zuerst werden entweder das Install-Programm oder die drei Install-Scripte in einen beliebigen Ordner auf der Karte kopiert. Weil da oben "oder" steht, habe ich die folgende Wahl: a) Ich kopiere die 3 Install-Scripts oder b) Ich kopiere das Executable. Da ich faul bin, nehme ich das Executable. Ich lege also einen Ordner namens "Peter" auf der SD-Karte an und kopiere install_fs.exe in diesen Ordner. 3. Dann wird einfach install_fs.exe oder das Perl-script mit "perl install_fs.pl" gestartet. Da ich die Variante mit der Exe gewählt habe, klicke ich die Exe (auf der SD-Karte im Ordner "Peter") an. Was war daran schwer? :-) Gruß, Frank
@Frank M. Ich will nicht streiten.. aber ich hoffe du kommst nie in die Verlegenheit Benutzeranleitungen schreiben zu müssen.. ;-) Du reitest auf den Angaben rum, die eigentlich schon klar waren.. exe anstatt Perl Scripte war (mir) schon klar.. Nur das da wohl offensichtlich auch noch *.p Dateien als Input benötigt werden (die du in deiner 'Anleitung' gar nicht erwähnst..) und das man so viele File Write/Delete Aktionen nicht unbedingt auf einem Flash Medium ausführen sollte ... Ich sehe schon.. ich werde es heute abend einfach mal auf meinem Win$ Rechner probieren, da ich meinen Firmen-PC nicht lahmlegen kann.. und wahrscheinlich sind meine Fragen dann in 10min beantwortet.. Wenn ich gewußt hätte, das solche Fragen sowas nach sich ziehen.. hätte ich wohl grundsätzlich ersr selbst probiert.. Ich bin nur kein Freund davon exe einfach auszuführen und nicht GENAU zu wissen was dann passiert.. Windows Nutzung prägt halt ;-) Ich poste die Antworten dann hier für alle, die ähnlich dumme Fragen haben werden.. Gruß Peter
Hallo Peter, Vielleicht erstmal was Prinzipielles. Natürlich freut es mich wenn jemand die Projekte nutzt, aber ich mache sie nicht extra dafür. Entweder mache ich Dinge, die ich selbst brauche oder welche, die erstmal relativ unmöglich erscheinen und somit eine echte Herausforderung sind. Wenn ich mich dazu entscheide, ein Projekt zu veröffentlichen (der Z80 Emulator ist in einer etwas anderen Form schon über zwei Jahre alt), dann bin ich zu dem Zeitpunkt an dem die Doku fertig ist schon längst wieder bei etwas anderem (u.a. AVR-Grafikkarte mit minimalem Aufwand und 2D/3D Unterstützung). Und da nervt es einfach wenn ich an Dingen herumdoktern muß, die eigentlich schon aus meiner Sicht gelöst waren. Aber jetzt nochmal zum Thema: 1.Installation -------------- - install_fs.exe oder die 3 Perl-Scripts irgendwo auf eine frisch formatierte SD-Karte kopieren - Exe Datei oder Install-Script dort starten - ca. 5 Minuten warten - Neben der image-Datei liegen dann noch ein Ordner TAPES mit 256 Unterordnern im Installtionsverzeichnis - Installationsprogramm vorsichtshalber löschen. - die Datei ax81_image.bin enthält 256 virtuelle "Tapes" 2. Programme auf ein Tape (im Image) schreiben ---------------------------------------------- - maximal 32 .P Dateíen z.B. in das Verzeichnis TAPES/TAPE_000 kopieren. - 000_write_to_image.* im Verzeichnis TAPES/TAPE_000 starten - fertig 3. Programme vom Tape (im Image) lesen -------------------------------------- - im TAPE-Verzeichnis (z.B. TAPES/TAPE_000) 000_read_from_image.* starten - die im Tape vorhandenen Programme liegen danach im Ordner als .P Dateien vor. 4. Anmerkungen -------------- - vor dem Schreiben auf das Tape werden alle bis dahin dort befindlichen Programme gelöscht - Beim Lesen vom Tape werden gleichlautende Programme im Unterordner überschrieben Gruß Jörg
@Jörg: Ahh! Jetzt wird es klar!! Das hatte ich anders erwartet, aber ist natürlich ok so wie es ist. Das probiere ich dann heute Abend direkt so aus. Werde es trotzdem (auch) probieren, das im Windows Laufwerk/Verzeichnis (=Festplatte) zu machen und nur das resultierende Image dann auf eine frisch formatierte SD Karte zu kopieren.. berichte dann hier. Danke für die Erklärung! Ich kann das schon verstehen, das Entwickler selten auch gerne detaillierte Doku erstellen wollen.. aber so denke ich sind doch jetzt einige Fragen geklärt und es kann weiter gehen.. Viel Erfolg und Spass bei der AVR Graka und Danke nochmals für dieses Projekt! Gruß Peter
Soo. Hier die Testergebnisse. 1. install_fs.exe direkt im Verzeichnis tool ausgeführt.. dauert etwas. TAPES Verzeichnis und darunter TAPE_000 - _255 wird angelegt. In diesen sind die 000_write_to_image.exe und 000_read_from_image.exe (neben Perl Schripts) ax81_image.bin liegt in tool. 2. Dachte mir nimmst du 000 für 'deine' *.p Dateien. 1ktetris.p, 1kchess.p und HELI.P dort hinein kopiert und 000_write_to_image ausgeführt. *.p werden gelistet. 3. Die *p*tar.gz von der AX81 Seite geladen und jeweils in 001,002,003,004 entpackt und ebenfalls 000_write_to_image ausgeführt. 4. SD Karte 2GB frisch formatiert und ax81_image.bin dort ins Wurzelverzeichnis kopiert (nichts weiter auf die Karte). 5. Firmware 0.23 t-- geflasht und mit SD Karte eingeschaltet. CARD aber LLIST gibt nur HELI P aus..? 1ktetris und 1kchess? Inkompatibles P Format? Kleinschreibung? Hänge die beiden *.P Dateien hier an.. 6. POKE 99,1 + LLIST - zeigt Tape 000 an, nicht 001. POKE 99,2 - zeigt Tape 000 an..? -- Das ganze nochmal aber diesmal mit 000 auch von AX81 Seite gefüllt mit 32 *.p Dateien und 000_write_to_image. Diesmal werden mit LLIST auch 32 Programme auf Tape 000 angezeigt. POKE 99,1 aber zeigt wie oben Tape 000 an, nicht 001. Auch POKE 99,2 zeigt TAPE 000 an.. als wenn die Umschaltung nicht geht..? --- Andere 512MB Karte getestet.. hängt bei Einschaltbildschirm wo NO/CARD kommen sollte über 5min.. Peter
Autor: Peter Sieg (petersieg) Datum: 08.11.2011 11:35 Warum hast du hier am TV nur 3 Widerstände, weiter oben in deiner Schaltung kommt noch ein vierter dazu ? danke. gruss
Hallo Peter, die Umschaltung geht wirklich nicht, das ist aber erst bei der automatischen Erstellung des Archives passiert. Und zwar ist die emulator_io.asm von einem alten Zweig mit reingeraten. Bei der 0.23 habe ich das ROM-Image von 0x3000 nach 0x6000 verschoben und jetzt wird beim Poke mit der falschen Adresse verglichen. Beim Testen war die richtige Source-Datei drin, darum ging es bei mir auch. Entweder ich schaffe es in der Pause oder am Abend, ein neues Archiv zu erstellen. Eigentlich sollte eine nicht funktionierende Karte mit einem Timeout abbrechen, aber das scheint in Deinem Fall ja nicht so zu sein. Das schaue ich mir noch mal an. Ebenso das mit Deinen .P Files. Das Install-Programm ist übrigens nicht deswegen Freeware, weil ich den Code für mich behalten will sondern weil ich mir Fragen ersparen will, wie man das denn compiliert. Bei Bedarf kann ich ihn aber hier zur Verfügung stellen, allerdings ohne jeden Support. Gruß Jörg
neua schrieb: > Warum hast du hier am TV nur 3 Widerstände, weiter oben in deiner > Schaltung kommt noch ein vierter dazu ? ?? Worauf beziehst du dich..? Bild des Lochrasteraufbaus? Eagle? Es sind im Umfeld Videoout genau 5 Widerstände wichtig! 1k + 510 Ohm zum Videooutsignal. Plus 3x 10k Pullups. --- @Jörg: Danke. Bei mir muss nicht alles immer in einem Tag passieren bzw. korrigiert werden.. ;-) Heute abend kann ich evtl. noch was testen.. morgen bin ich den ganzen Tag auf Dienstreise.. Falls du später noch mal die SD Card Initialisierung anschauen möchtest (ich denke da ist bei vielen Projekten etwas im Argen..).. wäre dem Projekt sicher zuträglich wenn nicht nur jede 5te Karte geht.. Ich würde den Quelltext der Tools ruhig veröffentlichen.. GPL Gedanke ;-) Auch ruhig mit dem HINWEIS: NO SUPPORT. NO QUESTIONS. USE IT AND BE QUIET OR MAKE A BETTER ONE AND TELL EVERYONE ;-) Gruß Peter
Hallo Peter, Ich habe das Image-File so erstellt wie Du geschrieben hast. Es wird aber immer no Card angezeigt. Ich habd die SD-Karte mit FAT16 formatiert und das img-File drauf kopiert. Ist das richtig? Hast Du die SD-Karte auch mit den Widerständen angeschlossen? Schaltungsmäßig müste bei mir alles stimmen. 2 unterschiedliche SD-Karten mit 1GB benutzt. Gruß Manfred
Hmm..., die Tastatur funktioniert nicht. Wird die mit Pullups betrieben oder ohne? Mit Bascom läuft meine Tastaur Data/Clock über Pullups und funktioniert. Wie ist es hier beim Zx81? danke. gruss
Hat sich erledigt, mal sind in der Schaltung Pullups und mal nicht. Ich lasse mit Pullups laufen. Tastatur funktioniert aber beim Zx81 noch nicht. gruss
Ach so, Bild ist klar und deutlich auf meinem Monitor. Erst kommt die Startbildgrafik und dann das Inverse "K" wie beim Original. gruss
@neua: Etwas mehr Ruhe und weniger 1 Zeilenposting wären zielführender.. Ich schrieb im Umfeld Videoout = 5 Widerstände! Eine Tastatur hat nichts beim Videoout zu tun ;-) An der Tastatur sind nochmals 2 Pullups. Werte zw. 2k2 - 10k. @mkBurkersdorf: Das sieht so aus, als wenn auch diese Karten nicht gehen unter AX81 (aus meiner Sicht Firmwareproblem..). Die Einzige Karte die bei mir geht ist eine 2GB Fuji Film. Eine 128MB (zetzt auch zu klein..) San Disk, eine 512MB NoName und eine 16MB (jetzt auch zu klein) arbeiten nicht. Ansonsten Ja. Image erstellen auf auf frisch FAT16 formatierter Karte. Widerstände als Spannungsteiler müssen zw. SD Karte und AVR!! Ich habe 1,8k und 3,3k verwendet (laufen auch bei mmc2iec schon so).. Peter
Mist nicht angemeldet und kann nicht editieren.. Also Image auf Festplatte erstellt und dann einfach auf frisch formatierte SD Karte kopiert - geht (wenn die Karte als solche geht..). Peter
Hallo Peter, Ich habe jetzt 5 unterschiedliche Karten getestet. Gehen alle nicht. Muß mal sehen ob ich eine Fuji Film bekomme. Gruß Manfred
Hänge hier mal zum Vergleich die SD Card Routinen aus dem avrcpm Projekt an.. Peter
Ich habe den Code für das FS stark erweitert. Nun sollten MMC, SD-V1, SD-V2 und SDHC Karten gehen, wobei ich nur letztere beide ausprobieren konnte. Wenn bei einem Kommando etwas nicht passt, wird ein fehler ausgegeben, mit dem sich das Problem weiter eingrenzen lassen sollte. Es gibt nur noch zwei Hexfiles, eins für den Mega1284P und eins für den Mega644(P). Deswegen sind die Pull-Ups an PORTC 2..4 unbedingt notwendig. Bis zum offiziellen Release will ich dann auch automatische Erkennung von Dataflash mit reinbauen, damit es nur noch eine Source gibt. Noch was zu den Pull-Ups an den Tastaturleitungen. Die sind in diesem Fall unbedingt notwendig, da die internen Pull-Ups während der TV-Videosignalerzeugung abgeschaltet werden. Und, wenn man genau hinschaut, im Schaltplan sind die auch drin... Gruß Jörg
Hallo Jörg, Ich habe jetzt Dein ax81_m1284p.hex getestet. Es wird nichts angezeigt. Ich habe die Version mit den 3 Pull-Ups und die 16 -Farberweiterung aufgebaut. An Scart angeschlossen. Mit der Version ax81_m1284p_t--.hex hane ich ein Bild, aber die SD-Karte geht nicht. Gruß Manfred
Hallo Manfred, entferne mal bitte die Leitung von der 16-Farb-Erweiterung von PORTC.4 da ansonsten der LCD-Mode aktiv wird. Gruß Jörg
Hallo Peter, wenn es immernoch größere Probleme gibt, werde ich mir die Sourcen mal anschauen. Eine andere für mich praktikable Lösung wäre einfach festzulegen, dass Karten unter 1GB nicht unterstützt werden. Zu kaufen gibt es ja unter 2GB praktisch fast nichts mehr. Gruß Jörg
Hallo Jörg, Danke Jörg. Hatte ich schon gemacht. Anzeige war wieder da. Meine Karten werden immer noch nicht erkannt. Alle 1GB oder 2GB groß. Gruß Manfred
Was wird angezeigt? NO CARD? Dann ist schon CMD0 fehlgeschlagen. Oder eine andere Fehlermeldung (E-ACMD41, E-CMD1 oder E-CMD8)? Ändert sich die Anzeige, wenn das System mittels CTRL-ALT-DEL neu gestartet wird?
Keine Ahnung ob es euch hilft. Die Karteninitialisierung im AVR CP/M Projekt war anfangs auch etwas fehlerbehaftet. Geholfen hat bei der Initialisierung folgendes: Exakt 80 Dummy Clocks anlegen, (79 oder 81) mochten einige Karten nicht. Nach dem CMD0 Kommando warten. Moderne Karten antworten schnell, bei älteren dauert es schon mal… Das Timeout liegt derzeit bei 1000ms. Damit werden nun auch ganz ganz alte Karten (64 MB) sicher erkannt. (Ansonsten sehr schönes Projekt Wolfram!) Gruß Joe
Hallo Jörg, No Card wird angezeigt. Beim Affengriff kommt die selbe Anzeige , No Card. Gruß Manfred
Ich schicke 128 Dummy clocks, da in der Spec "mindestens 74" drinsteht. Außerdem sollte die Karte ja auf das Startbit warten. Momentan mache ich 256 CMD0-Versuche, bis abgebrochen wird, das werde ich mal auf 4096 erhöhen und die Zahl der Dummy-Clocks auf 80 reduzieren. Was mich allerdings ein bisschen wundert, dass bei mir die zwei SD-Karten und auch die (geliehene) SDHC gehen, aber bei Manfred gar keine. Mittlerweise bereue ich es, doch nicht konsequent bei den Flashbausteinen geblieben zu sein... Gruß Jörg
@Jörg: Ich denke das ist ein Problem, das 'so wenige' SD Karten erkannt/genutzt werden können von der aktuellen Firmware.. aber ich denke auch, das es lösbar ist.. das zeigen ja auch die Parallelprojekte avrcpm und mmc2iec/sd2iec.. und wenn es dann besser läuft ist die Unterstützung von leicht verfügbaren SD Karten und insbesondere der Datenaustausch mit PC's ein echter Gewinn für das Projekt.. Das 'blind Fliegen' = Firmwareänderung ohne sie auch direkt ausprobieren zu können.. ist aber sicher sehr schwierig.. Ich kann dir gerne auch eine 128MB Karte zusenden.. allerdings ist sie ja aktuell zu klein um das 256x32x16kb Image zu fassen.. Was sind es denn genau für Karten, die bei dir laufen..? (Ich wollte mir sowieso noch 1-2 besorgen) Gruß Peter
Hallo, guten Tag. Ich bekomme meine PS-Tastatur nicht zum laufen. Gibt es irgendwelche Vorrausetzungen der PS2-Tastatur um sie hier mit dem ZX81 zum laufen zu bringen. Wie schon einmal beschrieben , unter Bascom funktioniert die tastatur. danke. gruss
@neua: Wenn die beiden Pullups drin sind und die Verdrahtung stimmt, kann ich dir leider nicht weiter helfen. (An der Tastatur sind nochmals 2 Pullups. Werte zw. 2k2 - 10k) Peter
Hallo Peter, die Karten sind folgende: Panasonic 1GB (dunkelblaues Etikett, ca. 3 Jahre alt) HAMA 2GB (dunkelblau, eventuell 2 Jahre alt) HAMA 4GB (grün-silbernes Etikett, fast neu) Die 2GB Hama war in einem Gerät drin und wurde wegen zu langsamer Schreibzyklen ausgetauscht. Gruß Jörg
Hallo Jörg, Bei der V0.24 Wird bei einer SD-Card SDV1-Card und in der nächsten Zeile wird Formatted angezeigt. Bei der V0.23 wird Card angezeigt. @Peter Tausche mal die Anschlüsse PB4 und PB5 ,dann gehen auch bei Dir die SD-Karten. Gruß Manfred
mkBurkersdorf schrieb: > @Peter Tausche mal die Anschlüsse PB4 und PB5 ,dann gehen auch bei Dir > die SD-Karten. Hää?? Eine 2GB Karte läuft doch bei mir.. nur 2 andere nicht.. wie kann durch Tauschen zweier Signalleitungen daran etwas geändert werden.. entweder hab ich das überhaupt nicht verstanden oder ich stehe auch dem Schlauch.. Und Version 0.24.. wo gibts die.. was ist da gegenüber 0.23 geändert..? Peter
Hallo Jörg, Die SD-Karten werden jetzt erkannt und die Tape werden angezeigt. Es war bei mir die Vertauschung von PB4 und PB5. Ich habe jetzt 6 unterschiedliche Karten getestet. Danke für für Deine Bemühungen und Deine Geduld. Gruß Manfred
Hallo Peter Ich habe ja das Layout vom der Basic Variante erstellt, und da war bei mir die PB4 und PB5 vertauscht. Die V0.24 wird bei der letzten Version vom 17.11. 01:36 Uhr von Jörg angezeigt. Bei mir gehen jetzt alle SD-Karten. Gruß Manfred
Ahh.. nun ich wünschte ich hätte bessere Nachrichten.. 0.24 bringt bei mir nach vielen Sekunden E=ACMD41 :-( Die 0.23 hat mit dieser Karte gearbeitet (nach Reset)! Ich werde mir morgen mal noch eine 1-2GB Karte holen.. Peter
Noch schnell mal mit der 512MB (Elite Pro) aus dem Bilderrahmen getestet. Diese lief unter 0.23 nicht. 0.24 = SDV1 CARD - NO FORMAT ?? Unter Windows alles ok. FAT formatiert. Peter
Hallo Peter, das NO FORMAT bedeutet lediglich, dass keine Image-Datei gefunden wurde. Vieleicht ändere ich das noch in NO-IMAGE um, damit es eindeutiger wird. Gruß Jörg
Ahh.. die hatte ich aber nach dem formatieren drauf kopiert.. war also da als AX81 gestartet wurde.. Gruß Peter
mkBurkersdorf schrieb: > Die V0.24 wird bei der letzten Version vom 17.11. 01:36 Uhr von Jörg > angezeigt. lies mal ein bißchen hoch.. Peter
Hmm..., kann ich wirklich nichts erkennen oder muss ich eine neue Fielman...? gruss http://www.jcwolfram.de/downloads/main.php#ax81
Jup, die Homeseite wurde noch nicht aktualisiert. Du meinst hier weiter oben. Alles klar. Meldung beim Einschalten: SDV2-CArd FORMATTED. Es sind 3 Programme in das Image geladen worden. Wie kann ich die jetzt sichtbar auflisten bzw laden ? Oder sagt die Einschaltmeldung etwas anderes aus für die SD-Karte? danke. gruss
ZX81-Befehle... Wenn ich die Tasten bediene, kommen die fertigen Befehle, gemäss der Logik vom ZX81. Der Befehl LLIST ist nicht vorhanden im Befehlsset. Bei welcher Taste ist der gespeichert? bzw oder muss man irgendwie in den Editormodus wechseln um Text bzw LLIst einzugeben ? danke. gruss
neua schrieb: > Der Befehl LLIST ist nicht vorhanden im Befehlsset. Mann.. mann.. mann. Lies das Tastaturbild mal richtig und frag nicht immer unnötige Fragen. (Shift-G wirst du dann auch finden..) Peter
Jup, danke. Die Drittbelegung der Tasten habe ich übersehen. Ich kann mit der Auflistung noch keine Dateien sehen im ZX81. Was mache ich schon wieder falsch.....? Auf der SD-Karte den Ordner Tool draufgepackt , dann mit der Exe das Image und den Ordner TAPES erzeugt. Die Exe wieder gelöscht. Karte in die Platine gesteckt, 1284p gestartet. Mit LLIST gestartet, es kommt eine Auflistung nach der Reihenfolge aber nur die Listzahlen,keine Programmnamen? Ist das Image leer? oder ist meine Karte defekt? danke. gruss
Ist geklärt. Mit dem Hexeditor kann ich keine Datein im Image erkennen. Habe die jetzt reingeladen. danke. gruss
Habe jetzt die 4 Tapes geladen von deiner Seite. Lassen sich alle wunderbar umschalten mit POKE 99,... und kann die zum laufen bringen ohne Beanstandungen. Ich habe eine Micro-SD-karte in einem Adapter, auch diese kleinen Dinger laufen. danke. gruss
Es funktioniert wunderbar und problemlos. Ich sage das , weil ich Anfänger bin in Sachen Atmega. Hallo, in wieweit ist dieses Projekt kompatibel zum ZX81 ? Geht es hierbei um die Spielbarkeit von Programmen oder werden bestimmte Baugruppen hochprozentig Emuliert, fast in Echtzeit. Mich würde mal Interessieren welche Baugruppen das sind, Z80-Prozessor,ULA usw... Könnte man bei diesem Projekt die VGA-LCD-Darstellung nicht weglassen. Der ZX81 hat diese Möglichkeit auch nicht und ist heute auch immer noch im original Faszinierend. Die kleinen TFT-Monitore/Fernseher 8/10/12...Zoll sind in der Bildklarheit dem PC-Monitor hier im Projekt fast ebenbürtig. Sind sogar günstiger als ein LCD-Display, welches bei einer Bewegung (Bildwechsel) doch nicht unerhebliche Bewegungsschlieren verursacht. Und ein PAL_Signal ist ja auch nicht mehr das Problem, wie ich manchmal gelesen habe ist das PAL-Signal für den Programmierer leichter zu Handhaben auf diesen Platinen wie ein VGA-Signal. Warum wird eigentlich das VGA-Signal hier noch so oft genutzt? Welche Möglichkeiten werden gibt es noch um den Speicher zu erweitern? Gibt es vielleicht bald den 2568p mit 32 oder sogar 64KB Ramspeicher? Vielen dank für die Unermüdliche Hilfe, einen Anfänger der dieses Projekt zum laufen bekommen hat. danke. gruss
@neua: Danke dir für deine positiven Rückmeldungen! Micro-SD inkl. Adapter habe ich glaube auch noch irgendwo liegen.. probiere ich dann mal.. Schön. das er jetzt bei dir läuft! Im Forum64 wird z.Z eine Sammelbestellung für Platinen dazu organisiert. Und ja. Um daran teilzunehmen muss man sich anmelden im Forum - sorry aber das Ganze ist so schon aufwendig genug, als das ich das auch noch an verschiedenen Stellen zusammenführen könnte/wollte.. (Wer noch nie sowas organisiert hat, weiß gar nicht was da an Aufwand hinter steckt) Gruß Peter
Hallo , Ich habe mal die .px- Dateien auf die SD-Karte kopiert. Sie werden abe im ZX81 nicht angezeigt. Im I-Net habe ich nach den Unterschied der Dateityen gesucht aber nichts gefunden. Mit dem MEGA1284p müßte auch der Speicher reichen. Was ist dabei zu beachten? Gruß Manfred
Mit den *.px Dateien auf der Karte kann die Firmware rein gar nichts anfangen (von SD Karte zumindest..)! Dir Firmware sucht fest nach einem (1) Image ax81_image.bin in der Größe von ca. 135MB (256x32x16kb). Wenn ein solches gefunden wurde, spielt sich alles nur noch in diesem Image ab. Das leere Image wird über tool\install_fs erzeugt und dann über die 000_write* jeweils pro virtuellem Tape befüllt.. Aber das musst du doch schon gewußt haben, denn der AX81 läuft doch schon bei dir.. Peter
Hallo Peter, Danke für Deine Antwort. Das mit dem Image und der Erstellung ist mir schon klar. Also kann ich die *.px Dateien nicht nutzen. Gruß Manfred
Die .PX Dateien braucht man nur für den Bootloader, die Endung habe ich willkürlich verwendet. Die auf die SD-Karte zu kopieren war nur eine Notlösung für Windows-Nutzer, als es die Image-Datei nicht gab. Es werden der Z80, RAM und ROM, die ULA und eine 15,75K Speichererweiterung (nicht HRG fähig) emuliert. Das ROM habe ich etwas modifizieren müssen, z.B,. Videioausgabe (wird unabhängig vom AVR ausgeführt) und die Tape-Routinen. Dazu gibt es noch ein kleines 0,25K ROM bei 0x7f00 in dem u.a. die neue LLIST Routine untergebracht ist. Vom Zeichensatz im ROM gibt es dann noch eine Kopie für den AVR, da ansonsten das Videotiming nicht zu schaffen ist. VGA und LCD sind dafür da, dass es das Projekt überhaupt gibt. Einfach deswegen weil es reichlich unbequem ist, Programme am Couchtisch vor dem TV zu debuggen. Hin und wieder kontrolliere ich bei einer neuen Version, ob TV-Out noch geht, mehr aber auch nicht. Für mehr RAM hatte ich schon Versuche mit der XRAM64 Erweiterung vom ChipBasic2 gemacht, bin aber nicht sehr weit gekommen (entweder zu langsam oder nicht stabil) und habe das Ganze dann auch eingestellt. Gruß Jörg
Einfach deswegen weil es reichlich unbequem ist, Programme am Couchtisch vor dem TV zu debuggen. Hmm.., ich habe mein 8-Zöller neben mein Atmegabord stehen und ist leichter zu Handhaben wie ein LCD was nur auf dem Tisch liegt, wozu man dann evtl noch einen Ständer Basteln muss. danke. gruss
http://avr.cwsurf.de/?AVR_CP%2FM Könnte man den Speicher von diesem Stick nutzen für den ZX81 ? gruss
Es gibt wieder ein neues Release, ich habe versucht die SD-Routinen noch etwas zu verbessern. Gruß Jörg
Hallo Jörg, Danke für Dein neues Release. Die SD Karten werden erkannt, aber mit POKE 99,1..4 kann ich die Tape's nicht wechseln. Es wird immer Tape 000 angezeigt. Bei der V0.24 geht es. Gruß Manfred
Hallo Manfred, danke für die Info, da ist leider schon wieder das alte File in den Build mit reingerutscht, ich hab das mal schnell ohne selbst testen zu können korrigiert. Gruß Jörg
Hallo, grüss dich. Bei dir kann V0.25 runterladen, aber drin ist V0.24. Oder sit das die V0.25 nur nicht umbenannt. danke. gruss
Hallo, grüss dich. Bei dir kann die V0.25 runterladen, aber drin ist V0.24 Oder ist das die V0.25 , nur nicht umbenannt. danke. gruss
Hallo, ich wollte mal den Source compilieren. Wo gibt es die 1284..inc für dieses compilat? danke. gruss
Da hab ich ehrlichgesagt keine Ahnung von, da ich nur den AVRA unter Linux nutze. Von anderen Projekten her weiss ich, daß der avrasm Probleme mit den vielen Makros im Quellcode hatte. Gruß Jörg
....Probleme mit den vielen Makros im Quellcode hatte..... Das habe ich bei mir jetzt auch gehabt. danke. gruss
Ich kann bei Bedarf heute Abend eine asm Datei hochladen, in der alle Makros, Includes und bedingte Assemblierungen bereits aufgelöst sind und die sich so auch mit dem AVRASM32 übersetzen lassen sollte. Da diese Datei zu einen anderen Zweck erzeugt wird, fehlen halt jegliche Kommentar- und Leerzeilen, Kommentare in coderelevanten Zeilen sind aber noch drin. Gruß Jörg
Hmmm...., das wäre Klasse. Danke. gruss PS: Was ist die nächste Weiterentwicklung am ZX81 ?
Habe gerade Firmware 0.25 getestet. Die 512MB SD Karte, die bisher nicht wollte, läuft nun! Prima! Hier ein paar Bilder mit einer zweckentfremdeten mmc2iec Platine ;-) Peter
Hallo, anbei die Quelldatei, die sich mit dem AVRASM übersetzen lassen sollte. Getestet habe ich es nicht, eventuell könnten schon noch ein paar Fehler auftreten aber die sollten dann leicht zu korrigieren sein. Weiterentwicklung ist erstmal nicht geplant, zumindest nicht auf Basis des aktuellen Releases. Bei Gelegenheit werde ich aber noch ein paar Programme testen und zu Tapes zusammenstellen. Gruß Jörg
Jup, danke. Lässt sich fehlerfrei mit dem AVRASM32.EXE compilieren für den 1284 und läuft fehlerfrei auf dem Atmega. Klasse. gruss
Hallo! Wieder mal ein schönes Projekt. Respekt. Habe zwei Fragen : 1. Welche SD-Karten laufen? Ich habe im Moment nur 2GB-SD-Karten 2. Wäre eine Pegelwandlung zwischen AVR zu SD-Karte und/oder den Flash-Chips z.B. mit 74AHC125 nicht sicherer? Vielen Dank im Voraus Gruß Günter
Hallo Günter, Ich habe unterschiedliche SD-Karten getestet, no Name und Markenkarten 1GB und 2GB sie gehen alle. Gruß Manfred
Hallo Manfred! Danke für die Auskunft, dann bin ich schon mal beruhigt. Man bekommt fast nur noch 2GB und größere Kapazitäten und ab und an noch 1GB. 2GB hat sich wohl bei AVR- und Propellerprojekten zum Quasistandard entwickelt. Dann mach ich mal mit meinem Platinenentwurf weiter. Gruß Günter
Der AT45DB081 hat 5V tolerante Eingänge, so dass man nur die 3,3V Versorgungsspannung für den Chip bereitstellen muss. Solange beim Schreiben die Spannung nicht unter 2,7V absinkt, reicht eine passende LED zur Spannungsreduzierung völlig aus. Bei der SD-Karte wäre ein Pegelwandler sicherlich die elegantere Lösung aber halt auch mehr Aufwand. Gruß Jörg
Hallo Jörg! Danke für die Auskunft. Ich hatte nur im Sinn eine einheitliche Schnittstelle via SD-Slot für verschiedene SPI-Devices bei meiner AX81-Board-Entwicklung zur Verfügung zu stellen. Ähnliches habe ich schon für ein Propeller-Board verwirklicht und werde es auch bei einigen Neu- und Weiterentwicklungen auf Propellerbasis weiter verwenden. Mit einer separaten 3,3V Versorgung sowie einem Levelshifter wäre das zwar eine aufwendigere aber mMn sichere Schnittstelle. Wenn man so etwas nicht machen will ist Deine Lösung durchaus akzeptabel. Gruß Günter
Hallo! @admin : Ich hoffe ich kann diesen Beitrag hier einfügen. Falls nicht bitte löschen. Jetzt hab ich mal einen kleinen eagle-Entwurf zu meinem AX81 gemacht. Die Platine ist 67,5mm x 100mm groß und paßt in ein Fischer-Alu-Gehäuse. In der selben Größe habe ich auch meinen "microPC" auf Propellerbasis gebaut. Der SPI-Bus für die SD-Karte und/oder AT45DB081-Karte ist mit einem 74AHC125 als Pegelanpasser/Buffer versehen. Auf der Front befinden sich die Keyboardbuchse, der SD-Slot und ein 4fach Mäuseklavier für die Jumper J1, J2 und J3 und für die Brücke von Port D3 nach C7. Somit kann ich bei geschlossenem Gehäuse zwischen Video oder VGA umschalten. Ich hoffe diese Brücke ist wie auf der Homepage von Jörg angegeben noch aktuell für VGA-Ausgabe. Auf der Rückseite befinden sich VGA-, Video-, Spannungsversorgungsbuchse und ein Reset-Schalter. Auf dem Board befinden sich noch zu Programmier- und Experimentierzwecken bei offenem Gehäuse Wannenstecker für ISP, Serielle-, I2C- und Parallelport-Leitungen. Der SD-Kartenslot ist so günstig gebaut, daß man auch kleine Platinen (1,55mm dick) mit SPI-Devices einschieben kann (Flash-Speicher, AD-Wandler, Funkmodule etc.). Ich habe mal ein Bild vom AX81-Boardlayout und vom Propeller-PC im Vergleich zu einer 2,5" HD sowie einer SD-Modulplatine beigefügt. Falls das Gerät mal funktioniert werde ich das Layout auch zu allgemeinem Gebrauch veröffentlichen. Gruß Günter
Ich verfolge das schon eine ganze Weile, auch mein "Erster" war ein ZX81. Die Platine sieht richtig gut aus, würde schon mal Interesse anmelden. Im forum64 gehts gerade nicht richtig weiter mit der Platine... (oder hab ich was verpasst?) Holger
@Günter: Sieht gut aus! Ich denke das kann man ggf. noch mit der Sammelbestellung im Forum64 verbinden.. dort gibt es schon 23 Interessenten und die Platine ist noch nicht festgelegt.. je größer die Stückzahl wird, so geringer wird der Preis. Peter
Hallo! @HolgerW Mein erster Heimcomputer war auch der ZX81, dieser existiert noch als Orginal. Einen weiteren ZX81 hab ich damals mal in ein Memotech Tastaturgehäuse eingebaut und mit einer selbstgebauten Speichererweiterung nebst Busbuffer versehen. @Peter Sieg Dank. Für den Entwurf (sind schon ein paar kleine Änderungen nötig geworden) laß ich mir eine Prototypplatine machen und dann sehen wir mal weiter. Ich veröffentliche ungern Schaltpläne ohne das Gerät selber getestet zu haben. Ich hoffe die Platine noch vor Weihnachten zu bekommen. @Joe G Das Gehäuse ist von Reichelt, AKG 71 24 100 ME. Weitere Bilder von dem Propeller basierten Gerät sind hier zu finden : http://hive-project.de/board/viewtopic.php?f=12&t=330. Damit kann man sich den zukünftigen Aufbau des AX81 leichter vorstellen. Da ich im Hive-Forum seit längerem "zu Hause" bin, werde ich dort einen Baubericht und die Erfahrungen mit dem AX81 veröffentlichen. Gruß Günter
ich würde mich freuen wenn es zu einer Platine kommt, ich würde auch eine eigene entwerfen um den ZX81 nachzubauen. Schönes Projekt und Hut ab soetwas umzusetzen !!! Meinen habe ich vor zig Jahren (leider) verkauft, wenn ich bedenke was der mich mal gekostet hat... Ein Freund hat noch einen, aber keine Programme mehr dazu. Ich freu mich schon richtig auf Mazogs, mein Lieblingsspiel ... Holger
Hallo, die Propellerplatine gefällt mir, wenn dort der ZX81 drauf läuft. Wie kommt man denn beim Propeller mit dem RAM aus, der hat ja nicht soviel und die I2C-EEprom , die er selber auch benutzt sind doch zu langsam für den ZX81? gruss
Hallo! @neua Ich hatte stillschweigend vorausgesetz, daß allen bekannt ist, daß der AX81 auf ATmega-Basis läuft.;) Das o.a. Bild und der Link zum probellerbasierten Minirechner ist nur zur Verdeutlichung der Platinenausmaße und Gehäuseansicht gedacht gewesen. Auf jenem Gerät kann das AX81 Programm natürlich nicht laufen. Um diesen Thread nicht noch mehr zu stören läuft alles Weitere zu meinem AX81-Boardentwurf hier: http://hive-project.de/board/viewtopic.php?f=12&t=524 Gruß Günter
Hallo! Jetzt habe ich noch eine Frage zum VGA-Format die vom ChipBasic und vom AX81 erzeugt werden. Darüber habe ich bis jetzt noch nichts gefunden. Da ich nur noch einen LCD-Monitor habe, ist die verarbeitbare Frequenz etwas eingeschränkt. Mein Monitor verarbeitet nur Auflösungen von 640x480 bis 1240x1024 mit 60Hz oder 75Hz. Die Toleranz/Abweichung dabei liegt bei < 1Hz. Kann man gegebenenfalls die Software dahingehend selber anpassen? Schönen Dank im Voraus. Gruß Günter
Das horizontale Timing steht in der "timing.asm" im libmio-Ordner, das vertikale in "vint_vga1.asm". Das horizontale Timing ist aber schon recht knapp damit das Bild überhaupt auf den Monitor passt und es auch keine Bildstörungen gibt. Eventuell reicht es aus, die Zeilenzahl zu verringern, damit man genau auf 69Hz vertikal kommt. Ich habe auch schon 24 MHz Clock ausprobiert, das gibt eine bessere Darstellung wenn man die Parameter entsprechend anpasst. Veröffentlichen werde ich diese (Develop-)Version aber nicht, da dann sofort "Beschwerden" wegen fehlender SD-Karten Unterstützung und nicht funktionierendem TV-OUT kommen werden. Gruß Jörg
Hallo! Jörg, danke vielmals für die super AX81-Software und Deine Hardwareentwicklungen, die einem ein Anpassen an eigene Wünsche zum Kinderspiel werden ließ. Ein Ändern der VGA-Einstellungen ist für mich nicht nötig geworden. Löten, Brennen, läuft und auf dem VGA- und TV-Bildschirm sieht es wie vor 30 Jahren aus. Weitere Details etc. wieder im Hive-Projekt-Forum. Allen wünsche ich ein frohes Fest und ruhige Festtage und guten Rutsch ins nächste Jahr........ Gruß Günter
hello i am trying to use ponyprg and a serial programmer to program a atmega644 as AX81 but can't figure the set bit configure,,,can someone help.. much appreciation... thanks... mike
@Mike: Just using 1284P with avrdude under win$:
1 | avrdude -c usbtiny -p m1284p -e -U flash:w:ax81.hex |
2 | avrdude -c usbtiny -p m1284p -U lfuse:w:0xe6:m -U hfuse:w:0xd1:m -U efuse:w:0xfc:m |
Peter
Hallo, es gibt eine neue (Bugfix-) Version vom AX81. Und zwar wurde anstelle von OR A ein OR L durchgeführt. Da bei meinem Emulator-Testprogramm an dieser Stelle das Register L den Wert 0 hat und der Befehl wohl sehr selten verwendet wird, ist das bisher nicht aufgefallen. Weiterhin habe ich zu Beginn des Jahres die "Aussperrung" von iPAD und iPhone aufgehoben. Das Ganze war sowieso hauptsächlich für mich als Nachweis gedacht, dass die Benutzung derartiger geschlossener Systeme die subjektive Wahrnehmung durchaus verzerren kann. Jörg
Peter Sieg schrieb: > Habe gerade Firmware 0.25 getestet. Die 512MB SD Karte, die bisher nicht > wollte, läuft nun! Prima! > > Hier ein paar Bilder mit einer zweckentfremdeten mmc2iec Platine ;-) > > Peter Dear Peter hope you can help me. In a rush to complete and make a ax81 after viewing your pictures, i have purchased one of these MMC2IEC boards from Donalds online shop, i have a couple of questions. 1. the preprogrammed 1284p will it boot the ax81 sd image? 2. or is the 1284p wanting to boot something else. 3. can the 1284p be re programmed with the ax81 hexcode ? 4. were can i obtain the firmware 0.25 or 0.24. as you advise of. hope you can help me. i have joined the forum-64 for a ax81 board. David
@David: 1. the preprogrammed 1284p will it boot the ax81 sd image? -> The one for mmc2iec? No! 2. or is the 1284p wanting to boot something else. -> Sure: sd2iec firmware probably.. 3. can the 1284p be re programmed with the ax81 hexcode ? -> Yes. 4. were can i obtain the firmware 0.25 or 0.24. as you advise of. -> Look on Jörg Wolframs site. Peter
Hmm.. ich finde die Windows Tools nicht mehr um das Fielsystem zu bilden und zu beschreiben (000_write_to_image.exe)..?? Peter
Hallo Peter, die Tools werden erst durch den Installer geschrieben, in der Package selbst existieren sie nicht. Jörg
Upps. ;-) Danke! Hätte mir wohl doch erst die 0.26 Firmware ziehen sollen.. Gruß Peter
Bei der 0.25 ist es auch dabei, die 0.26 war ja nur eine Bugfix-Version da der Emulator einen (seltenen) Befehl falsch ausgeführt hatte. Der Bug ist mir aber erst vor kurzem aufgefallen, da TFORTH die Tasten falsch ausgewertet hatte. Jörg
Gestern hat sich beim Test mit dem Spectrum-ROM ein weiterer Fehler in der Emulation herausgestellt, der beim ZX81 nicht auffällt. Und zwar scheint es auch im Netz widersprüchliche Dokumentationen zum DAA Befehl beim Z80 zu geben, insbesondere was das Flag-Handling anbetrifft. Dazu gibt es (wahrscheinlich heute abend) eine neue Bugfix-Version. Die "zweite Generation" des AX81 wird auf der gleichen Hardwarebasis (nur noch Mega1284P und es wird nur noch PD3 als Video-Ausgabe-Port benutzt) mit 24MHz laufen und 6 verschiedene Modi erlauben: - ZX81 normal - ZX81 mit userdefinierten Zeichen (UDG) - ZX81 mit userdefinierten Zeichen (CHRS128) - ZX80 - Jupiter ACE - ZX Spectrum (nur monochrom mit 15K RAM) Da das Ganze damit 4 Images auf der SD-Karte benötigt, funktioniert die derzeitige Strategie zum Finden des Images nicht mehr. Deswegen müssen die Images einmalig im MBR "registriert" werden. Gleichzeitig dürfen die Images nun variable Größe (1-255 Tapes) haben. Die Programme dafür sind auch schon fast fertig, allerdings wird es von mir nur noch Perl-Scripte, C-Sourcen und Linux-Binaries geben. Wenn jemand sich die Mühe machen will, das auf andere OS zu portieren, kann er sich bei mir gerne zwecks weiterer Info melden. Gruß Jörg
Hallo, die neue Version (0.27) behebt zwei Bugs. Zum einen funktionierte der DAA-Befehl nicht in allen Fällen korrekt. Zum anderen wurde bei TV (und teilweise VGA) die oberste Bildzeile "verschluckt". Download geht über meine Seite: http://www.jcwolfram.de/projekte/avr/ax81/main.php Ausserdem habe ich eine Testversion der zweiten Generation angehängt, allerdings ist die noch ohne File-IO. Hardware ist die gleiche, der Quarz muss aber durch einen mit 24MHz (25MHz sollten auch gehen) ersetzt werden. Die LLIST Funktion habe ich aufgegeben, stattdessen wird diese Funktionalität über F9 aufgerufen (ESC kehrt zurück). Über die Taste F12 kann ein kleines Monitorprogramm aufgerufen werden.
1 | ESC = Rückkehr zum Emulator |
2 | B = Eingabe der Breakpointadresse |
3 | D = Memory Dump ab 0x4000 |
4 | S = Memory Dump ab 0x0000 |
5 | PAGE+ = Memory Dump weiterblättern |
6 | PAGE- = Memory Dump zurückblättern |
7 | V = View (switch zum Emulator-Screen) |
8 | SPACE = Single Step |
Singlestep bei Jupiter ACE und ZX Spectrum führt allerdings meist zur Adresse 0x38, da hier auch der Interrupt emuliert wird. Gruß Jörg
Na, da muss ich wohl wieder basteln.. ;-) 25MHz Quarze sind glaube ich verbreiteter, da sie auf LAN Karten drauf sind. Sind denn die Firmware ROM's hier in der HEX schon mit drin..? Denn File-IO fehlt ja noch..? Gruß Peter
Hallo Peter, die 24MHz Quarze hatte ich noch da liegen, 25MHz müsste ich mir erst besorgen. Die (gepatchten) ROM-Images sind selbstversändlich mit drin, denn die werden ja auch im Flash adressiert. Gruß Jörg
Mittlerweile gibt es vom AX82 schon einen Prototypen, für den habe ich den Emulator massiv modifizieren müssen. Der ATMega allein reicht daufür nicht aus, dazu kommen noch externes SRAM und ein kleines CPLD (Adresslatch und Video-Shifter/Farbe). Bei TV hat er ungefähr 100% Original-Geschwindigkeit und bei VGA ca. 78% (25MHz Takt). Da der neue Emulator kompatibler und wohl auch schneller ist, würde ich ihn auch in den AX81 "zurückportieren". Allerdings will nur noch eine der beiden Varianten vom AX81 (20MHz, nur ZX81 oder 24/25MHz, verschiedene Systeme) weiter pflegen. Daher von mir jetzt die Frage, an welcher Variante mehr Interesse besteht. Gruß Jörg
Hallo Joerg, ich verfolge mit großem Interesse seit einiger Zeit Deine Projekte. Ich wäre dafür die "24/25Mhz verschiedene Systeme" weiter zu pflegen, wobei ich besonders den Jupiter Ace interessant finde. Gruß Norbert
So wird es dann auch wohl werden. Lediglich die Spectrum-Mono Emulation wird rausfliegen, das kann der (kommende) AX82 viel besser und es vereinfacht den Code, da dann wieder alle ROMs in 32K passen und man nicht ständig das RAMPZ Register umschalten muss. Da der neue Emulator jetzt auch Interrupts unterstützt, müssen die ROM anders gepatcht werden. Dafür sollte sich aber auch die Kompatibilität erhöhen, beim Spectrum-Emulator komme ich bereits mit einem ungepatchten ROM aus und ca. 90% der Programme laufen. Da das jetzige Filesystem nicht auf mehrere Images ausgelegt ist, werden sie zukünftig im Wurzelverzeichnis der ersten FAT16-Partition gesucht. Die Lösung mit der Registrierung der Images im MBR habe ich wieder aufgegeben, da das mit Perl-Scripten alleine sehr umständlich und vor allen Dingen sicher auch systemabhängig ist. Vorstellbar wäre auch der Anschluss einer Paralleltastatur über einen zweiten Controller und I2C. Der könnte dann auch das Tape-Interface emulieren. Gruß Jörg
Hi Ein Superprojekt was der örg da auf die Beine gestellt hat "Hut ab" Ich habe ja eigentlich wenig mit diesen Dingen zu tun,aber ich würde mir zum Spass auch solch ein Gerät mal aufbauen. Dieser Niele,wollte doch ein wie er schrieb "selbst-ätzbares, einseitiges Layout." erstellen. Ist dies denn geschehen und wenn ja,wird dieses dann hier online gestellt? Gruß Eddy
Hallo! Hozenplotz schrieb: > Dieser Niele,wollte doch ein wie er schrieb "selbst-ätzbares, > einseitiges Layout." erstellen. Ääääähhhhhh.....welcher Niele ? Ich finde in diesem Thread leider keinen der so heißt. @Jörg Wolfram Was hat sich denn bei der neuen Version des AX81 außer der Erhöhung der Quarzfrequenz auf 24/25MHz an der Schaltung getan ? Auf den AX82 bin ich schon sehr gespannt. Gruß Günter
Günter R. schrieb: > @Jörg Wolfram > Was hat sich denn bei der neuen Version des AX81 außer der Erhöhung der > Quarzfrequenz auf 24/25MHz an der Schaltung getan ? Hallo Günter, die Änderungen hatte Jörg schon mal kurz angesprochen, schau mal hier: Beitrag "Re: AX81 - ZX81 im AVR" Beste Grüße, Jens
Der hat wohl auch nur einen Beitrag geschrieben ...ziemlich im oberen Drittel Nils S. > (Firma: SpectraLight MM) > (kruemeltee) > > Datum: 11.11.2011 14:12 > > > > > > > Wenn du mir die Eagle-Daten (SD-Slot lib, mega1284p lib und deinen > Schaltplan im eagle Format) hochlädst, mach ich dir ein schönes > selbst-ätzbares, einseitiges Layout. > > Zusätzlich würde ich dann noch die AD-Kanäle und ISP auf > Standard-Pfostenstecker rausführen. > > > > > Autor: > > Nils S. > (Firma: SpectraLight MM) > > > > > Datum: 11.11.2011 14:12 > > > > > > > > > > > Wenn du mir die Eagle-Daten (SD-Slot lib, mega1284p lib und deinen > Schaltplan im eagle Format) hochlädst, mach ich dir ein schönes > selbst-ätzbares, einseitiges Layout. > > Zusätzlich würde ich dann noch die AD-Kanäle und ISP auf > Standard-Pfostenstecker rausführen.
Hallo Jens! Dein verlinkter Post zielt eher auf den AX82 als auf den AX81. Der AX82 hat soweit ich das verstehe sowieso einiges zusätzlich an anderer Hardware als die AX81-Hardware. In diesem Post : Beitrag "Re: AX81 - ZX81 im AVR" ist aber für den AX81 wohl nach meinem Verständnis nur noch ein Ausgabeport für Video vorgesehen, ist dann VGA-Ausgabe noch da ?. Eine andere Frage ist, womit die Auswahl eines der Systeme ZX80, ZX81, Jupiter-Ace) auf der AX81-Hardware erfolgt. Für mich persönlich stellt sich die Frage, ob ich auf meiner Platine nur den Quarz auslöten und einen 25MHz Quarz einlöten muß oder eventuell zusätzlich die Verdrahtung geändert werden muß. Je nach Aufwand lasse ich für meine Hardware (Platine AX81-GKR) dann die Version 0.27 als letzten Software-Stand einfrieren und warte gegebenenfalls auf die Schaltung für den AX82. Gruß Günter
Hozenplotz schrieb: > Der hat wohl auch nur einen Beitrag geschrieben ...ziemlich im oberen > Drittel > > Nils S. Ahhhhhhhhh..... Nils also? Von der Platine hab ich auch nichts mehr gehört. Ich hatte mal eine eigene Platine entworfen und mir anfertigen lassen. Ich wollte nun mal abklären was es da eventuell für Hardwareänderunge gibt um die zukünftigen Versionen von AX81 auf meiner Hardware laufen zu lassen. Gruß Günter
Hardwaremäßig hat man mehr Möglichkeiten, da das Videosignal nun auch für TV vom UART1 erzeugt wird. Auf die bestehende Hardware hat das keinen Einfluss, lediglich die Brücke von PTD3 zu den RGB Signalen ist Pflicht. Andererseits kann man bei neuen Designs das Videosignal direkt an PTD3 abnehmen und die Config-Jumper auf PTB 1-3 legen. Somit hätte man dann PORTC komplett für andere Dinge wie z.B. Parallelport oder Parallel-Keyboard frei. Von der Softwareseite wird sich dagegen eine ganze Menge ändern. Anstelle von LLIST und POKE 99,x lässt sich dann mittels Funktionstaste ein "Tape-Manager" öffnen. Da der für alle Systeme identisch ist, werde ich die Dateinamen generell auf ASCII umstellen, was leider die bestehenden Images zum neuen System inkompatibel macht. Die Auswahl des Systems erfolgt im Startmenü und wird im EEPROM gespeichert. Jörg
Hallo Jörg! Schönen Dank für die rasche Auskunft. Wenn ich das alles richtig verstanden habe werden die drei Jumper (bei mir Dip-Schalter 1 bis 3) weiterhin für die Wahl zwischen TV(NTSC/PAL), LCD und VGA benutzt und können weiterhin auch auf den vorhandenen Portleitungen PTC2, PTC3 und PTC4 bleiben. Der Anschluß PTD3 geht bei mir an den Dip-Schalter 4 und bleibt nun bei TV- und VGA-Anschluß geschlossen (Brücke zwischen PTD3 zum PTC7), Jumper zwischen R- und G- sowie R- und B-Signal geschlossen. Wenn nun jemand die von Dir vorgeschlagene Verlegung der Config Jumper auf PTB1 - 3 machen möchte, kann man das in der Software dann variabel gestalten (z.B. durch User änderbares Configfile), so daß beide Hardwarevarianten weiterhin benutzt werden können? Gruß Günter
Hallo Günter, Im Moment ist es so, dass die Pinbelegung beim Assemblieren über eine Config-Datei festgelegt wird. Ein Einlesen von SD-Karte zur Laufzeit ist nicht vorgesehen. Aber es wird sicher mehrere Hexfiles geben. Gruß Jörg
Hallo Jörg! Danke für die Auskunft, das schafft Klarheit. Dann werde ich mal versuchen den Quarz aus- und zwei Präzisionsfassungen einzulöten. Dann kann man mal den Quarz ohne löten wechseln. Gruß Günter
Hallo Jörg, ich habe Deinen ax81 mit einem ATMEGA1284P nachgebaut und es hat alles praktisch auf Anhieb funktioniert! Danke für das ausserordentlich interessante Projekt! Ausprobiert habe ich bis jetzt die Video-Ausgabe (über SCART in einen ältlichen Röhrenfernseher) und verwende eine alte PS/2 Tastatur zur Eingabe und eine 1 GB SD-Karte (Platinum) als Massenspeicher. Zur Zeit verwende ich v0.27 Deiner Software. Ich würde nun gerne das Pollin-GLCD WINTEK WD-H3224V an den ax81 anhängen; würde das gehen? In Deiner Schaltung werden für das LCD die Signale FLM, CP, und LOAD generiert, aber ich weiss nicht, wo ich das Signal M hernehmen soll, das für das Pollin-GLCD wohl benötigt wird; das hat mit AC-Generierung für das LCD zu tun - das Pollin-"Datenbatt" zum WINTEK WD-H3224V ist in der Hinsicht etwas dürftig). Grüsse, Andreas
Man könnte das M-Signal z.B. mit einem D-FlipFlop (74LS74) aus dem FLM Signal erzeugen. Alternativ ließe sich das VSYNC Signal dafür entsprechend programmieren, das wäre dann die einfachste Lösung ohne zusätzliche Hardware. Wenn ich dazukomme, kann ich am WE ein Update erstellen. Gruß Jörg
Hallo Jörg, danke für die Antwort. Ich habe mir mittlerweile auch schon überlegt, aus dem FLM-Signal mit einem Flipflop das M-Signal zu generieren, aber wenn der ATmega das übernehmen könnte wäre es natürlich ideal. Ich bin dann mal auf das Update gespannt... Grüsse und schönes Wochenende, Andreas
Leider hat es noch ein bisschen länger gedauert, neben der Ausgabe des 30Hz-Signals am VSYNC Ausgang behebt die aktuelle Version (0.28) auch noch einen Bug. Und zwar wurde bei LDI/CPI/LDR/CPR das BC Register falsch dekrementiert (-256 statt -1). Binary- und Sourcepaket sind von meiner Homepage downloadbar. http://www.jcwolfram.de/projekte/avr/ax81/main.php Mit der "neuen" Variante bin ich fast fertig, die Dokumentation steht aber noch aus. Bei Interesse kann ich hier hin und wieder eine Testversion posten. Am Sonntag bin ich beim VCFe in München, dort wird es auf jeden Fall die aktuellen Versionen vom AX81 und auch AX82 (Spectrum-Emulator) zum Testen geben. Gruß Jörg
Hallo Jörg, danke für das Update! Ich habs gerade runtergeladen und mal ausprobiert. Da ich die von Pollin bestellten LCDs (WINTEK WD-H3224V) noch nicht erhalten habe kann ich den LCD-Modus heute noch nicht ausprobieren, aber laut meinem Oszilloskop scheinen die korrekten Signale für das LCD (incl. dem M-Signal) vom ATMEGA1284P zu kommen... Grüsse, Andreas
Hallo Jörg, ich kann leider nicht zum VCFe nach München kommen, würde aber gerne mal eine Testversion vom AX82 ausprobieren. Würde mich freuen wenn Du eine Testversion hier posten würdest. Gruß Norbert
Hallo Norbert, da der AX82 noch zusätzliche externe Komponenten braucht (SRAM, CPLD), muß ich dafür erstmal Schaltpläne etc. erstellen ohne die man das nicht ausprobieren kann. Das wird auf jeden Fall noch ein bisschen Zeit benötigen, denn erstmal will ich den AX81 in der neuen Version fertig machen. Daher bezieht sich das "Testversion" auf den AX81. Ich will sehen, ob ich die Doku und die PC-Tools (zumindest zum Schreiben auf die Images) bis Ende der Woche fertigbekomme. Gruß Jörg
Hallo Jörg, Danke für die Infos zum AX82. Bin dann mal gespannt auf den AX82, wenn alles fertig ist. Noch eine Frage zu Deinem Vortrag beim VCFe in München gibt es ein Video? Wenn ja wo kann man es online ansehen. Gruß Norbert
Hallo Jörg, ich bin nun dazugekommen, das Pollin-LCD (WINTEK WD-H3224V) an den AX81 anzuhängen - es funktioniert wunderbar, dank Deines Updates (v0.28) mit dem M-Signal. Falls es interessiert, die besten Ergebnisse hatte ich mit einer Kontrastspannung (Vcc) von +21.5V, das Signal "Display off" muss auf +5V liegen, sonst zeigt das Display nichts an. Der einzige "Schönheitsfehler" ist die invertierte Darstellung auf dem LCD, d.h. man hat weissen Text auf schwarzem Hintergrund (ich denke, das liegt an dem Display-Typ). Man müsste wohl invertierte Bitmuster auf den Datenleitungen D0..D3 ans LCD senden, um eine ZX81-artige nicht-invertierte Darstellung zu erhalten; ich muss mir mal den Sourcecode ansehen um zu sehen, ob das einfach machbar ist. Übrigens, ich konnte den AX81-Sourcecode mit dem gavrasm-Assembler assemblieren (gavrasm musste zuvor noch mit Freepascal kompiliert werden); lediglich in zwei Zeilen (Z.52 un Z.61) in "mem_macros.asm" musste ich ein "=" durch "==" ersetzen... Grüsse, Andreas
Hallo Andreas, Mit dem Jumper, der zwischen HSYNC und CSYNC umschaltet, sollte sich auch zwischen positiver und negativer Darstellung beim LCD umschalten lassen. Gruß Jörg
Joerg Wolfram schrieb: > Hallo Andreas, > > Mit dem Jumper, der zwischen HSYNC und CSYNC umschaltet, sollte sich > auch zwischen positiver und negativer Darstellung beim LCD umschalten > lassen. > > Gruß Jörg Hallo Jörg, ja, das hat funktioniert, vielen Dank! Die Darstellung auf dem Pollin-LCD ist nun nicht mehr invertiert und sieht sehr gut aus! Beste Grüsse, Andreas
Andreas R. schrieb: > Übrigens, ich konnte den AX81-Sourcecode mit dem gavrasm-Assembler > assemblieren (gavrasm musste zuvor noch mit Freepascal kompiliert > werden); lediglich in zwei Zeilen (Z.52 un Z.61) in "mem_macros.asm" > musste ich ein "=" durch "==" ersetzen... @Andreas: Arbeitest du unter Windows? Könntest du dann bitte den compilierten gavrasm inkl. build Batchdatei(?) hier als ZIP einstellen (am besten das ganze Verzeichnis gezipped..)? Und ein paar Bilder des Aufbaus inkl. Verdrahtung des LCD Displays wäre super! Danke, Peter
Peter Sieg schrieb: > Andreas R. schrieb: >> Übrigens, ich konnte den AX81-Sourcecode mit dem gavrasm-Assembler >> assemblieren (gavrasm musste zuvor noch mit Freepascal kompiliert >> werden); lediglich in zwei Zeilen (Z.52 un Z.61) in "mem_macros.asm" >> musste ich ein "=" durch "==" ersetzen... > > @Andreas: Arbeitest du unter Windows? Könntest du dann bitte den > compilierten gavrasm inkl. build Batchdatei(?) hier als ZIP einstellen > (am besten das ganze Verzeichnis gezipped..)? > > Und ein paar Bilder des Aufbaus inkl. Verdrahtung des LCD Displays wäre > super! > > Danke, Peter Hallo Peter, ich arbeite unter Linux, in meiner Distro war Freepascal schon integriert, daher war das Komplieren des gavrasm kein Problem. Auf der Homepage des Entwicklers von gavrasm (http://www.avr-asm-tutorial.net/gavrasm/index_de.html) gibts aber auch Windows-Binaries des Assemblers - die habe ich allerdings nie ausprobiert... Zum Anschluss des Pollin-LCDs (WD-H3224V) an den ax81 gibts eigentlich nicht viel zu beachten; so hab ichs gemacht: Pollin-LCD ATMEGA1284P D0..D3 PA0..PA3 FLM PA5 Load PA6 CP PA7 M PD6 Display off +5V (ohne das zeigt das Display nichts an) V_CC +21.5V (erst anlegen, wenn gültige Daten vom ATMEGA kommen!) V_DD +5V GND GND Wenn ich ein Foto posten würde, könnte man da nicht viel erkennen. Ich hatte erstmal Mühe, das winzige Flachbandkabel des Displays zu kontaktieren - nun ist es ein ziemliches Leitungsgewirr... Grüsse, Andreas
Ich hab nochmal wegen der zwei Zeilen 52 und 61 in "mem_macros.asm" nachgesehen, dort sollte auch "==" stehen. Da das Poken nicht abgeschaltet ist, fällt das aber gar nicht auf. Gruß Jörg
Andreas R. schrieb: > V_CC +21.5V (erst anlegen, wenn gültige Daten vom ATMEGA kommen!) @Andreas: Danke für die Info's! Wie machst du das denn (erst anlegen..)? Beim Bild ging es auch mehr darum das Display in Aktion zu sehen.. Gruß Peter
Peter Sieg schrieb: > Andreas R. schrieb: >> V_CC +21.5V (erst anlegen, wenn gültige Daten vom ATMEGA kommen!) > > @Andreas: Danke für die Info's! Wie machst du das denn (erst anlegen..)? > > Beim Bild ging es auch mehr darum das Display in Aktion zu sehen.. > > Gruß Peter Hi Peter, naja, da ich noch nicht dazugekommen war, mit einem MC34063A einen Spannungswandler zu bauen, der mir die +21.5V aus den +5V generiert, habe ich zunächst einfach manuell die +21.5V (von einem Labornetzteil) an den V_CC-Pin des Displays angeschlossen, nachdem der ax81 gestartet ist. Man könnte wohl den Pin PA4 des ATMEGA1284P nehmen (der ist low wenn das LCD gültige Daten vom ax81 kriegt - @Jörg: stimmt das so?), um die +21.5V dann einzuschalten - ich muss mir noch überlegen, wie ich das am einfachsten mache... Grüsse, Andreas
Habe mir jetzt auch solche Pollin LCD Displays bestellt. Und MC34063 um die 21,5V zu erzeugen. Habe vor die ohne Schalter direkt anzuschließen. Wenn das Ganze eingeschaltet wird, bekommt der DC-DC Wandler 5V und erzeugt dann die 21,5V fürs Display.. dann sollte doch auch nach 1s ein AX81 Bildsignal kommen..? Zur Not machen ich da ersteinmal für die ersten Gehversuche einen mech. Schalter dazwischen.. Ich möchte ersteinmal mir der abs. Grundschaltung + LCD anfangen und dann nach und nach Tast. und SD Karte anschließen. Was muss ich außer 1284P mit Quarz+2xC und +5V Versorgung noch für das LCD anschließen? Wie müssen J1-J3 gesetzt sein (J1 nach GND)? Anschluss LCD dann wir oben: Pollin-LCD ATMEGA1284P D0..D3 PA0..PA3 FLM PA5 Load PA6 CP PA7 M PD6 Display off +5V (ohne das zeigt das Display nichts an) V_CC +21.5V (erst anlegen, wenn gültige Daten vom ATMEGA kommen!) V_DD +5V GND GND Müssen da noch irgendwelche Widerstände dazwischen oder ist das nur für VGA? Ich werde wohl direkt dort, wo der 24-pol Flachbandleiter an der Platine angeschlossen ist, die 11 Leitungen anlöten. Peter
Wenn Ihr ein LCD an den AX81/AX82 hängt, könnte man daraus soetwas wie ein All-In-One AX81 bauen. Gibt es eigendlich nun endlich Bausätze...? Im F64 gibt es noch keine Info's dazu... Wird der AX81 bei zukünftigen Softwareversionen noch unterstützt, oder nur noch der AX82...?
Ronny Minow schrieb: > Gibt es eigendlich nun endlich Bausätze...? Im F64 gibt es noch keine > Info's dazu... Wende dich mal an Donald aus dem F64. Peter
Peter Sieg schrieb: > Habe mir jetzt auch solche Pollin LCD Displays bestellt. > Und MC34063 um die 21,5V zu erzeugen. Habe vor die ohne Schalter direkt > anzuschließen. Wenn das Ganze eingeschaltet wird, bekommt der DC-DC > Wandler 5V und erzeugt dann die 21,5V fürs Display.. dann sollte doch > auch nach 1s ein AX81 Bildsignal kommen..? Zur Not machen ich da > ersteinmal für die ersten Gehversuche einen mech. Schalter dazwischen.. So (ohne Schalter) habe ich es schlussendlich auch gemacht; beim Ausschalten der 5 V zeigt das Display dann noch für 1-2 s ein komisches Bild an - ich hoffe, das schadet dem LCD nicht (bis jetzt habe ich nichts Schlimmes bemerkt)... > Was muss ich außer 1284P mit Quarz+2xC und +5V Versorgung noch für das > LCD anschließen? Wie müssen J1-J3 gesetzt sein (J1 nach GND)? J1 und J2 müssen geschlossen sein (J1 um den LCD-Mode auszuwählen, J2 um kein invertiertes Bild zu kriegen). > Anschluss LCD dann wir oben: > Pollin-LCD ATMEGA1284P > D0..D3 PA0..PA3 > FLM PA5 > Load PA6 > CP PA7 > M PD6 > Display off +5V (ohne das zeigt das Display nichts an) > V_CC +21.5V (erst anlegen, wenn gültige Daten vom ATMEGA kommen!) > V_DD +5V > GND GND > > Müssen da noch irgendwelche Widerstände dazwischen oder ist das nur für > VGA? Ich habe keine Widerstände in die Portleitungen vom ATMEGA zum LCD gehängt; das funktioniert bei mir. Gruss, Andreas
In meiner LCD-Schaltung habe ich in die +5V des Spannungswandlers einen PNP-Transistor eingebaut, der über einen Widerstand von PORTA.4 angesteuert wird. Damit wird das LCD nur mit Spannung versorgt, wenn es aktiviert ist. Die neuen AX81 Versionen werden auch auf der bestehenden Hardware laufen, lediglich PORTD.1 und PORTD.2 müssen zusammengefasst und mit einem PullUp versehen werden. Daneben wird es eine neue minimale Hardware geben, bei der PORTA und PORTC komplett verfügbar sind (ohne LCD). Von der Softwareseite wird sich dagegen eine ganze Menge ändern, mit einer Snapshot- und Autostartfunktion sowie Upload über eine serielle Leitung lässt sich in Verbindung mit I/O Ports ein "Steuerungschip" realisieren, der wahlweise in BASIC, FORTH (Jupiter ACE) oder Z80 Assembler programmierbar ist. Aus diesem Grund wird auch die Spectrum-Emulation wieder mit dabei sein, da es dort bereits IN und OUT gibt. Ebenso wird sich das ganze Tape-Handling ändern. Der AX82 ist ein reiner Spectrum-Emulator, benötigt auch eine andere Hardwarebasis (ext. RAM + CPLD) und wird auch noch einige Zeit bis zur Veröffentlichung brauchen (Doku fehlt noch vollständig). Gruß Jörg
Hmm.. ich habe jetzt mal ein LCD versucht so in Betrieb zu setzen.. erfolglos.. nichts zu sehen auf dem LCD.. nur beim Abschalten wird das LCD kurz mal blau.. keine orange LED Beleuchtung.. nichts. Angeschossen wie oben angegeben. 22,3V über Stepup Wandler. J1+J2 gegen GND gebrückt. alle leitungen durchgeklingelt = ok keine Schlüsse mit benachbarten Leitungen = ok Die 3 Spannungen (22V, 5V, GND gibts auch noch neben dem 24-pol Anschluß) J1 und J2 müssen geschlossen sein (J1 um den LCD-Mode auszuwählen, J2 um kein invertiertes Bild zu kriegen). > Anschluss LCD dann wir oben: > Pollin-LCD ATMEGA1284P > D0..D3 PA0..PA3 > FLM PA5 > Load PA6 > CP PA7 > M PD6 > Display off +5V (ohne das zeigt das Display nichts an) > V_CC +21.5V (erst anlegen, wenn gültige Daten vom ATMEGA kommen!) > V_DD +5V > GND GND > > Müssen da noch irgendwelche Widerstände dazwischen oder ist das nur für > VGA? ?? Peter
Noch eine andere Sache.. Taster an RESET gegen GND bringt keinen Einschaltzustand.. Bildschirm bleibt 'dunkel' nichts geht mehr.. Peter
Hallo! @Peter Sieg Ich habe gestern abend die Version 0.28 auf mein board geflasht. Der dort eingebaute Resettaster funktioniert. Das Programm (VGA-Modus) startet wie bei Kaltstart. Ich könnte das jetzt auch mal mit dem Video-Modus machen. Melde mich wieder. Gruß Günter
Ich habe eben die erste offizielle Release vom AX81b online gestellt. Es lässt sich zwischen 6 verschiedenen Emulationen wählen, eine Snapshot-Funktion nebst Datenübertragung ist auch mit realisiert. http://www.jcwolfram.de/projekte/avr/ax81b/main.php Es wird nur noch der ATMega1284P unterstützt, der wegen der Videoausgabe auf 24 oder 25 MHz übertaktet werden muss. Es ist zwar noch nicht alles komplett, sollte aber soweit funktionieren. Jörg
Super! Das möchte ich dann doch mal gleich ausprobieren. D.h ich kann die identische Hardware für für AX81 mit TV-Out verwenden und muss nur den Quarz gegen einen 25MHz tauschen und den ATmega1284 mir der AX81b Firmware (m25) flashen? Peter
Hallo Peter, bei der neuen Version kommt das Video-Signal für TV UND VGA von PORTD.3, eventuell braucht es halt die Brücke, die man bei der alten Version für VGA benötigt hat. Jörg
Hmm. Gerade mal einen LR Aufbau geändert auf 25MHz Quarz.. beide m25 Firmwares probiert.. Bildschirm bleibt schwarz..? Soll heißen, es schent ein Bildsignal generiert zu werden.. aber halt schwarz.. Ich habe keine Pullups (10k) an J1-J3 dran.. ging beim AX81 auch so.. Peter
Hänge mal an PORTD.7 eine LED mit Vorwiderstand ran (ob nach +5V oder GND ist egal). Nach ein paar Sekunden sollte die dann mit Blinken anfangen, egal wie die Ausgabe konfiguriert ist. Jörg
Ja das tut sie.. nach ca. 5-6s blinkt sie regelmäßig mit ca. 1s Takt. Trotzdem kein Bild am BAS Monitor. Gruß Peter
Wo hängt der BAS Monitor dran? Das Videosignal kommt nur noch aus PORTD.3, die PORTC-Pins sind inaktiv. Kommen am HSYNC/CSYNC irgendwelche Pulse raus? Gruß Jörg
ok.. Videoport hat sich geändert ;-) Nach umlöten auf D3 bekomme ich die Einschaltmeldung.. soweit ok! Im Prinzip geht die Auswahl auch.. aber machmal scheint er dann die Auswahl nicht genommen zu haben, bzw. erkennt die SD Karte nicht.. Erst nach Aus-/Einschalten geht es dann.. Und machmal habe ich in dem großen A 0000 und er geht gar nicht weiter..? F12 kann ich den Monitor aufrufen. ESC bringt schwarzen Bildschirm.. Muss ich jetzt ersteinmal ein wenig mit rumspielen.. Gruß Peter
Wieviele Blockkondensatoren hast Du in Deiner Schaltung verbaut? Bei 25MHz hatte ich auch bei einem Controller manchmal Ausfälle, bei 24MHz liefen aber alle problemlos. Evtl. mal die Spannung auf 5,5V erhöhen könnte auch helfen. Jörg
Je 1x100nf auf +5V und +3,3V Versorgung gegen Masse. Die SD Versorgung hat noch einen 10uF Elko drin. Habe auch das Problem, das die einzige 2GB Medion Karte, die beim AX81 lief nun zwar erkannt wird inkl. ZX81 Image.. aber F9 zeigt alles leer an?? Die hat wie gesagt beim AX81 komplett einwandfrei gearbeitet.. wurde neu formatiert (SD Tool von Panasonic) mit FAT16 und die 4 fertigen Images drauf kopiert. Ein1 1GB von Delock und eine 2GB SanDisk (vermutlich aber China Kopie) werden gar nicht erkannt (alle ok unter Windows). Eine 128MB SanDisk (original) läuft aber. Mal schauen, was die anderen Nachbauer so für Erfahrungen haben. Peter
Hallo! Wie sieht denn die Signalform am Spannungsteiler an der SD-Karte aus, Spec eingehalten! Vielleicht ist auch die Grenze bei 24MHz fast erreicht. Manche berichten zwar von Übertaktungen von 32MHz aber ohne eine SD-Karte getestet zu haben. Generell nehme ich für jeden +Versorgungsanschluß einen 100nF Kondensator auch direkt an dem SD-Kartenslot. Diese Kondensatoren versuche ich immer so dicht wie möglich an die Anschlüsse zu positionieren. Selber komme ich im Moment nicht zu einem Test mit dem ATmega1284 und 25MHz, ich spiele lieber mit Propellern rum ........ Gruß TuxFan
Hallo Peter, wieviele Tapes zeigt bei Dir der Tape-Manager an? Es sollte 015 dastehen, ansonsten wurde das Image zwar im Directory gefunden, der Datensatz zeigt aber irgendwo anders hin. Ich habe gerade mal schnell auf einer Panasonic 2GB Karte eine ebensogroße Partition angelegt und die Images dorthin kopiert. Rein in den AX81 und klappt sofort... Ich werde in der nächsten Version die SPI-Frequenz für die Initialisierung noch ein Stück runtersetzen (derzeit 195KHz bei 25MHz Clock), Die ersten Bytes des Images verifizieren und ein paar zusätzliche Fehlermeldungen ausgeben lassen. Jörg
Joerg Wolfram schrieb: > wieviele Tapes zeigt bei Dir der Tape-Manager an? Es sollte 015 > dastehen Mit der 2GB Karte zeigt er als Meldung an: SDV2-Card ..ZX81 Image (so ähnlich) F9 = Tapes 000/255! alles leer.. Peter
Ich habe das eigentlich mit verschiedenen Partitionsgrößen durchgetestet, allerdings nur mit fdisk und mkdosfs. Du könntest noch versuchen, auf der 2GB Karte eine 256MB Partition einzurichten und sehen ob es dann geht. Jörg
Hmm. Irgendwie klappt das mir Laden von Programmen/Schnapshots im Jupiter ACE nicht..? F9 = Tapemanager Auswählen Shift+L kehrt zurück zum Prompt.. vlist zeigt aber kein neues Wort..? Peter
Also bei mir geht es. Allerdings habe ich nicht alle Programme, die aud den Images sind getestet und es werden wohl auch nicht alle funktionieren. FISH und BALLON sollten aber gehen, wobei letzeres mt "g" und nicht mit "go" gestartet wird. Eigene Wörter haben aber ohne Probleme funktioniert, nach dem Zurückladen des Snapshots (Name beim Speichern nicht vergessen!) ist man wieder genau an der selben Stelle incl. Bildschirminhalt. Jörg
Hmm.. vielleicht kannst du mal Taste für Taste bzw. Eingabe für Eingabe Beispielhaft hier aufführen..? Ich habe den Jupiter ACE Prompt. vlist zeigt alle Worte an. Return sagt OK. Dann F9 - Tapemanager. Cursortasten gehen rauf runter.. Filename wird jeweils angezeigt. Stehe z.B auf fish. Dann Shift-F9 drücken komme zurück zum ACE Prompt. Hier zeigt vlist keine Änderung an. go gibt ?go ??? Peter
Hallo Peter, Ich habe nochmal die 4 Images auf eine neue Karte kopiert und es ausproiert: 1. mit F9 den Tape-Manager aufrufen 2. "FISH" auswählen 3. mit Shift+L das Programm laden 4. Bildschirm sollte so aussehen wie im Anhang Mit Shift+S wird das Programm auf der SD-Karte ohne Warnung überschrieben, die Shift-Taste dient dazu, damit das nicht unabsichtlich passiert. Probeweise könntest Du das Image noch einmal auf die Karte kopieren. Jörg
Hi Jörg. Ich bin mir dann ziemlich sicher, das evtl. die SD Routinen durch den 25MHz Quarz zu schnell sind..? Ich mache es genau so.. aber bekomme nur den Prompt wieder.. kein Fish ;-) Gruß, Peter
Ich kann mir nicht vorstellen, dass die SPI-Routinen zu schnell sind. Während der Init-Phase läuft der SPI mit f/128 (195KHz bei 25MHz MCU-Takt) und danach mit f/4 (6,25MHz). Das sollte eigentlich jede Karte mitmachen. Und das Lesen der Programmnamen (Die werden bei jeder Cursorbewegung neu eingelesen) scheint ja auch zu funktionieren. Peter Sieg schrieb: > Und machmal habe ich in dem großen A 0000 und er geht gar nicht > weiter..? Lassen sich die ZX81 Programme laden? Vielleicht geht Dein Contoller einfach bei 25MHz nicht mehr gescheit, dann könnte man noch die 24MHz ausprobieren. Vielleicht hat auch jemand anderes das Teil nachgebaut und kann hier Erfahrungen posten. Den Controller zu übertakten ist halt auch schon "grenzwertig", eine Nachbaugarantie kann es da nicht mehr geben, das zu viele Faktoren (u.a. Datecode, Leiterplattenlayout) eine Rolle spielen. Gruß Jörg
Hi. ZX81 Programme lassen sich ohne Probleme laden (und speichern). Ja, auf andere Nachbauer warte ich auch schon ungeduldig ;-) Das mit dem Übertakten kann ja schon sein.. aber ich habe andere Projekte, wo z.B ein ATmega328P mit bis zu 30MHz läuft und ein weiteres, wo ein ATmega88PA mit 32MHz Oszi betrieben wird. Ich kann das widerrum nicht wirklich glauben, das das die Ursache sein soll. Es scheint also 'nur' bei Schnapshot's aufzutreten..? Großer Blocktransfer.. wobei ggf. etwas durcheinander läuft..? Peter
Was passiert eigentlich, wenn Du vlist machst und dann lädst? Ist dann der Bildschirm wie vorher mit der Liste oder leer mit Prompt? In der Laderoutine wird nicht mehr kontrolliert, ob richtige Daten von der Karte kommen und im Zweifelsfall halt einfach FF gelesen. Jörg
Hi. wenn ich erst vlist mache und alle Worte gelistet bekomme und z.B 3x Return drücke und somit 3x OK zurück bekomme und dann F9 und bei Fish Shift-L eingeben, bin ich quasi sofort (weniger als 1/10 s) wieder genau dort, bevor ich F9 aufgerufen habe (3x OK). Nach Return kommt wieder ok.. System arbeitet also, hat nur nichts geladen.. Peter
Noch eine Merkwürdigkeit. Erkennen der SD Karte und des Imges nach Einschalten einwandfrei. Laden von ZX80+ZX81 Programme ebenfalls. Nach CTRL-ALT-DEL hängt das System anscheinend genau bei dem Erkennen der SD Karte und des Images.. 30s gewartet.. nichts.. Erst nach aus- und wieder einschalten gehts weiter.. Peter
Falls es nicht zu umständlich wäre, wäre ein Test mit einem HEX für 25MHz, wo der Zugriff auch nach der Initialisierung mit f/128 läuft interessant.. Peter
Hello Jorg Can you help I have the chipbasic2 built with the atmega1284p and flashed with the ax81 code v0.25. i have constructed a sd card reader, but upon powering up i get the following 1. with sd adapter connected and no card inserted a message appears "E-CMD8" what does this mean 2. with sd inserted a message of "SDV1-CARD" "NO IMAGE" , please can somebody explain how to write the data to the SD card, the ax81_image.bin and TAPE folders. 3. another message I get is "E-ACMD41" , have a SD card with image ax81_image.bin on sd card with TAPE folders, but unable to read anything with LLIST command, have tried POKE 99,0 with just TAPE-000, but nothing there,just a empty list. I have used the install program, put .p files in the TAPE folders and run the write_data.exe and seen a dos window saying "adding" but when using through the ax81, i can not see any files. Please can you help regards David
Hi David, pls use the current version 0.28 from http://www.jcwolfram.de/downloads/main.php#ax81 because the version 0.25 has problems with many SD cards. best regards, Joerg
Ich habe jetzt die Version 1.27 ins Netz gestellt, mit der sich vielleicht die Fehlerbilder besser auswerten lassen: - Detailliertere Fehlermeldungen bei der Karten-Erkennung - Checksumme für FLASH Überprüfung - SPI-Geschwindigkeit kann mittels ALT-Taste auf 1/4 reduziert werden Jörg
Hi Jörg. Habe die 1.27 nun drauf.. verhält sich aber fast wie 1.26..? Wo/Wann kann man die ALT Taste denn betätigen um die SPI zu reduzieren? EDIT: Ahh.. schon in der Bedinungsanleitung drin.. ok ALT nach Auswahl der Emulation gedrückt. Image wird dann mit *davor angezeigt. Es kommen trotzdem keinerlei Fehlermeldungen.. es wird aber nichts geladen (Snapshot). Der Prompt kommt nach gefühlten 0s (sofort) zurück nach Shift-F9. Was jetzt geht: Nach Reset kommt wieder der Einschaltbildschirm (nichts an der Hardware geändert; alleine 1.26 -> 1.27 Firmware). Aber die SD Karte bzw. Image wird nach Reset immer noch nicht erkannt.. bleibt dort hängen.. bis anscheinend zum Timeout = Dann ist zwar das System da, aber kein Image/Programme. EDIT2: Habe dann nochmal die Delock 1GB Karte die gar nicht lief probiert. Die liefert nun ERR CMD8. Gruß Peter
Natürlich hat sich am Verhalten fast nichts geändert. Ich habe nur die genannten Funktionen hinzugefügt und ein neues "Paket" erstellt. Da bei mir 3 verschiedene SD-Karten in zwei verschiedenen Hardware-Aufbauten problemlos funktionieren sehe ich auch nicht unbedingt Veranlassung, da noch größere Codeexperimente anzustellen, weil es bei einem Nachbau nicht richtig funktioniert. Vielleicht können sich andere "Nachbauer" (sofern es sie gibt) mal mit einem Erfahrungsbericht melden. Jörg
@Jörg: Nur der Ordnunghalber. Ich habe 2 Aufbauten, die identisches (Fehl)-Verhalten zeigen. Nun dann warten wir mal auf 'Andere'. Schönes WE, Peter
Hallo Peter, Das Laden von Snapshots bei Jupiter ACE und Spectrum ist noch abhängig von einem Markerbyte (Programmanfang + 16, 0xdc beim ACE, 0xcc beim Spectrum). Wenn dieses nicht übereinstimmt, wird das Programm nicht geladen da es wahrscheinlich leer ist. Ich habe jetzt noch eine Fehlermeldung mit Ausgabe des gelesenen Bytes eingebaut. Andereseits... wenn ich nach dem Schaltplan auf Deiner Webseite gehe, hast Du einige Widerstandwerte gegenüber meinen Plänen aus mir unerfindlichen Gründen geändert. Da ich annehme, dass Du Deine zwei Aufbauten mit den hochohmigeren Spannungsteilern an der SD-Karte aufgebaut hast, möchte ich anmerken, dass ich unter solchen Bedingungen weiteres Suchen nach eventuellen Fehlern in der Software als zweckfrei einschätze. Gruß Jörg
@Jörg: Schaue ich mir mal an. Die Spannungsteiler laufen mit diesen Werten in hunderten von mmc2iec Aufbauten seit 2009 ohne jedes Problem (auch mit ATmega1284P).. Ich denke es wäre wirklich sehr hilfreich, wenn noch mehr Nachbauer hier ihre Erfahrungen beisteuern könnten. Gruß Peter
Kurzer Nachtrag. Snapshot speichern 'scheint' zu gehen. Name taucht auch nach dem Aus-/Einschalten im Tapemngr. auf. Nur laden geht auch hier nicht.. Evtl. werde ich die Tage nochmal eins aufbauen, mit den anderen Widerstandwerten als Spannungsteiler.. obwohl ich das zu 95% ausschließen möchte, das es damit etwas zu tun hat.. auch sonst werden bei Bauanleitungen zw. AVR+SD Card gerne diese Kombination 3,3k und 1,8k verwendet. Schönen Sonntag noch, Peter
Hallo alle, ich will mal kurz meine Erfahrungen mit dem neuen AX81b schildern: Ich verwende die gleiche Hardware, die ich auch mit dem "normalen" ax81 verwendet habe - auch mit einem 20 MHz-Quarz; da ich mein Pollin-LCD verwende, funktioniert das recht gut. Die LCD-Refresh-Rate ist halt etwas kleiner als sie sein sollte. Ich verwende v1.28 der Software (ax81b_v128_cb2_24m.hex). Meine SD-Karte ist eine "disk2go 1 GB" (einige Jahre alt) mit einer einzigen FAT16 Partition (knappe 1 GB gross, d.h. gesamte Kapazität der Karte). Ich kann meist problemlos das vorgefertigte Jupiter Ace Image verwenden und auch das "Fisch"-Programm laden und ausführen. Manchmal kommt es vor, dass das Jupiter Ace Image nicht erkannt wird - dann hilft neuerliches Kopieren des vorgefertigten Images auf die Karte. Wenn ich allerdings mit "ax81-fsinstall 3 3 3 3" oder "ax81-fsinstall 10 10 10 10" meine eigenen Tapes erstelle, erhalte ich beim Jupiter Ace und beim Spectrum die Meldung "No Media" im Tape-Manager (die beiden Images werden nicht erkannt, die für den ZX81 und ZX80 werden hingegen erkannt). Kopieren der vier von mir erstellten Images auf den Desktop, dann Löschen aller Files auf der Karte, und Rückkopieren der vier Images hilft dann und alle vier Images werden erkannt. Dieses Verhalten ist bei mir reproduzierbar. Da mich der ZX81 am meisten interessiert (und ich den am besten kenne), habe ich weitere Tests im ZX81 Modus gemacht. SAVEen und LOADen von ZX81-Programmen geht gut. Manchmal (nicht immer) wird beim Aufruf vom Tape-Manager (mit F9 oder SAVE oder LOAD) mein LCD wohl nicht mehr richtig angesteuert, d.h. einige Spalten werden blass und im Laufe der Zeit wird das ganze LCD blass und flackernd. Zurück im Basic geht die LCD-Ansteuerung dann wieder richtig. Wenn ich im Tape-Manager mit den Kursor-Tasten Programme auswähle, werden manchmal willkürlich Programmeinträge mit einer Reihe ©©©© ersetzt; der richtige Programmeintrag kommt aber wieder, wenn man weiter mit den Kursortasten Programme auswählt. Grüsse, Andreas Joerg Wolfram schrieb: > Natürlich hat sich am Verhalten fast nichts geändert. Ich habe nur die > genannten Funktionen hinzugefügt und ein neues "Paket" erstellt. Da bei > mir 3 verschiedene SD-Karten in zwei verschiedenen Hardware-Aufbauten > problemlos funktionieren sehe ich auch nicht unbedingt Veranlassung, da > noch größere Codeexperimente anzustellen, weil es bei einem Nachbau > nicht richtig funktioniert. > Vielleicht können sich andere "Nachbauer" (sofern es sie gibt) mal mit > einem Erfahrungsbericht melden. > > Jörg
@Andreas: Du hast einen 20MHz Quarz drin und verwendest die 24M Firmware..? Puh.. ob das aber am TV/Video dann noch so läuft.. leider hat das bei mir mit dem Pollin LCD nicht geklappt..? Ich habe übrigens einen 25MHz Quarz drin. (24M habe ich z.Z nicht). @Jörg: Ein paar weitere Tests: A. Habe die 2GB Medion Karte unter Knoppix so bearbeitet wie angegeben. 256M ID:6 FAT16 Partition angelegt und formatiert. 4 Images drauf und nun läuft sie wie auch schon die andere 256MB große SanDisk. D.h laden/speichern ZX81 OK; Schnapshot bei ACE = Nein. Version war noch die 1.27. B. V1.28 geflasht. Beim Versuch den vorherigen Schnapshot (ACE) mit Namen 'test' wieder zu laden = nichts. Keine Fehlermeldung; kein Wort 'test' da. Beim Laden von Fish: No Valid Marker DC Fehlermeldung. Sieht so aus, das wenn ich selbst einen Schnapshot speichere, das irgendwie nur ein Verzeichniseintrag weggeschrieben wird..? Ich glaube ich werde mir mal 24M Quarze bestellen und umrüsten.. EDIT: Habe mal spaßeshalber eine 24MHz Firmware geflasht. TV Schrift ist etwas verzerrt.. kann man aber lesen.. aber gleiches Verhalten wie oben.. Peter
Peter Sieg schrieb: > @Andreas: Du hast einen 20MHz Quarz drin und verwendest die 24M > Firmware..? > Puh.. ob das aber am TV/Video dann noch so läuft.. leider hat das bei > mir mit dem Pollin LCD nicht geklappt..? Ich habe übrigens einen 25MHz > Quarz drin. > (24M habe ich z.Z nicht). > Hallo Peter. Videoausgabe wird bei mir natürlich nicht funktionieren (habs erst gar nicht versucht), aber da mein LCD ja funktioniert, lasse ich vorerst den 20 MHz Quarz mal drin. Was war denn bei Dir das Problem mit dem Pollin-LCD? Bei mir gings damals recht problemlos... Andreas
@Andreas: Keine Ahnung warum das LCD nicht lief..?? Siehe weiter oben hier im Thread.. alle Verbindungen durchgeklingelt.. 22,3V durch StepUp Wandler.. @alle: Nur gerade nochmal probiert.. ZX81 Programm schreiben, speichern auf SD Karte, wieder laden.. etc. geht alles problemlos.. Peter
Hello Joerg Thanks for replying I have reflashed with v0.28 and again my sd card was unreadable. I have used another 2G SD card, branded (TDK) with SUCCESS I did a full format using v2 of the panasonic sd formatter, then copied across from the other sd card the ax81_image.bin file and the TAPE folders. upon power up, i get the Message SDV1-CARD followe by FORMATTED. then I LLIST and all my files are listed. THANKS FOR ALL YOUR HELP. Is there anyway of getting HRG on the AX81 from the code of AX81b on the standard AX81 ? I have tried reading the text on the AX81b, how does one program the atmega1284 with image.bin files??, which is what I want to try next !! Thankyou.
Hello Joerg Thanks for replying I have reflashed with v0.28 and again my sd card was unreadable. I have used another 2G SD card, branded (TDK) with SUCCESS I did a full format using v2 of the panasonic sd formatter, then copied across from the other sd card the ax81_image.bin file and the TAPE folders. upon power up, i get the Message SDV1-CARD followed by FORMATTED. then I LLIST and all my files are listed. THANKS FOR ALL YOUR HELP. Is there anyway of getting HRG on the AX81 from the code of AX81b on the standard AX81 ? I have tried reading the text on the AX81b, how does one program the atmega1284 with image.bin files??, which is what I want to try next !! Thankyou.
@David: You don't program the AVR with image.bin!! To Upgrade from AX81 to AX81b you basically have to change the 20MHz crystal to a 24/25MHz one and the video out is now on another port. So only 2 changes needed. Than of course, you need to flash the AVR with the AX81b firmware and the tape images are also completetly different! So reformat the sd card again and copy the 4 new ax81b images on them. @Jörg: Offensichtlich, scheinen die Images nicht so zusammen hängend auf der SD Karte zu liegen, wie es deine Firmware erwartet/annimmt? Hmm. ich habe bisher immer alle 4 Images markiert und dann auf die SD Karte 'gezogen' / kopiert.. kann es dabei sein, das er dann mal hiervon, mal davon was hintereinander schreibt (in der FAT alles ok).. aber die FAT wertest du ja glaube ich nicht aus.. evtl. probiere ich es mal 1 Images nach dem anderen zu kopieren.. alles meine Karten sind übrigens schon gebraucht.. Peter
Bei einer Cursorbewegung werden alle Dateinamen neu eingelesen, das ©©©© in der Zeile deutet darauf hin, dass nur 0xFF von der Karte gelesen wurde. Hast Du die gleichen Widerstände (750R/1,5K) oder auch abweichende? Eventuell wäre dann eine "saubere" Lösung mit Levelshifter sinnvoller. Die FAT werte ich nicht aus, auch beim Directory nur den ersten Sektor, was 16 Einträgen entspricht und normalerweise ausreichen sollte. Was mich bei Peter wundert: >No Valid Marker DC 0xDC ist eigentlich der richtige Merker und sollte das Laden erlauben. Die 24 und 25 MHZ Varienten unterscheiden sich nur im Timing für die TV und LCD Ausgabe sowie die Baudratenerzeugung für die Snapshot-Übertragung. > Is there anyway of getting HRG on the AX81 from the code of AX81b on the > standard AX81 ? No, this may be possible for VGA and LCD, for TV which uses on the AX81 bit-banging the necessary timing for UDG cannot be achieved. Jörg
Joerg Wolfram schrieb: > Bei einer Cursorbewegung werden alle Dateinamen neu eingelesen, das ©©©© > in der Zeile deutet darauf hin, dass nur 0xFF von der Karte gelesen > wurde. Hast Du die gleichen Widerstände (750R/1,5K) oder auch > abweichende? Eventuell wäre dann eine "saubere" Lösung mit Levelshifter > sinnvoller. Ich verwende wie in Deinem Schaltbild den 750R/1.5K Spannungsteiler für die SD Karte. Ich muss wohl mal eine andere SD Karte ausprobieren, aber die ©©©© sind wohl eher ein kosmetisches Problem - jedenfalls ist es mir noch nicht passiert, dass ein Programm nicht richtig geladen wurde... > Die FAT werte ich nicht aus, auch beim Directory nur den ersten Sektor, > was 16 Einträgen entspricht und normalerweise ausreichen sollte. Könnte das damit zu tun haben, dass von "ax81-fsinstall 3 3 3 3" generierte Images erst dann alle erkannt werden, wenn ich sie auf die "geleerte" Karte zurückkopiere (wie in einem meiner letzten Posts beschrieben)? Grüsse, Andreas
Die @@@@ sind halt ein Zeichen dafür, dass es nicht stabil läuft. Seltsam ist für mich halt, dass es mit zwei völlig unterschiedlichen Systemen (wenn ich den AX82 dazu zähle, der die selben Routinen verwendet sind es sogar 4 verschiedene) mit unterschiedlicher Verdrahtung zur Karte (Flachband vs. freifliegend), unterschiedlichen Spannungsreglern für die 3,3V ohne Probleme klappt, bei allen "Nachbauern" aber Probleme auftreten. Zumindest bei denen, die sich hier gemeldet haben. Wenn das mit dem "hinterher draufkopieren" besser klappt, werde ich das auch mal testen und dann die Anleitung entsprechend ändern. Eventuell wird es bei einer zukünftigen Version wieder die Möglichkeit geben, Flashbausteine anstelle SD-Karten zu benutzen. Jörg
Kann mir mal jemand einen Tip geben wie man das Teil bedient? Ich habe den Bausatz aus dem Forum64 heute zusammengelötet. Zuerst einmal ohne SD-Karte getestet. Der Einschaltbildschirm erscheint, kurz darauf das keine SD Karte eingelegt ist und dann wechselt er in die Eingabe. Alles soweit so gut... Anschließend habe ich mir von hier: http://www.jcwolfram.de/downloads/main.php#ax81 ein paar .p und .px Dateien runtergeladen und auf eine 8GB SanDisk ins Root Verzeichnis kopiert. Wenn ich den AX81 damit füttere und einschalte dauert es erst mal eine Weile bis der Text "E-ACMD41" erscheint. Ich denke mal das er in dieser Zeit die SD-Karte nach Dateien durchsucht. Anschließend wird in den Eingabemodus gewechselt. Nur wie starte ich nun meine Dateien? Wie rufe ich das Menü auf? Hier wird von F9 geschrieben. Nur wenn ich das drücke tut sich bei mir gar nix. Jemand eine Idee? Meine Firmware ist V0.28 (laut ATMEGA Aufkleber). Und was ist der Unterschied zwischen der AX81 und der AX81b Firmware?
Ich habe jetzt noch eine andere SD-Karte probiert. Nach einem Reset zeigt er mir an SDV1-CART. Kurz darauf NO IMAGE. Müssen die .p bzw. px Dateien in ein bestimmtes Verzeichnis?
E-ACMD41 bedeutet, dass die Karte nicht richtig initialisiert werden konnte (ACMD41 schlägt fehl). Wie man die Karte einrichtet, dazu gibt es auf meiner Homepage eine Anleitung: http://www.jcwolfram.de/projekte/avr/ax81/main.php Die .px Dateien waren eine Art Hilfsfiles für die erste Version und ab der Version 0.23 eigentlich obsolet. Der Aufruf des Tape-Managers mit F9 funktioniert nur beim AX81b, beim AX81 (Versionen <1.00) wird das Tape mittels POKE 99,x gewechselt, die Dateiliste lässt sich mittels LLIST anzeigen. Da die SD-Karten Routinen scheinbar nur bei mir stabil zu laufen scheinen, werde ich bei den nächsten Projekten schon aus Gründen der Nachbausicherheit wieder zu Flashbausteinen wechseln. Die AX81b Firmware braucht einen übertakteten ATMega1284P (24/25MHz) und kann zusätzlich benutzerdefinierte Grafik sowie ZX80, Jupiter ACE und einen monochromen ZX Spectrum emulieren. Für das Beschreiben der SD-Karte sind aber andere Tools notwendig, die ich aber nur noch als C-Quellcode und Linux-Binaries bereitstelle. Den für die Compilierung der Windows-Tools notwendigen MinGW Crosscompiler habe ich im Rahmen der guten Vorsätze (nur noch freie Software zu unterstützen) zum Jahreswechsel auf 2012 "entsorgt". Da der Quellcode offen ist muss sich eigentlich nur noch jemand finden der ihn ggf. etwas anpasst und entsprechend (cross-)compiliert. Jörg
Hallo Jörg, ich habe nun wieder etwas Zeit gefunden, mich mit dem ax81 zu beschäftigen. Ich verwende wieder die Version 0.28, da mich der ZX81 am meisten interessiert und ich mit dieser Version das meiste RAM zu Verfügung habe (15.75 kB). Wenn ich die Version 1.28 des ax81b verwende, kriege ich "nur" 15 kB; ausserdem gibt es manchmal im Tape-Manager Probleme, mein GLCD richtig anzusteuern. Nun zu meinem "Problem": ich habe mich mit dem z88dk-Cross-Kompiler beschäftigt und ein einfaches Programm cross-kompilert:
1 | #include <stdio.h> |
2 | #include <stdlib.h> |
3 | |
4 | int main(void) { |
5 | int c; |
6 | |
7 | while( (c = getchar()) !=13){ |
8 | putchar(c); |
9 | printf("\n"); |
10 | }
|
11 | |
12 | }
|
Dieses Programm wartet auf eine Tastatureingabe und gibt das Zeichen gleich auf dem Bildschirm aus. Im ax81b (v1.28) läuft das Programm wie es sollte, aber im ax81 (v0.28) läuft es erst normal, stürzt aber nach einigen Tastendrücken ab. Es sind bis zum Absturz immer unterschiedliche Anzahlen Tastendrücke; wenn es abstürzt, muss ich den ax81 mit Ctrl-Alt-Entf neu starten. Hast Du die Tastatur-Abfrageroutinen in ax81b gegenüber dem ax81 stark geändert/verbessert? Ich frage auch deshalb, weil das Spielprogramm "Nanako" (auch mit z88dk erstellt) im ax81b ladbar ist und auf Tasteneingaben (richtig) reagiert, aber im ax81 zwar läd, aber nur auf die Esc-Taste reagiert (und meint, es sei die Space-Taste). Das Spielprogramm "Uwol" (vom selben Programmierer und auch mit z88dk erstellt) kann ich im ax81b nicht laden (zuwenig RAM). Im ax81 läd es zwar, aber es reagiert wieder nur auf die Esc-Taste. Grüsse, Andreas
Hallo Andreas, in der neuen Version habe ich die Tastaturabfragemöglichkeiten stark erweitert bzw. vom Spectrum-Emulator übernommen. Der AX81 unterstützt im Wesentlichen nur die System-Eingaberoutine. Ich werde versuchen, das in der nächsten Version zurück zu portieren. Jörg
Joerg Wolfram schrieb: > Hallo Andreas, > > in der neuen Version habe ich die Tastaturabfragemöglichkeiten stark > erweitert bzw. vom Spectrum-Emulator übernommen. Der AX81 unterstützt im > Wesentlichen nur die System-Eingaberoutine. Ich werde versuchen, das in > der nächsten Version zurück zu portieren. > > Jörg Hallo Jörg, das wäre toll, danke für die Antwort... Schönes Wochenende, Andreas
Hallo Jörg, dein Vorhaben, die SD-Cards nicht mehr als Medium zu verwenden, finde ich schade. Bei meinem AX81 hat das zuverlässig funktioniert und es ist deshalb eine tolle Sache, weil ich meine eigenen ZX81-Programme via PC auf den AX81 bringe. Den AX81B baue ich diese Tage auf. Ich habe dazu eine Platine gelayoutet, die ich aber erst noch testen muss. Die Ergebnisse werde ich dann hier und im ZX81-Team-Forum vorstellen. Ich würde mich freuen, wenn jemand die Routinen für das Aufbereiten der SD-Card (fsinstall) für Windows compilieren könnte. Grüße Joachim
Joachim schrieb: > Hallo Jörg, > dein Vorhaben, die SD-Cards nicht mehr als Medium zu verwenden, finde > ich schade. Bei meinem AX81 hat das zuverlässig funktioniert und es ist > deshalb eine tolle Sache, weil ich meine eigenen ZX81-Programme via PC > auf den AX81 bringe. > Den AX81B baue ich diese Tage auf. Ich habe dazu eine Platine > gelayoutet, die ich aber erst noch testen muss. Die Ergebnisse werde ich > dann hier und im ZX81-Team-Forum vorstellen. > Ich würde mich freuen, wenn jemand die Routinen für das Aufbereiten der > SD-Card (fsinstall) für Windows compilieren könnte. > Grüße > Joachim Dem stimme ich zu! SD Karten sind überall erhältlich. Und für mich wichtig selbst Programm unter Windows zw. PC und AX81 kopieren zu können. Programmtransfer bei der ZX81 Emulation geht ja auch beim AX81b. Nur der Blocktransfer macht Probleme.. Zu dumm allerdings, das es bei dir 100% klappt.. werde die Tage mal noch einen AX81b mit deinem Spannungsteilerwerten (ca.) bauen.. Peter
Ich habe mir eine Platine für die Minimalvariante des AX81B (24 Mhz, nur BAS-Ausgang, dafür I/O-Ports) gemacht und versucht, sie mit dem File ax81b_v128_cfg2_24m.hex im ATMega1284 zum Laufen zu bringen. Leider ging nichts. Auf dem Oszi zeigt sich bei den Pins für Video und CSYNC keine Aktivität. Die Platine und die Bauteile müßten aber in Ordnung sein. Ich kann damit den ATMega programmieren und habe auch - nach Umlöten des Widerstandes von PD3 auf PC7 - auch den AX81 mit dem File ax81_026_m1284p.hex zum Laufen gebracht. Bildausgabe, Tastaturannahme, SAVE/LOAD auf SD-Card ging tadellos. Hat jemand mit dieser Hardwarevariante und dem File ax81b_v128_cfg2_24m.hex schon Erfolg gehabt? Viele Grüße Joachim
Hallo Peter, danke für die schnelle Antwort. Vielleicht baue ich die Schaltung auch noch auf LR auf. Ist dein Aufbau auch so, wie auf meinem jpg vom Layout? Ich habe nur den Jumper Jp1 weggelassen, weil ich die Einstellung auf 'TV' haben will und damit der Widerstand nur ein pullup ist. Hast du die Firmware assembliert? Ich habe das Hex-File genommen, das Jörg im Downloadpaket geliefert hat. Noch eine Anmerkung zu meinem vorherigem Eintrag: Ich habe zum Testen mit der Version ax81_026_m1284p.hex natürlich einen 20 Mhz-Quarz eingelötet. viele Grüße Joachim
Hallo Joachim, kannst Du probieren, ob beim AX81B und 20MHz Quarz etwas beim CSYNC/Video herauskommt? Die Mega1284P die ich habe, laufen z.B. bis auf einen mit 25 Mhz Quarz nicht mehr stabil (mit externem Oszillator schon), das Timing für die 25MHz hatte ich deshalb mittels angeschlossenem Oszillator ermittelt. Ich lote momentan u.a. die Möglichkeiten aus, mit (möglichst minimaler) Zusatzhardware wieder mit 20MHz auszukommen. Gruß Jörg
Hallo Jörg, offensichtlich liegst du mit deiner Vermutung richtig. Der ATMega hat sich gemeldet: Der Schirm zeigte durchbrochene horizontale Linien, die LED hat regelmäßig geblinkt und auf den Pins VIDEO und CSYNC hat sich auch was getan (siehe jpg). viele Grüße Joachim
Mir ist noch eine andere Idee gekommen. Für "NUR-TV" könnte man auch z.B. 14,756 (zur Not auch 12) MHz nehmen und müsste die Hardware nicht ändern. Die ACE- und Spectrum-Emulation wird daurch allerdings langsamer, für ZX80/81 sollte es aber ausreichen. Das könnte ich auch kurzfristig hinbekommen. Der ATMega644P macht lt. Uzebox-Forum Probleme beim Overclocking, das gleiche könnte auch für den 1284P gelten. Jörg
Hallo Jörg, was mich betrifft: Mir würde die ZX81-Emulation mit I/O-Ports und TV/BAS-Ausgabe auf 12 oder 14,756 Mhz völlig genügen. Super wäre auch, wenn dies mit diesen Quarzen geht, eine Version ZX81-Emulation mit I/O-Ports und LCD-Ausgabe. Da müßte man halt auf einen Port verzichten. Man könnte dann Steuerungsaufgaben auf dem (echten) ZX81 entwickeln und testen und auf dem AX81B laufen lassen (z.B. Modellbahnsteuerung, Wickelmaschine, Aquariumbeleuchtung etc.). Es würde mir aber auch nichts ausmachen, einen Ozillator zu verwenden oder die Hardware zu erweitern. Wenn wir das alles durch haben, würde mich interessieren, wie ich den ZX81-Zeichensatz für die ZX81-Emulation ändern kann. Für ein Gleisschaltbild zur Modellbahnsteuerung habe ich selbst Symbole entwickelt, damit diese auf einem Textbildschirm wie in einem Stellwerk aussehen. Diese Software läuft bereits auf meinem ZX81, bei dem ich den Zeichensatz verändern kann. Nun könnte ich mit deiner genialen Idee, das Stellwerk fest installieren, weil ich mir günstig einen 'ZX81' nachbauen kann. Gleiches gilt auch für meine anderen zig Steuerungen, die ich mit dem ZX81 gemacht habe. viele Grüße Joachim
Joerg Wolfram schrieb: > Mir ist noch eine andere Idee gekommen. Für "NUR-TV" könnte man auch > z.B. 14,756 (zur Not auch 12) MHz nehmen und müsste die Hardware nicht > ändern. Die ACE- und Spectrum-Emulation wird daurch allerdings > langsamer, für ZX80/81 sollte es aber ausreichen. Das könnte ich auch > kurzfristig hinbekommen. Hi Jörg: Hört sich für mich gut an! Mein Hauptinteresse gilt ebenfalls ZX81/ZX80. Ich hatte vorgestern mir wieder einen AX81 (nicht b) auf einer mmc2iec Platine aufgebaut.. alles ok.. gestern wollte ich ihn wieder in Betrieb nehmen.. nichts mehr auf dem Bildschirm zu sehen..?? habe mich so geärgert über dieses instabile Verhalten, das ich ihn auseinander und zum mmx2iec umgebaut habe.. ;-) 14,756 MHz Quarze habe ich in der Bastelkiste.. Peter
Wenn bei 20MHz kein Videosignal kommt, ist wohl eher etwas anderes faul. Z.B. wenn die Jumper auf LCD stehen. Nach letztem Stand ist es so, dass es zum AX81b drei neue "Frequenzvarianten" geben wird. 12MHz und 14,7456MHz für TV/LCD und 20MHz für VGA/LCD (wie beim alten AX81). Laut dem Test von: http://forum.tlienhard.com/TS1000/www.ts1000.us/romdisassembly.htm komme ich bei 12MHz und PAL auf ca. 1,45-fache Geschwindigkeit im ungebremsten Modus, von der Seite her sollte es auch keine Probleme geben. Was die SD-Karten anbetrifft, da die mir zugänglichen Karten alle funktionieren, sehe ich derzeit keinen Handlungsbedarf. Eventuell werde ich noch ein komprimiertes Image zum Download bereitstellen, welches dann mittels dd auf die Karte kopiert werden kann. Jörg
Hallo Jörg! Das ist eine gute Lösung. Bin schon auf die neuen Files gespannt! Grüße Joachim
Joerg Wolfram schrieb: > in der neuen Version habe ich die Tastaturabfragemöglichkeiten stark > erweitert bzw. vom Spectrum-Emulator übernommen. Der AX81 unterstützt im > Wesentlichen nur die System-Eingaberoutine. Ich werde versuchen, das in > der nächsten Version zurück zu portieren. Hi Jörg. Habe mir wieder einen AX81 zusammen gebaut (nicht die b Version). V0.28 geflasht. Läuft soweit prima! Habe auch die Widerstandsspannungsteiler etwas herabgesetzt (2,2k/1k). Ich würde mich freuen, wenn du wie oben geschrieben, die besseren Tastaturroutinen in den AX81 zurück portieren würdest.. Den Quarz mit aktuell 20MHz habe ich in eine Fassung gesetzt, sodaß ich ihn ggf. tauschen kann, falls mal eine Version mit 12/14,xMHz kommt. Peter
Ach ja.. hatte ich noch vergessen. Der AX81 (ohne b) hat bei mir immer noch die Probleme, das eine Ctrl-Alt-Del keine Bildschirmausgabe mehr produziert.. zumindest sehe ich nichts mehr am TFT..(FBAS/Video)..? Und es wäre schön, wenn man den AX81 in nahe der original Geschwindigkeit laufen lassen könnte (wie beim AX81b). Peter
Hello All I'm using avrdude via a UsbtinyIsp to program the avr 1284p, but is limited by the 64k file size barrier, what programmer have other poeple used, can some one please supply a programmed 1284p avr for me. thanks David
Hmm. I am not aware about such 64k barrier?? I am using avrdude under Windows XP with usbtiny stick. Such sticks cost under 10€ at ebay. Peter
Soo.. ein paar mehr Hinweise evtl.. Habe mir auch wieder einen AX81b aufgebaut mit 2,2k/1k Widerstandsteilern zur SD Karte hin. 25MHz Quarz. Ohne Karte einwandfrei. Menue kommt. Tastatur arbeitet. alles ok. Mit 128MB SanDisk kommt KEIN Bild!? Mit 1GB (welche im AX81 läuft) kommt CRC error (verschiedenen Werte). (Auch nach frisch formatieren.. immer CRC error). Habe darauf hin genau diesen Aufbau wieder zum AX81 umgebaut (20MHz Quarz + Videoout geändert) und hier läuft alles, wie es soll inkl. der 1GB SD Karte! Also irgendwas ist da mit dem SD Kartenhandling faul! Und warum kommt kein Bild/crc error sofort nach dem Einschalten, ohne das das Menue zur Systemauswahl kommt.. ich dache erst danach greift er auf die SD Karte zu..? @Jörg: Evtl. helfen diese Hinweise ja.. Gruß Peter
CRC-Error bedeutet nix Gutes. Und zwar wird beim Start des Intro-Screens eine Summe der FLASH-Bytes (ohne den Snapshot-Bereich) gebildet und mit einer vorberechneten verglichen. Bei Nichtübereinstimmung kommt dann der CRC-Fehler und es wird die aktuell ermittelte Summe angezeigt. Ursache ist ganz einfach, dass der Controller bei der Frequenz nicht mehr gescheit funktioniert. Warum das von der angeschlossenen SD-Karte abhängig ist kann ich nicht sagen, da zu diesem Zeitpunkt noch nicht auf die Karte zugegriffen wird. In die "alte" Version möchte ich nicht mehr unnötig viel Zeit reinstecken, vielleicht kommt noch die (leider nicht ganz triviale) Zurückportierung der Tastaturroutinen, mehr aber sicher nicht. Dafür wird der AX81b in der nächsten Version die zusätzlichen Quarzfrequenzen unterstützen womit sich dann die Übertaktungsprobleme umgehen lassen sollten. Jörg
Peter The 64k barrier I was referring to, the usbtiny is limited to only writing upto 64k of flash!
I think such programmers should work: http://www.ebay.de/itm/Programmer-AVR-USB-USBasp-Programmierung-/190688148398?pt=Wissenschaftliche_Ger%C3%A4te&hash=item2c65e63bae#ht_1400wt_1185 I have 2 of those: http://www.mikrocontroller.net/articles/AVR-ISP-Stick Peter
Hello Jorg found this site http://www.radiolocman.com/shem/schematics.html?di=71093 an interesting project to increase the amount of sram available for the AX81b see attached pictures and eagle files Regards David
Hi David, the RAM-Extension You have postet is decided to use with controllers which have an external RAM interface. The Mega128 has an external RAM interface but the Mega1284 of the AX81 has none. By the way, the Mega128 cannot be used because the UART is not able to work in SPI master mode which is necessary for video output. Joerg
Jorg Found this site http://belogic.com/uzebox/index.asp Where the atmega644 is over clocked to 28 MHz, there is a download page, not sure if sources are available, but board has sd socket David
Jorg re: uzebox - AX81 modification This site of the uzebox based on a atmega644, I have sourced two suppliers 1 is 50% cheaper than the other . £4.90 this price includes board and shipping to united kingdom, As per Peter with the iec2sd repurposed board, I shall do similar with this uzebox board, just needing keyboard and video modifications!!!! ISP and sd connections in correct places for the AX81!!! David
Hi David, it seems that only the Mega644P and the Mega1284P have problems with overclocking. But the Mega644 has only 4K RAM and one UART. You can create Your own hardware config file and build then hex file with "avra main.asm". Joerg @alle Wer auch im C64 Forum unterwegs ist, das Flackern bei Tastatureingaben lässt sich eventuell mit ein oder zwei zusätzlichen Abblock-Kondensatoren am ATmega und am Tastaturanschluß beheben. Bei manchen 25MHz Quarzen scheint der Oszillator unter bestimmten Bedingungen kurz auszusetzen. Aber ich möchte mich nicht dort auch noch anmelden...
Hallo zusammen! Ich habe heute meinem AX81B, der bisher nicht wollte, einen 24 MHz-Oszillator verpaßt und der AX81B ist als ZX81 tadellos gelaufen. Der Bildschirm flackert ganz leicht, das kann aber auch an der Monitoreinstellung liegen. Firmware ist ax81b_v128_cfg2_24m.hex. SD-Cards (1 GB Platinum, 128 MB Canon) lassen sich einwandfrei auslesen und beschreiben. Ich habe lediglich die Images, die Jörg mitliefert, draufkopiert und vorher mit FAT16 formatiert. Den Card-Reader habe ich mir selbst gebaut (siehe Layout). Den verwende ich auch schon seit einiger Zeit mit meinem ZX81 über eine PIO. @Jörg Ich habe einpaar kleine Fehler in der ZX81-Emulation gefunden. Soll ich weiter die Version 1.28 testen und Fehler melden? Grüße Joachim
Hallo Joachim, Die "neue" Version wird wahrscheinlich heute oder morgen fertig, ich muß nur noch testen, ob das LCD bei 12 und 14,7456MHz noch akzeptabel geht oder ich mit der Refreshrate runtergehen muss. Und die Doku ergänzen. Es wird auch eine 20MHz Version (VGA/LCD) geben, die das Timing der alten Variante in allen Modi unterstützt. Die Fehler kannst Du ruhig schon posten, vielleicht lässt sich der eine oder andere schon beheben... Gruß Jörg
Jetzt dauert es doch noch etwas länger, da ich meinen AVR-Programmer im Ausland hab liegen lassen und mir erst einen neuen bauen muß... Jörg
Question ? why does the ax81b need to run at 24 or 25 mhz ?, if this is a overclock problem with timing ? Regards David - Retrogadgets
hello Jorg In the chipbasic2 layout, the two eeprom chps, can not these be used as extra memory instead of the 'Disk-storage' as originally designed for the Ax81 boards. regards David - Retrogadgets
Hallo zusammen! Leider bin ich nicht in der Lage, ein Image mit ZX81-Programmen für die AX81B-Variante herzustellen. Auch für den Test wäre es für mich hilfreich bereits bestehende Testprogramme für den ZX81 auf dem AX81B zu nutzen. Auch hätte ich dann einen Assembler/Disassembler. Wäre jemand im Forum bereit, dies für mich zu tun? Ich würde meine ZX81-Programme als .p-Files per Email schicken, die ich dann als Image für eine SD-Card per Email zurückbekomme. Viele Grüße Joachim
Hi David, the UART-Video output can only wor with f/2, f/4... so only the 24MHz version can serve VGA and TV. Bit-Banging at PORTC which has realized TV output at 20MHz is no longer used. The 12/14/20 MHz versions in the next release will use lower clock frequencies but cannot switched between VGA and TV output. Strangely I dont have timing problems at 24MHz, perhaps this depends on MCU datecode and board layout. I asked a person wich had problems to use a MCU from me but he declined. Since the overclocking situation is not clear, I will not publish the AX82 spectrum emulator. It's not planned to use the I2C EEPROM as storage solution for the AX81. The old version can use DataFlash but this is removed at the AX81b. Hallo Joachim, das kann ich schon machen. Jörg
Hallo Jörg, vielen Dank für das Angebot!! Wohin kann ich die Files schicken? Geht das über das Forum? Bin gerade dabei, ein LCD anzuschließen. Bisher noch kein Erfolg. Habe die Minimalvariante (siehe mein Layout dazu) verwendet und das LCD wie hier im Forum beschrieben angeschlossen. Dazu ein stepup-Wandler mit 25 V (da muss ich noch experimentieren). Außerdem habe die Firmware für 24MHz und der Endung cb2 (V1.28) verwendet. Ist in dieser Version schon eingebaut, dass man mit PortA4 einen Transistor zum Einschalten der 5V-Versorgung für den stepup-Wandler ansteuern kann? PortC4 habe ich auf GND gelegt. Muss ich sonst noch etwas beachten? Optimal wäre diese Variante: Minimalvariante mit Firmware, die BAS oder LCD ansteuern kann und Jumper dazu an PortB1 abfrägt. Dazu I/O (PortC) oder eine Variante die nur LCD ansteuert aber auch mit I/O ist. Viele Grüße Joachim
Hallo Joachim, die "cb2" Dateien sind für die ChipBasic Hardware gedacht die mit "cfg2" für die minimale Hardware. LCD ist für die minimale Hardware nicht vorgesehen und wird es von meiner Seite wohl auch nicht geben. Einfach deswegen, weil ich dafür zum Debuggen wieder neue Hardware aufbauen müsste. Der Treiber dafür selbst ist zwar drin, wird aber nicht benutzt. Das Einschalten des LCD via PORTA.4 (LO-aktiv) sollte bei den cb2-Versionen auf jeden Fall funktionieren. Jörg
Zum Thema I/O ist mir gestern noch etwas eingefallen. Bei der jetzigen Lösung kann man gerade einmal 2 Parallelports benutzen obwohl noch mehr Resourcen verfügbar wären: I2C, ADC, TIMER0, SPI (wenn man externen Massenspeicher nicht nutzt). Außerdem kann man vom ZX81 BASIC die I/O nicht direkt ansprechen, das geht nur beim ACE und Spectrum. Daher habe ich vor, die gesamten AVR I/O Register wahlweise in den Z80 Speicherraum bei 0x3e00 (15872) einzublenden. dann könnte man ohne Probleme mittels PEEK und POKE auf die AVR I/O Register zugreifen und schneller wäre es auch noch. Dazu muß ich die ROMs entsprechend patchen damit der Ramtest nicht in die AVR-Register schreibt. Außerdem können "wildgewordene" Programme das System komplett zum Absturz bringen, aber darin sehe ich das kleinere Übel da das Ganze über das Startmenü abschaltbar sein wird. Zusätzlich werde ich ein paar kleine Programmlistings veröffentlichen in denen gezeigt wird, wie man auf die Ressourcen zugreift. Meinen neuen Lochraster-USBASP habe ich gestern fertigbekommen, mal sehen wie ich vorankomme... Jörg
So, die neue Version ist ferig und steht zur Verfügung: http://www.jcwolfram.de/projekte/avr/ax81b/main.php In den 12 und 14 MHz Versionen funktioniert die Jupiter ACE Emulation im LCD-Mode nicht mehr, weil das Takte nicht mehr ausreichen. Jörg
In der Doku steht es leider noch nicht drin, der AVR I/O Raum wird ab Adresse 0x7e00 (32256) eingeblendet (wenn aktiviert). Beispiel LED Blinken, PORTA=32288, DDRA=32289:
1 | 10 POKE 32289,255 |
2 | 20 POKE 32288,176 |
3 | 30 PAUSE 25 |
4 | 40 POKE 32288,85 |
5 | 50 PAUSE 25 |
6 | 60 GO TO 20 |
Jörg
Kleine Korrektur, PORTA hat nicht die Adresse 32288 sondern 32290. Auf der Adresse 32288 liegt PINA. Jörg
Hallo Jörg, ich habe gerade Deine Version 1.32 des ax81b ausprobiert, konkret habe ich die 20 MHz-cb2-Variante verwendet. Danke für die neue Version! Hier einige erste Erfahrungen: Eine 2GB takeMS SD-Speicherkarte funktioniert im ZX81-Modus gut, nachdem ich eine ca. 1GB Partition auf der Karte erstellt habe und dann die vier (vorher erstellten) Tape-Images als erstes von meiner Festplatte auf die Karte kopiert habe (eine grössere ca. 2GB Partition hat nicht funktioniert). Eine 1GB disk2go Karte funktioniert zwar auch, aber im Tape-Manager sehe ich bei dieser Karte manchmal Zeilen mit @@@@@@@, wenn ich die Kursortasten verwende (ich werde diese Karte halt nicht mehr verwenden). Eine Sache funktioniert aber noch nicht richtig: ich verwende ja das Pollin-GLCD, das ein M-Signal benötigt. Dieses Signal liegt an PORTD.6; mit dem Oszilloskop habe ich gesehen, dass es beim ax81b im normalen ZX81-Betrieb kein regelmässiges Rechtecksignal mit genau 50% duty-cycle ist - beim "alten" ax81 war es das noch. Ausserdem fällt dieses M-Signal manchmal (nicht immer) aus, wenn der Tape-Manager aufgerufen wird. Mit "Ausfallen" meine ich, dass PORTD.6 manchmal entweder konstant auf 0V oder 5V liegt - das hat das GLCD nicht so gerne: man sieht auf dem Display, dass irgendwas "komisch" ist (verwaschene/blasse Anzeige). Grüsse, Andreas
Hallo Andreas! Ich habe auch das WD-H3224V-LCD angeschlossen und komme auf das gleiche Problem. Allerdings verschwindet bei mir das Bild nach ca. 1 Min fast vollständig. Es ist nur noch ein Schatten vom Cursor zu erkennen. Ich erzeuge mit einem MC34063AD 25 V. Die liegen beim Verschwinden des Bildes noch stabil an. Hast du bereits eine Schaltung für deine 21,5 V? Ich bin mir nicht sicher, ob das Problem bei mir ausschließlich von der Ansteuerung oder nicht auch von meiner Spannungsversorgung kommt. Ich habe es noch mit der Firmware V.1.28 probiert. Die V.1.32 kommt dieses Wochenende dran. Grüße Joachim
Eventuell liegt am Code der dazu dient, bei 60Hz (VGA/LCD/NTSC) jeden 6. VSYNC zu ignorieren. Ich kann heute abend mal nachsehen, ob ich etwas finde. Da ich kein Oszi habe ist das allerdings nicht ganz einfach. Ansonsten muss man sich halt mit einem Flip-Flop an FLM behelfen. Jörg
@Joachim: ich erzeuge als Kontrastspannung ziemlich genau 21.5 V mit einem MC34063A. Ich bekomme beim "alten" ax81 (mit Firmware 0.28) damit ein stabiles (über viele Stunden) und kontrastreiches Bild; beim ax81b ist das Bild auch stabil, sieht aber gefühlt etwas "anders" aus als beim ax81. Ich bekomme halt auch die oben genannten Probleme beim Aufruf des Tape-Managers und da das M-Signal nicht genau 50% duty-cycle hat, will ich mein Display nicht allzu lange am ax81b betreiben. Das Bild verschwindet aber keinesfalls schon nach 1 min wie bei Dir. Vielleicht sind Deine 25V zu hoch; wenn ich mit der Konstrastspannung etwas über die 21.5 V gehe, wird das ganze Bild schwarz. @Jörg: Du hast wahrscheinlich recht, laut meinem Oszi fehlt beim ax81b im ZX81-Normalbetrieb jeder 6. low-high bzw. high-low Wechsel im M-Signal. Warum aber bleibt das M-Signal manchmal konstant auf high oder low, wenn der Tape-Manager aufgerufen wird? Wenn Du Änderungen an der Firmware bez. des M-Signals machst, kann ich gerne mit meinem Oszi nachmessen, was genau passiert... Grüsse und schönes Wochenende, Andreas
Hallo Andreas, könntest du bitte einen Schaltplan oder die Bauteilwerte einstellen? Vielen Dank und viele Grüße! Joachim
Joachim Merkl schrieb: > Hallo Andreas, > könntest du bitte einen Schaltplan oder die Bauteilwerte einstellen? > Vielen Dank und viele Grüße! > Joachim Hallo Joachim, der Schaltplan für den Step-Up-Wandler ist gemäss Motorola-Datenblatt für den MC34063A (Seite 5) mit folgenden Bauteilwerten: L = 220 uH (Drosselspule mit Ferrit-Ringkern) R_SC = 2.2 Ohm C_T = 220 pF R1 = 3.3 kOhm R2 = 51 kOhm + 10 kOhm Poti (zum Einstellen der Kontrastspannung) C_O = 22 uF / 50 V Diode: SB 160 180 Ohm von Pin 8 nach Pin 7 (wie im Datenblatt) Diese Schaltung funktioniert bei mir wunderbar... Gruss, Andreas
Jorg I see in the original chip basic 644 project you have a 64k external ram interface The 64K memory expansion XRAM64, can this be used with the AX81 and AX81b ??
Hallo Joerg, mit Interesse verfolge ich schon eine ganze Weile dieses (und das Vorgänger-) Projekt. Respekt vor dieser Leistung und vielen Dank dafür! Da ich selbst mal im Besitz eines ZX81 war und noch immer eines ZXSpectrum+ bin, "musste" ich das natürlich mal nachbauen. Das ganze hab ich erstmal auf LR ausprobiert. Leider scheinen meine 1284p allergisch gegen Übertakten zu sein, oder der LR Aufbau ist im Quarz-Bereich suboptimal. Laut Oszi schwingt der Quartz mit 24MHz nicht richtig. Mit 20MHz ging es zwar, bis zur letzten Version konnte man da die TV Ausgabe aber nur erahnen :-). Aber mit der neuesten Version ist ja alles besser. Schnell nen 14,7MHz Quartz drauf, die neue Version geflasht - und WOW alles geht. Das TV-Bild ist stabil, auch die MicroSD-Karte (takeMS mit SD-Adapter) wurde sofort erkannt und Tapes lassen sich in den ZX81 laden (erstellt übrigens nach Deiner Anleitung). Im Speccy Mode kann ich snapshot speichern und auch laden. Sogar der ACE Emu ging (z.B. Fish aus Deinem Snapshot Paket). Hattest Du nicht geschrieben, das die ACE Emulation mit 14MHz nicht geht? Oder hab ich da was falsch verstanden? Nun wollte ich mir den AX81b mal selbst übersetzen. Leider scheinen die Sourcen nicht vollständig zu sein. Beim Übersetzen mit dem avra werden Dateien in Verzeichnissen vsys/speed1 etc gesucht. Diese Verzeichnisse finde ich in Deinem tarball leider nicht. Auf Deiner Homepage schreibst Du auch etwas von einer compile.sh, die es scheinbar auch nicht gibt. Bitte nicht falsch verstehen, ich finde es toll, dass Du die Sourcen der Öffentlichkeit zugänglich machst. Das Neukompilieren wollte ich machen, um das Tastaturlayout umzustellen und ggf. die Config-Pins zu verschieben/wegzulassen. Als nächstes steht die Inbetriebnahme des LCDs an (Pollin WD-H3224V-LCD). Wenn der AX81b dann in sein Gehäuse eingezogen ist, kann ich ja mal ein paar Fotos hochladen. Ach ja, ich hatte mal die Idee, den Touchscreen des LCD's als Tastaturersatz zu nehmen (mit nem 2. AVR, der dann PS2 emuliert). Könnte man den den AX81b dazu bringen, bei Hi-Pegel an einem Pin ein statisches Bild aus dem Flash anstatt des normalen Bildschirminhalts anzuzeigen? Dann würde ich bei Touchscreenberührung die Tastatur des ZX81 (bzw des gerade emulierten Rechners) einblenden, und man hätte eine schön kompakte Rechnereinheit mit Bedienung, die man wunderbar für Steuerungsaufgaben nutzen könnte. Da stand doch auch mal ein Autostart-Feature auf Deiner Agenda. Ist das immer noch angedacht. Habe diesbezüglich nix mehr gelesen. Ich würde mich auch gern selbst an den letzten beiden Features versuchen, was aber im Moment an den fehlenden Sourcen hängt. Gruss, Micha
@ David The usage of the XRAM64 for the AX81 is not planned. @ Micha Ich mache in den nächsten Tagen ein neues Paket fertig, bin aber gerade auf den Weg in den Urlaub. Autostart ist schon realisiert, und zwar über die Snapshot-Funktion. Wenn ein aktiver Snapshot vorhanden ist und während des Intro-Screen keine Taste gedrückt wird, lädt das System den Snapshot und macht an der Stelle weiter. Viele Grüße, Jörg
Joerg Wolfram schrieb: > Ich mache in den nächsten Tagen ein neues Paket fertig, bin aber gerade > auf den Weg in den Urlaub. Na dann wünsche ich einen schönen Urlaub! > Autostart ist schon realisiert, und zwar über die Snapshot-Funktion. > Wenn ein aktiver Snapshot vorhanden ist und während des Intro-Screen > keine Taste gedrückt wird, lädt das System den Snapshot und macht an der > Stelle weiter. Ah, vielen Dank. Das hatte ich dann wohl überlesen. Gruß, Micha
@Jörg! Nochmals vielen Dank für deine Unterstützung und die Zusendung der Sourcen! Die Programme ax81-fsinstall, ax81-read und ax81-write konnte ich mit MinGW für Windows kompilieren. Es kamen nur Warnmeldungen hinsichtlich Slash und Backslash, da die Backslashes in den Pfadnamen als Escapes verstanden werden können. ax81-fsinstall 32 0 0 0 ist einwandfrei gelaufen. Ich habe damit 32 Tapes und eine Binärdatei erzeugt Mit ax81-write konnte ich P-Files in das Tape000 schreiben. Die Programme lassen sich in den AX81B tadellos laden. ax81-read habe ich garnicht zum Laufen gebracht. Da kommt 'unknown mode' und 'wrong place'. Mehrmaliges überprüfen der Pfadbezeichnungen brachte kein Ergebnis. Die Backslashes sind alle richtig gesetzt. Die Ausgabe des filename ergab 'TAPES81_SPECTAPE_255. Da muss ich noch dranbleiben. Bei ax81-write ergibt sich noch folgender Fehler: Alle P-Files, egal in welchem Tape sie stehen, werden in das TAPE000 geschrieben. In diesem Verzeichenis selbst ist kein P-File. Somit müßte die Binärdatei falsch beschrieben werden. Haben schon Leute im Forum Erfahrungen mit ax81-read und -write? Im Anhang meine veränderten Sourcen und die Exe-Dateien. @Andreas Die Schaltung mit deinen Bauteilwerten habe ich aufgebaut. Ich bekomme 20 bis 25 V und kann mit dem Poti die 21,5 V tadellos einstellen. Leider hat sich am Verhalten des Displays nichts verändert. Die Zeichen verblassen nach ca. 1 Min völlig. Jetzt werde ich mit dem Oszi mal die Anschlüsse durchprüfen und evtl. das Display wechseln. Habe zum Glück noch einpaar. Vielleicht ist mir beim Anlöten der Kabel am Display ein Fehler unterlaufen. Hast du irgendwo Buchsen für den Folienstecker aufgetrieben. Die Hinweise im web habe ich verfolgt. Die Buchsen wurden aber aus dem Sortiment genommen. viele Grüße an alle Joachim
Hallo Joachim, bist Du sicher, dass das M-Signal (von PORTD.6 des ATMega1284P) auch am entsprechenden Pin des LCDs ankommt? Wenn dieses Signal fehlt, kann es durchaus zu solchen komischen Effekten kommen, die Du beschreibst. Wenn du ein korrektes Bild (kurzzeitig) siehst, sollten zumindest die Datenleitungen und die Signale CP, LOAD und FLM des LCDs richtig angeschlossen sein. Probier doch auch mal spasseshalber die "alte" Version 0.28 (ax81 ohne "b"), am besten mit einem 20 MHz Quarz; diese Version hatte ich damals verwendet, um mein LCD zum erstem Mal in Betrieb zu nehmen... Angeschlossen habe ich das LCD auf etwas unkonventionelle Art: ich habe mit einem Skalpell die einzelnen Leitungen des Flexprint-Kabels getrennt und diese dann an eine Steckerleiste bzw. Litzen gelötet. Nachdem alles funktioniert hat, habe ich diese empfindlichen Lötstellen mit Zweikomponentenkleber umhüllt (quasi als "Zugentlastung") - das Ganze war zwar ein Haufen Arbeit, aber ich habe auf die Schnelle keine Buchsen für das LCD auftreiben können... Grüsse, Andreas Joachim Merkl schrieb: > @Andreas > Die Schaltung mit deinen Bauteilwerten habe ich aufgebaut. Ich bekomme > 20 bis 25 V und kann mit dem Poti die 21,5 V tadellos einstellen. > Leider hat sich am Verhalten des Displays nichts verändert. Die Zeichen > verblassen nach ca. 1 Min völlig. Jetzt werde ich mit dem Oszi mal die > Anschlüsse durchprüfen und evtl. das Display wechseln. Habe zum Glück > noch einpaar. Vielleicht ist mir beim Anlöten der Kabel am Display ein > Fehler unterlaufen. Hast du irgendwo Buchsen für den Folienstecker > aufgetrieben. Die Hinweise im web habe ich verfolgt. Die Buchsen wurden > aber aus dem Sortiment genommen.
Hallo zusammen! Die Probleme mit ax81-read habe ich beheben können. Es waren tatsächlich die Backslashes. Jetzt funktioniert es einwandfrei. Allerdings steht der Test, die so erzeugten P-Files in einem ZX81 laufen zu lassen, noch aus. @Andreas: Ich fürchte, ich habe gar kein M-Signal. Schaue mir das Signal jetzt mal auf einem AX81 an. Grüße Joachim
Hallo Andreas! Das M-Signal-Problem ist gelöst. Zu meiner Schande muss ich gestehen, dass ein Kurzschluss zwischen 5V und dem M-Signal die Ursache war. Murphy läßt grüßen. Auch ich kann bestätigen, dass das Display nur mit 21,5 V optimal läuft. Die Schaltung, die ich zuvor hatte (25 V) bringt ein blasses Bild. Sehr gut ist auch deine Idee, mit einem Poti nachregeln zu können. Ich werde aber auf jeden Fall noch die Hintergrundbeleuchtung aktivieren. Eines ist mir noch aufgefallen: Es funktioniert auch tadellos, wenn die 5V-Versorung des Step-up-Wandlers gleichzeitig mit dem AX81B eingeschaltet wird. Die PA4-Transistor-Lösung hatte ich vorgesehen, aber noch nicht realisiert und es klappte trotzdem. Kann das Display dadurch beschädigt werden? Ich kann nur jedem empfehlen, diese tolle Projekt nachzubauen. Auch Leuten, die mit Windows arbeiten, zumal die Tools nun übersetzt sind und laufen. Grüße Joachim
Hallo Joachim, schön, dass es nun bei Dir klappt - danke fürs Feedback. Ich schalte den Step-Up-Wandler auch gleichzeitig mit dem AX81 ein (und auch aus) und es funktioniert eigentlich gut. Beim Wegnehmen der Versorgungsspannung bleiben allerdings auf meinem Display noch für einige Sekunden schwarze Streifen oder manchmal eine grössere schwarze Fläche übrig - keine Ahnung, ob das dem Display auf lange Sicht schadet. Ich lasse es jedenfalls mal so, es tritt ja nur beim Ausschalten auf... Die Hintergrundbeleuchtung enzuschalten lohnt sich jedenfalls auch: viel bessere Ablesbarkeit bei geringerem Umgebungslicht. Viele Grüsse, Andreas Joachim Merkl schrieb: > Hallo Andreas! > Das M-Signal-Problem ist gelöst. Zu meiner Schande muss ich gestehen, > dass ein Kurzschluss zwischen 5V und dem M-Signal die Ursache war. > Murphy läßt grüßen. > Auch ich kann bestätigen, dass das Display nur mit 21,5 V optimal läuft. > Die Schaltung, die ich zuvor hatte (25 V) bringt ein blasses Bild. Sehr > gut ist auch deine Idee, mit einem Poti nachregeln zu können. > Ich werde aber auf jeden Fall noch die Hintergrundbeleuchtung > aktivieren. > > Eines ist mir noch aufgefallen: Es funktioniert auch tadellos, wenn die > 5V-Versorung des Step-up-Wandlers gleichzeitig mit dem AX81B > eingeschaltet wird. Die PA4-Transistor-Lösung hatte ich vorgesehen, aber > noch nicht realisiert und es klappte trotzdem. Kann das Display dadurch > beschädigt werden? > > Ich kann nur jedem empfehlen, diese tolle Projekt nachzubauen. Auch > Leuten, die mit Windows arbeiten, zumal die Tools nun übersetzt sind und > laufen. > > Grüße > Joachim
Hallo zusammen! Heute wollte ich den ax81b so wie Jörg in eine Tastatur einbauen. Dabei habe ich festgestellt, dass der ax81b nicht mit allen PS/2-Tastaturen geht. Ich habe hier vier PS/2-Tastaturen. Bei Zweien nimmt er alle Tasten (soweit vom ZX81-Tastatur-Input möglich) an, bei den anderen beiden, es sind Siemens Fujitsu, nicht. Da sind es nur sehr wenige Tasten, die angenommen werden. Die Gegenprobe am PC: alle vier Tastaturen sind ok. Laut Wiki gibt es keine unterschiedlichen Protokolle bei PS/2-Tastaturen. Hat jemand eine Idee, woran das liegen kann? Die Hintergrundbeleuchtung habe ich ganz einfach über einen Spannungsregler (LF33CV) an 5 V angeschlossen. Das ist ein Spannungsregler, der 3,3 V ausgibt. Damit ist die Beleuchtung m.E. optimal, obwohl lt. Datenblatt 3,8 V gefordert sind. Vorwiderstände oder Poti brauchte ich nicht. Die LED ziehen aber ungefähr 500 mA. Grüße Joachim
Achtung, der LF33CV wird ziemlich heiß! Da suche ich noch nach einer anderen Lösung. Ich probiere es mal damit http://forum.tlienhard.com/phpBB3/viewtopic.php?f=2&t=676&p=5467&hilit=Schaltregler#p5467 und berichte wieder. Grüße Joachim
Hallo Joachim, wenn Deine 500 mA nicht doch zu viel Strom durch die LEDs sind! Ist das pro Strang oder gesamt für alle drei Stränge? Ich betreibe meine Hintergrundbeleuchtungs-LEDs mit 20 mA (!) pro Strang - ich meine, hier irgendwo im Forum diesen Stromwert für die LEDs für dieses Pollin-Display gesehen zu haben. Diese 20 mA reichen mir vollkommen aus... Gruss, Andreas Joachim Merkl schrieb: > > Die Hintergrundbeleuchtung habe ich ganz einfach über einen > Spannungsregler (LF33CV) an 5 V angeschlossen. Das ist ein > Spannungsregler, der 3,3 V ausgibt. Damit ist die Beleuchtung m.E. > optimal, obwohl lt. Datenblatt 3,8 V gefordert sind. Vorwiderstände oder > Poti brauchte ich nicht. Die LED ziehen aber ungefähr 500 mA. > > Grüße > Joachim
Hallo Andreas! Ich habe die Pins 15,21 und 23 an 3,3 Volt eines regelbaren Netzteiles gehängt. Die Pins 16, 22 und 24 an GND. Alos parallel angeschlossen. Dabei hat mir das Netzteil 500 mA angezeigt. Wie hast du die Pins angeschlossen? Mir sind 500 mA auch viel vorgekommen. Hätte ich seriell anschließen sollen? viele Grüße Joachim
Hallo Joachim, ich habe meine drei Hntergrund-LED-Stränge jeweils über 150 Ohm an die 5 V Versorgung angeschlossen; das gibt dann ca. 20 mA pro Strang. Also Pins 16, 22, 24 an GND und Pins 15, 21, 23 jeweils über 150 Ohm Widerstände an 5 V. Parallelschalten (ohne Vorwiderstände) sollte man LEDs grundsätzlich nicht... Gruss, Andreas Joachim Merkl schrieb: > Hallo Andreas! > Ich habe die Pins 15,21 und 23 an 3,3 Volt eines regelbaren Netzteiles > gehängt. Die Pins 16, 22 und 24 an GND. Alos parallel angeschlossen. > Dabei hat mir das Netzteil 500 mA angezeigt. > Wie hast du die Pins angeschlossen? Mir sind 500 mA auch viel > vorgekommen. Hätte ich seriell anschließen sollen? > > viele Grüße > Joachim
Hallo Andreas, möchte mich an dieser Stelle mal ausdrücklich für deine Unterstützung bedanken! Vielen Dank und viele Grüße Joachim
Hallo Jörg, die V.1.33 läuft als .cb2 bei 14 MHz tadellos. Das Bild ist absolut stabil (wenn ich nur wüßte, wie ich die Invertierung wegbekomme. PC3 (= JP2) auf low ging nicht). Mit der Karte gibt es überhaupt keine Probleme. Aufgefallen ist mir nur, wenn man ein File aus dem Tape löscht, muss man den AX81 neu starten, damit man wieder das Inhaltsverzeichnis bekommt. Das Problem, dass Files immer auf Tape000 geschrieben wurden, ist auch behoben. Es lag alles an den Backslashes in den Sourcen. Die Programme ax81-read, -write und -fsinstall laufen tadellos. Ich habe sie für Windwows-User angehängt. Dabei noch eine bat-Datei, die eine SD-Card mit 10 ZX81-Tapes vorbereitet (keine für Spectrum, Jupiter und ZX80). Man muss nur eine SD-Card mit FAT16 formatieren. Ich benutze dazu SDFormatter. Dann kopiere ich ax81-fsinstall.exe und tape-install.bat ins Root-Verz. Nach dem Start von tape-install.bat werden alle Ordner und das Bin-File angelegt. Nun kopiere ich in jeden Unterordner (z.B. TAPE000 oder TAPE001) die Programme ax81-read.exe und ax81-write.exe. Zuletzt kopiere ich die ZX81-Programme, die ich z.B. im TAPE000 haben will in den Ordner TAPE000 und starte in diesem Ordner das Programm ax81-write.exe. Jetzt werden die ZX81-Programme in das Bin-File geladen. Fertig. Wenn ich Programme im AX81B erstellt und auf Karte gespeichert habe, kann ich diese in den PC laden. Dazu muss man auf dem PC in das Tape-Verzeichnis gehen, in dem das Programm gespeichert wurde (Z.B. TAPE001). Dort startet man das Programm ax81-read.exe. Nun werden alle Programme aus dem Bin-File für dieses Tape in den Ordner geschrieben. Fertig. Ich habe die Beschreibung nochmals hier eingegeben, damit auch reine Windows-User sehen, wie einfach es ist, in Windows Programme auf und von der SD-Card zu bringen. Spectrum-, ZX80- und Jupiter Ace-Files habe ich nicht ausprobiert, müßten aber ebenso funktionieren. @Andreas: Anschluß der Hintergrundbeleuchtung hat wunderbar funktioniert! Viele Grüße Joachim
Hallo Jörg, ich habe gerade Deine neue Version 1.33 des AX81b ausprobiert (Danke!!!) und kann bestätigen, dass das M-Signal aus PORTD.6 nun korrekt aussieht, d.h. schöne 50 % duty-cycle und es bleibt auch so, wenn der Tape-Manager aufgerufen wird. Auch sonst scheint alles zu funktionieren... @Joachim: ich kann hingegen nicht bestätigen, dass das Bild auf dem LCD invertiert ist bei geschlossenem J2 (d.h. PORTC.3 auf GND) - es ist normal, so wie es sein soll (weisser Hintergrund, schwarze Zeichen). Es wird invertiert, wenn J2 geöffnet wird und somit PORTC.3 über 10 kOhm auf 5 V ist. Ich habe allerdings die 20 MHz-Version der Firmware benutzt (ax81b_v133_cb2_20m.hex) - vielleicht ist es ja bei der 14 MHz-Version anders??? - kann ich allerdings nicht glauben. Ich würde mal schauen, ob Du einen Kurzschluss o.ä. auf der PORTC.3 Leitung hast. Auch kann ich nicht bestätigen, dass man den AX81b neu starten muss wenn man ein Programm im Tape-Manager gelöscht hat und wieder ins Verzeichnis will - bei mir funktioniert es wie es sollte. Viele Grüsse, Andreas
Hallo Andreas! Ich habe eben auch die 20 MHz-Version (ax81b_v133_cb2_20m.hex) geflasht und siehe da: Es funktioniert wie bei dir. Kein Inversmodus, kein Problem beim Löschen eines Files von der Karte. Die Versionen sind dahingehend tatsächlich unterschiedlich. Jörg schreibt in seiner Anleitung, dass die Möglichkeiten der Jumperabfrage, was den JP1 betrifft, zwischen der 12/14- und der 20Mhz-Version, begrenzt sind. Ich denke, dass da ein Bug steckt. Mache jetzt mal die Gegenprobe und baue alles auf 14 Mhz zurück. viele Grüße Joachim
Hallo zusammen! Ich habe nun alle Firmwareversionen mit der Endung 'cb2' durchprobiert und es ist tatsächlich so, dass nur mit der 20-MHz-Version die inverse Anzeige des Displays über JP2 = low ausgeschaltet werden kann. JP1 muss nicht auf low. Die GLCD-Ausgabe geht auch ohne. Zwischenzeitlich ist das GLCD bei P. ausverkauft. In der Bucht gibt es noch einen einzigen Anbieter, der noch ca. 40 Stück hat. P. hat ein Netzteil, das 30 V, 3,3 V, 1,8 V und 5 V zur Verfügung stellt. Ob das für unsere Zwecke einsetzbar wäre. Kostet unter 1 Euro. Artnr. 350506. Viele Grüße Joachim
Hi. Ich habe das Pollin: 120506 LCD Wintek WD-H3224V noch 3x hier. 2x noch eingepackt, 1x schon angeschlossen inkl. 22V Wandler auf LR. Wer das als Päckchen möchte (20€ inkl. VS in DE) -> PN. Peter
Hello Peter I have one of these Wintek displays, how does one connect to the ax81 board, i am using the unmodified chipbasic2, the ribbon on the display is very small, is their some kind of connector ? or should i solder some very fine wires to the display ? regards David
Eigentlich sollte die Invertierung auch bei 12 und 14MHz umschaltbar sein, aber vielleicht ist noch ein Bug dazwischengerutscht. Das kann ich aber erst in ca. 2 Wochen nachprüfen. Inzwischen ist mir noch eine andere Idee gekommen: Mit der Minimalversion und einem zusätzlichen Latch/Register könnte man auch eine externe Matrixtastatur anschließen. LCD, darunter Ersatz-Folientastatur, Gehäuse drum (max. 3 Ecken abrunden, damit es keinen Ärger gibt ;-) und fertig ist das AX81-Tablett... Jörg
Jorg On the original chipbasic design at top of forum, do you have a schematic for the circuit attach to the LCD panel ? David
Hallo Jörg, was ist bitte beim AX81B mit der ZX81-Emulation die RAMTOP-Adresse. Ich müßte einpaar ZX81-Programme, die über RAMTOP laufen, umschreiben. Vielen Dank und viele Grüße Joachim
Hallo Joachim, bei der reinen ZX81 Simulation liegt der RAMTOP bei 0x7c00 (15K RAM), wenn eine der beiden UDG Varianten aktiviert ist bei 0x7800 (14K RAM). Jörg
Vielen Dank, Jörg! Die shapshot-Funktion läuft super! Tolle Idee! Im ZX-Team wächst das Interesse am AX81B. viele Grüße Joachim
zxjoachim schrieb: > Vielen Dank, Jörg! > Die shapshot-Funktion läuft super! Tolle Idee! > Im ZX-Team wächst das Interesse am AX81B. > > viele Grüße > Joachim Ich meinte natürlich die snapshot-Funktion.
Hallo Jörg, zwischenzeitlich habe ich auch die PIO-Funktion an Port C getestet (kleines 8-bit-Lauflicht) und es läuft top! Sobald ich einen Assembler installieren kann, werde ich die Ausgabe/Eingabe auch in MC testen. Bin gespannt wie die Takt-Zeiten sind und ob man dann auch Programme, die zeitkritische Abläufe haben (Funkuhr, Frequenzmessung etc.) 1:1 übernehmen kann. Verwende derzeit die cb2-20Mhz-Version. Kleiner Nachteil: Da an Port C auch die Jumper abgefragt werden, startet der AX81 nicht, wenn an diesem Port Hardware hängt. In diesem Fall ist es ein ULN2803 mit LED. Optimal wäre es, den JP für inverse Darstellung, wie in der Minimalvariante, zu verlegen und den JP für LCD-Betrieb garnicht abzufragen. Der Vorteil wäre dann, den AX81 als Steuerungsrechner mit Programm im snapshot, GLCD und angeschlossener Hardware einzusetzen. Er könnte dann immer von selbst hochfahren. Sonst gibt es an der Version bisher nichts auszusetzen. Ich teste weiter. viele Grüße Joachim
Man könnte einfach die Config-Pins der CB2-Variante für die Minimalvariante nach PORTB1...PORTB3 legen und wäre flexibler. Allerdings habe ich meine Minimalvariante fest in eine Tastatur eingebaut (mit nur einem Schalter an PORTB1) und möchte die nicht unbedingt wieder aufschrauben... Für das nächste Release könnte ich aber eine entsprechende "CFG3" mit als Config- und Hexfile erzeugen. Jörg
Ich habe jetzt die 12 und 14MHZ (V1.33, CB2 Hardware) Versionen aus dem Binary-Paket getestet und bei beiden funktioniert hier die Umschaltung zwischen normal und invers LCD ohne Probleme. Jörg
Hallo Jörg, hast du etwas daran geändert oder habe ich was beim Testen falsch gemacht (anderer Jumper, Firmware o.ä.)? Grüße Joachim
Ich hab extra das Archiv von der eigenen Homepage runtergeladen um sicher zu gehen. Von daher sollte es also nicht kommen. Villeicht kann es noch jemand anderes testen? Jörg
Hallo Jörg, bitte entschuldige das Mißverständnis. Ich dachte, weil die Version nicht hochgezählt war und du nicht geschrieben hast, dass es bugs gab, dass die Fehler evtl. garnicht vorlagen und ich beim Testen Mist gebaut habe. Grüße Joachim
Nein, ich habe die V1.33 vom 19.8. heruntergeladen. Da bei mir der gesamte Build-Prozess weitestgehend auomatisiert ist kann es sonst passieren, dass ich mit einer unveröffentlichten Version teste. Jörg
Nutzt eigentlich jemand die Spectrum-Emulation? Ich würde sie gerne in der nächsten Version zugunsten anderer Funktionen (Zusatz-ROMs beim ZX81) rauswerfen. Jörg
Hallo Jörg, Joerg Wolfram schrieb: > Nutzt eigentlich jemand die Spectrum-Emulation? Ich würde sie gerne in > der nächsten Version zugunsten anderer Funktionen (Zusatz-ROMs beim > ZX81) rauswerfen. Ja, ich nutze sie als "Hauptemulation". Grund ist die bessere Grafikfähigkeit und der leichtere Zugang zu den IO-Ports vom Basic aus. Wär schon schade, wenn das rausfliegt. Die ZX81-Emu nutze ich auch. Die ZX80 und Ace Emulation dagegen gar nicht. Um was für Zusatzroms beim ZX81 geht es denn? Gruß,Micha P.S.: Ich habe mal die ax-tools etwas erweitert (ein paar Sicherheitsabfragen eingebaut, um Abstürze zu vermeiden, ACE und Spectrum Snapshots zurücklesen). Besteht Bedarf daran? Wenn ja, darf ich die Sourcen hier hochladen, oder Dir per PM?
Konkret geht es um das ASDIS-ROM, welches im ZX81-Forum angefragt wurde. Mittlerweise habe ich aber eine Lösung gefunden, durch eine Umschichtung Platz in einem passenden Speicherbereich zu finden. Eventuell kann man dann auch den (zusätzlichen) ROM-Code von der SD-Karte oder aus der Emulation heraus umflashen. @Micha Du kannst den Quellcode / die Programme gerne hier (oder auch woanders) zur Verfügung stellen, es ist ja ein OpenSource Projekt und steht unter der GPL. Jörg
Hallo, wie versprochen, hier die Sourcen der geänderten AX81 Tools. Konkret wurden ein paar Nullpointer Abfragen eingebaut sowie das Auslesen von ACE und Spectrum Snapshots aus den Images implementiert. Bei den Spectrum Snapshots habe ich die Endung auf ".z80" geändert, da ich nur solche im I-net gefunden habe und mit Fuse etc. erzeugen konnte. Zumindest konnte ich solche snapshots in das Spectrum Image schreiben und nutzen. Weiterhin habe ich noch einige Backslash Escapes korrigiert, die definitiv falsch waren. Es ist ein rudimentäres Makefile dabei. Unter Windows (Cygwin) habe ich auch getestet und Schreiben und Lesen ging. Gruß, Micha
Hallo Micha, konnte alle Sourcen unter Win7 compilieren. fsinstall, read und write laufen tadellos. Joachim
Ich habe heute die Version 1.34 online gestellt: http://www.jcwolfram.de/projekte/avr/ax81b/main.php Neben einer weiteren Hardware-Konfiguration (Minimal-Variante mit 3 Jumpern an Port B) kann jetzt im ZX81 Mode ein Zusatz-ROM ab Adresse 8192 genutzt und über die SD-Karte aktualisiert werden. Jörg
Vielen Dank, Jörg! Genau das was ich brauche. Beginne gleich mit dem Testen. viele Grüße Joachim
Hallo Jörg, Frage noch: Verhält sich das Zusatz-ROM tatsächlich wie ein ROM - also nur lesen? Ich frage wegen den ASDIS-Variablen. Grüße Joachim
Hallo Jörg, ich habe gerade per Zufall auf Deiner Website für den AX81 (ohne "b") im Changelog entdeckt, dass Du Version 0.29 mit den AX81b-Tastaturroutinen erstellt hast (ich hatte ja vor einiger Zeit mal danach gefragt). Leider kann ich diese Version nicht in Deinem Download-Bereich finden; den behalte ich [zusammen mit etlichen Foren] eigentlich immer in Auge, damit ich über neue Versionen im Bilde bin... Danke und viele Grüsse, Andreas
@Joachim, das Zusatz-ROM ist wirklich ein ROM, das heisst es kann nicht (von Emulator-Seite her) beschrieben werden. Pghysikalisch liegt es im Flash des AVR. @Andreas, da habe ich leider die falschen Seiten mit aktualisiert, ich hatte versucht die Routinen zurückzuportieren und auch schon die Doku überarbeitet, letztendlich hat das Ganze bisher dann doch nicht funktioniert. Es ist auch nicht ganz trivial, da die Interrupt-Rountine, der Emulator und die Patches im ZX81-ROM zusammenspielen müssen. Einen "Anlauf" werde ich aber noch nehmen... Jörg
Hallo Jörg, danke für die Antwort. Ich verwende immer noch die "alte" ax81 Variante, da ich manchmal nicht auf die 15.75 kB RAM verzichten will. Deshalb ein ausdrückliches Dankeschön dafür, dass Du die "alte" Variante immer noch pflegst... Viele Grüsse, Andreas Joerg Wolfram schrieb: > @Andreas, > > da habe ich leider die falschen Seiten mit aktualisiert, ich hatte > versucht die Routinen zurückzuportieren und auch schon die Doku > überarbeitet, letztendlich hat das Ganze bisher dann doch nicht > funktioniert. Es ist auch nicht ganz trivial, da die Interrupt-Rountine, > der Emulator und die Patches im ZX81-ROM zusammenspielen müssen. Einen > "Anlauf" werde ich aber noch nehmen...
Hallo Jörg, teste derzeit mit ax81b_v134_cfg3_20m. Als Hardware habe ich noch meine alte Platine, weshalb ich nur LCD testen kann. Die neue Platine, die in Kürze eintreffen müßte, verfügt dann über die 3 Jumper und ich kann auch die TV/BAS-Ausgabe testen. Die Benutzung der SD-Card ist wie zuvor ohne Ausfälle. Das Einlesen einer ROM-Erweiterung geht ohne Probleme. Die Programme laufen auch im Adressbereich ab 8192. Was auffällt ist, dass die in MC geschriebenen Tastaturabfragen dieser Programme im erweiterten ROM zu schnell emuliert werden. Man kann fast keine Tastatureingaben machen. Ich lasse den AX81 im Normalmodus laufen. Mal sehen, wie das mit 12 oder 14 MHz wird. Die IO-Ausgabe ist echt fix. Ein Lauflicht in BASIC im Fast-Modus ist annähernd schnell wie in MC auf einem ZX81. Bisher also alles bestens. Die ROM-Erweiterung ist eine echte Bereicherung. Ich bleibe weiter dran. viele Grüße Joachim
Hallo Joachim, da die Ineterruptroutinen des Z80 nicht genutzt werden können, habe ich Videoausgabe und Tastaturroutinen sozusagen "aussenherum" im AVR realisiert. Dazu wird IN(0xfe) teilweise emuliert und auch direkt in die Systemvariablen geschrieben. Eventuell lässt sich am Timing noch ein bisschen drehen, kannst Du mir mal so ein ROM-Image schicken? Jörg
Hallo Jörg, auf der ROM-Erweiterung sind etliche Hilfsprogramme. Darunter ein Disassembler, der mit RAND USR 14626 gestartet wird. Alle Adresseneingaben müssen in Hex sein. Mit 'P' schaltet man in den 'Programmmodus' mit 'T' in den 'Tabellenmodus'. Mit 'Pnnnn' wird ab Adresse nnnn im Programmmodus disassembliert. mit 'Tnnnn' im Tabellenmodus. Bsp.: 'P2000' würde ab Adr. 8192 im Programmmodus disassemblieren. Man darf wirklich nur den Bruchteil einer Sekunde auf der Taste bleiben. Es ist fast nicht zu schaffen. Mit der STOP-Taste (shift A) kommt man aus dem Programm. Wäre wirklich sehr hilfreich, wenn man diese Art der Tastaturabfrage verlangsamen könnte, da sie in sehr vielen Programmen vorkommt. Bestünde die Möglichkeit, beim Start aus verschiedenen ROM-Erweiterungen auszuwählen ;) Viele Grüße Joachim
Hallo zusammen! Für die AX81B-Variante 'CFG3', die die Jumper über den Port B einliest, damit Port C komplett als I/O-Port zur Verfügung steht, sowie für die Spannungsversorgung und den SD-Card-Reader-Writer habe ich Platinen entworfen und eine weitere 'Bauanleitung' verfaßt. Alles zusammen kann hier http://forum.tlienhard.com/phpBB3/viewtopic.php?f=2&t=590&p=6663&sid=141b1a13b61372bf8397e7d6c00334f6#p6663 heruntergeladen werden. Viele Grüße Joachim
Hallo Joachim, sorry für meine späte Antwort aber ich bin einfach nicht dazugekommen noch mehr auszuprobieren. Ich habe es nicht hinbekommen die Tasteneingabe in dem Disassembler irgendwie zu verlangsamen. Gibt es einen Quellcode aus dem ersichtlich wird, in welcher Art und Weise die Tastatur abgefragt wird? Mehrere ROM-Erweiterungen sind übrigens nicht möglich. Jörg
Hallo Jörg! Bin gerade dabei den AX81 ein ordentliches Gehäuse zu verpassen. Berichte an dieser Stelle dann darüber. Ich versuche, das ZX81-Programm zu disassemblieren und die Tastatureingabe aufzulösen. Auch werde ich dir die 'üblichen' Routinen zur Tastaturabfrage in Assembler unter Zuhilfenahme von ROM-Routinen schicken. Melde mich sobald als möglich wieder. Viele Grüße Joachim
Dem AX81 habe ich ein Gehäuse spendiert und mein erstes Projekt gestartet. Die Bilder dazu gibt es hier http://forum.tlienhard.com/phpBB3/viewtopic.php?f=2&t=590&p=7450#p7450 im angehängten PDF. Viele Grüße Joachim
Es gibt mal wieder eine Bugfix-Version unter: http://www.jcwolfram.de/projekte/avr/ax81b/main.php In den UK-Tastaturbelegungen von Jupiter ACE und Spectrum gab es ein Problem mit den Kommentaren, so dass die Tabellen zu kurz waren. Jörg
Es gibt wieder einmal eine neue Bugfix-Version, die V1.37. Betroffen war das Laden von Snapshots im Spectrum und ACE Mode, dabei konnte der AVR-Systembereich im RAM so überschrieben werden, dass das gesamte Programm abstürzte und auch auf keine Taste mehr reagierte. http://www.jcwolfram.de/downloads/main.php#ax81b Jörg
Grreting Jorg Cannot the AX82 be modified to give the AX81 a full compliment of memory 16k or 32 k, with the Hires ram ? regards David
Hallo, falls es jemanden interessiert: ich war erfolgreich, ein weiteres Pollin-GLCD (Best.Nr.: 120486, ist noch preisgünstig zu haben) an den AX81 anzuschliessen (siehe Anhang). Ich habe mich für die Erzeugung der verschiedenen Kontrastspannungen an den Beitrag Beitrag "Textdisplay 320x256, Mega8; 21Zeilen a 40 Zeichen" gehalten - das hat recht gut funktioniert. Das Display hat eine CCFL-Hintergrundbeleuchtung, aber da ich keine Lust hatte, mit der dafür nötigen Hochspannung zu hantieren, habe ich die CCFL-Röhre entfernt und durch vier weisse LEDs ersetzt - die kann ich (mit Vorwiderständen) an 5 V speisen. Gruss, Andreas
hello Andreas i have the ax81 on the chipbasic2 board and i want to connect my pollin lcd , can you help, or am i best using the ax81b board with the extra boards to connect the lcd ? thanks David
Hi David, sorry for not replying earlier, but I was somewhat busy lately. I'm assuming you have the Pollin-LCD (Best.Nr.: 120486) I was referring to in my last post? If so, below is how I connected the LCD to the ATMega1284P; pin 1 of the LCD is the topmost pin of the flexprint when the LCD is lying such that the flexprint sticks out to the right side: Pollin-LCD ATMmega284P D0..D3 (pins 17,16,15,14) PA0..PA3 FLM (pin 1) PA5 Load (pin 11) PA6 CP (pin 13) PA7 M (pin 9) PD6 Display off (pin 12) connect to +5V V_CC (pin 10) connect to +5V GND (pin 2) connect to GND The various contrast voltages (pins 3,8,7,6,5,4) I generated according to Beitrag "Textdisplay 320x256, Mega8; 21Zeilen a 40 Zeichen" Make sure the ax81 is running properly in LCD-mode (close jumper J1 and leave J3 open) before applying the (negative) contrast voltages, otherwise the display might get damaged! Jumper J2 determines if you have a normal or inverted display on the LCD. I'm using version 0.28 of the ax81 firmware (not "ax81b") running on the hardware shown on Jörg Wolfram's page (http://www.jcwolfram.de/projekte/avr/ax81/hard.php) Good luck, Andreas
Nach langer Zeit gibt es wieder einmal ein Bugfix-Release auf meiner Seite (V1.38). Den direkten Download findet man unter: http://www.jcwolfram.de/downloads/main.php#ax81b Und zwar wurde bisher anstelle einer Fehlermeldung nur Datenmüll angezeigt, wenn keine FAT16 Partition gefunden wurde. Das passiert zum Beispiel unter Windows, wenn der gesamte Datenträger als FAT16 formatiert wurde und somit keine Partitionstabelle existiert. Um das Partitionieren kommt man nach dem Update auch nicht herum, es wird aber nun eine sinnvolle Fehlermeldung "NO FAT16 PART." angezeigt. Ursache war, dass der Pointer auf die Fehlermeldung falsch berechnet wurde. Jörg
Hallo, ich hatte mich lange im Bereich AVR / CPM herumgetrieben und bin daher bisher nicht dazu gekommen, dieses Projekt umzusetzen. Nun habe ich es aber mal auf LR-Platine umgesetzt (siehe Bild). Ich hoffe, hier liest noch jemand, der mir helfen kann... Ich habe die Variante 2 mit 24MHz gewählt. Was funktioniert: Die LED blinkt nach einigen Sekunden im Sekunden-Takt. Aber die Ausgabe auf BAS scheint nicht richtig zu klappen. Man kann auf dem Monitor zwar so was wie "ZX80" und anderes in Geisterschrift sehen und nach einigen weiteren Sekunden verschwindet das dann. Wenn ich auf der Tastatur tippe, "tut sich auch was". Aber lesbar ist das nicht. Habe auch einen anderen Monitor verwendet, der synct gar nicht. Woran könnte das liegen? Habe ich im Bereich des Quarzes geschlampt? Ich habe 22pF genommen, weil ich 18pF gerade nicht da hatte - ist das schlimm? Scheint ja zu schwingen... "Masse" ist auf LR ja eher wenig... Vielen Dank!
Hallo Marcel, so wie es aussieht, stimmt das Timing nicht. Welches Hexfile hast Du gebrannt? Und kannst Du die Frequenz am VSYNC-Pin messen?
Hallo Wolfram, danke für die Rückmeldung. Ich habe genommen: ax81b_v138_cfg2_24m.hex Hätte ich stattdessen cb2 nehmen müssen? Die wäre ja für ChipBasic. VSync messen - mit Oszi oder Frequenzzähler? Und wieso überhaupt? In der BAS-Anbindung wird der Pin doch gar nicht verwendet (M-Faktor), stattdessen HSync/CSync....? Ich mess mal :-) EDIT: Wir kommen der Sache näher. Mein Zähler sagt 16,7 Hz (Statt wie gefordert 30) am VSync. Und dann habe ich mal den Quarz gemessen: An den Pins liegen 8MHz statt 24MHz an. Oszi sagt das gleiche. Als ob der Quarz nicht bei 24MHz schwingt sondern bei einem drittel. Fuse Bits sind so eingestellt: FUSE LOW = 0xe6 FUSE HIGH = 0xd1 FUSE EXT = 0xfc (Full Swing)
:
Bearbeitet durch User
Habe mal weiter recheriert. Der Quarz ist von Reichelt - da gibt es wohl schon mal das Problem, dass es keine Grundton- sonder Oberton-Quarze sind... echte 24MHz Quarze scheinen schon selten zu sein... Wo habt ihr die bestellt?
Setze mal Low Fuse auf FF. Du hast mit FC "extern Crystal Oszillator mit 3-8 MHz eingestellt. Das wird mit einem 24 MHz Quarz nicht gut gehen. MfG Paul
Hallo Paul, meinst du wirklich LFUSE oder EXT mit FF? Laut meinen Unterlagen sollte FC richtig sein (so steht es in der Doku und auch die Fuse-Berechnung sagt "Full Swing" ohne MHz-Begrenzung. Ich könnte es für BAS/PAL mit 12 oder 14 MHZ probieren - ist es egal welcher? Und J1 offen oder zu?
Ich habe nur im AVR-Studio bei Atmega644 geguckt, wie die Fuses für >8MHz dort angegeben sind. Dabei kam das heraus. Ich habe keinen AX81 aufgebaut und kann es nicht selbst ausprobieren. MfG Paul
Ich bin noch etwas verwirrt bzgl. des Unterschiedes FC/FF bei LFuse. Ich hatte auch immer "External Oszillator" (FF) verwendet, aber hin der Doku steht FullSwing Ceramic Oszi (FC). Ich bin heute abend mal mutig und ändere das auf FF. Hauptsache nicht External Clock :-)
Sorry wenn ich gerade das Forum etwas zumülle... Habe noch mal bei Reichelt geschaut, was ich da gekauft hatte: "24,0000-HC18 Standardquarz, 3. Oberton, 24,0 MHz" Kann das überhaupt klappen?
So, setzen Fluse auf FF hat nicht gebracht, der dümpelt immer noch bei 8mhz rum... Gibt es eine andere Chance, den auf 24mhz zu bewegen? Kleinere Cs? Sonst die Frage: wo bekommt ihr ECHTE 24er Quarze her? Und welcher Quarz 12 oder 14 wäre für rein BAS PAL richtig?
Meinen 24MHz Quarz hatte ich aus einem defekten Schlüsselanhänger-Bilderrahmen (eigentlich war nur der Akku hinüber). Für BAS gehen sowohl 12MHz als auch 14,7456MHz, man muss nur das passende Hexfile auswählen. An Pin B1 müsste dann die Umschaltung PAL/NTSC sein.
Marcel A. schrieb: > Habe noch mal bei Reichelt geschaut, was ich da gekauft hatte: > "24,0000-HC18 Standardquarz, 3. Oberton, 24,0 MHz" > > Kann das überhaupt klappen? Dazu muss man von dem Xout-Pin des Controllers einen auf Grundwelle abgestimmten Saugkreis (10µH/33pF) nach Masse schalten. Der verleidet dem Quarz die Grundwelle. Habe ich früher bei den AT89C2051 gemacht, müsste bei ATmega aber genauso klappen.
@souleye: Super, das mit dem Saugkreis hat funktioniert. Ist aber etwas empfindlich. Die lfuse habe ich auf FF stehen. @Wolfgang Der Startbildschirm kommt. Dann erscheint "no card" - klar, habe ich noch nicht dran. Dann kommt einige Sekunden schwarzer Bildschirm und dann der ganze Bildschirm voller schwarzer Vierecke - und nur "Zucken" bei Tastatureingabe. F12 ruft aber ganz sauber den Monitor auf. Müsste das nicht auch ohne SD-Card laufen??? Gruß Marcel
Aktueller Stand: Ich habe den SD Card Reader angeschlossen und eine wie beschrieben vorbereitete SD-Card eingelegt. Nun kommt: No Card No MBR found (ohne Karte nur No card) Ja wie? Danach geht er entweder in einen weißen Bildschirm oder voll mit schwarzen Kästchen. Wenn ich den Finger an den Quarz lege, kommt auch schon mal "Datenmüll". Der Debug-Monitor arbeitet dagegen einwandfrei. Kann es daran liegen, dass der Quarz nicht richtig "sauber" schwingt? Oder hat noch jemand eine Idee?
Es kann auch sein, dass Dein ATMega die 24MHz nicht mehr oder nur eingeschränkt mitmacht. Dann wäre vielleicht die 12/14... MHz Variante eine Alternative. Manchmal hift es auch, zusätzliche SMD-Blockkondensatoren direkt zwischen die VDD und VSS Beinchen zu löten.
Marcel A. schrieb: > Kann es daran liegen, dass der Quarz nicht richtig "sauber" schwingt? Wenn Dein Quarz jittert oder auf der falschen Frequenz schwingt, dann siehst Du es direkt auf dem Videobild. Das wabert dann oder läuft durch.
Hallo Wolfram (:-)) Das mit dem Takt vermute ich auch. Ein anderer ATMega ging gar nicht und der hier schwingt nur bei lfuse=FF (statt E6). So richtig stabil ist das nicht. Aber ich bin mir in 4 Dingen beim SD-Card Reader auch noch nicht ganz sicher: a) sollte der ZX81 nicht auch hochlaufen, wenn KEINE SD/Reader angeschlossen ist oder ist das zwingend erforderlich? b) Warum erscheint sowohl NO CARD als auch NO MBR FOUND? Wenn keine Karte, dann auch kein MBR... Wenn ich die Karte rausnehme, dann erscheint nur NO CARD c) Ist der Inhalt der Karte so richtig? Habe mal den Inhalt von GParted und ll angehängt. Bei AX81b ist das ja anders geworden d) zum Reader selber: Ich hatte mir mal vor Monaten bei e* China solche Reader wie im Bild geholt, die direkt MOSI, MISO usw. herausführen. Da ist auch schon ein 3,3V Spannungsregler und ich glaube eine Diodenleiste drauf. Die habe ich dann so angeschlossen wie in deiner Beschreibung (MISO/MISO...). Geht das so? Ich frage, weil im Layout z.B. von Peter Sieg oder Ulrich Radig da gar keine Dioden/4050er auftauchen... Ich meine aber, dass MOSI=DO und MISO=DI ist... Macht es Sinn, hier einfach mal einen einfachen (Pollin-)Reader so anzuschließen wie im Bild (Peter Sieg)? Nicht dass ich da noch einen logischen Bock geschossen habe... Ich hätte jetzt angenommen: AVR Reader MISO ------------- DI (PIN 2) MOSI - SP-Teiler - DO (PIN 7) SS - SP-Teiler - CS (PIN 1) SCK - SP-Teiler - CLK (PIN 5) GND ------------- GND (PIN 3, 6) / VSS VCC -3,3V Reg. -- VCC (PIN 4) (SP-Teiler = Spannungsteiler 1,8k/3,3k)
Hier habe ich mich natürlich vertan: (DO/DI vertauscht) Richtig: > AVR Reader > > MISO ------------- DO (PIN 2) > MOSI - SP-Teiler - DI (PIN 7) > SS - SP-Teiler - CS (PIN 1) > SCK - SP-Teiler - CLK (PIN 5) > GND ------------- GND (PIN 3, 6) / VSS > VCC -3,3V Reg. -- VCC (PIN 4) 3,3V > > (SP-Teiler = Spannungsteiler 1,8k/3,3k)
Hallo, hat keiner eine Idee zumindest zu den Fragen a) - c)? Bevor ich da weiterfummel besorge ich mir erst mal einen echten Quarz 24MHz. Ist gar nicht so einfach... Viele Händler schweigen sich auch auf Nachfrage dazu aus. Leider habe ich auch keinen 12er oder 14,x in der Bastelkiste. Und sorry - "Joerg" ist richtig. Mein Nachnahme ist auch ein französischer Vorname, ich kenn das leider :-)
Der AX81 muss auch ohne Karte funktionieren, dabei sollte nur "No Card" angezeigt werden. Das von Dir beschriebene Fehlerbild deutet darauf hin, dass Dein ATmega1284P Probleme beim Übertakten macht. Jörg
Hallo Jörg, ähm mal ne blöde Frage: ich hab ja ein CB2 Board, µC geflasht mit der AX81 Version aber es kommt kein Bild! ich dachte das CB2 Board kann so bestehen bleiben?
Hallo zusammen, es funktioniert alles bestens. Ich hatte alles richtig gemacht, nur war entweder der Quarz nicht gut oder der µP hat nicht mitgespielt bei 24MHz - jedenfalls bei 14MHz geht alles super. Danke!
Hallo, kann mir mal einer sagen welche Hardware nun die Richtige ist? Ich finde das ziemlich kompliziert!!! habe Chipbasic2 + Scart! Es kommt kein Bild.. Kein Signal sagt der Fernseher!! Ich möchte die AX81 Schaltung nachbauen aber für TV (Scart) und VGA damit ich auch Farbe habe! Welche Schaltung muss ich da nehmen?????? Danke!
Sagt mal, da sich diese Arduino-Boards immer größerer Beliebtheit erfreuen - wäre das nicht ein Basis? Vielleicht wenn man nur den ZX81 nimmt (oder gibt es keine Chance, das alles in 32Kb Flash zu bekommen)? Und ist es überhaupt möglich, mit 16 MHz etwas wie FBAS oder VGA zu generieren? Dann noch ein SD-Card Shield oder direkt ein "ZX-Shield" und gut? Wäre das machbar oder ist das eine blöde Idee? Gruß Marcel
@ Dominik Hast Du die Brücke zwischen RGB und PD3 (TX1) drin? Beim AX81(B) erfolgt die Videoausgabe über den USART1 und nicht mehr über die Portpins, welche hochohmig geschaltet sind. Allerdings weiß ich jetzt nicht, was Du mit "in Farbe" meinst, denn der AX81 kann nur S/W. Oder halt Schwarz/gelb, wenn man die Blau-Leitung offen lässt etc. @Marcel Vom Flash her wäre es kein Problem, man hätte alt nur 1,5K RAM. Der Mega328 hat aber nur einen USART, was die Videoausgabe über USART ausschließt. Und für die "alte" Version mit Ausgabe über PORTC braucht man aber 20MHz.
Hallo Jörg, danke für die Antwort. Ähm ich glaube nicht, ne. Da ich ja wie gesagt das unangetastete CB2 Board habe. Ok, also Farbe geht gar nicht, das wusste ich nicht. Dann werde ich mal die einfache variante bauen mit BAS.
Joerg Wolfram schrieb: > > @Marcel > Vom Flash her wäre es kein Problem, man hätte alt nur 1,5K RAM. Der > Mega328 hat aber nur einen USART, was die Videoausgabe über USART > ausschließt. Und für die "alte" Version mit Ausgabe über PORTC braucht > man aber 20MHz. Wofür wird denn der erste USART gebraucht? Da hängt ein Anschluss von der Tastatur und gebrückt vom PROG dran - für PS/2? Auf Prog könnte man ja sonst verzichten...
Hi Jörg, nochwas: Wenn ich das CB2 Board nehme und RGB und PD3 brücke... dann läuft das aber nur mit einem Atmega128 oder? Bzw: worin liegt denn hardwaremäßig der Unterschied zwischen AX81 mit Atmega644P und AX81b mit Atmega128P?? Also bis auf den µC natürlich.
ich nochmal... habe jetzt ein Bild aber überhaupt kein stabiles!! Sehe nur grün, flackern und dann nix mehr! Habe die 0.28er Version gebrannt und mal die ax81_m644p_tvl_sd_pd3pd4.hex versucht... fuses bleiben doch gleich! Habe RGB mit PD3 gebrückt. 16 Farberweiterung ist noch dran, also kein Jumper1 und keine 10K am PD3. Mit 10K geht's auch nicht... nur ein instabiles, grünes Bild
Warum bekomme ich eigentlich bei der 0.28 Version einen Syntax Error wenn ich:
1 | 10 FOR I=1 TO 20 |
eingebe und NewLine drücke?? Peter Sieg hat doch das gleiche gemacht und als Foto gepostet
schon gut... es geht... hab vergessen die Befehle zu benutzen anstatt alles selber zu schreiben.. lach
@Jörg wenn ich einen Dataflash an das Board anstecke, dann kann ich doch sofort und ohne formatierungen Programme auf diesen abspeichern und laden, richtig?
Hab meine Frage jetzt mal selber beantwortet :) Aber: Ich habe das DF Modul eingesteckt, etwas programmiert und mit SAVE "TEST" abgespeichert. LLIST zeigt mir auch die Datei an im Tape. Wenn ich jetzt LOAD "TEST" eingebe, startet der Computer neu, zeigt mir als Speicherkarte irgendwas an aber nicht mehr DF und das Programm wurde nicht geladen. Muss dann neu starten und dann erkennt er das DF wieder und das Programm. Kann es aber nicht laden... dann startet der Rechner neu und erkennt plötzlich ein anderes Dateisystem :((( hüüüülfe
Irgendwann hat es funktioniert, denn damit (DataFlash) habe ich angefangen. Da aber fast alle SD-Karte (möglichst Win-kompatibel mit FAT) wollten, habe ich den DF-Zweig nur noch "mitgeschleppt" und auch nicht mehr getestet. Bei der ersten Version sollte es aber eigentlich noch gehen.
Hi Jörg, also ich hab die 0.28 Version drauf. Mir ist aufgefallen: LOAD "PROGRAMMNAME" funktioniert nicht => AX81 startet neu und ist völlig verwirrt. LOAD "$00" funktioniert!! Programm wird geladen und kann ausgeführt werden. 1. Wo finde ich denn die LOAD Funktionen im Source? 2. Die Zeit vom Intro bis Übergang Main, wird die emuliert oder liegt die als feste Konstante im Source von Intro.asm? 3. Der RAM ist ja unabhängig vom DF richtig? aber bei einem 2MiByte DF passt bei einem Mega644P doch das maze Game locker drauf?! oder wie sind die Verhältnisse zwischen RAM und Flash? Danke schon mal!
Hi Jörg, also: Version 0.28 hat Probleme mit dem DF! Speichern nur auf EINEM Speicherplatz möglich! Laden nicht möglich! Version 0.21 klappt bestens mit dem DF! Toll :(
Mir war in V1.38 aufgefallen, dass im ZX81 ein LOAD "" nicht wie beschrieben den Tape-Monitor aufruft. Egal ob 2 x " oder 1 x "" (gibts ja beides auf das "Tastatur").
@Dominik Das kann gut möglich sein, allerdings werde ich aus Zeitgründen in nächster Zeit wohl eher nichts dran machen (SD-Karten gehen ja). Load und Save befinden sich sowohl im Z80 Code als auch im AVR. Dabei wird durch einen "ungültigen" Befehl (0xED 0x0B bis 0xED 0x0E) auf Z80 Seite eine Art Exception ausgelöst, bei der dann der AVR den ganzen Transfer native erledigt. LOAD ruft damit letztendlich fsys_load (fsys.asm) auf, welches das zu ladende Programm ermittelt. Danach wird nach fsys_rfile (Aufruf mit Name) oder fsys_rfile_02 (Aufruf mit Index) gesprungen. Hier wird dann entschieden, ob SD-Karte oder DF une dann zur entsprechenden Routine verzweigt. Der Fehler sollte dann wohl in dataflash.asm liegen. @Marcel Was passiert dann (anstelle Tape-manager Aufruf)? Wenn Du ohne Karte startest, sollte Fehler "T" kommen.
So, ich habe jetzt nochmal einen AX81 auf Lochraster aufgebaut und irgendwas stimmt nicht! PS/2 Tastatur angeschlossen, Rechner zeigt kein VGA Bild! PS/2 Tastatur abgeklemmt, Rechner startet sofort! Nur manchmal... in 2 von 20 Fällen startet der Rechner auch mit angeschlossener Tastatur. Was ist das?? Kondi ist 220µF und ich habe 2 Pullups dran hängen :(
Blockkondensatoren (da zählen die 220µF nicht dazu)? Tritt das Problem auch bei 20Mhz oder kleiner auf? Wenn nicht, lässt sich dieser Controller nicht übertakten.
ne ne Jörg, ich meine schon die 0.21 Version, also ATmega644P mit 20MHz Ich habe ein CB2 Board welches ich halt umgebaut habe für den AX81, sprich, Brücke und Jumper.. mehr nicht! Läuft einwandfrei!!! Startet sofort. Dann habe ich auf Grundlage des AX81 ein Board gebaut, bereits 2 Mal, Minimalversion. Startet zwar, auch mit Tastatur aber nicht sofort! Komisch. Abblockkondis habe ich überall brav dran. Die .hex ist auch dieselbe wie für das CB2 Board.
what software do you recompile main.asm with ? thanks David Happy new year
Hallo Jörg, im ZX-Team-Forum wurde über den Jupiter Ace diskutiert, weshalb ich mir diesen Rechner auf dem AX81b (AX81b_138_cfg3_20m) ansehen wollte. Dabei habe ich festgestellt, dass man das Anführungszeichen (") über die Tastatur (deutsches Tastaturlayout) nicht eingeben kann. Es wird nur ein AT-Zeichen (@) angezeigt. Auch mit anderen Tastenkombinationen war das Zeichen nicht zu erreichen. Damit könnte man in FORTH keine Print-Anweisung eingeben. Kannst du da bitte mal nachsehen? Viele Grüße! Joachim
Hallo Jörg, meine Anfrage hat sich erledigt. Nachdem ich mich mit deinen Tastaturlayouts und der Bedienung des Jupiter Ace beschäftigt habe, kam ich auf die 'Symbol Shift-Taste' des Jupiter Ace. Mit der linken Ctrl-Taste und P geht es einwandfrei. Sorry! Viele Grüße! Joachim
Hello David, I use the AVRA assembler. Unfortunetly the recent version (from 2010) does not support the Mega1284P. So You must patch it. My device.c file is found here: Beitrag "AVR-ChipBasic2 - BASIC-Computer mit ATMega 644" If You need, I can send You a precompiled binary with these patch, but only for Linux. Joerg
@ Dominik, wenn der gleiche Controller auf dem einen Board startet und auf einem anderen nicht, dann lässt sich das Problem am wenigsten von der Softwareseite her eingrenzen, d.h. ich kann Dir da nicht sehr viel weiterhelfen. Bei einem Mega1284P hatte ich ein ähnliches Problem (allerdings bei 25MHz): Bei jedem Tastendruck ist der Controller "abgeschmiert". Da jede PS2-Tastatur nach dem Einschalten kurz sendet könnte das ein ähnliches Problem bei Dir sein. Eventuell hift ein zusätzlicher Blockkondensator am Tastaturanschluss. Jörg
Joerg Wolfram schrieb: > Hello David, > > I use the AVRA assembler. Unfortunetly the recent version (from 2010) > does not support the Mega1284P. So You must patch it. My device.c file > is found here: > > Beitrag "AVR-ChipBasic2 - BASIC-Computer mit ATMega 644" > > If You need, I can send You a precompiled binary with these patch, but > only for Linux. > > Joerg Hello Joerg Thank you for your reply, i could not find the device file as advised. Im still using the original chipbasic 2 board and have a similr avr board with video at a different pin, i wanted to reconfigure the program to cater for this, but is easier for me to modify the pcb layout with a jumper cable. I was wondering if you could compile separate hex files for the zx81 with udg, zx81 with chr$128 and a zx80 , so that i do not have to use the menu with the children configured for the original chipbasic 2 board at 24 mhz on tv. Thank you Regards David
Hello David, i've attached the file again (postet in chipbasic thread at 04.12.2012 10:25). You can not simply skip the menu because SD-Card detection is done at this time. A possible solution is to program alternate SD-Card detection routines (without printing messages) and show the menu only if shift is pressed at start. Best regards, Joerg
Hallo zusammen, ich habe mich nun in den letzten Wochen nach dem Lochraster-Aufbau intensiver mit dem schönen AX81b beschäftigt und bin immer mehr begeistert. Ich habe nun einen Satz Platinen erstellt (Basis ist die HW2/CFG2, welche sowohl FBAS also auch VGA kann und 2 x 8 Ports für I/O frei hat. Kann per Jumper geändert werden (natürlich dann anderer Quarz und andere Firmware)). Ergebnis siehe Bilder. Wenn jemand Interesse an einer Platine hat, bitte melden. Ich hätte auch die Micro-SD-CardReader. @Joerg, mir sind da noch ein paar kleine "Bugs" aufgefallen: - Du verwendest in der V138 das UK-Layout. Z->Y und umgekehrt. Klar. Im "K"-Modus ist das auch so. Aber im "L"-Modus ist es dann doch wieder "DE"-Layout ... :-) - Bei den Beispielen zu den PortA/C-Zugriffen ist mir aufgefallen, dass du dort das Muster "176" schreibst, es muss aber 170 sein, damit es abwechselnd ist. - Im Beispiel für PortC sind die Adressen von PortA eingegeben - ist aber ja klar - Im Tape-Manager führt ein "ENTER" leider nicht zum Load des gewählten Files. Das geht nur über ein "LOAD" auf der Basic-Ebene. Alle nur Kleinkram. Sollte ich irgendwann selber mal in der Lage sein, den Code zu übersetzen, kann ich das auch selber machen. Beste Grüße Marcel
Hallo Marcel, beim original ZX81 gab es meines Wissens kein deutsches Layout. Von daher bin ich einen Kompromiss eingegangen. Für die Befehle ist meiner Meinung nach es günstiger wenn man sich an das original-Layout hält, denn meistens hat man die Tastaturbelegung ausgedruckt danebenliegen. Bei den Buchstaben (L-Mode) halte ich es dagegen sinnvoller, wenn der Buchstabe erscheint, der auch auf der Taste aufgedruckt ist. Das Keyboard-Layout wechselt also nur auf Zeichenebene und nicht auf Funktionsbene. Für mich war das halt der beste Kompromiss, wenn es eine bessere Lösung gibt, kann ich die natürlich gerne umsetzen. Das mit den 176 ist ein Fehler, den ich demnächst korrigieren werde. Gleiches betrifft das Beispiel für Port C, da habe ich nur kopiert und vergessen, die Werte zu korrigieren. In der Tabelle darüber sollten sie aber richtig stehen. Dateiauswahl im Tape-Manager geht beim ZX81 nur mit LOAD "", also mit leerem Dateinamen und beim ZX80 mit LOAD. Direkte Auswahl mit F9 geht nur beim ACE und Spectrum, da hier einfach komplette Speicherabzüge (Snapshots) geladen und gespeichert werden. Steht aber auch so in der Dokumentation. Jörg
Alles klar, Joerg. Also "works as designed" - da bin beruhigt. Macht ja so auch Sinn - muss man nur wissen. Steht wahrscheinlich sogar irgendwo - rtfm... Danke dir!!!
Programme die Sounds über den Tape Ausgang ausgeben bleiben beim AX81 wohl Stumm ? :O
Hello All please can someone lead me in the right direction when creating the tape images under windows i have formatted the sd card on the desktop in a folder i have run the install command and have the form files for the zx81, zx80, jupiter ace and spectrum and tape folders i have gone into the tap_000 folder , put some p files inside and ran the write command, files were added. @i have copied all of this to the sd card the sd card is recognized but says wrong image im using 1.38 of the ax81b on chipbasic 2 board at 20mhz any help would be welcome thanks David
attached is a image of my MMC card, a samsung MMC card, its 32mb formatted in FAT16 and created under windows. The Ax81 recognises the card is inserted, but says no media when F9 is pressed. All four images are present on the MMC card. For the zx81, P files have been written to the zx81 image. Can anyone help or provide a similar image. thanks
when im using the zx81 mode with load "" it responds with T/0 in spectrum and ace mode, it says no media at the AX81 Menu when a selctions is made it only says is has detects the SD/mmc card and does not say anything about which image it supports. any help would be appreciated.
Hello David, it seems that Your image use long filenames, but since I dont use Windows I cannot say that's the problem. But it might... In the main menu there should be two messages at the bottom: something about the SD/MMC card, for instance "SDV1-CARD" and something about the file system, an error or "AX81-xxx IMAGE" or "NO IMAGE FOUND". Cann You tell me exactly, what You can see there? Joerg
Hello Jorg thanks for your reply If i can show you in the first three pictures what the screen show on selecting zx81 (udg) the mmc formatted in fat 16, the four image files copied across. the fourth and fifth a few pictures of my device and a the sixth and seventh of the chipbasic 2 running the spectrum preview
Jorg finally have solved the matter I dont know if it made a difference, but I used a Linux Live CD on my PC using a program called Gpart i created a new partition on the mmc card and then formatted in FAT16. I then put the mmc into the AX81 on startup it said 'no img in dir' yes its working I put the images on the mmc card, copied across the tape folders, ran the write command in each folder, then deleted the executables. ~I put the mmc card back in the ax81 and hey presto 'AX81-ZX81 image' was shown the F9 tape manager now works, page up and page down to switch between the tapes and using LOAD"" to load the programs see attached new photographs attached is my mmc image for anyone shaving trouble Thanks again.
The mmc attachment in my previous message is a binary image of my mmc card created using win imager under windows
how do you recompile main.asm using avra assembler ? anyone? ive altered some of the code and want to recompile. please help thanks
The ATMega1284 needs avra 1.3 or an oder version with my patch for device.c (see above) installed. Open a console window in the directory which contains main.asm and type avra -l main.lst main.asm and thats all. THe -l option will generate a list file and sometime prevents avra from strange errors. For new AVR projects I think about using the ASL assembler from Alfred Arnold which I currently use for other micros. Joerg
:
Bearbeitet durch User
Hi, baue grade eine ZX81b nach. (cfg3) Verwende das Display NAN YA LTC79H202T50K (http://www.pollin.de/shop/dt/Mjk2ODc4OTk-). Hab mit einem MC34063 ein step-up für ~30V gebaut, L2940-33 für die 3,3V. Habe folgende Fragen: 1) Wie habt ihr VEE per /Enable_VEE schaltbar gemacht? Pin 5 oder mit Switch? (vgl. http://www.ti.com/lit/an/slla339/slla339.pdf) Ist das eigentlich nur beim Power-Up nötig? (Meint das Datenblatt in Diagramm 8-3) 2) kann v1.38 in cfg3 das `M` Signal erzeugen, bzw. was ist die beste Option `M` zu generieren? 3) habe avra 1.3.0 mit device.c gepatcht und am Mac kompiliert (LLVM) a) Hat jemand ein passendes m1284Pdef.inc für mich? (Google-Fundstück sagt `m1284Pdef.inc(44) : PRAGMA directives currently ignored`) b) assembler bricht mit `Abort trap: 6` ab. Hat jemand einen Tipp? Merci - pit
Ok, die meisten meiner Fragen haben sich erledigt ;-) - Das M Signal ist ja offenbar auf PD6 präsent. - VEE ist bei mir jetzt erst mal immer an. Das Teil startet erst mal, aber die Schrift ist sehr eigenartig, siehe Foto. Jemand eine Idee woran das liegen kann?
Ja, an PD6 (VSYNC) liegt das M-Signal an. Bei meinem "Test-Display" habe ich das aber nicht gebraucht. Alternativ ginge auch FLM über einen 1:2 Frequenzteiler. Die 5V für den MC34063 hatte ich bei mir über einen PNP geschalten (nicht optimal, ging aber ganz gut), daher das invertierte Signal. Gleichzeitig hängen bei mir auch die LED der Hintergrundbeleuchtung (anstelle der ursprünglichen CFL) zwischen VEE und GND, dadurch bricht die Spannung beim Abschalten schnell zusammen. Bei Deiner "seltsamen" Darstellung würde ich zuerst mal die vier Datenleitungen auf Kurzschlüsse untereinander überprüfen. Jörg
Hallo zusammen, wo finde ich eigentlich Infos darüber, wie das Pollin LCD (siehe oben) sowohl von der Spannungsversorgung als auch von den Daten her mit einem Microcontroller angesteuert werden kann? Bin da bislang nicht fündig geworden. Jörg, hast du die Anschaltung am AX81 irgendwo genauer beschrieben? Auf deinen Seiten zum ChipBasic komme ich da nicht recht weiter. Danke und Gruß Marcel
Marcel A. schrieb: > wo finde ich eigentlich Infos darüber, wie das Pollin LCD (siehe oben) wo oben? Du kannst auf einen Post verweisen, in dem du einfach den Link der Überschrift des Posts kopierst. > sowohl von der Spannungsversorgung Das ist bei fast jedem Display unterschiedlich. > als auch von den Daten her mit einem > Microcontroller angesteuert werden kann? Display: http://www.jcwolfram.de/projekte/avr/ax81b/images/ax81_cb2_glcd.png Gegenstück auf Controllerseite: http://www.jcwolfram.de/projekte/avr/chipbasic2/images/ports_de.png
Vielen Dank für die Antwort, Jörg. Joerg W. schrieb: > Bei Deiner "seltsamen" Darstellung würde ich zuerst mal die vier > Datenleitungen auf Kurzschlüsse untereinander überprüfen. Ja, das hatte ich gleich als erstes gedacht, das Multimeter meint aber das es passt. Aber ich prüfe das nochmal, wäre die plausibelste Fehlerquelle. Viele Grüße - pit
●● pit ●. schrieb: > Display: > http://www.jcwolfram.de/projekte/avr/ax81b/images/ax81_cb2_glcd.png > > Gegenstück auf Controllerseite: > http://www.jcwolfram.de/projekte/avr/chipbasic2/images/ports_de.png Hallo Pit, ja, diese Stellen kannte ich auch schon. Wenn ich das aber in eigenen Projekten verwenden will - muss ich mich da vermutlich durch die Quellen wühlen oder gibt es vielleicht eine Standalone Library, die man verwenden könnte?
Die Beschaltung ist:
1 | PA0 --> D0 |
2 | PA1 --> D1 |
3 | PA2 --> D2 |
4 | PA3 --> D3 |
5 | PA4 --> /VEE ENABLE |
6 | PA5 --> FLM |
7 | PA6 --> LOAD (Latch-clock, sollte beim Pollin Display CL1 sein) |
8 | PA7 --> CP (Shift-clock, sollte beim Pollin Display CL2 sein) |
Stromversorgung ist abhängig vom Display, meins braucht z.B. +5 und ca. -22V.
Marcel, für eigene Projekte würde ich nicht den LCD Code aus dem AX81-Projekt extrahieren sondern Beitrag "Grafikfähiger LCD Controller für 320x240 LCD mit 4 Graustufen" verwenden.
Ich denke das dieses Vorgehen erst mal seine Sache ist. Ob er auf ein tolles Googelranking Wert legt glaube ich nicht. An offenen Standarts sollten sich vielleicht erstmal Microsoft und Apple versuchen anstatt diese zu untergraben. Vor allem Apple hat sich gerne an freier Software bedient. Ob davon all zu viel zurück geflossen ist bezweifle ich mal. Das Projekt selbst ist klasse. Jadeclaw D. schrieb: > Joerg Wolfram schrieb: >> @Kantor >> Kann es sein ,dass Du mit einem iPAD versucht hast die Seite aufzurufen? >> Derarige geschlossenen Systeme sind für mich unvereinbar mit open Source >> und deswegen möchte ich so etwas auch nicht unterstützen. > > Sowas ist natürlich Komplettblödsinn erster Güte. > Du tust mehr für Opensource, wenn du, anstatt mit solchen Aktionen die > Besucher zu verschrecken, konsequent auf offene Standards setzt. > Dann kann es jeder sehen, egal welches Gerät/Browser/OS er nutzt. > Übrigens: Komplett offene Standards zu nutzen, verbessert auch das > Google-Ranking, > das macht es leichter für den Googlebot, die relevanten Informationen zu > indexieren. > > Das dazu. Zum Projekt selbst: Saubere Arbeit. Ich denke, da habe ich was > für den Weihnachtsurlaub. > > Gruß > Jadeclaw.
Naja, das mit dem Aussperren der i-Geräte war ja eh nur ein Experiment. Vorausgegangen war eine etwas seltsame Diskussion mit einem iPhone-User. Deren Ergebnis lautete dann in etwa so: "Wenn Du etwas gegen mein iPhone sagst, dann beleidigst Du mich, denn ich hab mir das bewusst ausgesucht". Da wollte ich halt wissen, ob noch mehr Leute so ticken. Und nach dem ersten, der mich als Rassist beschimpft hat, habe ich meine Frage bejahen können und die User-Agent-Weiche wieder deaktiviert. Solche Dinge wie Googleranking interessieren mich nicht. Zum einem ist meine Homepage werbefrei und warum sollte ich irgendwelche Datenkraken unterstützen? Zumal ich sowieso darum bemüht bin, sämtliche (US-) IT-Konzerne zu boykottieren. Zum anderen liegt mir auch nicht daran, berühmt zu werden. Ich mache meine Projekte in allererster Linie für mich selbst, einfach um zu sehen, was machbar ist. Und was nicht (bzw. ich bekomme es nicht hin). Und wenn ich meine, etwas könnte auch andere interessieren und ich müsste sowieso mal wieder was mit LaTex machen, dann wird das Projekt dokumentiert und veröffenlicht. Jörg
Apple hat wohl etwas mehr zu OpenSource beigetragen als du. Z.B. Webkit, cups, gcc, Objective C, Swift, und viele Projekte zu denen Apple beiträgt, siehe http://opensource.apple.com//
:
Bearbeitet durch User
Leute, lasst doch bitte diese dämliche Apple / PC Diskussion hier raus, das ist IMHO viel zu schade für diesen thread. Und Deppen gibt es sicherlich nicht nur bei Apple users... Hier sollte es doch um den AX81 gehen...
Joerg W. schrieb: > Bei Deiner "seltsamen" Darstellung würde ich zuerst mal die vier > Datenleitungen auf Kurzschlüsse untereinander überprüfen. Hallo Jörg, hm, ich habe mittlerweile 100% sichergestellt und nachgemessen (DMM, Oszi und LA) das es keine Kurzschlüsse gibt. Habe auch meinen 5 -> 3.3V Pegelwandler in mehreren Varianten ausprobiert, alles erfolglos. Es scheint mir bei Zeichen immer die Linke spalte zu fehlen... (siehe Foto oben). Sehr eigenartig, die Blöcke für AX81 auf der Splash-Screen scheinen ja zu klappen. Irgend eine andere Idee, wonach ich noch suchen könnte? Merci, - pit
Beim Hintergrund sowie bei den Blöcken des Logos sind ja alle 4 (8) Pixel gleich. Dort würde man einen Kurzschluss nie bemerken. Mit welcher Frequenz läuft der Controller? Funktionieren VGA bzw. TV Output? Mein nächster Vorschlag wäre, die Portpins PA0-PA3 (Pin 40 - 37) während des Startbildes nacheinander !direkt am Conrollerpin! auf Masse zu ziehen. Dabei sollten senkrechte schwarze Linien angezeigt werden, mit Abstand von einem halben "Block". Jörg
Danke für deine Antwort, Jörg! Der Controller läuft mit 25Mhz. Habe weder VGA Monitor, noch TV Gerät :) Würde aber davon ausgehen, das der Controller läüft. Man kann erkennen was am Display sein sollte und Tastatureingabe klappt inkl. BASIC auch. Wie gesagt, definitiv kein Kurzschluss, alle Leitungen klappen, habe das bis zur ersten Durchkontaktierung auf den Leiterbahnen am Display mit Oszi verifiziert. Aber: Wenn ich D2 auf Masse ziehe, gibt es am Display im Vergleich zu allen anderen Datenleitungen keine Änderung – hier ist wohl das Problem. Sehr komisch, irgendwas muss ich übersehen. Denke auch nicht das es am Display liegt, ich habe 2 andere ausprobiert. Any other hints?
Jorg hello Having trouble writing to the spectrum image file using the ax81-write command, see attached picture. i'm in the tape_000 folder with various files of .z80 extension, but nothing is being added to the image file. Works perfectly ok when writing the zx81 image. Any help would be appreciated. thanks. David.
Hello David, at first, as seen on the screenshot the tool from Joachim only uses the ZX81 mode. In my opinion there is a problem with the path backslashes in windows and the way of path-detection. The linux tool from my project works in all modes. The seond is the limited memory of the AX81. You can't load "normal" z80 files because they require mostly a minimum of 16K RAM. But it should be possible to load the generated .z80x files in another emulator (fbzx). My intention for the spectrum mode was the ability for float math and (b/w) graphics. Standard .z80 files can only be loaded by the AX82. Joerg
Joerg Thanks for your reply How does one access symbol shift key in the spectrum emulation ? Thanks David
Hello David, sorry for my late answer. Symbol shift should be the right CTRL key on the PC keyboard. Extended mode is reacheable via the tab key and graphics mode via F2. Joerg
Joerg W. schrieb: > Hallo Marcel, > .... > Das mit den 176 ist ein Fehler, den ich demnächst korrigieren werde. > Gleiches betrifft das Beispiel für Port C, da habe ich nur kopiert und > vergessen, die Werte zu korrigieren. In der Tabelle darüber sollten sie > aber richtig stehen. Hallo Joerg, in der V1.38 wurde von Marcel ein Fehler gefunden (siehe Auszug aus Deiner Antwort vom Datum: 26.01.2015 08:02). Konntest oder hast Du dieses Verhalten mittlerweile gefixt? Ich finde auf Deiner Webseite weiterhin nur die Version 1.38 oder habe ich da was übersehen. Lieben Dank und ein schönes Wochenende
Hallo Torsten, das ist kein Fehler im Programm sondern in der Doku. Ich hatte das zwar in der Doku für das nächste Release geändert, aber da nach der 1.38 kein neues Release mehr gekommen ist wurde auch die Doku nicht aktualisiert (das läuft bei mir alles mehr oder weniger automatisiert). Da es wahrscheinlich auch kein neues Release mehr geben wird, habe ich die Dokumentation "von Hand" korrigiert. Jörg
Joerg W. schrieb: > Hello David, > > at first, as seen on the screenshot the tool from Joachim only uses the > ZX81 mode. In my opinion there is a problem with the path backslashes in > windows and the way of path-detection. The linux tool from my project > works in all modes. > > The seond is the limited memory of the AX81. You can't load "normal" z80 > files because they require mostly a minimum of 16K RAM. But it should be > possible to load the generated .z80x files in another emulator (fbzx). > > My intention for the spectrum mode was the ability for float math and > (b/w) graphics. Standard .z80 files can only be loaded by the AX82. > > Joerg Under linux the command ax81-write comes up no such command. Have used makefile. Did generate fsinstall and ax81-write and ax71-read but none if these work. Can you help ?
Hello David, >Have used makefile WHICH makefile You have used? I have only provided a small "compile.sh" script. But You may also copy the binaries of the bin package to /usr/local/bin or another path which is defined in the PATH enviroment variable. I do not recommend to store the binaries somewhere else (for instance at Your home directory or directly on the SD card). >none if these work How You are did test it? No error message? Nothing? Or always "no such command"? Best regards, Joerg
I identified this as part of the listing at Line 482 if ((strstr(buffer,".z80x") || strstr(buffer,".Z80X"))) in the ax81-write.c program and this stops any .z80 spectrum file from being written to the ax81_spc.bin file i have altered this to if ((strstr(buffer,".z80") || strstr(buffer,".Z80"))) in the attachment, but now i need someone to recompile it. I have no understanding of linux , can someone please recompile. Thanks.
I see this subject has been discussed before now, did anyone recompile a linux on windows 7 version,
Adding a couple of .z80 snapshots listed the following on the picture. Is it supposed to do this ?
Yes the snapshots load. But freeze. See pictures. But the ax81-write now works on spectrum image.
hallo ihr, darf ich fragen, ob es noch platinen mit fertig programmierten µc gibt? oder kann man sich das ding auch fix auf einer lochraster platine aufbauen? wenn ja, wo finde ich die bom, den schaltplan und die roms für den µc?
:
Bearbeitet durch User
alle Projektdaten gibt es hier: http://www.jcwolfram.de/projekte/avr/ax81b/main.php
:
Bearbeitet durch User
Ronny M. schrieb: > hallo ihr, > > darf ich fragen, ob es noch platinen mit fertig programmierten µc gibt? > oder kann man sich das ding auch fix auf einer lochraster platine > aufbauen? wenn ja, wo finde ich die bom, den schaltplan und die roms für > den µc? Hi Ronny I have some boards with integrated sd reader I can let you have for price of postage. I shall put a picture of board on shortly.
Beitrag #5056807 wurde von einem Moderator gelöscht.
Wenn dem so wäre... würde es nicht eine Fangemeinde rund um den Z80 und die damit einhergehenden Computer geben.
David, You cannot run regular .Z80 files because the Spectrum has at least 16K RAM but the AX81 has not. If the loaded snapshot does any read access above 15K it will get wrong data. If the stack is in the region above 15K, the program will mostly freeze or gets undefined behavior. The .z80x files are mostly compatible to .z80 but use only the memory which is available at the AX81. But they should work with other emulators. The slightly different file extension is only for preventing users to load snapshots which almost not work. Joerg
Thesr boards of mine are listed on ebay http://m.ebay.co.uk/itm/Sinclair-ZX80-ZX81-Spectrum-16k-Jupiter-Ace-Emulator-PCB-AX80-/182657572231?hash=item2a873d5d87%3Ag%3AKRgAAOSwuq9ZYK~R&_trkparms=pageci%253Afd149a91-6534-11e7-b753-74dbd18045fb%257Cparentrq%253A2b15225015d0abd99a0e4813ffed08a7%257Ciid%253A7 Their going fast. Only 5 left.
David R. schrieb: > Thesr boards of mine are listed on ebay > > http://m.ebay.co.uk/itm/Sinclair-ZX80-ZX81-Spectrum-16k-Jupiter-Ace-Emulator-PCB-AX80-/182657572231?hash=item2a873d5d87%3Ag%3AKRgAAOSwuq9ZYK~R&_trkparms=pageci%253Afd149a91-6534-11e7-b753-74dbd18045fb%257Cparentrq%253A2b15225015d0abd99a0e4813ffed08a7%257Ciid%253A7 > > Their going fast. Only 5 left. Hello, Can I get the component list (bom)? Lg ronny --- hallo, kann ich dazu die bauteileliste (bom) bekommen? lg ronny
David R. schrieb: > Ronny pm me your email address Hallo, Du müsstest eine eMail von mir bekommen haben. Wenn nicht, schick mir einfach eine PM :) LG Ronny --- Hello, You must have received an email from me. If not, just send me a PM :) LG Ronny
Introducing my new board in the same footprint size as a zx81 and provision is made to use the existing or a new membrane and fits a zx81 case. Video out from the uhf or composite out or vga Compatible with the ax81 b 82b Membrane or ps2 keyboard can be used. See picture.
Edge connector provides connection to parallel port and iscp port for programming and sd card.
The 2nd avr interprets the membrane keyboard key presses into their corresponding keyboard scan codes.
Picture of board nearing completion. A few errors have been noted. Keyboard connector pin 5 has no track to the atmega, due to typo on schematic. The two keyboard connectors are not at the correct spacing, out by 2.54mm as they overlap, a workaround by mounting one on top and the other underneath. The parallel port and iscp connection are available at the edge connector. I plan to mount the board in the zx81 case, provision is made on the board for an Ps2 type keyboard to be used. VGA is available, i plan to use UHF. More updates later.
:
Bearbeitet durch User
With the parallel port, I think I can make an add-on PCB with an 8255 or Z80-KIO or another I/O-chip. To use this Computer in combination with further electronics. Which signals are available on the port? I2C, too? Best regards! Horst.
Ende 2023 und noch immer rennt der AX81 im Hobbykeller neben meinem Ohio Scientific Model 600 :)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.