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
>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)
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
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.
@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
@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
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
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
@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
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 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
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
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
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
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
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
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
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
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 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
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
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
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
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
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
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
@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
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
intmain(void){
5
intc;
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
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
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
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
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