XS-1541 mit sd2iec Firmware?

  • XS-1541 mit sd2iec Firmware?

    Hallo zusammen,

    ich habe gesehen, dass in der sd2iec firmware bereits eine Konfiguration für XS-1541 hinterlegt ist. Gibt es dazu mehr Informationen, z.B. was man genau tun muss um eine SD-Karte anzuschliessen, den AtMega zu flashen etc...?

    Hintergrund: ich habe seit > 10 Jahren einen Fileserver für meinen selbstgebauten 6502 Rechner, der als IEEE488 Floppy funktioniert und mit dem PC über die Serielle Schnittstelle kommuniziert. Die 6502-Seite kann man wegwerfen, aber die Schnittstelle des PC-Teils würde sicher gut ins sd2iec passen. Dann braucht man noch nicht mal SD-Karten zur Datenübertragung, sondern könnte das über seriell-über-USB machen. Leider habe ich selbst nur ein XS-1541, würde aber gerne auf sd2iec aufbauen.

    Danke
    André
  • fachat schrieb:

    ich habe gesehen, dass in der sd2iec firmware bereits eine Konfiguration für XS-1541 hinterlegt ist.

    das wäre mir neu, warum sollte Unseen so eine Konfig machen? Das SD2IEC hat normal keinen RS232?


    Eine SD anschliessen? Das SD2IEC hat eine SD Interface.
    Letztlich ist alles nur Illusion
    Es gibt hier nichts von Bedeutung
  • fachat schrieb:

    Die 6502-Seite kann man wegwerfen, aber die Schnittstelle des PC-Teils würde sicher gut ins sd2iec passen. Dann braucht man noch nicht mal SD-Karten zur Datenübertragung, sondern könnte das über seriell-über-USB machen.

    Oh weh, das könnte etwas kompliziert werden. Intern geht zur Zeit manches davon aus, dass auf den einzelnen Laufwerken erst mal mit FAT angefangen wird und Images dann darauf liegen. Die D64-Routinen schieben immerhin sämtliche Zugriffe durch zwei Wrapperfunktionen, die man erweitern/ersetzen könnte um abhängig von der Partition geeignete Leseroutinen aufzurufen. M2I ist nur ein "Wrapper" über den FAT-Dateioperationen um die Namen umzuschreiben, aber dessen Rauswurf ist ja eh schon länger angekündigt.

    Diddl schrieb:

    das wäre mir neu, warum sollte Unseen so eine Konfig machen? Das SD2IEC hat normal keinen RS232?

    Eine SD anschliessen? Das SD2IEC hat eine SD Interface.

    Nils hat mir im Rahmen der IEEE-Patches auch eine XS-1541-Konfiguration geschickt - wie die funktioniert weiss ich allerdings nicht, das müsste man mal ihn fragen oder im Quellcode nachlesen.

    Quellcode

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

    sd2iec Homepage
  • Die sd2iec-Konfiguration für das XS-1541 erwartet bislang eine SD-Karte nebst Pegelwandler und 3.3V Spannungsregler an der 15 poligen Sub-D-Buchse. GND und Vcc muss man sich dort noch mit zwei Kabeln selbst hinlegen, das ist auf der XS-1541-Platine der REV. D nicht vorgesehen.
    Zur Belegung sei auf die config.h verwiesen, da steht das drin. Die Bus-Routinen funktionieren so weit, d.h. ich konnte den Disk-Status auslesen und Befehle senden, allerdings habe ich das SD-Interface nie an's Laufen bekommen und auch keine all zu große Lust gehabt, den Fehler zu beheben.

    Was die Variante betrifft, die SD-Karte durch Kommunikation über RS-232 mit dem PC zu ersetzen, so hatte ich dies immer schon vor, aber das Umschiffen der Wrapper-Funktionen, die unseen oben schon beschrieben hat, fand ich nicht ganz trivial. Von meiner Seite aus wird es dazu auf absehbare Zeit nichts geben.

    Das XS-1541 hat einen ISP-Programmierstecker, an dem Du einen der üblichen ISP-Programmierer (wie z.B. AVRISP oder ein STK200-clone) aufstecken kannst und den AVR direkt programmieren kannst. Von mir ausgelieferte XS-1541 waren immer mit Bootloader versehen, die alleine über RS-232 bzw. USB programmiert werden können. Wie das geht, ist auf meiner Homepage beschrieben. Zum Entwickeln ist das allerdings zu langsam und zu umständlich, da sei Dir dringendn ein AVRISP empfohlen.
  • Ok, habe meinen alten Servercode (für den PC) refactored um ihn unabhängig vom TCP/IP socket zu machen (war Teil eines Filesystem über TCP/IP via SLIP von meinem GeckOS/A65....). Seriellen Schnittstellenkram muss ich noch machen - lieber wäre mir aber ein Wrapper-Program, das die serielle Schnittstelle auf die baudrate setzt und dann den servercode aufruft - würde den servercode dann auch systemunabhängig halten (win vs. linux) - habt Ihr da einen Tipp?

    Heute das erste Mal XS1541 geflasht (mit der XS1541 Originalversion + gepatchter Startmeldung als Marker, via USB). Soweit erfolgreich. Der Rest sollte auch gehen... nächstes Wochenende.

    Fall Interesse besteht ich habe das avr-gcc Makefile für Linux angehängt (incl. HEX-Erzeugung und Load - Extension .txt wg. forumsoftware, gehört da weg...)

    André
    Dateien
    • Makefile.txt

      (844 Byte, 10 mal heruntergeladen, zuletzt: )
  • Dass es eine alternative Firmware für das XS-1541 gibt, das weisst du aber schon?

    Die alternative Firmware macht das XS-1541 weitgehend kompatibel mit OpenCBM und dient damit in der Funktion eines Zoomfloppy.. leider ist die serielle Schnittstelle sehr inperfomant. Aber ein XS-1541 mit Ethernet (zb. Nils Variante) wäre da schon klasse.
    Letztlich ist alles nur Illusion
    Es gibt hier nichts von Bedeutung
  • Naja, ich hab' nicht SD-Karte als Floppy-Laufwerk geschrieben, sondern PC.
    Die Idee ist, auf dem PC mit cross-assembler etc Programme zu bauen und direkt auf der Hardware zu testen.
    Und nein, VICE o.ä. um ganz auf dem PC zu arbeiten geht nicht, denn die Hardware is meine eigene, die nur zufällig das CBM IEEE Protokoll vewendet.
  • Hast Du in Deiner Mail vom 4. Oktober letzten Jahres, die ich hier nicht ungefragt offenlegen möchte.

    Später hast Du dann eine neue sd2iec-Version veröffentlicht, allerdings ohne vorher Patches abzufragen bzw. Bescheid zu geben, dass Du nun Kapazitäten hättest, welche einzuflicken. Noch dazu hat es der IEEE-Code nicht in das Release geschafft -- nicht nur, dass weitere Patches nicht abgefragt wurden, die bereits bestehenden sind quasi wieder raus geflogen.

    Meine Nachfrage, warum das so sei, wurde übersehen oder ignoriert und interessiert hat das hier nicht einen einzigen Nutzer, der davon betroffen gewesen wäre.
  • for(;;) schrieb:

    Hast Du in Deiner Mail vom 4. Oktober letzten Jahres, die ich hier nicht ungefragt offenlegen möchte.

    Dort schrieb ich dir, dass ich deine laut deiner eigenen Aussage noch unfertigen Patches nicht haben wollte - aber keineswegs, dass ich gar keine Patches haben will.

    Später hast Du dann eine neue sd2iec-Version veröffentlicht, allerdings ohne vorher Patches abzufragen bzw. Bescheid zu geben, dass Du nun Kapazitäten hättest, welche einzuflicken.

    NATÜRLICH habe ich vorher nicht nachgefragt. Ich ging davon aus, dass du dich irgendwann mal mit was fertigem zurückmelden würdest und ich sehe es nun wirklich nicht als meine Aufgabe an, anderen Leuten hinterherzurennen damit sie ihre Änderungen gnädigerweise doch noch an mich weiterreichen.

    Noch dazu hat es der IEEE-Code nicht in das Release geschafft

    0.10.3? Natürlich nicht, diese Releases sind eigentlich nur für Bugfixes gedacht. Dass dort ein zusätzlicher Fastloader enthalten ist war eine Ausnahme, da immer wieder Fragen aufgetaucht sind wieso man denn mit EasyProg nicht vom sd2iec flashen kann und der Fastloader mit wenig Einfluss auf das Restsystem übernehmen kann.

    nicht nur, dass weitere Patches nicht abgefragt wurden, die bereits bestehenden sind quasi wieder raus geflogen.

    Nein, die waren niemals in dem Branch enthalten auf dem das Release basiert.

    Meine Nachfrage, warum das so sei, wurde übersehen oder ignoriert und interessiert hat das hier nicht einen einzigen Nutzer, der davon betroffen gewesen wäre.

    Die scheine ich tatsächlich übersehen zu haben.

    Quellcode

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

    sd2iec Homepage
  • Unseen schrieb:

    Dort schrieb ich dir, dass ich deine laut deiner eigenen Aussage noch unfertigen Patches nicht haben wollte - aber keineswegs, dass ich gar keine Patches haben will.
    So eingeschränkt war Deine Aussage leider nicht.

    Ich schrieb Dir, dass die Unterstützung von Images des Typs D80/D82 fertig wäre, bis auf die Implementierung des NEW-Befehls, der zum damaligen Stand lediglich für D64 unterstützt wurde, für die vielen anderen Typen neben D80/D82 aber auch nicht. Ich schrieb ebenfalls, dass es lange dauern würde, bis ich NEW für D80/D82 machen würde.
    Das bedeutet, dass der D80/D82-Patch so fertig war, wie Software in der Gegenwart jemals fertig ist.

    Unseen schrieb:

    ich sehe es nun wirklich nicht als meine Aufgabe an, anderen Leuten hinterherzurennen
    Und ich sehe das wiederholte Anschreiben von Personen, die mir erklären, sie wären zu beschäftigt, als Belästigung an.

    Unseen schrieb:

    0.10.3? Natürlich nicht, diese Releases sind eigentlich nur für Bugfixes gedacht. Dass dort ein zusätzlicher Fastloader enthalten ist war eine Ausnahme

    Wenn ein Fix an einem Fastloader release-würdig ist, die Unterstützung neuer Hardware, die seit mittlerweile fast 8(!) Monaten im Handel ist, aber nicht release-würdig bzw. nicht würdig, in den "richtigen" Branch aufgenommen zu werden, dann haben die IEEE-Routinen innerhalb des sd2iec-Konstrukts das falsche Zuhause.

    Nebenbei bemerkt war mein erster Patch sehr wohl gegen den Release-Branch und Du warst es, der mich gebeten hat, es gegen den anderen anzupassen. Das hat mich noch einmal einige Stunden Arbeit für Nüsse gekostet. Ich fühle mich hier wirklich reichlich verschaukelt. Als ich Dich damals fragte, wie Du zu Patches stehst, hättest Du mir ohne weiteres antworten können, dass sd2iec eine "one-man-show" ist und es wäre in Ordnung gewesen. Aber andere Leute mühsam Patches erstellen lassen, Patches umarbeiten zu lassen nur um sie am Ende doch nicht zu veröffentlichen und veröffentliche Patches öffentlich als "horrible mess" zu kennzeichnen ist absolut nicht in Ordnung.

    Unseen schrieb:

    Die scheine ich tatsächlich übersehen zu haben.
    Und für eine einfache Empangsbestätigung (wer erwartet schon ein "Danke"?!) hat es bei der täglichen Flut an Warenlieferungen von der Amazon-Wunschliste auch nicht gereicht. Wenn Du mir nicht Wochen später auf ausdrückliche Nachfrage den Erhalt bestätigt hättest, hätte ich glatt vermutet, Amazon hätte meine Bestellung auch einfach nur übersehen.
  • for(;;) schrieb:

    So eingeschränkt war Deine Aussage leider nicht.

    Darf ich aus deiner Mail zitieren?

    Und ich sehe das wiederholte Anschreiben von Personen, die mir erklären, sie wären zu beschäftigt, als Belästigung an.

    Mails kann man prima in der Inbox oder anderen Ordnern liegenlassen.

    Wenn ein Fix an einem Fastloader release-würdig ist,

    Sicher doch.

    die Unterstützung neuer Hardware, die seit mittlerweile fast 8(!) Monaten im Handel ist, aber nicht release-würdig

    Sicherlich auch, aber anderer Kram ist meiner Meinung nach zu unfertig um den aktuellen Stand als Release rauszuschieben.

    bzw. nicht würdig, in den "richtigen" Branch aufgenommen zu werden

    Klar, ich schreibe furchtbar gerne fremden Code um, den ich nicht testen kann und dessen Funktion ich höchstens oberflächlich kenne, um daraus ein Nicht-Bugfix-Zwischenrelease basteln zu können welches getrennt ist von dem Zeug welches nicht dort reinsoll (hier insbesondere der Architektursplit).

    dann haben die IEEE-Routinen innerhalb des sd2iec-Konstrukts das falsche Zuhause.

    Heisser Tip: sd2iec ist für mich ein Hobbyprojekt. Wenn dir das nicht gut genug ist, such dir halt was anderes.

    Nebenbei bemerkt war mein erster Patch sehr wohl gegen den Release-Branch und Du warst es, der mich gebeten hat, es gegen den anderen anzupassen.

    Wäre es dir lieber gewesen wenn der in den 0.10er-Branch eingepflegt worden wäre und im Hauptzweig nicht? An der Stelle hätte genau das gleiche Problem existiert.

    Aber andere Leute mühsam Patches erstellen lassen, Patches umarbeiten zu lassen nur um sie am Ende doch nicht zu veröffentlichen und veröffentliche Patches öffentlich als "horrible mess" zu kennzeichnen ist absolut nicht in Ordnung.

    Entscheide dich doch bitte mal: Habe ich deinen Patch nicht veröffentlicht (dann kann ich ihn auch nicht öffentlich als "horrible mess" bezeichnet haben) oder habe ich ihn veröffentlicht (dann ist deine Behauptung, dass ich die nicht veröffentliche Blödsinn)?

    Ausserdem ist das "horibble mess" bei dem von dir abgelieferten Patch hundertprozentig angebracht: Ich versuche das sd2iec-Repository nach dem "Ein Commit pro Problem"-Prinzip zu führen und das ist mit dem von dir abgelieferten Codestück nicht möglich gewesen weil es IIRC vier oder fünf Dinge auf einmal gemacht hat, die sich nicht mal eben auseinanderpflücken lassen ohne nicht compilierbare Zwischenversionen zu erzeugen.

    Bei der Rückführung meines internen LPC1769-Branches in den Master-Branch habe ich genau deswegen an einigen Stellen beim Bauen der Einzelpatches Codestücke geschrieben, die wenige Patches später wieder rausgeflogen sind. Das ist zwar etwas mehr Arbeit, aber am Ende sieht man dafür was wann und warum geändert wurde.

    Quellcode

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

    sd2iec Homepage
  • Springt doch niemand ab deswegen. Jeder Mensch hat seine Sicht auf die Dinge, deshalb gibt es ja so oft Kommunikationsprobleme.

    Die Diskussion verlief eh ganz ruhig und diszipliniert. Beide haben ihre Sicht erklärt und damit sollte jetzt alles klar sein.
    Letztlich ist alles nur Illusion
    Es gibt hier nichts von Bedeutung