Hello, Guest the thread was viewed12k times and contains 135 replies

last post from C=Mac at the

GEOS und SCSI-Connect

  • EDIT bx FXXS: Postingsplit wegen gewünschenten Threadsplit, stammte aus: GEOS MegaPatch V3 Release 2018


    Hab jetzt ScsiConnect15 re-assembliert... das war an sich nicht so komplex, hab dazu den "input-reass" von Input64 verwendet. Den hatte ich ja auch in den 90ern zum reassemblieren von GEOS verwendet. GeoDOS64 hat dann beim konvertieren geholfen :)


    Ist aber nicht ganz so einfach was das Programm so macht. Aber gibt auch einiges an Datenmüll und Debug-Code. Ich denke die 128er Version könnte man komprimieren. Aber ich kann's ja nicht testen.

    Egal... den Code hab ich momentan zu 90% verstanden und (ausführlichst) dokumentiert...


    Der Code assembliert aktuell 1:1 zur Version 1.5. Vielleicht baue ich mir daraus eine Version für den 64er... bevor es an GEOS geht (wenn überhaupt... die SCSI-Befehle haben es in sich...)



    Wie auch immer... wenn ich mit dem SourceCode zufrieden bin stelle ich den als Doku online... wenn ich da nicht weiterkomme, evtl. hilft es dann jemand anderem... :)

  • Das klingt doch sehr gut.:)


    Eine 64er Umsetzung wäre schon erstmal toll.:)


    SCSI Connect 1.5 benutze ich schon seit Jahren und es funktioniert immer ohne Probleme. War für mich immer erste Wahl, wenn es um die Nutzung der angeschlossenen SCSI Geräte ging und das ohne die lästige Tastendrückerei an der CMD HD.:)


    So etwas unter Geos wäre natürlich Non Plus Ultra.:whistling:


    An dieser Stelle möchte ich allen ein Schönes, Geruhsames Weihnachtsfest und ein Gesundes Neues Jahr wünschen.:weihnachten:


    Muß zwischen den Feiertagen noch arbeiten und während der Festage unterwegs sein. Werde natürlich versuchen, hier im Forum mit zu lesen.


    Gruß an alle

    Jojo

  • Gibt's das dann auch in Deutscher Muttersprache?


    Pusti64

  • Hallo Pusti64,


    Hoffnung:

    Darkvision versucht das Programm SCSI Connect 1.5 (C128) auch für den C64 lauffähig zu machen. Wenn alles gut läuft, auch für Geos.:whistling:


    Hast Du das SCSI Connect 1.5 schon mal ausprobiert?


    Wunschträume:

    Wenn man das, ohne die Tastendrückerei z.B. in Dein SCSI Light integrieren könnte, wäre es doch auch nicht schlecht.;)


    Gruß Jojo

  • Darkvision versucht das Programm SCSI Connect 128 auch für den C64 lauffähig zu machen. Wenn alles gut läuft, auch für Geos. :whistling:

    Ich hab das Programm soweit an den 64er angepasst das die HD gefunden wird, dann auch das ZIp, auch die Auswahl wenn mehrere Geräte da sind... es meldet beim ZIP "Bitte Diskette einlegen"... auch noch OK. Systempartition wird gesucht und gefunden... die Blockgröße mit 512Bytes passt auch. Dann wird das Laufwerk "angeschlossen"... was aber nicht zutrifft. Die Festplatte kann aber danach geparkt werden.

    Es geht also alles bis auf die Hauptfunktion... Dabei ist die 128er Version noch 1:1 mit dem Original kompatibel, kann ich aber mangels C128 nicht testen. Bei der 64er-Version sind nur die Bildschirmausgaben angepasst und der 128er/VDC/MMU-Kram entfernt.

    Ich muss die HD mal umbauen und alle anderen Laufwerke abmelden und den C64 ohne TC64 betreiben um Probleme am IEC-Bus bzw. mit dem TC64 auszuschließen. Das Tool deaktiviert ja auch temporär RAMLink und SCPU... vielleicht stört auch das TC64...

    Mit dem HD-ZIP-Tool geht es Problemlos, da muss ich aber den Konfigmodus aktivieren. Dann kann ich auch mit GeoDesk64 eine 81-Partition vom ZIP auf ein SD2IEC kopieren. Es scheint also aktuell nur am aktivieren des neuen Laufwerks im ZP/SCSI-Connect-Tool zu liegen. ?(

  • Wenn, dann möglichst in den 128 Desktop ;-)

    Aber wenn man es genauer nimmt, dann gehört es unter Umständen mit in den GEOS.Editor rein. ;-)


    Pusti64

  • Also, ich weiss immer noch nicht, warum zwingend die “copyright cmd....“ als erste Datei auf die Startpartition muß. Ohne soll es nicht, ohne Tastendrückerei, funktionieren (laut Herbert Mertins Aussage).

    Hab ich überprüft, auf der Disk#2 ist in Part#1 (Startpart) die Datei vorhanden.


    Schau Dir mal Part. , ich glaube 80 an, das könnten Sourcecodes sein.

    Auf welcher Disk?

    Oder wenn das auf einem der disk.img auf der DVD ist... welches? Hab eben mal eine der ZIP-IMG-Dateien unter Linux eingebunden (losetup -Pf zip.img && mount /dev/loop0 /mnt/tmp -> /mnt/tmp zeigt jetzt den Inhalt des zip.img) und hab da jetzt Zugriff auf alle DiskImages (als D81-Dateien) und die Systempartition. Hab mal ein paar D81 geöffnet... auf einem lag ein MP64Demo :)


    Die Systempartition beinhaltet auf jeden Fall die Kennung die auch im ZP-Connect-Tool abgefragt wird. Von daher sucht das Programm die Systempartition mit den richtigen Werten.


    In der Systempartition findet sich auch der Text "COPYRIGHT CMD 89". Das CMD-HD-Handbuch sagt:

    Quote

    The Commodore DOS Utility Loader and Autoboot Loader have been
    implemented into the DOS on the HD. This allows you to load file into
    drive memory and execute it immediately by sending the name of the file
    preceded by an ampersand ('&*) via the command channel. If file named
    'COPYRIGHT CMD 89' is present in the default partition, it is loaded and
    executed when the drive is reset or turned on

    Das scheint also ein AutoStart-Programm zu sein, das in die HD geladen und dort ausgeführt wird. Ist wohl für externe SCSI-Geräte erforderlich.


    Hab die Datei mal in den C64 geladen. Die Ladeadresse liegt wohl bei $8e00 im HD-RAM, dort liegt wohl ein Teil des System I/O.

    Am Anfang der Datei gibt es eine Sprungtabelle. Die wird auch vom ZP/SCSI-Connect Tool angesprungen. Die Datei scheint also Routinen zur Verfügung zu stellen mit dem das ZP/SCSI-Connect Tool zusammenarbeitet.


    Wie gesagt, erstmal die Hardware umbauen. Da brauch ich dann auch anderes TV-Kabel weil TC64 das VGA-Signal liefert. Also ob ich da an einem Tag wie heute Lust dazu hab... mal sehn ;)


    Aber wenn man es genauer nimmt, dann gehört es unter Umständen mit in den GEOS.Editor rein. ;-)

    Ja... aber im Editor gibt's keinen Platz, am 128er schon gar nicht. Da wurde ja schon Code für das wechseln der SD2IEC-DiskImages ausgelagert.

    Eigentlich wäre es besser im HD-Installer für den Laufwerkstreiber. Aber gerade der ist auch fast ausgereizt weil da ja noch der PP-Treiber "huckepack" mitgeschleppt wird. Da ist also auch nicht mehr viel Platz. Und was das wieder für Nebenwirkungen haben kann... da wäre ein extra Tool schon sinnvoller. Aber das ist solange Utopie bis das ZP/SCSI-Connect Tools hier läuft...

  • Sorry falsche Partition. Schaue Part 11, letztes DIR (SD Image). :)

    OK, auch das SD-Image kann ich mit losetup unter linux einbinden. Das sind aber DNPs (zumindest die Part.11) die muss ich auf das SD2IEC kopieren, sonst kann ich da keinen Blick auf den Inhalt werfen.


    Danke erstmal... ich schau mal wie ich da weiterkomme.

  • Ein Stück weiter bin ich...:thumbsup:

    Ganz weiered... ?(


    CMDHD ist #15

    Ich starte HD-ZIP und über den Konfigurationsmodus wechsle ich auf das ZIP mit ID#5.


    Nach dem abschalten des Konfigmodus hat die HD aber die Adr.#8. Ich muss zuerst den Befehlskanal abfragen über @ und danach über SWAP9 die HD mit Adr.#9 aktivieren, da #8 bereits ein SD2IEC ist.


    Starte ich jetzt mein connect64, dann wird automatisch wieder die HD angemeldet und Laufwerk #8 blinkt rot und zeigt einen Fehler. Die Disk wird aus dem ZIP ausgeworfen.


    connect64 nochmal starten und jetzt wird wieder das ZIP aktiviert, ohne das ich irgendeine Taste oder den Konfigurationsmodus starten muss (muss nur eine Disk einlegen).


    Nehme ich SWAP9 raus, dann hat die HD wieder die Adr.#8. Ich denke mal irgendwo wird eine falsche Geräteadresse zugeordnet.


    Evtl. funktioniert das bei mir deshalb nicht weil hier eine Vielzahl an Geräten am Bus hängt. Aber an sich heißt das aktuell einmal über HD-ZIP die HD "Konfigurieren" und auf SWAP9 belassen, danach geht es ohne Tastendrückerei.


    Für MegaPatch wird das aber sicher nichts, mir ist das zu viel fummelei an jetzt fertigem Code. Das Risiko das danach was anderes nicht mehr geht ist mir zu groß.


    Die nächsten Tage lege ich das zur Seite, dann schaue ich mir den Code nochmal an und ggf. dann in einem neuen Thread weiterzumachen.

  • Nicht mehr nötig!!! Es läuft :thumbsup:

    Ich hab das HDRAM analysiert, nachdem HD-ZIP das ZIP-Laufwerk angemeldet hat. Da lag dann ab $8E00 die "copyright cmd 89"-Datei im RAM der HD. Nach einem RESET war die aber wieder weg.

    Ich hab dann zuerst versucht die Daten zuvor wieder ins RAM der HD zu schreiben. Danach hat es dann problemlos funktioniert.


    :idea:Und dann hat es "KLICK" gemacht. Ich bin fälschlicherweise davon ausgegangen das die "copyright cmd 89"-Datei nur auf dem ZIP oder den externen Laufwerken vorhanden sein muss. Nein, die muss auch auf der HD auf der Startpartition liegen (egal an welcher Position im Hauptverzeichnis).


    Nachdem ich die Datei auf die HD kopiert habe läuft jetzt alles run. :)


    Die Datei wird beim einschalten der HD dann in das HD-RAM geladen, dann kann ZP/SCSI-Connect damit arbeiten. :lol23::puhh:


    Damit funktioniert die SCSI-Connect Version für den 64er hier schon besser als das HD-ZIP-Programm.


    Jetzt ist aber rum :weihnachten:

  • Gerade nach Hause gekommen...........


    Super, dass Du raus gefunden hast, wie das Programm ohne “Tastendrücken“ arbeitet. :thumbup:


    Habe damals versäumt / vergessen Herbert zu fragen, wie das ganze funktioniert (wenn ich die Erklärung dann verstanden hätte). Hatte sich früher nämlich keiner vorstellen können, dass sowas überhaupt geht.


    Und jetzt hast Du es sogar für den 64er zum laufen gebracht.:ilikeit:

    Das Programm würde mich auch interessieren.:whistling:


    Frohe Weihnachten,

    Jojo

  • Das Programm würde mich auch interessieren. :whistling:

    Stelle ich in jedem Fall noch irgendwo online... aktuell hab ich es fertig dokumentiert. Die Doku zu den SCSI-Befehlen hab ich im übrigen vom "SCSI Reference Manual" das ich bei Seagate gefunden habe. Das war auf englisch, daher hab ich das auch so 1:1 übernommen.


    Da hat irgendwer sicherlich das Binary später nochmal modifiziert. Da sind Programmreste drin, die so nicht mehr genutzt werden. Einige Funktionen sind auch (aktuell) völlig unlogisch, da läßt sich noch was an Platz einsparen. Ich lass das aber erstmal so. Die 128-Version assembliert daher noch 1:1 zum Original. Für den GEOS-Port wird eh einiges anders.


    Es gibt noch Routinen die was für die SCPU/RAMLink anpassen. Da wird direkt im undokumentierten RAM der Geräte gearbeitet. Was da genau passiert kann ich nicht sagen. Spielt für einen GEOS-Port aber auch keine Rolle, da der Code dafür dann eh obsolete sein dürfte.


    Die SCP64 schließe ich nochmal an... die RAMLink... mit aufschrauben, Clip anstecken usw... eher nicht. Könnte also sein das die 64er-Version mit der RAMLink rumzickt. Ich sehe da aber keinen Grund dafür da ja alles über den seriellen Bus läuft. Falls doch kann ich das auch rausnehmen.


    Die ganze Testerei hatte aber auch einen Vorteil. Die "copyright cmd 89"-Datei braucht es also nicht wirklich auf der Startpartition: Man kann die Daten auch über das Programm in das HD-RAM schreiben, sind ja nur knapp 250Bytes. Würde ich vermutlich unter GEOS auch so mit einbauen.

    Nachdem HD-ZIP-Programm war die copyright-Datei ja im HD-RAM. Vermutlich weil beim abschalten ein RESET ausgeführt wird und die Datei dann vom ZIP nachgeladen wird. Deshalb hatte mein Connect64 nach nach HD-ZIP funktioniert.


    Die Datei müsste m.M. nach aber gar nicht auf jedem SCSI-Laufwerk verfügbar sein, nur auf dem das beim einschalten/Reset standardmäßig aktiv ist. Da ich die ZIP-Disketten aber nicht mehr neu beschreiben könnte lasse ich das mal so. Und auf der HD/SCSI2SD ist das jetzt der Fall.


    Ich werde die erste 64er Version die nächsten Tage noch etwas testen bevor das inkl. SourceCode online geht... also etwas Geduld... gleiches gilt für den GEOS-Port ;)

  • Ohne Gewähr, aber hier ein kleines BASIC-Programm das auf ein angegebenes SCSI-Gerät wechselt, eben mal so programmiert und getestet... :)


    Wenn man weiß was man machen muss, ist das tauschen echt einfach, zumindest hier bei meiner Gerätekonfiguration. Die ZIP-Disk liegt bereits im Laufwerk und funktioniert danach wie die HD.


    Das Programm besitzt keine Fehlerprüfung! Es testet das Laufwerk auch nicht auf Kompatibilität. Es ist nur ein "Proof-of-Concept"!!! Benutzung auf eigene Gefahr.

    Das Programm erwartet auf der Startpartition auch die Autostart-Datei "copyright cmd 89". Die Datei muss durch RESET/Einschalten der HD auch geladen worden sein, zur Not HD nochmal aus- und wieder einschalten. Ist auf dem D64 enthalten.


    Das Programm setzt ein HD-BootROM V2.80 voraus. Wer eine ältere Version hat... die AutoStart-Datei prüft auf "2.80" und bringt die HD zum leuchten wie einen Weihnachtsbaum falls dem nicht so ist.


    Nach dem Start die Sicherheitsabfrage bestätigen...

    CMD-HD-Laufwerksadresse eingeben (8-29).

    Neue SCSI-ID eingeben (0-9)...

    Fertig :)


    P.S. Ungetestet, aber die CMD-HD-Adresse sollte nicht "getauscht" sein, also weder über GEOS noch über die SWAP8/9-Tasten.


    Mit Hilfe des Programms sollte das einbinden in eigene GEOS-Programme möglich sein.

  • Wie immer, bin ich wiedermal verwirrt.^^


    Kenn die HD/ZIP-Programme der Bachmänner und SCSI-Light von Pusti64.


    HD-ZIP (Bachmänner) dient zum umschalten von SCSI-Geräten. Funktioniert im Basicmodus und gibt's für C64 und C128 (80Z).

    Bedingt aber das aktivieren des "Installationsmodus" der HD.

    Nach dem Umschalten wird auf das gewählte Gerät zugegriffen, bis zum Reset oder ausschalten.


    SCSI-Manager (Bachmänner) dient zum sichern von Partitionen auf einem zweiten SCSI-Gerät, z.B. ZIP.

    Gibt's nur für den C128 (64kB VDC) und läuft nur unter Wheels-128 richtig.


    SCSI-Light (Pusti64) dient zum umschalten von SCSI-Geräten, läuft unter GEOS/MP 3 64 und 128.

    Die V1.1 hab ich noch nicht versucht.


    Das in Entwicklung befindliche Programm soll das Umschalten von SCSI-Geräten unter MP3 (hoffentlich auch 128) ermöglichen, ohne das an der HD herum gedrückt werden muss?

    Oder ist sogar (in weiter, weiter Entfernung) angedacht Partitionen zu sichern?


    Gruss C=Mac.

  • Das in Entwicklung befindliche Programm soll das Umschalten von SCSI-Geräten unter MP3 (hoffentlich auch 128) ermöglichen, ohne das an der HD herum gedrückt werden muss

    Genau das...


    Ich hatte nur das SCSI-Connect-Tool, was aber nur für den 128er funktioniert. Das geht hier ja mal gar nicht :D Andere Tools hab ich nicht getestet...


    P.S. Sollte das Tool von Pusti64 ohne Konfigurationsmodus auskommen, auch OK. Aber mir ging es auch um das SCSI-Connect-Tool, also ohne GEOS. Und das BASIC-Tool ist die Simplifikation davon.


    Oder ist sogar (in weiter, weiter Entfernung) angedacht Partitionen zu sichern?

    Dazu müsste ein Backup-Programm nicht nur die CMD-Partition sondern auch das SCSI-Gerät wechseln. Da es ohne Konfigurationsmodus auskommt, sollte das möglich sein. Freiwillige vor! ;)

  • Anbei ein D64 mit den verschiedenen Versionen von SCSIConnect für den C64 und C128:


    SCSI-Connect 1.5 ist das Original, aber neu assembliert. Ist aber 1:1 Binärkompatibel zum Original.

    SCSI-Connect64 ist die entsprechende Variante für den 64er.


    Beide Versionen benötigen die AutoStart-Datei "copyright cmd 89" auf den Standard-Partitionen der CMDHD und allen weiteren SCSI-Geräten. Die Datei setzt ein CMD-HD-BootROM v2.80 voraus.


    SCSI-Connect128+ und SCSI-Connect64+

    Bei den PLUS-Varianten hab ich die AutoStart-Datei mit eingebaut. Die wird dann vor dem wechseln im RAM der CMD-HD installiert.

    Auch wenn damit theoretisch auf die AutoStart-Datei "copyright cmd 89" verzichtet werden könnte, würde ich die Dateien behalten. Andere Programme funktionieren sonst ggf. nicht mehr. Wenn man die Dateien auf den Standardpartitionen behält, dann ist es egal welche Version man verwendet.


    Alle Versionen kommen ohne den Konfigurationsmodus der CMD-HD aus.


    Damit ist die Grundlagenermittlung für mich abgeschlossen und ich kann mir überlegen ob ich da noch ein extra Tool bastle (gibt ja schon andere...) oder das in geoDirSelect bzw. GeoDesk64 einbaue.


    SourceCode gibts hier. Plaintext hier.

    Der SourceCode zur AutoStart-Datei "copyright cmd 89" ist aber nur rudimentär kommentiert, da hier interne Funktionen und Adressen der HD genutzt werden. Dazu hab ich keine weiteren Angaben.

  • Danke, werd ich testen sobald ich dazu komme.


    Beim SCSI-Light von Pusti64 muss der Konfigurationsmodus eingeschaltet werden.



    Jetzt müsste noch der SCSI-Manager an den C64 bzw. MP3-64 angepasst werden, gibt's ja nur für den C128 und unter MP3-128 läuft er nicht richtig.

    Dann würde auch ein Copy-Programm für HD (SD) und ZIP existieren. ^^



    Mal eine andere Frage, so aus reiner Neugier.

    Wäre es technisch machbar, dass Laufwerk C die interne HD (SD) und Laufwerk D das externe ZIP wären?

    Da ja beide LfW die gleiche serielle ID haben.


    Gruss C=Mac.