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
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.