You are not logged in.

41

Saturday, August 30th 2008, 4:55pm

Vorschlag:

Kommandos vom Interface an das SD2IEC:

CD path

change directory. Wechselt in ein Verzeichnis auf der SD.

MD path

make directory. Erstellt ein Verzeichnis auf der SD.

LS #v #b

list directory. Listet das aktuelle Directory der SD von EIntrag (#v) bis Eintrag (#b). Zb. LS 9 15. Das von/bis ist für Atmel Architektur.

CP dstfile srcfile

copy file. Kopiert Datei.

RM file

remove file. Löscht eine Datei.

skoe

macht komische Sachen

  • "skoe" is male
  • »skoe« is a verified user

Posts: 2,034

Date of registration: Nov 12th 2003

Location: Berlin

  • Send private message

member since 108 month member since 108 month member since 108 month member since 108 month member since 108 month member since 108 month

42

Saturday, August 30th 2008, 8:38pm

> Es gibt zwei Möglichkeiten

Ah, deshalb haben wir z.T. aneinander vorbeitgeredet. Ist doch gut, alles mal aufzuschreiben, statt zu vermuten das die anderen das gleiche denken.

Du hast wahrscheinlich schon geraten, dass ich Weg 2 gemeint habe.

> So MSDOS oder Linux Kommandos an das SD2IEC?

"ls" etc. habe ich übrigens nur zur Veranschaulichung benutzt

> In größeren Umgebungen spricht man von Client Server Prinzip.
Ach, wenn Du es auf Lochraster aufbaust, ist es doch eine größere Umgebung (hahaha! Schenkelklopfer!)

> Das LCD Teil wäre nur für den Zweck da und könnte
> für nichts anderes verwendet werden.

Zumindest nicht mit der Firmware. Aber so ein richtig großes Problem wäre das IMHO nicht.

Hab nochmal an das Parser-Recyclen gedacht: Ein separater Parser hätte natürlich den Vorteil, dass er nach dem Ausschalten über Präprozessor nichts mehr kostet. Eine Schnittstellenänderung im vorhandenen Parser ließe sich nicht weg-ifdefn. (das sogenannte Multiple-Partition-Syndrom)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Vergiss BASIC und lern C! C lernen mit cc65 und C64
Bau Dir ein eigenes Modul! EasyFlash

Unseen

Hätte gerne 'n Virtex 7 ;)

  • "Unseen" is male
  • »Unseen« is a verified user

Posts: 4,576

Date of registration: Jun 16th 2007

Location: Debara Hamtar

  • Send private message

member since 72 month member since 72 month member since 72 month member since 72 month

43

Sunday, August 31st 2008, 12:23am

Deshalb hatte ich im Hintergrund, den Parser den zu parsenden Puffer übergeben zu können. Würde aber den Code etwas größer machen. Eine weniger elegante aber sehr platzsparende Lösung wäre ein globaler Pointer, der vor dem Aufuf auf den zu parsenden Puffer zeigt.

Der Code wird derzeit um ca. 400 Byte aufgeblasen wenn man statt des statischen Kommando-/Filenamenpuffers einen Zeiger auf selbigen verwendet weil dann an vielen Stellen Adressen nicht mehr vom Compiler berechnet werden können sondern das zur Laufzeit geschehen muss.

Quoted

- Track/Sektor anzeigen???

Die gibts nur bei D64/71/81/NP-Images.

Evtl. fehlen noch:
  • Aktuelle Partition ändern
  • Laufwerks-Mapping ändern (sofern der Mapper eincompiliert ist)


Quoted

Für das ls würde ich nicht load"$" umfunktionieren, sonder eine Extrawurst implementieren, die das Directory mehr oder weniger unbehandelt durchreicht. Könnte man dann auf den sonst benötigten 256-Byte-Puffer verzeichten?

Könnte man, wenn man die cbmdirent-struct in der Sendefunktion auf dem Stack anlegt.

Quoted

Vorsicht, die Displays sind zwar meist pinkompatibel und haben kompatible Controller. Aber z.B. der Vorwiderstand für das Display ist anders und evtl. die aus dem Datenblatt erkennbare Initialisierungssequenz.

AFAIK ist die häufigste Inkompatibilität auf Hardwareseite die Vertauschung von GND und VCC.

Mit I2C habe ich mich noch nicht richtig beschäftigt. Ist da der Master fix oder kann das zwischen den Busteilnehmer wechseln? Wenn der Master fix ist, kann der Slave etwas vom Master anfordern (Directory Einträge)? Sonst wär vielleicht doch eine serielle Anbindung einfacher?

Multi-Master auf einem Bus geht, ein Device ständig zwischen Master und Slave wechseln zu lassen ist allerdings IMHO nicht ganz trivial. Evtl. wäre es dann eine Alternative wenn das Display nur als "dummes" Terminal arbeiten soll.

Quoted

Mit Platzhalter wie zb. bei der printf() Funktion.

printf kostet auf dem AVR übrigens "nur" ca. 2300 Byte Flash - in der Version ohne float-Support.

Unseen ist unbedingt notwendig für dieses Projekt. Es sind also nur noch drei Fragen zu klären:
  • Machen wir es? Hast du Lust Unseen?
  • Ist es ok wenn ich das "Protokoll" ausdenke und vorlege oder willst du es machen Unseen?
  • Wie ist der Zeitrahmen? Ziehen wir das rasch durch oder hat das niedrige Priorität für die SD2IEC Entwicklung? Machen wir es in einem Schwung oder erweitern wir es vor zu? Sollen wir uns einen Zeitplan überlegen oder kann man keinen Zeit Horizont setzen?

Standardantwort: Schick einen Patch (oder evtl. mehrere aufeinander aufbauende wenn sich der Inhalt sauber trennen lässt).

GT

get timestamp. Das Interface antwortet mit "TS=hh:mm:ss dd.MM.yyyy". hh=Stunde, mm=Minute, ss=Sekunde, dd=Tag, MM=Monat, yyyy=Jahr

Evtl. noch mit Wochentag. Der lässt sich zwar auch berechnen, aber die meisten RTCs können den speichern und selbst aktualisieren.

Ausserdem fehlt eine Funktion um die Zeit zu setzen.

Quoted

STR:

show track. Damit kann die aktuelle Spur angezeigt werden.

STR:

show sector. Damit kann der aktuelle Sektor angezeigt werden.

Es gibt keine aktuelle Spur und erst recht keinen aktuellen Sektor.

Quoted

SIM:

show image. Damit kann das aktuelle D64 image angezeigt werden.

Wird nirgendwo gespeichert. Es ist zwar der Sektor und die Eintragsnummer des FAT-Directoryeintrags bekannt, aber damit kommt man ohne grösseren Aufwand nur an den 8.3-Namen.

Quoted

SDI:imagefile,#device

show directory. Damit kann das aktuelle Verzeichnis nach einem CD vom C64 angezeigt werden.

Auch das wird nirgendwo gespeichert, nur die Clusternummer ist bekannt. Die fat_getlabel-Funktion findet den Namen des aktuellen Verzeichnisses (aber nicht den kompletten Pfad) heraus indem sie ".." öffnet und den Eintrag sucht der die gleiche Clusternummer hat.

CP dstfile srcfile

copy file. Kopiert Datei.

Würde ich nicht über das Display machen.

(Erwähnte ich schonmal, dass ich Webforen sch*** finde im Vergleich mit dem UI eines guten Newsreaders oder Mailclients?)

Quellcode

1
2
3
10 x=rnd(-1963):fori=1to81:y=rnd(1):next
20 forj=1to5:printchr$(rnd(1)*16+70);:next
30 printint(rnd(1)*328)-217

sd2iec Homepage

Shadowolf

Professional

  • "Shadowolf" is male

Posts: 1,220

Date of registration: Jul 18th 2006

Location: Deutschland

  • Send private message

member since 72 month member since 72 month member since 72 month member since 72 month

44

Sunday, August 31st 2008, 11:22am

Mal ein Vorschlag zur RTC.

Statt des PCF8583 würde ich eher einen DS1307 nehmen.
Der hat nämlich einen extra Batterie-Anschluss an dem man eine Lithium Zelle anschliesst.
Eine "CR 1225P-H" von Reichelt hält an dem Teil wohl etwa 8 Jahre und ist zudem deutlich kleiner als ein GoldCap.

FXXS

Pirat

  • "FXXS" is male

Posts: 5,810

Date of registration: Oct 28th 2005

Location: zwischen Hamburg und Hannover

  • Send private message

member since 90 month member since 90 month member since 90 month member since 90 month member since 90 month

45

Sunday, August 31st 2008, 11:38am

(Erwähnte ich schonmal, dass ich Webforen sch*** finde im Vergleich mit dem UI eines guten Newsreaders oder Mailclients?)
RSS-Feed Index (RSS Seite)
RSS - Feed Forum64 (Thread vom Doc)

sl FXXS

Unseen

Hätte gerne 'n Virtex 7 ;)

  • "Unseen" is male
  • »Unseen« is a verified user

Posts: 4,576

Date of registration: Jun 16th 2007

Location: Debara Hamtar

  • Send private message

member since 72 month member since 72 month member since 72 month member since 72 month

46

Sunday, August 31st 2008, 1:11pm

Statt des PCF8583 würde ich eher einen DS1307 nehmen.

Der will allerdings 4.5-5.5V Versorgungsspannung.

RSS-Feed Index (RSS Seite)/RSS - Feed Forum64 (Thread vom Doc)

Das macht es auch nicht besser. Die lästigsten Dinge sind IMHO der miese Editor, die Notwendigkeit alles von Hand quoten zu müssen und dabei auch noch unabhängige Replies in ein Posting zusammenzuführen und die nicht existente Thread-Baum-Darstellung.

Quellcode

1
2
3
10 x=rnd(-1963):fori=1to81:y=rnd(1):next
20 forj=1to5:printchr$(rnd(1)*16+70);:next
30 printint(rnd(1)*328)-217

sd2iec Homepage

Shadowolf

Professional

  • "Shadowolf" is male

Posts: 1,220

Date of registration: Jul 18th 2006

Location: Deutschland

  • Send private message

member since 72 month member since 72 month member since 72 month member since 72 month

47

Sunday, August 31st 2008, 1:46pm

Der will allerdings 4.5-5.5V Versorgungsspannung.


Na wenn das Zusatz-Modul sowieso auf 5V laufen soll, dann ist das ja kein Problem.
Der PCF8583 war ja zur Integration auf einem zukünftigen SD2IEC angedacht.
Und, puh, gerade mal nachgesehen, der braucht mindestens 2,2V am Eingang, passt also.

skoe

macht komische Sachen

  • "skoe" is male
  • »skoe« is a verified user

Posts: 2,034

Date of registration: Nov 12th 2003

Location: Berlin

  • Send private message

member since 108 month member since 108 month member since 108 month member since 108 month member since 108 month member since 108 month

48

Sunday, August 31st 2008, 2:09pm

> (Erwähnte ich schonmal, dass ich Webforen sch*** finde im Vergleich
> mit dem UI eines guten Newsreaders oder Mailclients?)

OT:

Du hast ja schon gesehen: Ich hab das Quotes-Gebastel auch aufgegeben. Ist hoffentlich trotzdem noch lesbar.

Gestern hab ich meinen ICQ-Account aus der Mottenkiste geholt, um Diddl mal anfunken zu können. Technisch hat's geklappt, aber zum Fachgeschwafel sind wir dann aus Zeitgründen nicht gekommen.

Die Mailingliste der open1541 hab ich auch noch nicht wirklich benutzt, weil ich nicht weiß, wer da eigentlich alles drin ist. Die Adressen sehe ich zwar, aber die meisten kenne ich nicht. Vielleicht sollte ich mal einen Broadcast-Ping starten :-)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Vergiss BASIC und lern C! C lernen mit cc65 und C64
Bau Dir ein eigenes Modul! EasyFlash

49

Monday, September 1st 2008, 8:42pm

Puh, also ein 2x16 Display ist schon ziemlich klein um alle Infos unter zu bekommen.
Diese Meldungen hab' ich als ersten Versuch bei meinem Display implementiert und bin noch nicht so zufrieden:

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Start / Disk Check:
SD2IEC LCD 1.0  
DISK OK. READY.

Save (Root):
SD2IEC LCD 1.0 S
MEINPRG2

Load (Image):
ARCADE.D64     L
CENTIPEDE

Disk Change:
ARCADE.D64
SELECTED.


Also ein bischen eng.

@edit: Hab' die Liste mal ein bischen gekürzt, sonst wird's so'n langer Thread (-:
@edit: Natürlich ist das kein Vorschlag, sondern nur ein Test was drauf passt.
Das ist hier doch alles nur Elektronekrophilie (tm)

This post has been edited 2 times, last edit by "Draco" (Sep 1st 2008, 9:08pm)


Ace

Fieser Drehstuhlakrobat und Rentner Provocateur.

  • »Ace« is a verified user
  • Send private message

member since 90 month member since 90 month member since 90 month member since 90 month member since 90 month

50

Monday, September 1st 2008, 8:44pm

Jo wäre auch dafür :dafuer:

NLQ

Intermediate

  • "NLQ" is male

Posts: 373

Date of registration: Feb 20th 2005

Location: Kirchardt bei Heilbronn

  • Send private message

member since 90 month member since 90 month member since 90 month member since 90 month member since 90 month

51

Friday, September 5th 2008, 9:43pm

Quoted

Au weia, 22 pF! Sind die aus den Datenblättern oder bist Du Profi


Da ich auch kein Profi bin, habe ich mal eine Frage an die Hardware Profis: Wie werden die Kondensatoren an den Quarzen bestimmt?
Wenn ich einen AVR644 mit diesem 8MHz Quarz betreiben will, welche beiden Kondensatoren brauche ich (und warum sind es zwei)?
Wenn ich einen PCF8583 mit diesem 32kHz-Quarz betreiben will, welchen einzigen Kondensator brauche ich (und warum ist es nur einer)?
NLQ has attached the following images:
  • AVR-Quarz.jpg
  • Quarz-8MHz.jpg
  • 8583-Quarz.jpg
  • Quarz-32kHz.jpg

Shadowolf

Professional

  • "Shadowolf" is male

Posts: 1,220

Date of registration: Jul 18th 2006

Location: Deutschland

  • Send private message

member since 72 month member since 72 month member since 72 month member since 72 month

52

Friday, September 5th 2008, 11:07pm

Da ich auch kein Profi bin, habe ich mal eine Frage an die Hardware Profis: Wie werden die Kondensatoren an den Quarzen bestimmt?


Entweder Pi*Daumen, also 22pF oder so, wenn es nicht exakt auf die Frequenz ankommt.
Ansonsten anhand des Datenblattes vom Quarz.

Quoted


Wenn ich einen AVR644 mit diesem 8MHz Quarz betreiben will, welche beiden Kondensatoren brauche ich (und warum sind es zwei)?


Die Kondensatoren bilden mit einem Verstärker im Chip und dem Quarz zusammen einen Schwingkreis.
Dabei bilden die Kondensatoren die sogenannte Lastkapazität und liegen in Reihe zueinander und parallel zum Quarz.
Mit den Kondensatoren kann man den Schwingkreis in gewissen Grenzen verstimmen.
Daher ist das Datenblatt vom Controller auch nicht wirklich relevant, der Hersteller vom Quarz weiss schon besser, unter welchen Bedingungen sein Bauteil exakt auf der angegebenen Frequenz schwingt.

Jetzt hat der Quarz den Du rausgesucht hast eine Lastkapzität von 32pF.
Reihenschaltung der Kondensatoren bedeutet halbe Gesamt-Kapazität.

C1 = C2 = 2 * CL

Also kommt man bei CL=32pF auf Werte für C1 und C2 von 64pF.
Nun könnte man 68pF nehmen.
Die Anschlüsse vom Quarz und die Leiterbahnen haben aber noch noch ein wenig Kapazität.
Also geht man eher auf die nächste Grösse runter und landet in diesem Fall bei 56pF.

Nicht perfekt vielleicht aber deutlich genauer als 2*22pF.

Quoted


Wenn ich einen PCF8583 mit diesem 32kHz-Quarz betreiben will, welchen einzigen Kondensator brauche ich (und warum ist es nur einer)?


Mit Uhren-Quarzen braucht man normalerweise gar keinen Kondensator.
Die Oszillatoren dafür haben bereits eingebaute Kapazitäten.
Im Datenblatt vom PC8583 steht jetzt, dass der Quarz ein CL von 10pF haben soll.
Der Reichelt-Artikel 0,032768-SMD würde mit CL=0,85pF wohl eher nicht funktionieren - falls die Angabe stimmt.
Die Artikel 0,032768 und 0,032768-L6 sollten es beide tun.

Der im Datenblatt vom PCF8583 erwähnte 10pF Trimmer-Kondensator dient der fein-Einstellung.

NLQ

Intermediate

  • "NLQ" is male

Posts: 373

Date of registration: Feb 20th 2005

Location: Kirchardt bei Heilbronn

  • Send private message

member since 90 month member since 90 month member since 90 month member since 90 month member since 90 month

53

Wednesday, September 10th 2008, 9:20pm

Quoted

Die Kondensatoren bilden mit einem Verstärker im Chip und dem Quarz zusammen einen Schwingkreis.

Mit Uhren-Quarzen braucht man normalerweise gar keinen Kondensator.
Die Oszillatoren dafür haben bereits eingebaute Kapazitäten.
Im Datenblatt vom PC8583 steht jetzt, dass der Quarz ein CL von 10pF haben soll.
Die Artikel 0,032768 sollten es beide tun.
Der im Datenblatt vom PCF8583 erwähnte 10pF Trimmer-Kondensator dient der fein-Einstellung.


Vielen Dank für diese hervorragende Erklärung; es hilft mir sehr weiter.
Den 8583 hatte ich zuerst nur mit dem 0,032768 (ohne Trimm-Kondensator) benutzt. Dabei hatte ich Probleme: Es könnte gewesen sein, dass der Oszillator oft nicht ansprang, aber da bin ich nicht mehr ganz sicher. Ganz bestimmt weiss ich aber noch, dass er viel zu schnell war, ich meine sogar doppelt so schnell. Ich wage mal die Vermutung, dass er auf einer Oberfrequenz schwang? Erst als ich einen Festwertkondensator mit 12pF dazulötete klappte es (ich denke, dass man die Eichung einfacher per Software hinbekommt).

54

Saturday, September 13th 2008, 10:24pm

Und, bei wem sieht man schon etwas am Display? :bgdev
lg,
znarF

55

Sunday, September 14th 2008, 9:06am


:bgdev
Eine Bastelei für die alte Hardware (Atmega 32).
Verwendet die LCD-Bibliothek von Peter Fleury. Das Display zeigt bei Load/Save die Dateinamen an. Beim Diskchange wird das ausgewählte Image angezeigt. Das Display kann über den Kommandokanal auch vom Cevi angesteuert werden.
Die Anzeige beim Laden zu aktualisieren (Ladebalken oder Prozentanzeige) habe ich nicht probiert, da das wegen des Timings bei der Datenübertragung kritisch sein dürfte.
Leider habe ich momentan sehr wenig Zeit, so dass es wohl bei dieser Bastelei bleiben wird.
Das ist hier doch alles nur Elektronekrophilie (tm)

This post has been edited 2 times, last edit by "Draco" (Sep 14th 2008, 9:40am)


Shadowolf

Professional

  • "Shadowolf" is male

Posts: 1,220

Date of registration: Jul 18th 2006

Location: Deutschland

  • Send private message

member since 72 month member since 72 month member since 72 month member since 72 month

56

Sunday, September 14th 2008, 11:21am

Verwendet die LCD-Bibliothek von Peter Fleury.


Die ist nicht so richtig geeignet, da beim Senden an das Display der Controller solange blockiert wird, wie das Display braucht, um die Daten zu verarbeiten.
Das sind dann schon mal mehrere milli-Sekunden wenn man eine Zeichenkette schickt.

Für Anfänger ist die super, für zeit-kritische Dinge völlig ungeeignet.