SD2PET Menü - Navigation durch Verzeichnisse und Image Dateien

  • Oder man ist schon sehr früh daran gewöhnt, romable Code zu schreiben. Dann kommt man nicht auf den Blödsinn, sowas ohne Not zu verwenden.

    Das ist einfach nur schlechter Programmierstil. Oder man hat die indirekte bzw. indizierte Adressierung des 6502 nicht verstanden.

    Das einzige, wo ich das akzeptiere ist, wenn man irgendwo die letzte Mikrosekunde rausholen will. Aber wann braucht man das schon?

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • Das einzige, wo ich das akzeptiere ist, wenn man irgendwo die letzte Mikrosekunde rausholen will. Aber wann braucht man das schon?

    CHRGET() und ChRGOT() Routine.


    Das Kernstück des BASIC in allen Commodore Kisterln

  • Das einzige, wo ich das akzeptiere ist, wenn man irgendwo die letzte Mikrosekunde rausholen will. Aber wann braucht man das schon?

    CHRGET() und ChRGOT() Routine.

    Das Kernstück des BASIC in allen Commodore Kisterln

    Jo, das sind solche Stellen, wo ich das akzeptiere. Ist schneller und spart 1 Byte kostbaren Zeropage-Speicher und das Y-Register bleibt erhalten. ;)

    Das sind Optimierungen an kritischen Stellen. Genau wie der Trick mit dem BIT-Befehl.

    Das entschuldigt nicht, wenn man sowas standardmäßig verwendet. :mrgreen:

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • Nachdem ich ausgeschlagen habe, habe ich nun Zeit mal zu posten was ich gestern Abend gebastelt habe.


    TAB = Wechseln des Fenster Fokus.

    C = kopieren der Datei. Ist links markiert, wird nach rechts kopiert und umgekehrt.

    S = Loeschen der markierten Datei.

    ENTER = Starten des Programms.

    Q = Quit. ich will nicht mehr.

    CSR HOCH / RUNTER = hoch und runter blaettern


    Ich denke mal #diddl, dass es das sein koennte was du haben wolltest. Oder ?




    Beste Gruesse, Oldie

    Alles geht - Nichts muß

  • Nö.

    Unglaublich.

    Das Gehört (zumindest für mich) als erstes Programm auf jede Diskette mit diversen Programmen.


    Auf meinen alten Disketten habe ich noch eine andere Version des LOADER gefunden.


    Es kommt keine Copyright Meldung.

    Stattdessen kommt eine kurze Hilfe Zeile.


    Der Code ist länger um 2 Blöcke.

    Es dürfte sich NICHT um eine gepatchte Version handeln.

    Wahrscheinlich eine verbesserte Version des originalen Autor.


    Es sind Prüfungen auf die Kernel Version drin.

    Je nach Kernel wird eine eigene JMP Tabelle erstellt.

    Wahrscheinlich läuft dieses Tool auf jedem PET.


    Dazu werden die System Vektoren überprüft.

    Es wird auch die CHRGET Routine in der ZP überprüft.

    Das Programm fragt, wenn etwas gepatched ist, ob die originalen Werte hergestellt werden sollen.


    Außerdem bietet diese Version statt RUN einen SYS Befehl an, wenn das Programm kein BASIC ist.

    Mit ENTER wird automatisch gestartet (mit RUN oder SYS).

    Mit Shift ENTER wird nur geladen.



    Bin fast fertig mit dekompilieren / analysieren des Code.

    Würde das gerne auf EPROM brennen für den $9000 Bereich.

    Leider geht das nicht wegen der Sauereien (selbst modifizierender Code).



    Ich werde drei Modifikationen einbauen:

    • CATALOG zeigt momentan nur PRG ---> soll PRG und DIR anzeigen
    • ENTER bei einem Unterverzeichnis soll ein CD:xx Kommando senden
    • Shift HOME an der ersten Zeile soll ein CD^ Kommand senden
    • Offizieller Beitrag

    Wie wäre es mit einer ROM-Version, die sich beim Start ins RAM kopiert, und dann dort ausgeführt wird?

    Ansonsten müsste man den Code halt so ändern, daß er aus dem ROM laufen würde.

    Wäre natürlich in sofern schöner, daß man das dann für die Verzeichnisnavigation nutzen könnte, ohne das aktuell geladene Programm rauszuwerfen.


    Richtig klasse wäre es dann noch, das auf Tastenkombination zu starten.

    Per gepatchtem Editor-ROM auf SHIFT-RUN/STOP, statt dL"*/run, oder eine andere Tastenkombination, die bislang ohne Funktion ist.

    • Offizieller Beitrag

    Ich wage mal zu behaupten, daß die Leute, die selbstmodifizierenden Code verteufeln, entweder nicht gelernt haben, auf einem System mit eingeschränkten Resourcen zu programmieren, oder es einfach nicht drauf haben. ;)

    Genau genommen ist das hohe Kunst und war früher bei der Entwicklung von Betriebssystemen und dazugehörigen Bootloadern der einzig schlüssige Weg. Warum Code mitschleppen den man nur einmal braucht.

  • Ich wage mal zu behaupten, daß die Leute, die selbstmodifizierenden Code verteufeln, entweder nicht gelernt haben, auf einem System mit eingeschränkten Resourcen zu programmieren, oder es einfach nicht drauf haben. ;)

    Genau genommen ist das hohe Kunst und war früher bei der Entwicklung von Betriebssystemen und dazugehörigen Bootloadern der einzig schlüssige Weg. Warum Code mitschleppen den man nur einmal braucht.


    Es gibt gaaanz wenig Ausnahmen, wo man sowas tolerieren kann.

    Heutzutage wird sowas zum Glück vom OS verboten, CODE Segmente sind ausnahmslos execute-only, die kann man normal nicht mal lesend zugreifen.


    Es ist nicht notwendig, auch nicht bei einer 6502.

    • Offizieller Beitrag

    Genau genommen nutzt das jedes OS aus der Zeit. Was man heute macht spielt jetzt in der Retroszene noch keine Rolle.

    Und ja, ich bin da Beratungsresistent weil ich für einen J11 und auch für einen 6502 ein OS programmieren durfte.

    Wer auf Retrohardware sowas nutzt hat meinen Respekt.

  • Ich wage mal zu behaupten, daß die Leute, die selbstmodifizierenden Code verteufeln, entweder nicht gelernt haben, auf einem System mit eingeschränkten Resourcen zu programmieren, oder es einfach nicht drauf haben. ;)

    Genau genommen ist das hohe Kunst und war früher bei der Entwicklung von Betriebssystemen und dazugehörigen Bootloadern der einzig schlüssige Weg. Warum Code mitschleppen den man nur einmal braucht.

    Betriebssysteme die im RAM laufen. Sonst wird's ganz schwierig. :mrgreen:

    Und da die Entwickler von ROM-Routinen das auch platzsparend hinbekommen, gehe ich mal davon aus, dass auch notorische Code-Midifizierer das hinbekommen würden.


    Gerade der 6502 ist mit seiner Zeropage und seinen Adressierungsarten optimiert dafür ohne selbstmodifizierenden Code auszukommen. Das ist doch gerade retro, wenn man den 6502 so programmiert, wie es von den Designern gedacht war. Es ist doch irgendwie schade, wenn man das nicht nutzt, worüber die sich vermutlich wochen- oder monatelang den Kopf zerbrochen haben. Für mich ist das die hohe Kunst einen Controller und dessen Befehlssatz voll auszunutzen.


    Wenn man trickst weil einem ein paar Bytes oder ein paar Millisekunden fehlen, ist das alles völlig in Ordnung. Mir ging es darum, wenn man ohne Not selbstmodifizierenden Code schreibt. Weil man es nicht besser weiß.

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."