Beiträge von Mac Bacon im Thema „ID-Umstellung“

    Wie wäre es denn beispielsweise eine 1581 ebenfalls mit ID8 anzuschliessen und die IEC-Dateinleitung Leitung ATN umschaltbar zu machen?

    Nach der Modifikation beträgt die Wahrscheinlichkeit, dass man mal beide Laufwerke gleichzeitig am Bus benötigt, 1.

    Die Kernal-Funktionen unterstützen doch eh Geräteadressen bis 30 (deshalb schrub ich "das Maximum, das der Bus erlaubt") - ich bezog mich auf alte Anwendungsprogramme, welche manchmal nur Gerät 8 bzw. 8 oder 9 erlauben: Wenn man die fixt, kann man es gleich richtig machen. Kernal und DOS haben mit Adressen bis 30 eh keine Probleme.

    Wozu ? Ich finde die CMD-default-Adresse Bitte melde dich an, um diesen Link zu sehen. absolut sinnvoll und ausreichend.
    Und mal ehrlich: wer hat denn mehr als 5 Disk-Geräte am C64 gleichzeitig angeschlossen ( von dubiosen Copy-Parties mal abgesehn :whistling: )

    Klar, wirklich benötigen wird die Adresse 30 hoffentlich niemand. Aber wenn man eh schon Arbeit hineinsteckt, um die Beschränkungen alter Software aufzuheben, kann man auch gleich Nägel mit Köpfen machen und das Maximum unterstützen, was der Bus erlaubt. Wenn man alte Limits beseitigt, braucht man wirklich keine neuen einbauen... ^^

    EDIT: Und wenn auf der nächsten Party jemand mit einem SD2IEC auf ID 27 herumgeht, "weil diese Nummer bisher auf jedem System frei war", ärgert man sich schwarz, wenn die geänderte Software nicht damit umgehen kann.

    Wodurch ergibt sich der Vorteil wenn ein Device die ID zwischendrin ändert? Wenn da gerade offene Kanäle sind dann ist das evtl nicht gut.

    Zitat von alter CMD-Werbeprospekt

    SWAP Feature
    The SWAP feature, found on all CMD devices, has proven to be a highly valuable and convenient function of CMD DOS. Each CMD device has a front panel SWAP switch that allows you to instantly change its device number to 8 or 9, and at the same time, swap the CMD's device number with that of any existing device numbered 8 or 9. SWAP is most useful when a program can only be loaded from device 8 or 9. If your CMD device is normally set to another device number (12 for example), you can still easily load these programs by using the SWAP function. The SWAP function can also be useful even if a copy-protected program cannot be loaded from a CMD device. In such case, you would first load the offending program from your 1541 or 1571 (device 8 ) and then SWAP the CMD device to device 8 after the program loads. This allows you to store the data files written by the program on your CMD device. SWAP can also be used even if you do not already have a device 8 or 9 on the serial bus. In addition, CMD DOS also includes a series of software SWAP commands which can be sent from within programs to perform the device number swapping.

    Mit anderen Worten, es ist nützlich für hochpreisige, kopiergeschützte, ungefixte Programme. ;)

    EDIT: Unterm Strich wäre es vielleicht einfacher, die verwendete Software so zu fixen, dass sie mit IDs bis 30 klarkommt. :whistling:

    Klar, die CMD-Drives bekommen es ja schließlich auch hin. ;)
    Bei einem Zusatzgerät entsteht dann aber noch ein ganz neues Problem: Auf welches Laufwerk bezieht sich die durch Knopfdruck ausgelöste Aktion überhaupt? Man könnte die Aktion definieren als "vertausche die IDs der aktuellen Laufwerke 8 und 9" - aber was, wenn man mal 8 und 10 vertauschen will?
    Bei den CMD-Geräten ist das einfach, weil dort der Button direkt am Laufwerk sitzt - die Bedeutung lautet also: "tausch die ID von diesem Gerät mit Nummer 8". Man könnte natürlich ein Extra-Gerät mit 22 Buttons bauen (die sich auf die Geräte 9 bis 30 beziehen), aber so intuitiv benutzbar wie ein Button direkt am Laufwerk wird das nie.

    Natürlich kann man das. So wie ich die ursprüngliche Frage verstehe, geht es aber darum, dem Laufwerk einen Swap-Button zu verpassen. Gegenüber einer Softwarelösung auf dem Rechner hätte das den Vorteil, dass man die IDs auch ändern kann, während der Rechner mit einem Spiel/GEOS/whatever beschäftigt ist.

    Das ist nicht ganz so einfach. Eine echte 1541/71/81 liest in ihrer Reset-Prozedur den Zustand zweier I/O-Pins (die, an denen die DIPs hängen), errechnet daraus die Werte der beiden für sie interessanten Bus-Kommandos (TALK und LISTEN), und speichert diese Werte in der Zeropage. Es bringt also rein gar nichts, zur Laufzeit die I/O-Pins zu beeinflussen, denn die werden im Betrieb nie wieder abgefragt.
    Um also zur Laufzeit die Geräteadresse zu ändern, müssten die beiden Zeropageadressen mit den entsprechenden neuen Werten beschrieben werden. Ganz ohne DOS-Unterstützung - also rein durch externe Hardware - ist das somit eigentlich nur möglich, wenn man gleichzeitig einen Reset auslöst.
    Will man das ohne Reset hinbekommen, also so wie bei CMD-Geräten, muss man schon das DOS modifizieren.

    Die Zusatzfunktion, dass auch das entsprechende andere Gerät automatisch den umgekehrten Tausch machen soll, ist wiederum noch einige Ebenen schwieriger: denn dafür muss das Laufwerk als Busmaster auftreten können, was eine 1541/71/81 nicht kann.