Forum: Projekte & Code AX81 - ZX81 im AVR


von Joerg W. (joergwolfram)


Angehängte Dateien:

Lesenswert?

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

von Rene B. (themason) Benutzerseite


Lesenswert?

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 :-)

von Olaf (Gast)


Lesenswert?

> 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

von Kantor (Gast)


Lesenswert?

Auf deiner Seite gibts nur ne Fehlermeldung: "Closed Systems are not 
supported"?

von Rene B. (themason) Benutzerseite


Lesenswert?

>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 :-)

von Ronny M. (hobby-coder)


Lesenswert?

wird es evtl. demnächst platinen/ bausätze zum ax81 board...?

von Joerg W. (joergwolfram)


Lesenswert?

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

von chris (Gast)


Lesenswert?

Super, hatte früher auch mal einen ZX81.

Alle Achtung vor Deiner Leistung !

von Kantor (Gast)


Lesenswert?

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

von Umpa Lumpa (Gast)


Lesenswert?

Ich habe den ZX81 immer noch und er funktioniert.

von Jan (Gast)


Lesenswert?

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?

von Peter Sieg (Gast)


Angehängte Dateien:

Lesenswert?

@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

von Joerg W. (joergwolfram)


Lesenswert?

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

von ALeX K. (alx)


Lesenswert?

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)

von Peter Sieg (Gast)


Angehängte Dateien:

Lesenswert?

ok. Die 'Einfachst' Schaltung sollte dann also in etwa so aussehen..?

Als HEX Datei werde ich nehmen: ax81_m1284p_t-l_sd_pd1pd4.hex

Gruß Peter

von Joerg W. (joergwolfram)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

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

von Peter Sieg (Gast)


Angehängte Dateien:

Lesenswert?

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

von Tüddel (Gast)


Lesenswert?

@ Peter

mit 10 min Aufwand bekommst du das Layout auch einseitig!
Darfst dich aber erst mal auskurrieren, gute Besserung.

von Jadeclaw D. (jadeclaw)


Lesenswert?

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.

von Tüddel (Gast)


Lesenswert?

@ Joerg
ich habe hier noch ein Display mit einem SED1330 Controller, passt das, 
oder für was für ein Display hast du vorgesehen?

von Joerg W. (joergwolfram)


Lesenswert?

@Tüddel

Nein, das dürfte nicht gehen. Der Code ist nur für controlllerlose
Displays geeignet.

Jörg

von Joerg W. (joergwolfram)


Lesenswert?

@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

von Peter S. (petersieg)


Lesenswert?

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

von Peter S. (petersieg)


Angehängte Dateien:

Lesenswert?

Hier ein Bild.
(Auch wenn man nicht viel erkennen kann)

Peter

von mkBurkersdorf (Gast)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Joerg W. (joergwolfram)


Angehängte Dateien:

Lesenswert?

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

von Peter S. (petersieg)


Angehängte Dateien:

Lesenswert?

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

von mkBurkersdorf (Gast)


Lesenswert?

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

von mkBurkersdorf (Gast)


Lesenswert?

Hallo,

Hat einer eine Idee wie ich die Programme unter Windows auf die SD-Karte
schreiben kann ?

Gruß
Manfred

von Joerg W. (joergwolfram)


Lesenswert?

@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

von Peter S. (petersieg)


Angehängte Dateien:

Lesenswert?

@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

von mkBurkersdorf (Gast)


Angehängte Dateien:

Lesenswert?

@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

von Peter S. (petersieg)


Angehängte Dateien:

Lesenswert?

@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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter S. (petersieg)


Angehängte Dateien:

Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

Hier noch ein paar Links mit P Files
und Info's (inkl. Emulatoren):

http://www.zx81.nl/

http://www.aptanet.org/eightyone/

Peter

von mkBurkersdorf (Gast)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

@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

von Peter S. (petersieg)


Lesenswert?

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

von chris (Gast)


Lesenswert?

Vielleicht ließe sich mein Bootloader für das Projekt verwenden:
http://hackaday.com/2011/09/09/program-an-arduino-using-your-sound-card/

von bastler (Gast)


Lesenswert?

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

von Volkmar D. (volkmar)


Lesenswert?

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.

von Ale (Gast)


Lesenswert?

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 ;-)

von Christian B. (casandro)


Lesenswert?

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.

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

@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

von Nils S. (kruemeltee) Benutzerseite


Lesenswert?

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.

von Peter S. (petersieg)


Angehängte Dateien:

Lesenswert?

Hier sind meine Eagle Dateien inkl SD Slot lbr.

Gruß Peter

von bastler (Gast)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

@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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

@Jörg: Bin schon gespannt wie ein Flitzebogen ;-)

Gruß Peter

von mkBurkersdorf (Gast)


Lesenswert?

@ Jörg : Ich warte auch schon darauf.

Gruß
Manfred

von chris (Gast)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

@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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

@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

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

@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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

@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

von Peter S. (petersieg)


Angehängte Dateien:

Lesenswert?

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

von neua (Gast)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

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

von mkBurkersdorf (Gast)


Lesenswert?

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

von neua (Gast)


Lesenswert?

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

von neua (Gast)


Lesenswert?

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

von neua (Gast)


Lesenswert?

Habe Pullups 4,7k 2x.

danke.

gruss

von neua (Gast)


Lesenswert?

Ach so, Bild ist klar und deutlich auf meinem Monitor.
Erst kommt die Startbildgrafik und dann das Inverse "K" wie beim 
Original.

gruss

von Peter Sieg (Gast)


Angehängte Dateien:

Lesenswert?

@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

von Peter Sieg (Gast)


Lesenswert?

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

von mkBurkersdorf (Gast)


Lesenswert?

Hallo Peter,

Ich habe jetzt 5 unterschiedliche Karten getestet. Gehen alle nicht.
Muß mal sehen ob ich eine Fuji Film bekomme.

Gruß
Manfred

von Peter S. (petersieg)


Angehängte Dateien:

Lesenswert?

Hänge hier mal zum Vergleich die SD Card Routinen aus dem avrcpm Projekt 
an..

Peter

von Joerg W. (joergwolfram)


Angehängte Dateien:

Lesenswert?

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

von mkBurkersdorf (Gast)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

Hallo Manfred,

entferne mal bitte die Leitung von der 16-Farb-Erweiterung von PORTC.4 
da ansonsten der LCD-Mode aktiv wird.

Gruß Jörg

von Joerg W. (joergwolfram)


Lesenswert?

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

von mkBurkersdorf (Gast)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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?

von Joe G. (feinmechaniker) Benutzerseite


Lesenswert?

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

von mkBurkersdorf (Gast)


Lesenswert?

Hallo Jörg,

No Card wird angezeigt. Beim Affengriff kommt die selbe Anzeige , No 
Card.

Gruß
Manfred

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

@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

von neua (Gast)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

@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

von Joerg W. (joergwolfram)


Lesenswert?

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

von mkBurkersdorf (Gast)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von mkBurkersdorf (Gast)


Angehängte Dateien:

Lesenswert?

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

von mkBurkersdorf (Gast)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

Ahh.. die hatte ich aber nach dem formatieren drauf kopiert..
war also da als AX81 gestartet wurde..

Gruß Peter

von neua (Gast)


Lesenswert?

V0.24 ???
Ich finde bei Jörg nur V0.23.

Wo gibt es die 24ziger?

danke.

gruss

von Peter S. (petersieg)


Lesenswert?

mkBurkersdorf schrieb:
> Die V0.24 wird bei der letzten Version vom 17.11. 01:36 Uhr von Jörg
> angezeigt.

lies mal ein bißchen hoch..

Peter

von neua (Gast)


Lesenswert?

Hmm..., kann ich wirklich nichts erkennen oder muss ich eine neue 
Fielman...?

gruss

http://www.jcwolfram.de/downloads/main.php#ax81

von neua (Gast)


Lesenswert?

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

von neua (Gast)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von neua (Gast)


Lesenswert?

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

von neua (Gast)


Lesenswert?

Ist geklärt.
Mit dem Hexeditor kann ich keine Datein im Image erkennen.
Habe die jetzt reingeladen.

danke.

gruss

von neua (Gast)


Lesenswert?

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

von neua (Gast)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

@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

von mkBurkersdorf (Gast)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von mkBurkersdorf (Gast)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von neuea (Gast)


Lesenswert?

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

von neuea (Gast)


Lesenswert?

http://avr.cwsurf.de/?AVR_CP%2FM

Könnte man den Speicher von diesem Stick nutzen für den ZX81 ?

gruss

von Joerg W. (joergwolfram)


Lesenswert?

Es gibt wieder ein neues Release, ich habe versucht die SD-Routinen noch 
etwas zu verbessern.

Gruß Jörg

von mkBurkersdorf (Gast)


Lesenswert?

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

von mkBurkersdorf (Gast)


Lesenswert?

Hallo Jörg,

Hab ich vergessen:  Ich benutze die 128p.

Gruß
Manfred

von Joerg W. (joergwolfram)


Lesenswert?

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

von mkBurkersdorf (Gast)


Lesenswert?

Hallo Jörg,

Danke für die schnelle Änderung. Jetzt geht es.

Gruß
Manfred

von neua (Gast)


Lesenswert?

Hallo, grüss dich.
Bei dir kann V0.25 runterladen, aber drin ist V0.24.

Oder sit das die V0.25 nur nicht umbenannt.

danke.
gruss

von neua (Gast)


Lesenswert?

Hallo, grüss dich.
Bei dir kann die V0.25 runterladen, aber drin ist V0.24

Oder ist das die V0.25 , nur nicht umbenannt.

danke.
gruss

von Joerg W. (joergwolfram)


Lesenswert?

Ja, da war der Name noch falsch. Habe ich jetzt korrigiert.

Gruß Jörg

von neua (Gast)


Lesenswert?

Hallo, ich wollte mal den Source compilieren.
Wo gibt es die 1284..inc für dieses compilat?

danke.

gruss

von neua (Gast)


Lesenswert?

Ich habe eine INC , aber da wird der avrasm32.exe verlangt.

danke.

gruss

von Joerg W. (joergwolfram)


Lesenswert?

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

von neua (Gast)


Lesenswert?

....Probleme mit den vielen Makros im Quellcode hatte.....

Das habe ich bei mir jetzt auch gehabt.

danke.

gruss

von Joerg W. (joergwolfram)


Lesenswert?

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

von neua (Gast)


Lesenswert?

Hmmm...., das wäre Klasse.

Danke.

gruss

PS: Was ist die nächste Weiterentwicklung am ZX81 ?

von Peter S. (petersieg)


Angehängte Dateien:

Lesenswert?

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

von Joerg W. (joergwolfram)


Angehängte Dateien:

Lesenswert?

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

von neua (Gast)


Lesenswert?

Jup, danke. Lässt sich fehlerfrei mit dem AVRASM32.EXE compilieren für 
den 1284 und läuft fehlerfrei auf dem Atmega.

Klasse.

gruss

von Günter R. (diddleybow)


Lesenswert?

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

von mkBurkersdorf (Gast)


Lesenswert?

Hallo Günter,

Ich habe unterschiedliche SD-Karten getestet, no Name und Markenkarten 
1GB und 2GB sie gehen alle.

Gruß
Manfred

von Günter R. (diddleybow)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Günter R. (diddleybow)


Lesenswert?

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

von Günter R. (diddleybow)


Angehängte Dateien:

Lesenswert?

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

von HolgerW (Gast)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

@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

von Joe G. (feinmechaniker) Benutzerseite


Lesenswert?

Günter R. schrieb:
> Fischer-Alu-Gehäuse

Ist es dieses Gehäuse?: AKG D 71 24
Wo kaufst du es?

Joe

von Günter R. (diddleybow)


Lesenswert?

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

von Holger W. (holgerw)


Lesenswert?

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

von neua (Gast)


Lesenswert?

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

von Günter R. (diddleybow)


Lesenswert?

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

von Günter R. (diddleybow)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Günter R. (diddleybow)


Lesenswert?

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

von luther s. (mike3)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

@Mike: Just using 1284P with avrdude under win$:
1
avrdude -c usbtiny -p m1284p -e -U flash:w:ax81.hex
2
avrdude -c usbtiny -p m1284p -U lfuse:w:0xe6:m -U hfuse:w:0xd1:m -U efuse:w:0xfc:m

Peter

von Joerg W. (joergwolfram)


Lesenswert?

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

von David R. (retrogadgets)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

@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

von Peter Sieg (Gast)


Lesenswert?

Hmm.. ich finde die Windows Tools nicht mehr um das Fielsystem zu bilden 
und zu beschreiben (000_write_to_image.exe)..??

Peter

von Joerg W. (joergwolfram)


Lesenswert?

Hallo Peter,

die Tools werden erst durch den Installer geschrieben, in der Package 
selbst existieren sie nicht.

Jörg

von Peter Sieg (Gast)


Lesenswert?

ok, Aber wo ist der Installer..?

Gruß, Peter

von Joerg W. (joergwolfram)


Lesenswert?

Zum Beispiel hier:

ax81_026-binary.tar.gz/tool/install_fs.exe

Jörg

von Peter Sieg (Gast)


Lesenswert?

Upps. ;-)

Danke! Hätte mir wohl doch erst die 0.26 Firmware ziehen sollen..

Gruß Peter

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

Jup. Die 0.26 meldet sich übrigens noch mit 0.25..

Danke+Gruß, Peter

von Joerg W. (joergwolfram)


Lesenswert?

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

von Joerg W. (joergwolfram)


Angehängte Dateien:

Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

Ich bin für:
24/25MHz, verschiedene Systeme

Gruß Peter

von Norbert K. (Gast)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

Hört sich alles ganz schmackhaft an.. ;-)

Prima!

Gruß Peter

von Hozenplotz (Gast)


Lesenswert?

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

von Günter R. (diddleybow)


Lesenswert?

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

von Bal T. (baltic)


Lesenswert?

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

von Hozenplotz (Gast)


Lesenswert?

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.

von Günter R. (diddleybow)


Lesenswert?

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

von Günter R. (diddleybow)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Günter R. (diddleybow)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Günter R. (diddleybow)


Lesenswert?

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

von Andreas R. (Gast)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Andreas R. (Gast)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Andreas R. (Gast)


Lesenswert?

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

von Norbert K. (Gast)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Norbert K. (Gast)


Lesenswert?

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

von Andreas R. (Gast)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Andreas R. (Gast)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

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

von Andreas R. (Gast)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

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

von Andreas R. (Gast)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

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

von Ronny M. (hobby-coder)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

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

von Andreas R. (Gast)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

Noch eine andere Sache.. Taster an RESET gegen GND bringt keinen 
Einschaltzustand.. Bildschirm bleibt 'dunkel' nichts geht mehr..

Peter

von Günter R. (diddleybow)


Lesenswert?

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

von Joerg W. (joergwolfram)


Angehängte Dateien:

Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

Ja das tut sie.. nach ca. 5-6s blinkt sie regelmäßig mit ca. 1s Takt.

Trotzdem kein Bild am BAS Monitor.

Gruß Peter

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Günter R. (diddleybow)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Joerg W. (joergwolfram)


Angehängte Dateien:

Lesenswert?

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

von Peter Sieg (Gast)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von David R. (retrogadgets)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

Hi David,

pls use the current version 0.28 from

http://www.jcwolfram.de/downloads/main.php#ax81

because the version 0.25 has problems with many SD cards.

best regards,

Joerg

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

@Jörg: Nur der Ordnunghalber. Ich habe 2 Aufbauten, die identisches 
(Fehl)-Verhalten zeigen.

Nun dann warten wir mal auf 'Andere'.

Schönes WE,
Peter

von Joerg W. (joergwolfram)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

@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

von Peter S. (petersieg)


Lesenswert?

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

von Andreas R. (Gast)


Lesenswert?

Hallo alle,

ich will mal kurz meine Erfahrungen mit dem neuen AX81b schildern:

Ich verwende die gleiche Hardware, die ich auch mit dem "normalen" ax81 
verwendet habe - auch mit einem 20 MHz-Quarz; da ich mein Pollin-LCD 
verwende, funktioniert das recht gut. Die LCD-Refresh-Rate ist halt 
etwas kleiner als sie sein sollte. Ich verwende v1.28 der Software 
(ax81b_v128_cb2_24m.hex). Meine SD-Karte ist eine "disk2go 1 GB" (einige 
Jahre alt) mit einer einzigen FAT16 Partition (knappe 1 GB gross, d.h. 
gesamte Kapazität der Karte).

Ich kann meist problemlos das vorgefertigte Jupiter Ace Image verwenden 
und auch das "Fisch"-Programm laden und ausführen. Manchmal kommt es 
vor, dass das Jupiter Ace Image nicht erkannt wird - dann hilft 
neuerliches Kopieren des vorgefertigten Images auf die Karte.
Wenn ich allerdings mit "ax81-fsinstall 3 3 3 3" oder "ax81-fsinstall 10 
10 10 10" meine eigenen Tapes erstelle, erhalte ich beim Jupiter Ace und 
beim Spectrum die Meldung "No Media" im Tape-Manager (die beiden Images 
werden nicht erkannt, die für den ZX81 und ZX80 werden hingegen 
erkannt). Kopieren der vier von mir erstellten Images auf den Desktop, 
dann Löschen aller Files auf der Karte, und Rückkopieren der vier Images 
hilft dann und alle vier Images werden erkannt. Dieses Verhalten ist bei 
mir reproduzierbar.

Da mich der ZX81 am meisten interessiert (und ich den am besten kenne), 
habe ich weitere Tests im ZX81 Modus gemacht.

SAVEen und LOADen von ZX81-Programmen geht gut.
Manchmal (nicht immer) wird beim Aufruf vom Tape-Manager (mit F9 oder 
SAVE oder LOAD) mein LCD wohl nicht mehr richtig angesteuert, d.h. 
einige Spalten werden blass und im Laufe der Zeit wird das ganze LCD 
blass und flackernd. Zurück im Basic geht die LCD-Ansteuerung dann 
wieder richtig.

Wenn ich im Tape-Manager mit den Kursor-Tasten Programme auswähle, 
werden manchmal willkürlich Programmeinträge mit einer Reihe ©©©© 
ersetzt; der richtige Programmeintrag kommt aber wieder, wenn man weiter 
mit den Kursortasten Programme auswählt.

Grüsse,

Andreas



Joerg Wolfram schrieb:
> Natürlich hat sich am Verhalten fast nichts geändert. Ich habe nur die
> genannten Funktionen hinzugefügt und ein neues "Paket" erstellt. Da bei
> mir 3 verschiedene SD-Karten in zwei verschiedenen Hardware-Aufbauten
> problemlos funktionieren sehe ich auch nicht unbedingt Veranlassung, da
> noch größere Codeexperimente anzustellen, weil es bei einem Nachbau
> nicht richtig funktioniert.
> Vielleicht können sich andere "Nachbauer" (sofern es sie gibt) mal mit
> einem Erfahrungsbericht melden.
>
> Jörg

von Peter S. (petersieg)


Lesenswert?

@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

von Andreas R. (Gast)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

@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

von David R. (retrogadgets)


Lesenswert?

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.

von David R. (retrogadgets)


Lesenswert?

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.

von Peter Sieg (Gast)


Lesenswert?

@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

von Joerg W. (joergwolfram)


Lesenswert?

Bei einer Cursorbewegung werden alle Dateinamen neu eingelesen, das ©©©© 
in der Zeile deutet darauf hin, dass nur 0xFF von der Karte gelesen 
wurde. Hast Du die gleichen Widerstände (750R/1,5K) oder auch 
abweichende? Eventuell wäre dann eine "saubere" Lösung mit Levelshifter 
sinnvoller.

Die FAT werte ich nicht aus, auch beim Directory nur den ersten Sektor, 
was 16 Einträgen entspricht und normalerweise ausreichen sollte.

Was mich bei Peter wundert:

>No Valid Marker DC

0xDC ist eigentlich der richtige Merker und sollte das Laden erlauben. 
Die 24 und 25 MHZ Varienten unterscheiden sich nur im Timing für die TV 
und LCD Ausgabe sowie die Baudratenerzeugung für die 
Snapshot-Übertragung.

> Is there anyway of getting HRG on the AX81 from the code of AX81b on the
> standard AX81 ?

No, this may be possible for VGA and LCD, for TV which uses on the AX81 
bit-banging the necessary timing for UDG cannot be achieved.

Jörg

von Andreas R. (Gast)


Lesenswert?

Joerg Wolfram schrieb:
> Bei einer Cursorbewegung werden alle Dateinamen neu eingelesen, das ©©©©
> in der Zeile deutet darauf hin, dass nur 0xFF von der Karte gelesen
> wurde. Hast Du die gleichen Widerstände (750R/1,5K) oder auch
> abweichende? Eventuell wäre dann eine "saubere" Lösung mit Levelshifter
> sinnvoller.

Ich verwende wie in Deinem Schaltbild den 750R/1.5K Spannungsteiler für 
die SD Karte. Ich muss wohl mal eine andere SD Karte ausprobieren, aber 
die ©©©© sind wohl eher ein kosmetisches Problem - jedenfalls ist es mir 
noch nicht passiert, dass ein Programm nicht richtig geladen wurde...

> Die FAT werte ich nicht aus, auch beim Directory nur den ersten Sektor,
> was 16 Einträgen entspricht und normalerweise ausreichen sollte.

Könnte das damit zu tun haben, dass von "ax81-fsinstall 3 3 3 3" 
generierte Images erst dann alle erkannt werden, wenn ich sie auf die 
"geleerte" Karte zurückkopiere (wie in einem meiner letzten Posts 
beschrieben)?

Grüsse,

Andreas

von Joerg W. (joergwolfram)


Lesenswert?

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

von Lokus P. (derschatten)


Lesenswert?

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?

von Lokus P. (derschatten)


Lesenswert?

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?

von Joerg W. (joergwolfram)


Lesenswert?

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

von Andreas R. (Gast)


Lesenswert?

Hallo Jörg,

ich habe nun wieder etwas Zeit gefunden, mich mit dem ax81 zu 
beschäftigen. Ich verwende wieder die Version 0.28, da mich der ZX81 am 
meisten interessiert und ich mit dieser Version das meiste RAM zu 
Verfügung habe (15.75 kB). Wenn ich die Version 1.28 des ax81b verwende, 
kriege ich "nur" 15 kB; ausserdem gibt es manchmal im Tape-Manager 
Probleme, mein GLCD richtig anzusteuern.

Nun zu meinem "Problem": ich habe mich mit dem z88dk-Cross-Kompiler 
beschäftigt und ein einfaches Programm cross-kompilert:
1
#include <stdio.h>
2
    #include <stdlib.h>
3
4
    int main(void) {
5
       int c;
6
7
       while( (c = getchar()) !=13){
8
           putchar(c);
9
                printf("\n");
10
       }
11
       
12
    }
Dieses Programm wartet auf eine Tastatureingabe und gibt das Zeichen 
gleich auf dem Bildschirm aus.

Im ax81b (v1.28) läuft das Programm wie es sollte, aber im ax81 (v0.28) 
läuft es erst normal, stürzt aber nach einigen Tastendrücken ab. Es sind 
bis zum Absturz immer unterschiedliche Anzahlen Tastendrücke; wenn es 
abstürzt, muss ich den ax81 mit Ctrl-Alt-Entf neu starten. Hast Du die 
Tastatur-Abfrageroutinen in ax81b gegenüber dem ax81 stark 
geändert/verbessert? Ich frage auch deshalb, weil das Spielprogramm 
"Nanako" (auch mit z88dk erstellt) im ax81b ladbar ist und auf 
Tasteneingaben (richtig) reagiert, aber im ax81 zwar läd, aber nur auf 
die Esc-Taste reagiert (und meint, es sei die Space-Taste). Das 
Spielprogramm "Uwol" (vom selben Programmierer und auch mit z88dk 
erstellt) kann ich im ax81b nicht laden (zuwenig RAM). Im ax81 läd es 
zwar, aber es reagiert wieder nur auf die Esc-Taste.

Grüsse,

Andreas

von Joerg W. (joergwolfram)


Lesenswert?

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

von Andreas R. (Gast)


Lesenswert?

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

von Joachim (Gast)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Joachim Merkl (Gast)


Angehängte Dateien:

Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

Hi.

Ich hatte die 25m Variante auf LR am laufen.

Peter

von Joachim M. (zxjoachim)


Angehängte Dateien:

Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Joachim M. (zxjoachim)


Angehängte Dateien:

Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Joachim M. (zxjoachim)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Joachim M. (zxjoachim)


Lesenswert?

Hallo Jörg!
Das ist eine gute Lösung. Bin schon auf die neuen Files gespannt!
Grüße
Joachim

von Peter S. (petersieg)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

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

von Retrogadgets (Gast)


Lesenswert?

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

von Peter S. (petersieg)


Lesenswert?

Hmm. I am not aware about such 64k barrier??
I am using avrdude under Windows XP with usbtiny stick. Such sticks cost 
under 10€ at ebay.

Peter

von Peter S. (petersieg)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Retro gadgets (Gast)


Lesenswert?

Peter

The 64k barrier I was referring to, the usbtiny is limited to only 
writing upto 64k of flash!

von Peter S. (petersieg)


Lesenswert?


von David R. (retrogadgets)


Angehängte Dateien:

Lesenswert?

Hello Jorg

found this site

http://www.radiolocman.com/shem/schematics.html?di=71093

an interesting project to increase the amount of sram available for the 
AX81b

see attached pictures and eagle files


Regards

David

von Joerg W. (joergwolfram)


Lesenswert?

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

von Retro gadgets (Gast)


Lesenswert?

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

von David R. (retrogadgets)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Joachim M. (zxjoachim)


Angehängte Dateien:

Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

Jetzt dauert es doch noch etwas länger, da ich meinen AVR-Programmer im 
Ausland hab liegen lassen und mir erst einen neuen bauen muß...

Jörg

von David Roper (Gast)


Lesenswert?

Question ?  why does the ax81b need to run at 24 or 25 mhz ?, if this is 
a overclock problem with timing ?

Regards

David - Retrogadgets

von David Roper (Gast)


Angehängte Dateien:

Lesenswert?

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

von Joachim M. (zxjoachim)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Joachim M. (zxjoachim)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

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

von Joerg W. (joergwolfram)


Lesenswert?

In der Doku steht es leider noch nicht drin, der AVR I/O Raum wird ab 
Adresse
0x7e00 (32256) eingeblendet (wenn aktiviert).

Beispiel LED Blinken, PORTA=32288, DDRA=32289:
1
10 POKE 32289,255
2
20 POKE 32288,176
3
30 PAUSE 25
4
40 POKE 32288,85
5
50 PAUSE 25
6
60 GO TO 20

Jörg

von Joerg W. (joergwolfram)


Lesenswert?

Kleine Korrektur, PORTA hat nicht die Adresse 32288 sondern 32290. Auf 
der Adresse 32288 liegt PINA.

Jörg

von Andreas R. (Gast)


Lesenswert?

Hallo Jörg,

ich habe gerade Deine Version 1.32 des ax81b ausprobiert, konkret habe 
ich die 20 MHz-cb2-Variante verwendet. Danke für die neue Version!
Hier einige erste Erfahrungen:

Eine 2GB takeMS SD-Speicherkarte funktioniert im ZX81-Modus gut, nachdem 
ich eine ca. 1GB Partition auf der Karte erstellt habe und dann die vier 
(vorher erstellten) Tape-Images als erstes von meiner Festplatte auf die 
Karte kopiert habe (eine grössere ca. 2GB Partition hat nicht 
funktioniert). Eine 1GB disk2go Karte funktioniert zwar auch, aber im 
Tape-Manager sehe ich bei dieser Karte manchmal Zeilen mit @@@@@@@, wenn 
ich die Kursortasten verwende (ich werde diese Karte halt nicht mehr 
verwenden).

Eine Sache funktioniert aber noch nicht richtig: ich verwende ja das 
Pollin-GLCD, das ein M-Signal benötigt. Dieses Signal liegt an PORTD.6; 
mit dem Oszilloskop habe ich gesehen, dass es beim ax81b im normalen 
ZX81-Betrieb kein regelmässiges Rechtecksignal mit genau 50% duty-cycle 
ist - beim "alten" ax81 war es das noch. Ausserdem fällt dieses M-Signal 
manchmal (nicht immer) aus, wenn der Tape-Manager aufgerufen wird. Mit 
"Ausfallen" meine ich, dass PORTD.6 manchmal entweder konstant auf 0V 
oder 5V liegt - das hat das GLCD nicht so gerne: man sieht auf dem 
Display, dass irgendwas "komisch" ist (verwaschene/blasse Anzeige).

Grüsse,

Andreas

von Joachim M. (zxjoachim)


Lesenswert?

Hallo Andreas!
Ich habe auch das WD-H3224V-LCD angeschlossen und komme auf das gleiche 
Problem. Allerdings verschwindet bei mir das Bild nach ca. 1 Min fast 
vollständig. Es ist nur noch ein Schatten vom Cursor zu erkennen.
Ich erzeuge mit einem MC34063AD 25 V. Die liegen beim Verschwinden des 
Bildes noch stabil an. Hast du bereits eine Schaltung für deine 21,5 V? 
Ich bin mir nicht sicher, ob das Problem bei mir ausschließlich von der 
Ansteuerung oder nicht auch von meiner Spannungsversorgung kommt.
Ich habe es noch mit der Firmware V.1.28 probiert. Die V.1.32 kommt 
dieses Wochenende dran.
Grüße
Joachim

von Joerg W. (joergwolfram)


Lesenswert?

Eventuell liegt am Code der dazu dient, bei 60Hz (VGA/LCD/NTSC) jeden 6. 
VSYNC zu ignorieren. Ich kann heute abend mal nachsehen, ob ich etwas 
finde. Da ich kein Oszi habe ist das allerdings nicht ganz einfach.
Ansonsten muss man sich halt mit einem Flip-Flop an FLM behelfen.

Jörg

von Andreas R. (Gast)


Lesenswert?

@Joachim: ich erzeuge als Kontrastspannung ziemlich genau 21.5 V mit 
einem MC34063A. Ich bekomme beim "alten" ax81 (mit Firmware 0.28) damit 
ein stabiles (über viele Stunden) und kontrastreiches Bild; beim ax81b 
ist das Bild auch stabil, sieht aber gefühlt etwas "anders" aus als beim 
ax81. Ich bekomme halt auch die oben genannten Probleme beim Aufruf des 
Tape-Managers und da das M-Signal nicht genau 50% duty-cycle hat, will 
ich mein Display nicht allzu lange am ax81b betreiben. Das Bild 
verschwindet aber keinesfalls schon nach 1 min wie bei Dir. Vielleicht 
sind Deine 25V zu hoch; wenn ich mit der Konstrastspannung etwas über 
die 21.5 V gehe, wird das ganze Bild schwarz.

@Jörg: Du hast wahrscheinlich recht, laut meinem Oszi fehlt beim ax81b 
im ZX81-Normalbetrieb jeder 6. low-high bzw. high-low Wechsel im 
M-Signal. Warum aber bleibt das M-Signal manchmal konstant auf high oder 
low, wenn der Tape-Manager aufgerufen wird?
Wenn Du Änderungen an der Firmware bez. des M-Signals machst, kann ich 
gerne mit meinem Oszi nachmessen, was genau passiert...


Grüsse und schönes Wochenende,

Andreas

von Joachim M. (zxjoachim)


Lesenswert?

Hallo Andreas,
könntest du bitte einen Schaltplan oder die Bauteilwerte einstellen?
Vielen Dank und viele Grüße!
Joachim

von Andreas R. (Gast)


Lesenswert?

Joachim Merkl schrieb:
> Hallo Andreas,
> könntest du bitte einen Schaltplan oder die Bauteilwerte einstellen?
> Vielen Dank und viele Grüße!
> Joachim

Hallo Joachim,

der Schaltplan für den Step-Up-Wandler ist gemäss Motorola-Datenblatt 
für den MC34063A (Seite 5) mit folgenden Bauteilwerten:
L = 220 uH (Drosselspule mit Ferrit-Ringkern)
R_SC = 2.2 Ohm
C_T = 220 pF
R1 = 3.3 kOhm
R2 = 51 kOhm + 10 kOhm Poti (zum Einstellen der Kontrastspannung)
C_O = 22 uF / 50 V
Diode: SB 160
180 Ohm von Pin 8 nach Pin 7 (wie im Datenblatt)

Diese Schaltung funktioniert bei mir wunderbar...

Gruss,

Andreas

von David R. (retrogadgets)


Lesenswert?

Jorg

Just for your information the date code on my atmega1284p is 1050.

von David R. (retrogadgets)


Lesenswert?

Jorg

I see in the original chip basic 644 project you have a 64k external ram 
interface The 64K memory expansion XRAM64, can this be used with the 
AX81 and AX81b ??

von Micha H. (Firma: Dg3brb) (kanadakruemel)


Lesenswert?

Hallo Joerg,
mit Interesse verfolge ich schon eine ganze Weile dieses (und das 
Vorgänger-) Projekt. Respekt vor dieser Leistung und vielen Dank dafür!

Da ich selbst mal im Besitz eines ZX81 war und noch immer eines 
ZXSpectrum+ bin, "musste" ich das natürlich mal nachbauen. Das ganze hab 
ich erstmal auf LR ausprobiert. Leider scheinen meine 1284p allergisch 
gegen Übertakten zu sein, oder der LR Aufbau ist im Quarz-Bereich 
suboptimal. Laut Oszi schwingt der Quartz mit 24MHz nicht richtig. Mit 
20MHz ging es zwar, bis zur letzten Version konnte man da die TV Ausgabe 
aber nur erahnen :-).

Aber mit der neuesten Version ist ja alles besser. Schnell nen 14,7MHz 
Quartz drauf, die neue Version geflasht - und WOW alles geht. Das 
TV-Bild ist stabil, auch die MicroSD-Karte (takeMS mit SD-Adapter) wurde 
sofort erkannt und Tapes lassen sich in den ZX81 laden (erstellt 
übrigens nach Deiner Anleitung). Im Speccy Mode kann ich snapshot 
speichern und auch laden. Sogar der ACE Emu ging (z.B. Fish aus Deinem 
Snapshot Paket).

Hattest Du nicht geschrieben, das die ACE Emulation mit 14MHz nicht 
geht? Oder hab ich da was falsch verstanden?

Nun wollte ich mir den AX81b mal selbst übersetzen. Leider scheinen die 
Sourcen nicht vollständig zu sein. Beim Übersetzen mit dem avra werden 
Dateien in Verzeichnissen vsys/speed1 etc gesucht. Diese Verzeichnisse 
finde ich in Deinem tarball leider nicht. Auf Deiner Homepage schreibst 
Du auch etwas von einer compile.sh, die es scheinbar auch nicht gibt. 
Bitte nicht falsch verstehen, ich finde es toll, dass Du die Sourcen der 
Öffentlichkeit zugänglich machst. Das Neukompilieren wollte ich machen, 
um das Tastaturlayout umzustellen und ggf. die Config-Pins zu 
verschieben/wegzulassen.

Als nächstes steht die Inbetriebnahme des LCDs an (Pollin 
WD-H3224V-LCD).
Wenn der AX81b dann in sein Gehäuse eingezogen ist, kann ich ja mal ein 
paar Fotos hochladen.

Ach ja, ich hatte mal die Idee, den Touchscreen des LCD's als 
Tastaturersatz zu nehmen (mit nem 2. AVR, der dann PS2 emuliert). Könnte 
man den den AX81b dazu bringen, bei Hi-Pegel an einem Pin ein statisches 
Bild aus dem Flash anstatt des normalen Bildschirminhalts anzuzeigen? 
Dann würde ich bei Touchscreenberührung die Tastatur des ZX81 (bzw des 
gerade emulierten Rechners) einblenden, und man hätte eine schön 
kompakte Rechnereinheit mit Bedienung, die man wunderbar für 
Steuerungsaufgaben nutzen könnte.

Da stand doch auch mal ein Autostart-Feature auf Deiner Agenda. Ist das 
immer noch angedacht. Habe diesbezüglich nix mehr gelesen. Ich würde 
mich auch gern selbst an den letzten beiden Features versuchen, was aber 
im Moment an den fehlenden Sourcen hängt.

Gruss,
Micha

von Joerg W. (joergwolfram)


Lesenswert?

@ David

The usage of the XRAM64 for the AX81 is not planned.

@ Micha

Ich mache in den nächsten Tagen ein neues Paket fertig, bin aber gerade 
auf den Weg in den Urlaub.

Autostart ist schon realisiert, und zwar über die Snapshot-Funktion. 
Wenn ein aktiver Snapshot vorhanden ist und während des Intro-Screen 
keine Taste gedrückt wird, lädt das System den Snapshot und macht an der 
Stelle weiter.

Viele Grüße,

Jörg

von Micha H. (Firma: Dg3brb) (kanadakruemel)


Lesenswert?

Joerg Wolfram schrieb:
> Ich mache in den nächsten Tagen ein neues Paket fertig, bin aber gerade
> auf den Weg in den Urlaub.
Na dann wünsche ich einen schönen Urlaub!

> Autostart ist schon realisiert, und zwar über die Snapshot-Funktion.
> Wenn ein aktiver Snapshot vorhanden ist und während des Intro-Screen
> keine Taste gedrückt wird, lädt das System den Snapshot und macht an der
> Stelle weiter.
Ah, vielen Dank. Das hatte ich dann wohl überlesen.

Gruß,
Micha

von Joachim M. (zxjoachim)


Angehängte Dateien:

Lesenswert?

@Jörg!
Nochmals vielen Dank für deine Unterstützung und die Zusendung der 
Sourcen!

Die Programme ax81-fsinstall, ax81-read und ax81-write konnte ich mit 
MinGW für Windows kompilieren. Es kamen nur Warnmeldungen hinsichtlich 
Slash und Backslash, da die Backslashes in den Pfadnamen als Escapes 
verstanden werden können.
ax81-fsinstall 32 0 0 0 ist einwandfrei gelaufen. Ich habe damit 32 
Tapes und eine Binärdatei erzeugt Mit ax81-write konnte ich P-Files in 
das Tape000 schreiben. Die Programme lassen sich in den AX81B tadellos 
laden.

ax81-read habe ich garnicht zum Laufen gebracht. Da kommt 'unknown mode' 
und 'wrong place'. Mehrmaliges überprüfen der Pfadbezeichnungen brachte 
kein Ergebnis. Die Backslashes sind alle richtig gesetzt. Die Ausgabe 
des filename ergab 'TAPES81_SPECTAPE_255. Da muss ich noch dranbleiben.

Bei ax81-write ergibt sich noch folgender Fehler: Alle P-Files, egal in 
welchem Tape sie stehen, werden in das TAPE000 geschrieben. In diesem 
Verzeichenis selbst ist kein P-File. Somit müßte die Binärdatei falsch 
beschrieben werden.

Haben schon Leute im Forum Erfahrungen mit ax81-read und -write?

Im Anhang meine veränderten Sourcen und die Exe-Dateien.

@Andreas
Die Schaltung mit deinen Bauteilwerten habe ich aufgebaut. Ich bekomme 
20 bis 25 V und kann mit dem Poti die 21,5 V tadellos einstellen.
Leider hat sich am Verhalten des Displays nichts verändert. Die Zeichen 
verblassen nach ca. 1 Min völlig. Jetzt werde ich mit dem Oszi mal die 
Anschlüsse durchprüfen und evtl. das Display wechseln. Habe zum Glück 
noch einpaar. Vielleicht ist mir beim Anlöten der Kabel am Display ein 
Fehler unterlaufen. Hast du irgendwo Buchsen für den Folienstecker 
aufgetrieben. Die Hinweise im web habe ich verfolgt. Die Buchsen wurden 
aber aus dem Sortiment genommen.

viele Grüße an alle
Joachim

von Andreas R. (Gast)


Lesenswert?

Hallo Joachim,

bist Du sicher, dass das M-Signal (von PORTD.6 des ATMega1284P) auch am 
entsprechenden Pin des LCDs ankommt? Wenn dieses Signal fehlt, kann es 
durchaus zu solchen komischen Effekten kommen, die Du beschreibst. Wenn 
du ein korrektes Bild (kurzzeitig) siehst, sollten zumindest die 
Datenleitungen und die Signale CP, LOAD und FLM des LCDs richtig 
angeschlossen sein.
Probier doch auch mal spasseshalber die "alte" Version 0.28 (ax81 ohne 
"b"), am besten mit einem 20 MHz Quarz; diese Version hatte ich damals 
verwendet, um mein LCD zum erstem Mal in Betrieb zu nehmen...

Angeschlossen habe ich das LCD auf etwas unkonventionelle Art: ich habe 
mit einem Skalpell die einzelnen Leitungen des Flexprint-Kabels getrennt 
und diese dann an eine Steckerleiste bzw. Litzen gelötet. Nachdem alles 
funktioniert hat, habe ich diese empfindlichen Lötstellen mit 
Zweikomponentenkleber umhüllt (quasi als "Zugentlastung") - das Ganze 
war zwar ein Haufen Arbeit, aber ich habe auf die Schnelle keine Buchsen 
für das LCD auftreiben können...

Grüsse,

Andreas


Joachim Merkl schrieb:
> @Andreas
> Die Schaltung mit deinen Bauteilwerten habe ich aufgebaut. Ich bekomme
> 20 bis 25 V und kann mit dem Poti die 21,5 V tadellos einstellen.
> Leider hat sich am Verhalten des Displays nichts verändert. Die Zeichen
> verblassen nach ca. 1 Min völlig. Jetzt werde ich mit dem Oszi mal die
> Anschlüsse durchprüfen und evtl. das Display wechseln. Habe zum Glück
> noch einpaar. Vielleicht ist mir beim Anlöten der Kabel am Display ein
> Fehler unterlaufen. Hast du irgendwo Buchsen für den Folienstecker
> aufgetrieben. Die Hinweise im web habe ich verfolgt. Die Buchsen wurden
> aber aus dem Sortiment genommen.

von Joachim M. (zxjoachim)


Lesenswert?

Hallo zusammen!
Die Probleme mit ax81-read habe ich beheben können. Es waren tatsächlich 
die Backslashes. Jetzt funktioniert es einwandfrei. Allerdings steht der 
Test, die so erzeugten P-Files in einem ZX81 laufen zu lassen, noch aus.

@Andreas: Ich fürchte, ich habe gar kein M-Signal. Schaue mir das Signal 
jetzt mal auf einem AX81 an.

Grüße
Joachim

von Joachim M. (zxjoachim)


Lesenswert?

Hallo Andreas!
Das M-Signal-Problem ist gelöst. Zu meiner Schande muss ich gestehen, 
dass ein Kurzschluss zwischen 5V und dem M-Signal die Ursache war. 
Murphy läßt grüßen.
Auch ich kann bestätigen, dass das Display nur mit 21,5 V optimal läuft. 
Die Schaltung, die ich zuvor hatte (25 V) bringt ein blasses Bild. Sehr 
gut ist auch deine Idee, mit einem Poti nachregeln zu können.
Ich werde aber auf jeden Fall noch die Hintergrundbeleuchtung 
aktivieren.

Eines ist mir noch aufgefallen: Es funktioniert auch tadellos, wenn die 
5V-Versorung des Step-up-Wandlers gleichzeitig mit dem AX81B 
eingeschaltet wird. Die PA4-Transistor-Lösung hatte ich vorgesehen, aber 
noch nicht realisiert und es klappte trotzdem. Kann das Display dadurch 
beschädigt werden?

Ich kann nur jedem empfehlen, diese tolle Projekt nachzubauen. Auch 
Leuten, die mit Windows arbeiten, zumal die Tools nun übersetzt sind und 
laufen.

Grüße
Joachim

von Andreas R. (Gast)


Lesenswert?

Hallo Joachim,

schön, dass es nun bei Dir klappt - danke fürs Feedback.
Ich schalte den Step-Up-Wandler auch gleichzeitig mit dem AX81 ein (und 
auch aus) und es funktioniert eigentlich gut. Beim Wegnehmen der 
Versorgungsspannung bleiben allerdings auf meinem Display noch für 
einige Sekunden schwarze Streifen oder manchmal eine grössere schwarze 
Fläche übrig - keine Ahnung, ob das dem Display auf lange Sicht schadet. 
Ich lasse es jedenfalls mal so, es tritt ja nur beim Ausschalten auf...
Die Hintergrundbeleuchtung enzuschalten lohnt sich jedenfalls auch: viel 
bessere Ablesbarkeit bei geringerem Umgebungslicht.

Viele Grüsse,

Andreas



Joachim Merkl schrieb:
> Hallo Andreas!
> Das M-Signal-Problem ist gelöst. Zu meiner Schande muss ich gestehen,
> dass ein Kurzschluss zwischen 5V und dem M-Signal die Ursache war.
> Murphy läßt grüßen.
> Auch ich kann bestätigen, dass das Display nur mit 21,5 V optimal läuft.
> Die Schaltung, die ich zuvor hatte (25 V) bringt ein blasses Bild. Sehr
> gut ist auch deine Idee, mit einem Poti nachregeln zu können.
> Ich werde aber auf jeden Fall noch die Hintergrundbeleuchtung
> aktivieren.
>
> Eines ist mir noch aufgefallen: Es funktioniert auch tadellos, wenn die
> 5V-Versorung des Step-up-Wandlers gleichzeitig mit dem AX81B
> eingeschaltet wird. Die PA4-Transistor-Lösung hatte ich vorgesehen, aber
> noch nicht realisiert und es klappte trotzdem. Kann das Display dadurch
> beschädigt werden?
>
> Ich kann nur jedem empfehlen, diese tolle Projekt nachzubauen. Auch
> Leuten, die mit Windows arbeiten, zumal die Tools nun übersetzt sind und
> laufen.
>
> Grüße
> Joachim

von Joachim M. (zxjoachim)


Lesenswert?

Hallo zusammen!
Heute wollte ich den ax81b so wie Jörg in eine Tastatur einbauen. Dabei 
habe ich festgestellt, dass der ax81b nicht mit allen PS/2-Tastaturen 
geht. Ich habe hier vier PS/2-Tastaturen. Bei Zweien nimmt er alle 
Tasten (soweit vom ZX81-Tastatur-Input möglich) an, bei den anderen 
beiden, es sind Siemens Fujitsu, nicht. Da sind es nur sehr wenige 
Tasten, die angenommen werden. Die Gegenprobe am PC: alle vier 
Tastaturen sind ok. Laut Wiki gibt es keine unterschiedlichen Protokolle 
bei PS/2-Tastaturen. Hat jemand eine Idee, woran das liegen kann?

Die Hintergrundbeleuchtung habe ich ganz einfach über einen 
Spannungsregler (LF33CV) an 5 V angeschlossen. Das ist ein 
Spannungsregler, der 3,3 V ausgibt. Damit ist die Beleuchtung m.E. 
optimal, obwohl lt. Datenblatt 3,8 V gefordert sind. Vorwiderstände oder 
Poti brauchte ich nicht. Die LED ziehen aber ungefähr 500 mA.

Grüße
Joachim

von Joachim M. (zxjoachim)


Lesenswert?

Achtung, der LF33CV wird ziemlich heiß! Da suche ich noch nach einer 
anderen Lösung. Ich probiere es mal damit 
http://forum.tlienhard.com/phpBB3/viewtopic.php?f=2&t=676&p=5467&hilit=Schaltregler#p5467
und berichte wieder.
Grüße
Joachim

von Andreas R. (Gast)


Lesenswert?

Hallo Joachim,

wenn Deine 500 mA nicht doch zu viel Strom durch die LEDs sind! Ist das 
pro Strang oder gesamt für alle drei Stränge? Ich betreibe meine 
Hintergrundbeleuchtungs-LEDs mit 20 mA (!) pro Strang - ich meine, hier 
irgendwo im Forum diesen Stromwert für die LEDs für dieses 
Pollin-Display gesehen zu haben. Diese 20 mA reichen mir vollkommen 
aus...

Gruss,

Andreas


Joachim Merkl schrieb:
>
> Die Hintergrundbeleuchtung habe ich ganz einfach über einen
> Spannungsregler (LF33CV) an 5 V angeschlossen. Das ist ein
> Spannungsregler, der 3,3 V ausgibt. Damit ist die Beleuchtung m.E.
> optimal, obwohl lt. Datenblatt 3,8 V gefordert sind. Vorwiderstände oder
> Poti brauchte ich nicht. Die LED ziehen aber ungefähr 500 mA.
>
> Grüße
> Joachim

von Joerg W. (joergwolfram)


Lesenswert?

Hallo,

ich habe die version 1.33 online gestellt, aber halt ungetestet.

Jörg

von Joachim M. (zxjoachim)


Lesenswert?

Hallo Andreas!
Ich habe die Pins 15,21 und 23 an 3,3 Volt eines regelbaren Netzteiles 
gehängt. Die Pins 16, 22 und 24 an GND. Alos parallel angeschlossen. 
Dabei hat mir das Netzteil 500 mA angezeigt.
Wie hast du die Pins angeschlossen? Mir sind 500 mA auch viel 
vorgekommen. Hätte ich seriell anschließen sollen?

viele Grüße
Joachim

von Andreas R. (Gast)


Lesenswert?

Hallo Joachim,

ich habe meine drei Hntergrund-LED-Stränge jeweils über 150 Ohm an die 5 
V Versorgung angeschlossen; das gibt dann ca. 20 mA pro Strang. Also 
Pins 16, 22, 24 an GND und Pins 15, 21, 23 jeweils über 150 Ohm 
Widerstände an 5 V.
Parallelschalten (ohne Vorwiderstände) sollte man LEDs grundsätzlich 
nicht...

Gruss,

Andreas


Joachim Merkl schrieb:
> Hallo Andreas!
> Ich habe die Pins 15,21 und 23 an 3,3 Volt eines regelbaren Netzteiles
> gehängt. Die Pins 16, 22 und 24 an GND. Alos parallel angeschlossen.
> Dabei hat mir das Netzteil 500 mA angezeigt.
> Wie hast du die Pins angeschlossen? Mir sind 500 mA auch viel
> vorgekommen. Hätte ich seriell anschließen sollen?
>
> viele Grüße
> Joachim

von Joachim M. (zxjoachim)


Lesenswert?

Hallo Andreas,
möchte mich an dieser Stelle mal ausdrücklich für deine Unterstützung 
bedanken!
Vielen Dank und viele Grüße
Joachim

von Joachim M. (zxjoachim)


Angehängte Dateien:

Lesenswert?

Hallo Jörg,
die V.1.33 läuft als .cb2 bei 14 MHz tadellos. Das Bild ist absolut 
stabil (wenn ich nur wüßte, wie ich die Invertierung wegbekomme. PC3 (= 
JP2) auf low ging nicht). Mit der Karte gibt es überhaupt keine 
Probleme.
Aufgefallen ist mir nur, wenn man ein File aus dem Tape löscht, muss man 
den AX81 neu starten, damit man wieder das Inhaltsverzeichnis bekommt.

Das Problem, dass Files immer auf Tape000 geschrieben wurden, ist auch 
behoben. Es lag alles an den Backslashes in den Sourcen.
Die Programme ax81-read, -write und -fsinstall laufen tadellos. Ich habe 
sie für Windwows-User angehängt. Dabei noch eine bat-Datei, die eine 
SD-Card mit 10 ZX81-Tapes vorbereitet (keine für Spectrum, Jupiter und 
ZX80). Man muss nur eine SD-Card mit FAT16 formatieren. Ich benutze dazu 
SDFormatter. Dann kopiere ich ax81-fsinstall.exe und tape-install.bat 
ins Root-Verz.
Nach dem Start von tape-install.bat werden alle Ordner und das Bin-File 
angelegt. Nun kopiere ich in jeden Unterordner (z.B. TAPE000 oder 
TAPE001) die Programme ax81-read.exe und ax81-write.exe. Zuletzt kopiere 
ich die ZX81-Programme, die ich z.B. im TAPE000 haben will in den Ordner 
TAPE000 und starte in diesem Ordner das Programm ax81-write.exe. Jetzt 
werden die ZX81-Programme in das Bin-File geladen. Fertig.
Wenn ich Programme im AX81B erstellt und auf Karte gespeichert habe, 
kann ich diese in den PC laden. Dazu muss man auf dem PC in das 
Tape-Verzeichnis gehen, in dem das Programm gespeichert wurde (Z.B. 
TAPE001). Dort startet man das Programm ax81-read.exe. Nun werden alle 
Programme aus dem Bin-File für dieses Tape in den Ordner geschrieben. 
Fertig.
Ich habe die Beschreibung nochmals hier eingegeben, damit auch reine 
Windows-User sehen, wie einfach es ist, in Windows Programme auf und von 
der SD-Card zu bringen.
Spectrum-, ZX80- und Jupiter Ace-Files habe ich nicht ausprobiert, 
müßten aber ebenso funktionieren.

@Andreas: Anschluß der Hintergrundbeleuchtung hat wunderbar 
funktioniert!


Viele Grüße
Joachim

von Andreas R. (Gast)


Lesenswert?

Hallo Jörg,

ich habe gerade Deine neue Version 1.33 des AX81b ausprobiert (Danke!!!) 
und kann bestätigen, dass das M-Signal aus PORTD.6 nun korrekt aussieht, 
d.h. schöne 50 % duty-cycle und es bleibt auch so, wenn der Tape-Manager 
aufgerufen wird. Auch sonst scheint alles zu funktionieren...

@Joachim: ich kann hingegen nicht bestätigen, dass das Bild auf dem LCD 
invertiert ist bei geschlossenem J2 (d.h. PORTC.3 auf GND) - es ist 
normal, so wie es sein soll (weisser Hintergrund, schwarze Zeichen). Es 
wird invertiert, wenn J2 geöffnet wird und somit PORTC.3 über 10 kOhm 
auf 5 V ist. Ich habe allerdings die 20 MHz-Version der Firmware benutzt 
(ax81b_v133_cb2_20m.hex) - vielleicht ist es ja bei der 14 MHz-Version 
anders??? - kann ich allerdings nicht glauben. Ich würde mal schauen, ob 
Du einen Kurzschluss o.ä. auf der PORTC.3 Leitung hast.
Auch kann ich nicht bestätigen, dass man den AX81b neu starten muss wenn 
man ein Programm im Tape-Manager gelöscht hat und wieder ins Verzeichnis 
will - bei mir funktioniert es wie es sollte.


Viele Grüsse,

Andreas

von zxjoachim (Gast)


Lesenswert?

Hallo Andreas!
Ich habe eben auch die 20 MHz-Version (ax81b_v133_cb2_20m.hex) geflasht 
und siehe da: Es funktioniert wie bei dir. Kein Inversmodus, kein 
Problem beim Löschen eines Files von der Karte.
Die Versionen sind dahingehend tatsächlich unterschiedlich. Jörg 
schreibt in seiner Anleitung, dass die Möglichkeiten der Jumperabfrage, 
was den JP1 betrifft, zwischen der 12/14- und der 20Mhz-Version, 
begrenzt sind. Ich denke, dass da ein Bug steckt. Mache jetzt mal die 
Gegenprobe und baue alles auf 14 Mhz zurück.

viele Grüße
Joachim

von Joachim M. (zxjoachim)


Lesenswert?

Hallo zusammen!
Ich habe nun alle Firmwareversionen mit der Endung 'cb2' durchprobiert 
und es ist tatsächlich so, dass nur mit der 20-MHz-Version die inverse 
Anzeige des Displays über JP2 = low ausgeschaltet werden kann. JP1 muss 
nicht auf low. Die GLCD-Ausgabe geht auch ohne.

Zwischenzeitlich ist das GLCD bei P. ausverkauft. In der Bucht gibt es 
noch einen einzigen Anbieter, der noch ca. 40 Stück hat.

P. hat ein Netzteil, das 30 V, 3,3 V, 1,8 V und 5 V zur Verfügung 
stellt. Ob das für unsere Zwecke einsetzbar wäre. Kostet unter 1 Euro. 
Artnr. 350506.

Viele Grüße
Joachim

von Peter S. (petersieg)


Lesenswert?

Hi. Ich habe das Pollin: 120506 LCD Wintek WD-H3224V noch 3x hier.
2x noch eingepackt, 1x schon angeschlossen inkl. 22V Wandler auf LR.

Wer das als Päckchen möchte (20€ inkl. VS in DE) -> PN.

Peter

von David R. (retrogadgets)


Lesenswert?

Hello Peter

I have one of these Wintek displays, how does one connect to the ax81 
board, i am using the unmodified chipbasic2, the ribbon on the display 
is very small, is their some kind of connector ? or should i solder some 
very fine wires to the display ?

regards

David

von Joerg W. (joergwolfram)


Lesenswert?

Eigentlich sollte die Invertierung auch bei 12 und 14MHz umschaltbar 
sein, aber vielleicht ist noch ein Bug dazwischengerutscht. Das kann ich 
aber erst in ca. 2 Wochen nachprüfen.
Inzwischen ist mir noch eine andere Idee gekommen: Mit der 
Minimalversion und einem zusätzlichen Latch/Register könnte man auch 
eine externe Matrixtastatur anschließen. LCD, darunter 
Ersatz-Folientastatur, Gehäuse drum (max. 3 Ecken abrunden, damit es 
keinen Ärger gibt ;-) und fertig ist das AX81-Tablett...

Jörg

von David Roper (Gast)


Lesenswert?

Jorg

On the original chipbasic design at top of forum, do you have a 
schematic for the circuit attach to the LCD panel ?

David

von Joachim M. (zxjoachim)


Lesenswert?

Hallo Jörg,
was ist bitte beim AX81B mit der ZX81-Emulation die RAMTOP-Adresse. Ich 
müßte einpaar ZX81-Programme, die über RAMTOP laufen, umschreiben.
Vielen Dank und viele Grüße
Joachim

von Joerg W. (joergwolfram)


Lesenswert?

Hallo Joachim,

bei der reinen ZX81 Simulation liegt der RAMTOP bei 0x7c00 (15K RAM), 
wenn eine der beiden UDG Varianten aktiviert ist bei 0x7800 (14K RAM).

Jörg

von zxjoachim (Gast)


Lesenswert?

Vielen Dank, Jörg!
Die shapshot-Funktion läuft super! Tolle Idee!
Im ZX-Team wächst das Interesse am AX81B.

viele Grüße
Joachim

von Joachim M. (zxjoachim)


Lesenswert?

zxjoachim schrieb:
> Vielen Dank, Jörg!
> Die shapshot-Funktion läuft super! Tolle Idee!
> Im ZX-Team wächst das Interesse am AX81B.
>
> viele Grüße
> Joachim

Ich meinte natürlich die snapshot-Funktion.

von Joachim M. (zxjoachim)


Lesenswert?

Hallo Jörg,
zwischenzeitlich habe ich auch die PIO-Funktion an Port C getestet 
(kleines 8-bit-Lauflicht) und es läuft top! Sobald ich einen Assembler 
installieren kann, werde ich die Ausgabe/Eingabe auch in MC testen. Bin 
gespannt wie die Takt-Zeiten sind und ob man dann auch Programme, die 
zeitkritische Abläufe haben (Funkuhr, Frequenzmessung etc.) 1:1 
übernehmen kann.
Verwende derzeit die cb2-20Mhz-Version.
Kleiner Nachteil: Da an Port C auch die Jumper abgefragt werden, startet 
der AX81 nicht, wenn an diesem Port Hardware hängt. In diesem Fall ist 
es ein ULN2803 mit LED. Optimal wäre es, den JP für inverse Darstellung, 
wie in der Minimalvariante, zu verlegen und den JP für LCD-Betrieb 
garnicht abzufragen. Der Vorteil wäre dann, den AX81 als 
Steuerungsrechner mit Programm im snapshot, GLCD  und angeschlossener 
Hardware einzusetzen. Er könnte dann immer von selbst hochfahren.
Sonst gibt es an der Version bisher nichts auszusetzen. Ich teste 
weiter.

viele Grüße
Joachim

von Joerg W. (joergwolfram)


Lesenswert?

Man könnte einfach die Config-Pins der CB2-Variante für die 
Minimalvariante nach PORTB1...PORTB3 legen und wäre flexibler. 
Allerdings habe ich meine Minimalvariante fest in eine Tastatur 
eingebaut (mit nur einem Schalter an PORTB1) und möchte die nicht 
unbedingt wieder aufschrauben...
Für das nächste Release könnte ich aber eine entsprechende "CFG3" mit 
als Config- und Hexfile erzeugen.

Jörg

von zxjoachim (Gast)


Lesenswert?

Das wäre super! Ich teste dann.
viele Grüße
Joachim

von Joerg W. (joergwolfram)


Lesenswert?

Ich habe jetzt die 12 und 14MHZ (V1.33, CB2 Hardware) Versionen aus dem 
Binary-Paket getestet und bei beiden funktioniert hier die Umschaltung 
zwischen normal und invers LCD ohne Probleme.

Jörg

von zxjoachim (Gast)


Lesenswert?

Hallo Jörg,
hast du etwas daran geändert oder habe ich was beim Testen falsch 
gemacht (anderer Jumper, Firmware o.ä.)?
Grüße
Joachim

von Joerg W. (joergwolfram)


Lesenswert?

Ich hab extra das Archiv von der eigenen Homepage runtergeladen um 
sicher zu gehen. Von daher sollte es also nicht kommen. Villeicht kann 
es noch jemand anderes testen?

Jörg

von zxjoachim (Gast)


Lesenswert?

Hallo Jörg,
bitte entschuldige das Mißverständnis. Ich dachte, weil die Version 
nicht hochgezählt war und du nicht geschrieben hast, dass es bugs gab, 
dass die Fehler evtl. garnicht vorlagen und ich beim Testen Mist gebaut 
habe.
Grüße
Joachim

von Joerg W. (joergwolfram)


Lesenswert?

Nein, ich habe die V1.33 vom 19.8. heruntergeladen. Da bei mir der 
gesamte Build-Prozess weitestgehend auomatisiert ist kann es sonst 
passieren, dass ich mit einer unveröffentlichten Version teste.

Jörg

von Joerg W. (joergwolfram)


Lesenswert?

Nutzt eigentlich jemand die Spectrum-Emulation? Ich würde sie gerne in 
der nächsten Version zugunsten anderer Funktionen (Zusatz-ROMs beim 
ZX81) rauswerfen.

Jörg

von Micha H. (Firma: Dg3brb) (kanadakruemel)


Lesenswert?

Hallo Jörg,

Joerg Wolfram schrieb:
> Nutzt eigentlich jemand die Spectrum-Emulation? Ich würde sie gerne in
> der nächsten Version zugunsten anderer Funktionen (Zusatz-ROMs beim
> ZX81) rauswerfen.

Ja, ich nutze sie als "Hauptemulation". Grund ist die bessere 
Grafikfähigkeit
und der leichtere Zugang zu den IO-Ports vom Basic aus. Wär schon 
schade, wenn das rausfliegt. Die ZX81-Emu nutze ich auch. Die ZX80 und 
Ace Emulation dagegen gar nicht.

Um was für Zusatzroms beim ZX81 geht es denn?

Gruß,Micha

P.S.: Ich habe mal die ax-tools etwas erweitert (ein paar 
Sicherheitsabfragen eingebaut, um Abstürze zu vermeiden, ACE und 
Spectrum Snapshots zurücklesen). Besteht Bedarf daran? Wenn ja, darf ich 
die Sourcen hier hochladen, oder Dir per PM?

von Joerg W. (joergwolfram)


Lesenswert?

Konkret geht es um das ASDIS-ROM, welches im ZX81-Forum angefragt wurde. 
Mittlerweise habe ich aber eine Lösung gefunden, durch eine Umschichtung 
Platz in einem passenden Speicherbereich zu finden. Eventuell kann man 
dann auch den (zusätzlichen) ROM-Code von der SD-Karte oder aus der 
Emulation heraus umflashen.

@Micha
Du kannst den Quellcode / die Programme gerne hier (oder auch woanders) 
zur Verfügung stellen, es ist ja ein OpenSource Projekt und steht unter 
der GPL.

Jörg

von Micha H. (Firma: Dg3brb) (kanadakruemel)


Angehängte Dateien:

Lesenswert?

Hallo,

wie versprochen, hier die Sourcen der geänderten AX81 Tools.
Konkret wurden ein paar Nullpointer Abfragen eingebaut sowie das 
Auslesen von ACE und Spectrum Snapshots aus den Images implementiert. 
Bei den Spectrum Snapshots habe ich die Endung auf ".z80" geändert, da 
ich nur solche im I-net gefunden habe und mit Fuse etc. erzeugen konnte. 
Zumindest konnte ich solche snapshots in das Spectrum Image schreiben 
und nutzen.
Weiterhin habe ich noch einige Backslash Escapes korrigiert, die 
definitiv falsch waren.

Es ist ein rudimentäres Makefile dabei. Unter Windows (Cygwin) habe ich 
auch getestet und Schreiben und Lesen ging.

Gruß,
Micha

von Joachim M. (zxjoachim)


Lesenswert?

Hallo Micha,
konnte alle Sourcen unter Win7 compilieren. fsinstall, read und write 
laufen tadellos.
Joachim

von Joerg W. (joergwolfram)


Lesenswert?

Ich habe heute die Version 1.34 online gestellt:

http://www.jcwolfram.de/projekte/avr/ax81b/main.php

Neben einer weiteren Hardware-Konfiguration (Minimal-Variante mit 3 
Jumpern an Port B) kann jetzt im ZX81 Mode ein Zusatz-ROM ab Adresse 
8192 genutzt und über die SD-Karte aktualisiert werden.

Jörg

von zxjoachim (Gast)


Lesenswert?

Vielen Dank, Jörg!
Genau das was ich brauche. Beginne gleich mit dem Testen.
viele Grüße
Joachim

von zxjoachim (Gast)


Lesenswert?

Hallo Jörg,
Frage noch: Verhält sich das Zusatz-ROM tatsächlich wie ein ROM - also 
nur lesen? Ich frage wegen den ASDIS-Variablen.
Grüße
Joachim

von Andreas R. (Gast)


Lesenswert?

Hallo Jörg,

ich habe gerade per Zufall auf Deiner Website für den AX81 (ohne "b") im 
Changelog entdeckt, dass Du Version 0.29 mit den AX81b-Tastaturroutinen 
erstellt hast (ich hatte ja vor einiger Zeit mal danach gefragt). Leider 
kann ich diese Version nicht in Deinem Download-Bereich finden; den 
behalte ich [zusammen mit etlichen Foren] eigentlich immer in Auge, 
damit ich über neue Versionen im Bilde bin...

Danke und viele Grüsse,

Andreas

von Joerg W. (joergwolfram)


Lesenswert?

@Joachim,

das Zusatz-ROM ist wirklich ein ROM, das heisst es kann nicht (von 
Emulator-Seite her) beschrieben werden. Pghysikalisch liegt es im Flash 
des AVR.

@Andreas,

da habe ich leider die falschen Seiten mit aktualisiert, ich hatte 
versucht die Routinen zurückzuportieren und auch schon die Doku 
überarbeitet, letztendlich hat das Ganze bisher dann doch nicht 
funktioniert. Es ist auch nicht ganz trivial, da die Interrupt-Rountine, 
der Emulator und die Patches im ZX81-ROM zusammenspielen müssen. Einen 
"Anlauf" werde ich aber noch nehmen...

Jörg

von Andreas R. (Gast)


Lesenswert?

Hallo Jörg,

danke für die Antwort. Ich verwende immer noch die "alte" ax81 Variante, 
da ich manchmal nicht auf die 15.75 kB RAM verzichten will.

Deshalb ein ausdrückliches Dankeschön dafür, dass Du die "alte" Variante 
immer noch pflegst...

Viele Grüsse,

Andreas


Joerg Wolfram schrieb:

> @Andreas,
>
> da habe ich leider die falschen Seiten mit aktualisiert, ich hatte
> versucht die Routinen zurückzuportieren und auch schon die Doku
> überarbeitet, letztendlich hat das Ganze bisher dann doch nicht
> funktioniert. Es ist auch nicht ganz trivial, da die Interrupt-Rountine,
> der Emulator und die Patches im ZX81-ROM zusammenspielen müssen. Einen
> "Anlauf" werde ich aber noch nehmen...

von zxjoachim (Gast)


Lesenswert?

Hallo Jörg,
teste derzeit mit ax81b_v134_cfg3_20m. Als Hardware habe ich noch meine 
alte Platine, weshalb ich nur LCD testen kann. Die neue Platine, die in 
Kürze eintreffen müßte, verfügt dann über die 3 Jumper und ich kann auch 
die TV/BAS-Ausgabe testen.
Die Benutzung der SD-Card ist wie zuvor ohne Ausfälle.
Das Einlesen einer ROM-Erweiterung geht ohne Probleme. Die Programme 
laufen auch im Adressbereich ab 8192. Was auffällt ist, dass die in MC 
geschriebenen Tastaturabfragen dieser Programme im erweiterten ROM zu 
schnell emuliert werden. Man kann fast keine Tastatureingaben machen. 
Ich lasse den AX81 im Normalmodus laufen. Mal sehen, wie das mit 12 oder 
14 MHz wird. Die IO-Ausgabe ist echt fix. Ein Lauflicht in BASIC im 
Fast-Modus ist annähernd schnell wie in MC auf einem ZX81.
Bisher also alles bestens. Die ROM-Erweiterung ist eine echte 
Bereicherung.
Ich bleibe weiter dran.
viele Grüße
Joachim

von Joerg W. (joergwolfram)


Lesenswert?

Hallo Joachim,

da die Ineterruptroutinen des Z80 nicht genutzt werden können, habe ich 
Videoausgabe und Tastaturroutinen sozusagen "aussenherum" im AVR 
realisiert. Dazu wird IN(0xfe) teilweise emuliert und auch direkt in die 
Systemvariablen geschrieben. Eventuell lässt sich am Timing noch ein 
bisschen drehen, kannst Du mir mal so ein ROM-Image schicken?

Jörg

von zxjoachim (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Jörg,
auf der ROM-Erweiterung sind etliche Hilfsprogramme. Darunter ein 
Disassembler, der mit RAND USR 14626 gestartet wird. Alle 
Adresseneingaben müssen in Hex sein. Mit 'P' schaltet man in den 
'Programmmodus' mit 'T' in den 'Tabellenmodus'. Mit 'Pnnnn' wird ab 
Adresse nnnn im Programmmodus disassembliert. mit 'Tnnnn' im 
Tabellenmodus. Bsp.: 'P2000' würde ab Adr. 8192 im Programmmodus 
disassemblieren. Man darf wirklich nur den Bruchteil einer Sekunde auf 
der Taste bleiben. Es ist fast nicht zu schaffen.
Mit der STOP-Taste (shift A) kommt man aus dem Programm.

Wäre wirklich sehr hilfreich, wenn man diese Art der Tastaturabfrage 
verlangsamen könnte, da sie in sehr vielen Programmen vorkommt.
Bestünde die Möglichkeit, beim Start aus verschiedenen ROM-Erweiterungen 
auszuwählen ;)

Viele Grüße
Joachim

von zxjoachim (Gast)


Lesenswert?

Hallo zusammen!
Für die AX81B-Variante 'CFG3', die die Jumper über den Port B einliest, 
damit Port C komplett als I/O-Port zur Verfügung steht, sowie für die 
Spannungsversorgung und den SD-Card-Reader-Writer habe ich Platinen 
entworfen und eine weitere 'Bauanleitung' verfaßt. Alles zusammen kann 
hier 
http://forum.tlienhard.com/phpBB3/viewtopic.php?f=2&t=590&p=6663&sid=141b1a13b61372bf8397e7d6c00334f6#p6663 
heruntergeladen werden.

Viele Grüße
Joachim

von Joerg W. (joergwolfram)


Lesenswert?

Hallo Joachim,

sorry für meine späte Antwort aber ich bin einfach nicht dazugekommen 
noch mehr auszuprobieren. Ich habe es nicht hinbekommen die 
Tasteneingabe in dem Disassembler irgendwie zu verlangsamen. Gibt es 
einen Quellcode aus dem ersichtlich wird, in welcher Art und Weise die 
Tastatur abgefragt wird?

Mehrere ROM-Erweiterungen sind übrigens nicht möglich.

Jörg

von zx-joachim (Gast)


Lesenswert?

Hallo Jörg!
Bin gerade dabei den AX81 ein ordentliches Gehäuse zu verpassen. 
Berichte an dieser Stelle dann darüber.
Ich versuche, das ZX81-Programm zu disassemblieren und die 
Tastatureingabe aufzulösen. Auch werde ich dir die 'üblichen' Routinen 
zur Tastaturabfrage in Assembler unter Zuhilfenahme von ROM-Routinen 
schicken.
Melde mich sobald als möglich wieder.
Viele Grüße
Joachim

von Joachim M. (zxjoachim)


Lesenswert?

Dem AX81 habe ich ein Gehäuse spendiert und mein erstes Projekt 
gestartet. Die Bilder dazu gibt es hier

http://forum.tlienhard.com/phpBB3/viewtopic.php?f=2&t=590&p=7450#p7450

im angehängten PDF.

Viele Grüße
Joachim

von Joerg W. (joergwolfram)


Lesenswert?

Es gibt mal wieder eine Bugfix-Version unter:

http://www.jcwolfram.de/projekte/avr/ax81b/main.php

In den UK-Tastaturbelegungen von Jupiter ACE und Spectrum gab es ein 
Problem mit den Kommentaren, so dass die Tabellen zu kurz waren.

Jörg

von Joerg W. (joergwolfram)


Lesenswert?

Es gibt wieder einmal eine neue Bugfix-Version, die V1.37. Betroffen war 
das Laden von Snapshots im Spectrum und ACE Mode, dabei konnte der 
AVR-Systembereich im RAM so überschrieben werden, dass das gesamte 
Programm abstürzte und auch auf keine Taste mehr reagierte.

http://www.jcwolfram.de/downloads/main.php#ax81b

Jörg

von David R. (retrogadgets)


Angehängte Dateien:

Lesenswert?

Grreting Jorg

Cannot the AX82 be modified to give the AX81 a full compliment of memory 
16k or 32 k, with the Hires ram ?



regards

David

von Andreas R. (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

falls es jemanden interessiert: ich war erfolgreich, ein weiteres 
Pollin-GLCD (Best.Nr.: 120486, ist noch preisgünstig zu haben) an den 
AX81 anzuschliessen (siehe Anhang). Ich habe mich für die Erzeugung der 
verschiedenen Kontrastspannungen an den Beitrag
Beitrag "Textdisplay 320x256, Mega8; 21Zeilen a 40 Zeichen"
gehalten - das hat recht gut funktioniert.
Das Display hat eine CCFL-Hintergrundbeleuchtung, aber da ich keine Lust 
hatte, mit der dafür nötigen Hochspannung zu hantieren, habe ich die 
CCFL-Röhre entfernt und durch vier weisse LEDs ersetzt - die kann ich 
(mit Vorwiderständen) an 5 V speisen.


Gruss,

Andreas

von David R. (retrogadgets)


Lesenswert?

hello Andreas

i have the ax81 on the chipbasic2 board and i want to connect my pollin 
lcd , can you help, or am i best using the ax81b board with the extra 
boards to connect the lcd ?

thanks

David

von Andreas R. (Gast)


Lesenswert?

Hi David,

sorry for not replying earlier, but I was somewhat busy lately.

I'm assuming you have the Pollin-LCD (Best.Nr.: 120486) I was referring 
to in my last post? If so, below is how I connected the LCD to the 
ATMega1284P; pin 1 of the LCD is the topmost pin of the flexprint when 
the LCD is lying such that the flexprint sticks out to the right side:

Pollin-LCD                          ATMmega284P
D0..D3      (pins 17,16,15,14)      PA0..PA3
FLM         (pin 1)                 PA5
Load        (pin 11)                PA6
CP          (pin 13)                PA7
M           (pin 9)                 PD6
Display off (pin 12) connect to +5V
V_CC        (pin 10) connect to +5V
GND         (pin 2)  connect to GND

The various contrast voltages (pins 3,8,7,6,5,4) I generated according 
to
Beitrag "Textdisplay 320x256, Mega8; 21Zeilen a 40 Zeichen"

Make sure the ax81 is running properly in LCD-mode (close jumper J1 and 
leave J3 open) before applying the (negative) contrast voltages, 
otherwise the display might get damaged!

Jumper J2 determines if you have a normal or inverted display on the 
LCD.

I'm using version 0.28 of the ax81 firmware (not "ax81b") running on the 
hardware shown on Jörg Wolfram's page 
(http://www.jcwolfram.de/projekte/avr/ax81/hard.php)

Good luck,

Andreas

von Joerg W. (joergwolfram)


Lesenswert?

Nach langer Zeit gibt es wieder einmal ein Bugfix-Release auf meiner 
Seite (V1.38). Den direkten Download findet man unter:

http://www.jcwolfram.de/downloads/main.php#ax81b

Und zwar wurde bisher anstelle einer Fehlermeldung nur Datenmüll 
angezeigt, wenn keine FAT16 Partition gefunden wurde.
Das passiert zum Beispiel unter Windows, wenn der gesamte Datenträger 
als FAT16 formatiert wurde und somit keine Partitionstabelle existiert. 
Um das Partitionieren kommt man nach dem Update auch nicht herum, es 
wird aber nun eine sinnvolle Fehlermeldung "NO FAT16 PART." angezeigt. 
Ursache war, dass der Pointer auf die Fehlermeldung falsch berechnet 
wurde.

Jörg

von Marcel A. (dl1ekm)


Angehängte Dateien:

Lesenswert?

Hallo,

ich hatte mich lange im Bereich AVR / CPM herumgetrieben und bin daher 
bisher nicht dazu gekommen, dieses Projekt umzusetzen. Nun habe ich es 
aber mal auf LR-Platine umgesetzt (siehe Bild).
Ich hoffe, hier liest noch jemand, der mir helfen kann...

Ich habe die Variante 2 mit 24MHz gewählt.

Was funktioniert: Die LED blinkt nach einigen Sekunden im Sekunden-Takt.
Aber die Ausgabe auf BAS scheint nicht richtig zu klappen. Man kann auf 
dem Monitor zwar so was wie "ZX80" und anderes in Geisterschrift sehen 
und nach einigen weiteren Sekunden verschwindet das dann. Wenn ich auf 
der Tastatur tippe, "tut sich auch was".

Aber lesbar ist das nicht. Habe auch einen anderen Monitor verwendet, 
der synct gar nicht.

Woran könnte das liegen? Habe ich im Bereich des Quarzes geschlampt? Ich 
habe 22pF genommen, weil ich 18pF gerade nicht da hatte - ist das 
schlimm? Scheint ja zu schwingen...
"Masse" ist auf LR ja eher wenig...

Vielen Dank!

von Joerg W. (joergwolfram)


Lesenswert?

Hallo Marcel,

so wie es aussieht, stimmt das Timing nicht. Welches Hexfile hast Du 
gebrannt? Und kannst Du die Frequenz am VSYNC-Pin messen?

von Marcel A. (dl1ekm)


Lesenswert?

Hallo Wolfram,

danke für die Rückmeldung. Ich habe genommen:
ax81b_v138_cfg2_24m.hex

Hätte ich stattdessen cb2 nehmen müssen? Die wäre ja für ChipBasic.

VSync messen - mit Oszi oder Frequenzzähler?
Und wieso überhaupt? In der BAS-Anbindung wird der Pin doch gar nicht 
verwendet (M-Faktor), stattdessen HSync/CSync....?

Ich mess mal :-)

EDIT: Wir kommen der Sache näher. Mein Zähler sagt 16,7 Hz (Statt wie 
gefordert 30) am VSync. Und dann habe ich mal den Quarz gemessen: An den 
Pins liegen 8MHz statt 24MHz an.
Oszi sagt das gleiche.
Als ob der Quarz nicht bei 24MHz schwingt sondern bei einem drittel.

Fuse Bits sind so eingestellt:
FUSE LOW    =    0xe6
FUSE HIGH    =    0xd1
FUSE EXT    =    0xfc

(Full Swing)

: Bearbeitet durch User
von Marcel A. (dl1ekm)


Lesenswert?

Habe mal weiter recheriert. Der Quarz ist von Reichelt - da gibt es wohl 
schon mal das Problem, dass es keine Grundton- sonder Oberton-Quarze 
sind... echte 24MHz Quarze scheinen schon selten zu sein...

Wo habt ihr die bestellt?

von Paul Baumann (Gast)


Lesenswert?

Setze mal Low Fuse auf FF. Du hast mit FC "extern Crystal Oszillator
mit 3-8 MHz eingestellt. Das wird mit einem 24 MHz Quarz nicht gut
gehen.

MfG Paul

von Marcel A. (dl1ekm)


Lesenswert?

Hallo Paul,

meinst du wirklich LFUSE oder EXT mit FF? Laut meinen Unterlagen sollte 
FC richtig sein (so steht es in der Doku und auch die Fuse-Berechnung 
sagt "Full Swing" ohne MHz-Begrenzung.

Ich könnte es für BAS/PAL mit 12 oder 14 MHZ probieren - ist es egal 
welcher? Und J1 offen oder zu?

von Paul B. (paul_baumann)


Lesenswert?

Ich habe nur im AVR-Studio bei Atmega644 geguckt, wie die Fuses für
 >8MHz dort angegeben sind. Dabei kam das heraus. Ich habe keinen
AX81 aufgebaut und kann es nicht selbst ausprobieren.

MfG Paul

von Marcel A. (dl1ekm)


Lesenswert?

Ich bin noch etwas verwirrt bzgl. des Unterschiedes FC/FF bei LFuse. Ich 
hatte auch immer "External Oszillator" (FF) verwendet, aber hin der Doku 
steht FullSwing Ceramic Oszi (FC).

Ich bin heute abend mal mutig und ändere das auf FF. Hauptsache nicht 
External Clock :-)

von Marcel A. (dl1ekm)


Lesenswert?

Sorry wenn ich gerade das Forum etwas zumülle...

Habe noch mal bei Reichelt geschaut, was ich da gekauft hatte:
"24,0000-HC18 Standardquarz, 3. Oberton, 24,0 MHz"

Kann das überhaupt klappen?

von Marcel A. (dl1ekm)


Lesenswert?

So, setzen Fluse auf FF hat nicht gebracht, der dümpelt immer noch bei 
8mhz rum...

Gibt es eine andere Chance, den auf 24mhz zu bewegen? Kleinere Cs?

Sonst die Frage: wo bekommt ihr ECHTE 24er Quarze her?

Und welcher Quarz 12 oder 14 wäre für rein BAS PAL richtig?

von Joerg W. (joergwolfram)


Lesenswert?

Meinen 24MHz Quarz hatte ich aus einem defekten 
Schlüsselanhänger-Bilderrahmen (eigentlich war nur der Akku hinüber). 
Für BAS gehen sowohl 12MHz als auch 14,7456MHz, man muss nur das 
passende Hexfile auswählen. An Pin B1 müsste dann die Umschaltung 
PAL/NTSC sein.

von Marcel A. (dl1ekm)


Lesenswert?

Danke. Also 14,7456 und nicht 14,0.

von Soul E. (Gast)


Lesenswert?

Marcel A. schrieb:

> Habe noch mal bei Reichelt geschaut, was ich da gekauft hatte:
> "24,0000-HC18 Standardquarz, 3. Oberton, 24,0 MHz"
>
> Kann das überhaupt klappen?

Dazu muss man von dem Xout-Pin des Controllers einen auf Grundwelle 
abgestimmten Saugkreis (10µH/33pF) nach Masse schalten. Der verleidet 
dem Quarz die Grundwelle.

Habe ich früher bei den AT89C2051 gemacht, müsste bei ATmega aber 
genauso klappen.

von Marcel A. (dl1ekm)


Lesenswert?

@souleye:
Super, das mit dem Saugkreis hat funktioniert. Ist aber etwas 
empfindlich. Die lfuse habe ich auf FF stehen.


@Wolfgang
Der Startbildschirm kommt.
Dann erscheint "no card" - klar, habe ich noch nicht dran.

Dann kommt einige Sekunden schwarzer Bildschirm und dann der ganze 
Bildschirm voller schwarzer Vierecke - und nur "Zucken" bei 
Tastatureingabe.
F12 ruft aber ganz sauber den Monitor auf.

Müsste das nicht auch ohne SD-Card laufen???

Gruß
Marcel

von Marcel A. (dl1ekm)


Angehängte Dateien:

Lesenswert?

Aktueller Stand:
Ich habe den SD Card Reader angeschlossen und eine wie beschrieben 
vorbereitete SD-Card eingelegt.
Nun kommt: No Card    No MBR found  (ohne Karte nur No card)
Ja wie?

Danach geht er entweder in einen weißen Bildschirm oder voll mit 
schwarzen Kästchen. Wenn ich den Finger an den Quarz lege, kommt auch 
schon mal "Datenmüll".

Der Debug-Monitor arbeitet dagegen einwandfrei.

Kann es daran liegen, dass der Quarz nicht richtig "sauber" schwingt?

Oder hat noch jemand eine Idee?

von Joerg W. (joergwolfram)


Lesenswert?

Es kann auch sein, dass Dein ATMega die 24MHz nicht mehr oder nur 
eingeschränkt mitmacht. Dann wäre vielleicht die 12/14... MHz Variante 
eine Alternative. Manchmal hift es auch, zusätzliche 
SMD-Blockkondensatoren direkt zwischen die VDD und VSS Beinchen zu 
löten.

von Soul E. (Gast)


Lesenswert?

Marcel A. schrieb:

> Kann es daran liegen, dass der Quarz nicht richtig "sauber" schwingt?

Wenn Dein Quarz jittert oder auf der falschen Frequenz schwingt, dann 
siehst Du es direkt auf dem Videobild. Das wabert dann oder läuft durch.

von Marcel A. (dl1ekm)


Angehängte Dateien:

Lesenswert?

Hallo Wolfram (:-))
Das mit dem Takt vermute ich auch. Ein anderer ATMega ging gar nicht und 
der hier schwingt nur bei lfuse=FF (statt E6). So richtig stabil ist das 
nicht.

Aber ich bin mir in 4 Dingen beim SD-Card Reader auch noch nicht ganz 
sicher:

a) sollte der ZX81 nicht auch hochlaufen, wenn KEINE SD/Reader 
angeschlossen ist oder ist das zwingend erforderlich?

b) Warum erscheint sowohl NO CARD als auch NO MBR FOUND? Wenn keine 
Karte, dann auch kein MBR... Wenn ich die Karte rausnehme, dann 
erscheint nur NO CARD

c) Ist der Inhalt der Karte so richtig? Habe mal den Inhalt von GParted 
und ll angehängt. Bei AX81b ist das ja anders geworden

d) zum Reader selber: Ich hatte mir mal vor Monaten bei e* China solche 
Reader wie im Bild geholt, die direkt MOSI, MISO usw. herausführen. Da 
ist auch schon ein 3,3V Spannungsregler und ich glaube eine Diodenleiste 
drauf. Die habe ich dann so angeschlossen wie in deiner Beschreibung 
(MISO/MISO...). Geht das so? Ich frage, weil im Layout z.B. von Peter 
Sieg oder Ulrich Radig da gar keine Dioden/4050er auftauchen... Ich 
meine aber, dass MOSI=DO und MISO=DI ist... Macht es Sinn, hier einfach 
mal einen einfachen (Pollin-)Reader so anzuschließen wie im Bild (Peter 
Sieg)? Nicht dass ich da noch einen logischen Bock geschossen habe...
Ich hätte jetzt angenommen:

AVR                Reader

MISO ------------- DI  (PIN 2)
MOSI - SP-Teiler - DO  (PIN 7)
SS   - SP-Teiler - CS  (PIN 1)
SCK  - SP-Teiler - CLK (PIN 5)
GND  ------------- GND (PIN 3, 6) / VSS
VCC  -3,3V Reg. -- VCC (PIN 4)

(SP-Teiler = Spannungsteiler 1,8k/3,3k)

von Marcel A. (dl1ekm)


Lesenswert?

Hier habe ich mich natürlich vertan:
(DO/DI vertauscht)
Richtig:
> AVR                Reader
>
> MISO ------------- DO  (PIN 2)
> MOSI - SP-Teiler - DI  (PIN 7)
> SS   - SP-Teiler - CS  (PIN 1)
> SCK  - SP-Teiler - CLK (PIN 5)
> GND  ------------- GND (PIN 3, 6) / VSS
> VCC  -3,3V Reg. -- VCC (PIN 4) 3,3V
>
> (SP-Teiler = Spannungsteiler 1,8k/3,3k)

von Marcel A. (dl1ekm)


Lesenswert?

Hallo,

hat keiner eine Idee zumindest zu den Fragen a) - c)?

Bevor ich da weiterfummel besorge ich mir erst mal einen echten Quarz 
24MHz. Ist gar nicht so einfach... Viele Händler schweigen sich auch auf 
Nachfrage dazu aus. Leider habe ich auch keinen 12er oder 14,x in der 
Bastelkiste.

Und sorry - "Joerg" ist richtig. Mein Nachnahme ist auch ein 
französischer Vorname, ich kenn das leider :-)

von Joerg W. (joergwolfram)


Lesenswert?

Der AX81 muss auch ohne Karte funktionieren, dabei sollte nur "No Card" 
angezeigt werden. Das von Dir beschriebene Fehlerbild deutet darauf hin, 
dass Dein ATmega1284P Probleme beim Übertakten macht.

Jörg

von Dominik (Gast)


Lesenswert?

Hallo Jörg,

ähm mal ne blöde Frage:
ich hab ja ein CB2 Board, µC geflasht mit der AX81 Version aber es kommt 
kein Bild! ich dachte das CB2 Board kann so bestehen bleiben?

von Marcel A. (dl1ekm)


Lesenswert?

Hallo zusammen,

es funktioniert alles bestens. Ich hatte alles richtig gemacht, nur war 
entweder der Quarz nicht gut oder der µP hat nicht mitgespielt bei 24MHz 
- jedenfalls bei 14MHz geht alles super.

Danke!

von Dominik (Gast)


Lesenswert?

Hallo,

kann mir mal einer sagen welche Hardware nun die Richtige ist?
Ich finde das ziemlich kompliziert!!!

habe Chipbasic2 + Scart! Es kommt kein Bild.. Kein Signal sagt der 
Fernseher!!

Ich möchte die AX81 Schaltung nachbauen aber für TV (Scart) und VGA 
damit ich auch Farbe habe! Welche Schaltung muss ich da nehmen??????

Danke!

von Marcel A. (dl1ekm)


Lesenswert?

Sagt mal, da sich diese Arduino-Boards immer größerer Beliebtheit 
erfreuen - wäre das nicht ein Basis? Vielleicht wenn man nur den ZX81 
nimmt (oder gibt es keine Chance, das alles in 32Kb Flash zu bekommen)?
Und ist es überhaupt möglich, mit 16 MHz etwas wie FBAS oder VGA zu 
generieren?
Dann noch ein SD-Card Shield oder direkt ein "ZX-Shield" und gut?

Wäre das machbar oder ist das eine blöde Idee?

Gruß
Marcel

von Joerg W. (joergwolfram)


Lesenswert?

@ Dominik
Hast Du die Brücke zwischen RGB und PD3 (TX1) drin? Beim AX81(B) erfolgt 
die Videoausgabe über den USART1 und nicht mehr über die Portpins, 
welche hochohmig geschaltet sind. Allerdings weiß ich jetzt nicht, was 
Du mit "in Farbe" meinst, denn der AX81 kann nur S/W. Oder halt 
Schwarz/gelb, wenn man die Blau-Leitung offen lässt etc.

@Marcel
Vom Flash her wäre es kein Problem, man hätte alt nur 1,5K RAM. Der 
Mega328 hat aber nur einen USART, was die Videoausgabe über USART 
ausschließt. Und für die "alte" Version mit Ausgabe über PORTC braucht 
man aber 20MHz.

von Dominik (Gast)


Lesenswert?

Hallo Jörg,
danke für die Antwort. Ähm ich glaube nicht, ne. Da ich ja wie gesagt 
das unangetastete CB2 Board habe.
Ok, also Farbe geht gar nicht, das wusste ich nicht. Dann werde ich mal 
die einfache variante bauen mit BAS.

von Marcel A. (dl1ekm)


Lesenswert?

Joerg Wolfram schrieb:

>
> @Marcel
> Vom Flash her wäre es kein Problem, man hätte alt nur 1,5K RAM. Der
> Mega328 hat aber nur einen USART, was die Videoausgabe über USART
> ausschließt. Und für die "alte" Version mit Ausgabe über PORTC braucht
> man aber 20MHz.

Wofür wird denn der erste USART gebraucht? Da hängt ein Anschluss von 
der Tastatur und gebrückt vom PROG dran - für PS/2? Auf Prog könnte man 
ja sonst verzichten...

von Dominik (Gast)


Lesenswert?

Hi Jörg, nochwas:

Wenn ich das CB2 Board nehme und RGB und PD3 brücke... dann läuft das 
aber nur mit einem Atmega128 oder?

Bzw: worin liegt denn hardwaremäßig der Unterschied zwischen AX81 mit 
Atmega644P und AX81b mit Atmega128P?? Also bis auf den µC natürlich.

von Dominik (Gast)


Lesenswert?

ich nochmal...
habe jetzt ein Bild aber überhaupt kein stabiles!! Sehe nur grün, 
flackern und dann nix mehr!
Habe die 0.28er Version gebrannt und mal die 
ax81_m644p_tvl_sd_pd3pd4.hex versucht...
fuses bleiben doch gleich!
Habe RGB mit PD3 gebrückt. 16 Farberweiterung ist noch dran, also kein 
Jumper1 und keine 10K am PD3. Mit 10K geht's auch nicht... nur ein 
instabiles, grünes Bild

von Dominik (Gast)


Lesenswert?

Habs hinbekommen!
Läuft nur über die BAS Buchse.

von Dominik (Gast)


Lesenswert?

Warum bekomme ich eigentlich bei der 0.28 Version einen Syntax Error 
wenn ich:
1
10 FOR I=1 TO 20

eingebe und NewLine drücke??

Peter Sieg hat doch das gleiche gemacht und als Foto gepostet

von Dominik (Gast)


Lesenswert?

schon gut... es geht... hab vergessen die Befehle zu benutzen anstatt 
alles selber zu schreiben.. lach

von Kilo K. (kilo81)


Lesenswert?

@Jörg

wenn ich einen Dataflash an das Board anstecke, dann kann ich doch 
sofort und ohne formatierungen Programme auf diesen abspeichern und 
laden, richtig?

von Dominik (Gast)


Lesenswert?

Hab meine Frage jetzt mal selber beantwortet :)
Aber:

Ich habe das DF Modul eingesteckt, etwas programmiert und mit SAVE 
"TEST" abgespeichert.
LLIST zeigt mir auch die Datei an im Tape.
Wenn ich jetzt LOAD "TEST" eingebe, startet der Computer neu, zeigt mir 
als Speicherkarte irgendwas an aber nicht mehr DF und das Programm wurde 
nicht geladen. Muss dann neu starten und dann erkennt er das DF wieder 
und das Programm.
Kann es aber nicht laden... dann startet der Rechner neu und erkennt 
plötzlich ein anderes Dateisystem :(((
hüüüülfe

von Joerg W. (joergwolfram)


Lesenswert?

Irgendwann hat es funktioniert, denn damit (DataFlash) habe ich 
angefangen. Da aber fast alle SD-Karte (möglichst Win-kompatibel mit 
FAT) wollten, habe ich den DF-Zweig nur noch "mitgeschleppt" und auch 
nicht mehr getestet. Bei der ersten Version sollte es aber eigentlich 
noch gehen.

von Kilo K. (kilo81)


Lesenswert?

Hi Jörg,

also ich hab die 0.28 Version drauf.
Mir ist aufgefallen:

LOAD "PROGRAMMNAME" funktioniert nicht => AX81 startet neu und ist 
völlig verwirrt.

LOAD "$00" funktioniert!! Programm wird geladen und kann ausgeführt 
werden.

1. Wo finde ich denn die LOAD Funktionen im Source?
2. Die Zeit vom Intro bis Übergang Main, wird die emuliert oder liegt 
die als feste Konstante im Source von Intro.asm?
3. Der RAM ist ja unabhängig vom DF richtig? aber bei einem 2MiByte DF 
passt bei einem Mega644P doch das maze Game locker drauf?! oder wie sind 
die Verhältnisse zwischen RAM und Flash?

Danke schon mal!

von Dominik (Gast)


Lesenswert?

Hi Jörg,

also:
Version 0.28 hat Probleme mit dem DF!
Speichern nur auf EINEM Speicherplatz möglich! Laden nicht möglich!

Version 0.21 klappt bestens mit dem DF!

Toll :(

von Marcel A. (dl1ekm)


Lesenswert?

Mir war in V1.38 aufgefallen, dass im ZX81 ein LOAD "" nicht wie 
beschrieben den Tape-Monitor aufruft.
Egal ob 2 x " oder 1 x "" (gibts ja beides auf das "Tastatur").

von Joerg W. (joergwolfram)


Lesenswert?

@Dominik
Das kann gut möglich sein, allerdings werde ich aus Zeitgründen in 
nächster Zeit wohl eher nichts dran machen (SD-Karten gehen ja). Load 
und Save befinden sich sowohl im Z80 Code als auch im AVR. Dabei wird 
durch einen "ungültigen" Befehl (0xED 0x0B bis 0xED 0x0E) auf Z80 Seite 
eine Art Exception ausgelöst, bei der dann der AVR den ganzen Transfer 
native erledigt. LOAD ruft damit letztendlich fsys_load (fsys.asm) auf, 
welches das zu ladende Programm ermittelt. Danach wird nach fsys_rfile 
(Aufruf mit Name) oder fsys_rfile_02 (Aufruf mit Index) gesprungen. Hier 
wird dann entschieden, ob SD-Karte oder DF une dann zur entsprechenden 
Routine verzweigt. Der Fehler sollte dann wohl in dataflash.asm liegen.

@Marcel
Was passiert dann (anstelle Tape-manager Aufruf)? Wenn Du ohne Karte 
startest, sollte Fehler "T" kommen.

von Kilo K. (kilo81)


Lesenswert?

So, ich habe jetzt nochmal einen AX81 auf Lochraster aufgebaut und 
irgendwas stimmt nicht!

PS/2 Tastatur angeschlossen, Rechner zeigt kein VGA Bild!
PS/2 Tastatur abgeklemmt, Rechner startet sofort!

Nur manchmal... in 2 von 20 Fällen startet der Rechner auch mit 
angeschlossener Tastatur. Was ist das??
Kondi ist 220µF und ich habe 2 Pullups dran hängen :(

von Joerg W. (joergwolfram)


Lesenswert?

Blockkondensatoren (da zählen die 220µF nicht dazu)? Tritt das Problem 
auch bei 20Mhz oder kleiner auf? Wenn nicht, lässt sich dieser 
Controller nicht übertakten.

von Dominik (Gast)


Lesenswert?

ne ne Jörg, ich meine schon die 0.21 Version, also ATmega644P mit 20MHz

Ich habe ein CB2 Board welches ich halt umgebaut habe für den AX81, 
sprich, Brücke und Jumper.. mehr nicht! Läuft einwandfrei!!! Startet 
sofort.

Dann habe ich auf Grundlage des AX81 ein Board gebaut, bereits 2 Mal, 
Minimalversion. Startet zwar, auch mit Tastatur aber nicht sofort! 
Komisch.

Abblockkondis habe ich überall brav dran.
Die .hex ist auch dieselbe wie für das CB2 Board.

von David R. (retrogadgets)


Lesenswert?

what software do you recompile main.asm with ?

thanks

David

Happy new year

von Joachim M. (zxjoachim)


Lesenswert?

Hallo Jörg,
im ZX-Team-Forum wurde über den Jupiter Ace diskutiert, weshalb ich mir 
diesen Rechner auf dem AX81b (AX81b_138_cfg3_20m) ansehen wollte. Dabei 
habe ich festgestellt, dass man das Anführungszeichen (") über die 
Tastatur (deutsches Tastaturlayout) nicht eingeben kann. Es wird nur ein 
AT-Zeichen (@) angezeigt. Auch mit anderen Tastenkombinationen war das 
Zeichen nicht zu erreichen. Damit könnte man in FORTH keine 
Print-Anweisung eingeben. Kannst du da bitte mal nachsehen?
Viele Grüße!
Joachim

von Joachim M. (zxjoachim)


Lesenswert?

Hallo Jörg,
meine Anfrage hat sich erledigt. Nachdem ich mich mit deinen 
Tastaturlayouts und der Bedienung des Jupiter Ace beschäftigt habe, kam 
ich auf die 'Symbol Shift-Taste' des Jupiter Ace. Mit der linken 
Ctrl-Taste und P geht es einwandfrei. Sorry!
Viele Grüße!
Joachim

von Joerg W. (joergwolfram)


Lesenswert?

Hello David,

I use the AVRA assembler. Unfortunetly the recent version (from 2010) 
does not support the Mega1284P. So You must patch it. My device.c file 
is found here:

Beitrag "AVR-ChipBasic2 - BASIC-Computer mit ATMega 644"

If You need, I can send You a precompiled binary with these patch, but 
only for Linux.

Joerg

von Joerg W. (joergwolfram)


Lesenswert?

@ Dominik,

wenn der gleiche Controller auf dem einen Board startet und auf einem 
anderen nicht, dann lässt sich das Problem am wenigsten von der 
Softwareseite her eingrenzen, d.h. ich kann Dir da nicht sehr viel 
weiterhelfen. Bei einem Mega1284P hatte ich ein ähnliches Problem 
(allerdings bei 25MHz): Bei jedem Tastendruck ist der Controller 
"abgeschmiert". Da jede PS2-Tastatur nach dem Einschalten kurz sendet 
könnte das ein ähnliches Problem bei Dir sein. Eventuell hift ein 
zusätzlicher Blockkondensator am Tastaturanschluss.

Jörg

von David R. (retrogadgets)


Lesenswert?

Joerg Wolfram schrieb:
> Hello David,
>
> I use the AVRA assembler. Unfortunetly the recent version (from 2010)
> does not support the Mega1284P. So You must patch it. My device.c file
> is found here:
>
> Beitrag "AVR-ChipBasic2 - BASIC-Computer mit ATMega 644"
>
> If You need, I can send You a precompiled binary with these patch, but
> only for Linux.
>
> Joerg



Hello Joerg

Thank you for your reply, i could not find the device file as advised.
Im still using the original chipbasic 2 board and have a similr avr 
board with video at a different pin,

i wanted to reconfigure the program to cater for this, but is easier for 
me to modify the pcb layout with a jumper cable.

I was wondering if you could compile separate hex files for the zx81 
with udg, zx81 with chr$128 and a zx80 , so that i do not have to use 
the menu
 with the children

configured for the original chipbasic 2 board at 24 mhz on tv.

Thank you

Regards

David

von Joerg W. (joergwolfram)


Angehängte Dateien:

Lesenswert?

Hello David,

i've attached the file again (postet in chipbasic thread at  04.12.2012 
10:25). You can not simply skip the menu because SD-Card detection is 
done at this time. A possible solution is to program alternate SD-Card 
detection routines (without printing messages) and show the menu only if 
shift is pressed at start.

Best regards,

Joerg

von Marcel A. (dl1ekm)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich habe mich nun in den letzten Wochen nach dem Lochraster-Aufbau 
intensiver mit dem schönen AX81b beschäftigt und bin immer mehr 
begeistert.

Ich habe nun einen Satz Platinen erstellt (Basis ist die HW2/CFG2, 
welche sowohl FBAS also auch VGA kann und 2 x 8 Ports für I/O frei hat. 
Kann per Jumper geändert werden (natürlich dann anderer Quarz und andere 
Firmware)). Ergebnis siehe Bilder. Wenn jemand Interesse an einer 
Platine hat, bitte melden. Ich hätte auch die Micro-SD-CardReader.

@Joerg, mir sind da noch ein paar kleine "Bugs" aufgefallen:
- Du verwendest in der V138 das UK-Layout. Z->Y und umgekehrt. Klar. Im 
"K"-Modus ist das auch so. Aber im "L"-Modus ist es dann doch wieder 
"DE"-Layout ... :-)
- Bei den Beispielen zu den PortA/C-Zugriffen ist mir aufgefallen, dass 
du dort das Muster "176" schreibst, es muss aber 170 sein, damit es 
abwechselnd ist.
- Im Beispiel für PortC sind die Adressen von PortA eingegeben - ist 
aber ja klar
- Im Tape-Manager führt ein "ENTER" leider nicht zum Load des gewählten 
Files. Das geht nur über ein "LOAD" auf der Basic-Ebene.

Alle nur Kleinkram. Sollte ich irgendwann selber mal in der Lage sein, 
den Code zu übersetzen, kann ich das auch selber machen.

Beste Grüße
Marcel

von David R. (retrogadgets)


Lesenswert?

Nice board - how can I get one

von Marcel A. (dl1ekm)


Lesenswert?

David Roper schrieb:
> Nice board - how can I get one

See my direct answer (PN)

von Joerg W. (joergwolfram)


Lesenswert?

Hallo Marcel,

beim original ZX81 gab es meines Wissens kein deutsches Layout. Von 
daher bin ich einen Kompromiss eingegangen. Für die Befehle ist meiner 
Meinung nach es günstiger wenn man sich an das original-Layout hält, 
denn meistens hat man die Tastaturbelegung ausgedruckt danebenliegen. 
Bei den Buchstaben (L-Mode) halte ich es dagegen sinnvoller, wenn der 
Buchstabe erscheint, der auch auf der Taste aufgedruckt ist. Das 
Keyboard-Layout wechselt also nur auf Zeichenebene und nicht auf 
Funktionsbene. Für mich war das halt der beste Kompromiss, wenn es eine 
bessere Lösung gibt, kann ich die natürlich gerne umsetzen.

Das mit den 176 ist ein Fehler, den ich demnächst korrigieren werde. 
Gleiches betrifft das Beispiel für Port C, da habe ich nur kopiert und 
vergessen, die Werte zu korrigieren. In der Tabelle darüber sollten sie 
aber richtig stehen.

Dateiauswahl im Tape-Manager geht beim ZX81 nur mit LOAD "", also mit 
leerem Dateinamen und beim ZX80 mit LOAD. Direkte Auswahl mit F9 geht 
nur beim ACE und Spectrum, da hier einfach komplette Speicherabzüge 
(Snapshots) geladen und gespeichert werden. Steht aber auch so in der 
Dokumentation.

Jörg

von Marcel A. (dl1ekm)


Lesenswert?

Alles klar, Joerg.
Also "works as designed" - da bin beruhigt.
Macht ja so auch Sinn - muss man nur wissen. Steht wahrscheinlich sogar 
irgendwo - rtfm...

Danke dir!!!

von Matthias (Gast)


Lesenswert?

Programme die Sounds über den Tape Ausgang ausgeben bleiben beim AX81 
wohl Stumm ? :O

von David R. (retrogadgets)


Lesenswert?

Hello All

please can someone lead me in the right direction when creating the tape 
images

under windows

i have formatted the sd card

on the desktop in a folder i have run the install command and have the 
form files for the zx81, zx80, jupiter ace and spectrum and tape folders

i have gone into the tap_000 folder , put some p files inside and ran 
the write command, files were added.

@i have copied all of this to the sd card

the sd card is recognized but says wrong image


im using 1.38 of the ax81b on chipbasic 2 board at 20mhz

any help would be welcome



thanks

David

von David R. (retrogadgets)


Angehängte Dateien:

Lesenswert?

attached is a image of my MMC card, a samsung MMC card, its 32mb 
formatted in FAT16 and created under windows.

The Ax81 recognises the card is inserted, but says no media when F9 is 
pressed.

All four images are present on the MMC card.

For the zx81, P files have been written to the zx81 image.

Can anyone help or provide a similar image.

thanks

von David R. (retrogadgets)


Lesenswert?

when im using the zx81 mode with load ""

it responds with T/0

in spectrum and ace mode, it says no media



at the AX81 Menu when a selctions is made it only says is has detects 
the SD/mmc card and does not say anything about which image it supports.


any help would be appreciated.

von Joerg W. (joergwolfram)


Lesenswert?

Hello David,

it seems that Your image use long filenames, but since I dont use 
Windows I cannot say that's the problem. But it might...


In the main menu there should be two messages at the bottom:

something about the SD/MMC card, for instance "SDV1-CARD" and
something about the file system, an error or "AX81-xxx IMAGE" or "NO 
IMAGE FOUND".

Cann You tell me exactly, what You can see there?

Joerg

von David R. (retrogadgets)



Lesenswert?

Hello Jorg thanks for your reply

If i can show you in the first three pictures what the screen show on 
selecting zx81 (udg)

the mmc formatted in fat 16, the four image files copied across.




the fourth and fifth a few pictures of my device


and a the sixth and seventh of the chipbasic 2 running the spectrum 
preview

von David R. (retrogadgets)


Angehängte Dateien:

Lesenswert?

Jorg

finally have solved the matter

I dont know if it made a difference, but I used a Linux Live CD on my PC
using a program called Gpart  i created a new partition on the mmc card

and then formatted in FAT16.

I then put the mmc into the AX81 on startup it said 'no img in dir'

yes its working

I put the images on the mmc card, copied across the tape folders, ran 
the write command in each folder, then deleted the executables.

~I put the mmc card back in the ax81 and hey presto 'AX81-ZX81 image' 
was shown

the F9 tape manager now works, page up and page down to switch between 
the tapes and  using LOAD"" to load the programs

see attached new photographs

attached is my mmc image for anyone shaving trouble

Thanks again.

von David R. (retrogadgets)


Lesenswert?

The mmc attachment in my previous message is a binary image of my mmc 
card created using win imager under windows

von David R. (retrogadgets)


Lesenswert?

Atmega1284p flashed with v1.38 of the ax81b images at 20mhz for 
chipbasic 2

von David R. (retrogadgets)


Lesenswert?

how do you recompile main.asm using avra assembler ?  anyone?

ive altered some of the code and want to recompile.

please help

thanks

von Joerg W. (joergwolfram)


Lesenswert?

The ATMega1284 needs avra 1.3 or an oder version with my patch for 
device.c (see above) installed. Open a console window in the directory 
which contains main.asm and type

avra -l main.lst main.asm

and thats all. THe -l option will generate a list file and sometime 
prevents avra from strange errors.

For new AVR projects I think about using the ASL assembler from Alfred 
Arnold which I currently use for other micros.

Joerg

: Bearbeitet durch User
von ●● pit ●. (Gast)


Lesenswert?

Hi,

baue grade eine ZX81b nach. (cfg3)

Verwende das Display NAN YA LTC79H202T50K 
(http://www.pollin.de/shop/dt/Mjk2ODc4OTk-).

Hab mit einem MC34063 ein step-up für ~30V gebaut, L2940-33 für die 
3,3V.

Habe folgende Fragen:

1) Wie habt ihr VEE per /Enable_VEE schaltbar gemacht? Pin 5 oder mit 
Switch? (vgl. http://www.ti.com/lit/an/slla339/slla339.pdf)

Ist das eigentlich nur beim Power-Up nötig? (Meint das Datenblatt in 
Diagramm 8-3)

2) kann v1.38 in cfg3 das `M` Signal erzeugen, bzw. was ist die beste 
Option `M` zu generieren?

3) habe avra 1.3.0 mit device.c gepatcht und am Mac kompiliert (LLVM)
  a) Hat jemand ein passendes m1284Pdef.inc für mich? (Google-Fundstück 
sagt `m1284Pdef.inc(44) : PRAGMA directives currently ignored`)
  b) assembler bricht mit `Abort trap: 6` ab. Hat jemand einen Tipp?

Merci

 - pit

von ●● pit ●. (Gast)


Angehängte Dateien:

Lesenswert?

Ok, die meisten meiner Fragen haben sich erledigt ;-)

- Das M Signal ist ja offenbar auf PD6 präsent.
- VEE ist bei mir jetzt erst mal immer an.

Das Teil startet erst mal, aber die Schrift ist sehr eigenartig, siehe 
Foto.

Jemand eine Idee woran das liegen kann?

von Joerg W. (joergwolfram)


Lesenswert?

Ja, an PD6 (VSYNC) liegt das M-Signal an. Bei meinem "Test-Display" habe 
ich das aber nicht gebraucht. Alternativ ginge auch FLM über einen 1:2 
Frequenzteiler.

Die 5V für den MC34063 hatte ich bei mir über einen PNP geschalten 
(nicht optimal, ging aber ganz gut), daher das invertierte Signal. 
Gleichzeitig hängen bei mir auch die LED der Hintergrundbeleuchtung 
(anstelle der ursprünglichen CFL) zwischen VEE und GND, dadurch bricht 
die Spannung beim Abschalten schnell zusammen.

Bei Deiner "seltsamen" Darstellung würde ich zuerst mal die vier 
Datenleitungen auf Kurzschlüsse untereinander überprüfen.

Jörg

von Marcel A. (dl1ekm)


Lesenswert?

Hallo zusammen,

wo finde ich eigentlich Infos darüber, wie das Pollin LCD (siehe oben) 
sowohl von der Spannungsversorgung als auch von den Daten her mit einem 
Microcontroller angesteuert werden kann? Bin da bislang nicht fündig 
geworden.
Jörg, hast du die Anschaltung am AX81 irgendwo genauer beschrieben? Auf 
deinen Seiten zum ChipBasic komme ich da nicht recht weiter.

Danke und Gruß
Marcel

von ●● pit ●. (Gast)


Lesenswert?

Marcel A. schrieb:

> wo finde ich eigentlich Infos darüber, wie das Pollin LCD (siehe oben)

wo oben? Du kannst auf einen Post verweisen, in dem du einfach den Link 
der Überschrift des Posts kopierst.

> sowohl von der Spannungsversorgung

Das ist bei fast jedem Display unterschiedlich.

> als auch von den Daten her mit einem
> Microcontroller angesteuert werden kann?

Display:
http://www.jcwolfram.de/projekte/avr/ax81b/images/ax81_cb2_glcd.png

Gegenstück auf Controllerseite:
http://www.jcwolfram.de/projekte/avr/chipbasic2/images/ports_de.png

von ●● pit ●. (Gast)


Lesenswert?

Vielen Dank für die Antwort, Jörg.

Joerg W. schrieb:
> Bei Deiner "seltsamen" Darstellung würde ich zuerst mal die vier
> Datenleitungen auf Kurzschlüsse untereinander überprüfen.

Ja, das hatte ich gleich als erstes gedacht, das Multimeter meint aber 
das es passt. Aber ich prüfe das nochmal, wäre die plausibelste 
Fehlerquelle.

Viele Grüße
 - pit

von Marcel A. (dl1ekm)


Lesenswert?

●● pit ●. schrieb:
> Display:
> http://www.jcwolfram.de/projekte/avr/ax81b/images/ax81_cb2_glcd.png
>
> Gegenstück auf Controllerseite:
> http://www.jcwolfram.de/projekte/avr/chipbasic2/images/ports_de.png

Hallo Pit,

ja, diese Stellen kannte ich auch schon. Wenn ich das aber in eigenen 
Projekten verwenden will - muss ich mich da vermutlich durch die Quellen 
wühlen oder gibt es vielleicht eine Standalone Library, die man 
verwenden könnte?

von Joerg W. (joergwolfram)


Lesenswert?

Die Beschaltung ist:
1
PA0  -->  D0
2
PA1  -->  D1
3
PA2  -->  D2
4
PA3  -->  D3
5
PA4  -->  /VEE ENABLE
6
PA5  -->  FLM
7
PA6  -->  LOAD (Latch-clock, sollte beim Pollin Display CL1 sein)
8
PA7  -->  CP (Shift-clock, sollte beim Pollin Display CL2 sein)

Stromversorgung ist abhängig vom Display, meins braucht z.B. +5 und ca. 
-22V.

von Marcel A. (dl1ekm)


Lesenswert?

Ja, das ist soweit klar - aber wie sieht es denn auf SW-Seite aus?

von ●● pit ●. (Gast)


Lesenswert?

Marcel, für eigene Projekte würde ich nicht den LCD Code aus dem 
AX81-Projekt extrahieren sondern 
Beitrag "Grafikfähiger LCD Controller für 320x240 LCD mit 4 Graustufen" verwenden.

von Hans I. (Gast)


Lesenswert?

gibt es denn PCB Dateien/Vorlagen zum selbst ätzen ?

von Schwanzlurch (Gast)


Lesenswert?

Ich denke das dieses Vorgehen erst mal seine Sache ist. Ob er auf ein 
tolles Googelranking Wert legt glaube ich nicht. An offenen Standarts 
sollten sich vielleicht erstmal Microsoft und Apple versuchen anstatt 
diese zu untergraben. Vor allem Apple hat sich gerne an freier Software 
bedient. Ob davon all zu viel zurück geflossen ist bezweifle ich mal.

Das Projekt selbst ist klasse.

Jadeclaw D. schrieb:
> Joerg Wolfram schrieb:
>> @Kantor
>> Kann es sein ,dass Du mit einem iPAD versucht hast die Seite aufzurufen?
>> Derarige geschlossenen Systeme sind für mich unvereinbar mit open Source
>> und deswegen möchte ich so etwas auch nicht unterstützen.
>
> Sowas ist natürlich Komplettblödsinn erster Güte.
> Du tust mehr für Opensource, wenn du, anstatt mit solchen Aktionen die
> Besucher zu verschrecken, konsequent auf offene Standards setzt.
> Dann kann es jeder sehen, egal welches Gerät/Browser/OS er nutzt.
> Übrigens: Komplett offene Standards zu nutzen, verbessert auch das
> Google-Ranking,
> das macht es leichter für den Googlebot, die relevanten Informationen zu
> indexieren.
>
> Das dazu. Zum Projekt selbst: Saubere Arbeit. Ich denke, da habe ich was
> für den Weihnachtsurlaub.
>
> Gruß
> Jadeclaw.

von Joerg W. (joergwolfram)


Lesenswert?

Naja, das mit dem Aussperren der i-Geräte war ja eh nur ein Experiment. 
Vorausgegangen war eine etwas seltsame Diskussion mit einem iPhone-User. 
Deren Ergebnis lautete dann in etwa so: "Wenn Du etwas gegen mein iPhone 
sagst, dann beleidigst Du mich, denn ich hab mir das bewusst 
ausgesucht". Da wollte ich halt wissen, ob noch mehr Leute so ticken. 
Und nach dem ersten, der mich als Rassist beschimpft hat, habe ich meine 
Frage bejahen können und die User-Agent-Weiche wieder deaktiviert.

Solche Dinge wie Googleranking interessieren mich nicht. Zum einem ist 
meine Homepage werbefrei und warum sollte ich irgendwelche Datenkraken 
unterstützen? Zumal ich sowieso darum bemüht bin, sämtliche (US-) 
IT-Konzerne zu boykottieren. Zum anderen liegt mir auch nicht daran, 
berühmt zu werden. Ich mache meine Projekte in allererster Linie für 
mich selbst, einfach um zu sehen, was machbar ist. Und was nicht (bzw. 
ich bekomme es nicht hin). Und wenn ich meine, etwas könnte auch andere 
interessieren und ich müsste sowieso mal wieder was mit LaTex machen, 
dann wird das Projekt dokumentiert und veröffenlicht.

Jörg

von Fritz G. (fritzg)


Lesenswert?

Apple hat wohl etwas mehr zu OpenSource beigetragen als du.
Z.B. Webkit, cups, gcc, Objective C, Swift, und viele Projekte zu denen 
Apple beiträgt, siehe http://opensource.apple.com//

: Bearbeitet durch User
von Mathias S. (mathias_s)


Lesenswert?

Leute, lasst doch bitte diese dämliche Apple / PC Diskussion hier raus, 
das ist IMHO viel zu schade für diesen thread. Und Deppen gibt es 
sicherlich nicht nur bei Apple users...
Hier sollte es doch um den AX81 gehen...

von ●● pit ●. (Gast)


Lesenswert?

Joerg W. schrieb:
> Bei Deiner "seltsamen" Darstellung würde ich zuerst mal die vier
> Datenleitungen auf Kurzschlüsse untereinander überprüfen.

Hallo Jörg,

hm, ich habe mittlerweile 100% sichergestellt und nachgemessen (DMM, 
Oszi und LA) das es keine Kurzschlüsse gibt. Habe auch meinen 5 -> 3.3V 
Pegelwandler in mehreren Varianten ausprobiert, alles erfolglos.
Es scheint mir bei Zeichen immer  die Linke spalte zu fehlen... (siehe 
Foto oben). Sehr eigenartig, die Blöcke für AX81 auf der Splash-Screen 
scheinen ja zu klappen.

Irgend eine andere Idee, wonach ich noch suchen könnte?

Merci,

 - pit

von Joerg W. (joergwolfram)


Lesenswert?

Beim Hintergrund sowie bei den Blöcken des Logos sind ja alle 4 (8) 
Pixel gleich. Dort würde man einen Kurzschluss nie bemerken.

Mit welcher Frequenz läuft der Controller? Funktionieren VGA bzw. TV 
Output?

Mein nächster Vorschlag wäre, die Portpins PA0-PA3 (Pin 40 - 37) während 
des Startbildes nacheinander !direkt am Conrollerpin! auf Masse zu 
ziehen. Dabei sollten senkrechte schwarze Linien angezeigt werden, mit 
Abstand von einem halben "Block".


Jörg

von ●● pit ●. (Gast)


Lesenswert?

Danke für deine Antwort, Jörg!

Der Controller läuft mit 25Mhz. Habe weder VGA Monitor, noch TV Gerät :)
Würde aber davon ausgehen, das der Controller läüft. Man kann erkennen 
was am Display sein sollte und Tastatureingabe klappt inkl. BASIC auch.

Wie gesagt, definitiv kein Kurzschluss, alle Leitungen klappen, habe das 
bis zur ersten Durchkontaktierung auf den Leiterbahnen am Display mit 
Oszi verifiziert.

Aber: Wenn ich D2 auf Masse ziehe, gibt es am Display im Vergleich zu 
allen anderen Datenleitungen keine Änderung – hier ist wohl das Problem.

Sehr komisch, irgendwas muss ich übersehen.
Denke auch nicht das es am Display liegt, ich habe 2 andere ausprobiert.

Any other hints?

von David R. (retrogadgets)


Angehängte Dateien:

Lesenswert?

Jorg

hello

Having trouble writing to the spectrum image file using the ax81-write 
command, see attached picture.

i'm in the tape_000 folder with various files of .z80 extension, but 
nothing is being added to the image file.

Works perfectly ok when writing the zx81 image.

Any help would be appreciated.

thanks.

David.

von Joerg W. (joergwolfram)


Lesenswert?

Hello David,

at first, as seen on the screenshot the tool from Joachim only uses the 
ZX81 mode. In my opinion there is a problem with the path backslashes in 
windows and the way of path-detection. The linux tool from my project 
works in all modes.

The seond is the limited memory of the AX81. You can't load "normal" z80 
files because they require mostly a minimum of 16K RAM. But it should be 
possible to load the generated .z80x files in another emulator (fbzx).

My intention for the spectrum mode was the ability for float math and 
(b/w) graphics. Standard .z80 files can only be loaded by the AX82.

Joerg

von David R. (retrogadgets)


Lesenswert?

Joerg

Thanks for your reply

How does one access symbol shift key in the spectrum emulation ?

Thanks

David

von Joerg W. (joergwolfram)


Lesenswert?

Hello David,

sorry for my late answer. Symbol shift should be the right CTRL key on 
the PC keyboard. Extended mode is reacheable via the tab key and 
graphics mode via F2.

Joerg

von Torsten K. (Gast)


Lesenswert?

Joerg W. schrieb:
> Hallo Marcel,
> ....
> Das mit den 176 ist ein Fehler, den ich demnächst korrigieren werde.
> Gleiches betrifft das Beispiel für Port C, da habe ich nur kopiert und
> vergessen, die Werte zu korrigieren. In der Tabelle darüber sollten sie
> aber richtig stehen.

Hallo Joerg,

in der V1.38 wurde von Marcel ein Fehler gefunden (siehe Auszug aus 
Deiner Antwort vom Datum: 26.01.2015 08:02).

Konntest oder hast Du dieses Verhalten mittlerweile gefixt? Ich finde 
auf Deiner Webseite weiterhin nur die Version 1.38 oder habe ich da was 
übersehen.

Lieben Dank und ein schönes Wochenende

von Joerg W. (joergwolfram)


Lesenswert?

Hallo Torsten,

das ist kein Fehler im Programm sondern in der Doku. Ich hatte das zwar 
in der Doku für das nächste Release geändert, aber da nach der 1.38 kein 
neues Release mehr gekommen ist wurde auch die Doku nicht aktualisiert 
(das läuft bei mir alles mehr oder weniger automatisiert).
Da es wahrscheinlich auch kein neues Release mehr geben wird, habe ich 
die Dokumentation "von Hand" korrigiert.

Jörg

von David R. (retrogadgets)


Lesenswert?

Joerg W. schrieb:
> Hello David,
>
> at first, as seen on the screenshot the tool from Joachim only uses the
> ZX81 mode. In my opinion there is a problem with the path backslashes in
> windows and the way of path-detection. The linux tool from my project
> works in all modes.
>
> The seond is the limited memory of the AX81. You can't load "normal" z80
> files because they require mostly a minimum of 16K RAM. But it should be
> possible to load the generated .z80x files in another emulator (fbzx).
>
> My intention for the spectrum mode was the ability for float math and
> (b/w) graphics. Standard .z80 files can only be loaded by the AX82.
>
> Joerg

Under linux the command ax81-write comes up no such command.  Have used 
makefile. Did generate fsinstall and ax81-write and ax71-read but none 
if these work. Can you help ?

von Joerg W. (joergwolfram)


Lesenswert?

Hello David,

>Have used makefile

WHICH makefile You have used? I have only provided a small "compile.sh" 
script. But You may also copy the binaries of the bin package to 
/usr/local/bin or another path which is defined in the PATH enviroment 
variable.

I do not recommend to store the binaries somewhere else (for instance at 
Your home directory or directly on the SD card).

>none if these work

How You are did test it? No error message? Nothing? Or always "no such 
command"?

Best regards,

Joerg

von David R. (retrogadgets)


Angehängte Dateien:

Lesenswert?

I identified this as part of the listing at

Line 482

  if ((strstr(buffer,".z80x") || strstr(buffer,".Z80X")))

in the ax81-write.c  program and this stops any .z80 spectrum file from 
being written to the ax81_spc.bin file

i have altered this to

  if ((strstr(buffer,".z80") || strstr(buffer,".Z80")))

in the attachment, but now i need someone to recompile it.

I have no understanding of linux , can someone please recompile.

Thanks.

von David R. (retrogadgets)


Lesenswert?

I see this subject has been discussed before now, did anyone recompile a 
linux on windows 7 version,

von David R. (retrogadgets)


Angehängte Dateien:

Lesenswert?

Adding a couple of .z80 snapshots listed the following on the picture.

Is it supposed to do this ?

von David R. (retrogadgets)


Angehängte Dateien:

Lesenswert?

Yes the snapshots load.  But freeze.  See pictures.
But the ax81-write now works on spectrum image.

von David R. (retrogadgets)


Lesenswert?

I managed to recompile using gcc compiler

von Ronny M. (hobby-coder)


Lesenswert?

hallo ihr,

darf ich fragen, ob es noch platinen mit fertig programmierten µc gibt? 
oder kann man sich das ding auch fix auf einer lochraster platine 
aufbauen? wenn ja, wo finde ich die bom, den schaltplan und die roms für 
den µc?

: Bearbeitet durch User
von Joe G. (feinmechaniker) Benutzerseite


Lesenswert?

alle Projektdaten gibt es hier:
http://www.jcwolfram.de/projekte/avr/ax81b/main.php

: Bearbeitet durch User
von David R. (retrogadgets)


Lesenswert?

Ronny M. schrieb:
> hallo ihr,
>
> darf ich fragen, ob es noch platinen mit fertig programmierten µc gibt?
> oder kann man sich das ding auch fix auf einer lochraster platine
> aufbauen? wenn ja, wo finde ich die bom, den schaltplan und die roms für
> den µc?

Hi Ronny I have some boards with integrated sd reader I can let you have 
for price of postage.

I shall put a picture of board on shortly.

von David R. (retrogadgets)


Angehängte Dateien:

Lesenswert?

Integrated sd reader on reverse of board

von David R. (retrogadgets)


Angehängte Dateien:

Lesenswert?

Reverse of board

von David R. (retrogadgets)


Angehängte Dateien:

Lesenswert?

9 boards available

Beitrag #5056807 wurde von einem Moderator gelöscht.
von Avantasia (Gast)


Lesenswert?

Wenn dem so wäre... würde es nicht eine Fangemeinde rund um den Z80 und 
die damit einhergehenden Computer geben.

von Joerg W. (joergwolfram)


Lesenswert?

David,

You cannot run regular .Z80 files because the Spectrum has at least 16K 
RAM but the AX81 has not. If the loaded snapshot does any read access 
above 15K it will get wrong data. If the stack is in the region above 
15K, the program will mostly freeze or gets undefined behavior.
The .z80x files are mostly compatible to .z80 but use only the memory 
which is available at the AX81. But they should work with other 
emulators. The slightly different file extension is only for preventing 
users to load snapshots which almost not work.

Joerg

von David R. (retrogadgets)


Lesenswert?


von Ronny M. (hobby-coder)


Lesenswert?

David R. schrieb:
> Thesr boards of mine are listed on ebay
>
> 
http://m.ebay.co.uk/itm/Sinclair-ZX80-ZX81-Spectrum-16k-Jupiter-Ace-Emulator-PCB-AX80-/182657572231?hash=item2a873d5d87%3Ag%3AKRgAAOSwuq9ZYK~R&_trkparms=pageci%253Afd149a91-6534-11e7-b753-74dbd18045fb%257Cparentrq%253A2b15225015d0abd99a0e4813ffed08a7%257Ciid%253A7
>
> Their going fast.  Only 5 left.

Hello,

Can I get the component list (bom)?

Lg ronny

---

hallo,

kann ich dazu die bauteileliste (bom) bekommen?

lg ronny

von David R. (retrogadgets)


Lesenswert?

Ronny pm me your email address

von Ronny M. (hobby-coder)


Lesenswert?

David R. schrieb:
> Ronny pm me your email address

Hallo,

Du müsstest eine eMail von mir bekommen haben. Wenn nicht, schick mir 
einfach eine PM :)

LG Ronny

---

Hello,

You must have received an email from me. If not, just send me a PM :)

LG Ronny

von David R. (retrogadgets)


Angehängte Dateien:

Lesenswert?

Introducing my new board in the same footprint size as a zx81 and 
provision is made to use the existing or a new membrane and fits a zx81 
case.

Video out from the uhf or composite out or vga

Compatible with the ax81 b  82b

Membrane or ps2 keyboard can be used.  See picture.

von David R. (retrogadgets)


Angehängte Dateien:

Lesenswert?

Edge connector provides connection to parallel port and iscp port for 
programming and sd card.

von Marcel (Gast)


Lesenswert?

Hi Eddy,

what is the 2nd AVR for?

KR
Marcel

von David R. (retrogadgets)


Lesenswert?

The 2nd avr interprets the membrane keyboard key presses into their 
corresponding keyboard scan codes.

von David R. (retrogadgets)


Angehängte Dateien:

Lesenswert?

Picture of board nearing completion.

A few errors have been noted. Keyboard connector pin 5 has no track to 
the atmega, due to typo on schematic.  The two keyboard connectors are 
not at the correct spacing, out by 2.54mm as they overlap,  a workaround 
by mounting one on top and the other underneath.

The parallel port and iscp connection are available at the edge 
connector.

I plan to mount the board in the zx81 case, provision is made on the 
board for an Ps2 type keyboard to be used.  VGA is available, i plan to 
use UHF.

More updates later.

: Bearbeitet durch User
von Horst (Gast)


Lesenswert?

With the parallel port, I think I can make an add-on PCB with an 8255 or 
Z80-KIO or another I/O-chip. To use this Computer in combination with 
further electronics.

Which signals are available on the port? I2C, too?

Best regards!
Horst.

von Max B. (citgo)


Lesenswert?

Ende 2023 und noch immer rennt der AX81 im Hobbykeller neben meinem Ohio 
Scientific Model 600 :)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.