Geos 2-x Autostart

Es gibt 17 Antworten in diesem Thema, welches 3.764 mal aufgerufen wurde. Der letzte Beitrag (29. Mai 2017 um 12:21) ist von Martin_75.

  • Ist es möglich beim Start von Geos ein Programm automatisch auszuführen ?

    Ein Programm welches man normalerweise durch einen Doppelklick startet, soll beim booten von Geos 1x ausgeführt werden.

  • Ist es möglich beim Start von Geos ein Programm automatisch auszuführen ?

    Ja, dafür exestiert der Filetype "selbstausführend" (Auto_Exec). Das Konfigurieren von Geos z.B. ist so ein Programm.

    Wenn Du konkreter wirst, um welches Programm es geht, kann ich auch entsprechend konkreter antworten ... :wink: .

    Gruß
    Werner

  • Ich greife Werner mal vor

    Ich Empfehle AutoLoader von Jim Collette. Die Bedienung ist ganz Einfach.Auf die Startpartion kopieren
    und über "Info" den Programmnamen Eingeben (da wo batch_copy steht)

  • Ich Empfehle AutoLoader von Jim Collette

    Ja, das kann aber auch zu Problemen führen :wink: .

    Während die selbststartenden Programme beim Booten geladen werden, steht weniger Speicher zur Verfügung. Ab Adresse $5000 steht die Routine (ResetHandle), die den korrekten Ablauf der selbststartenden Programme steuert. Das heißt:

    Das Programm selbst, darf nicht den Speicherbereich ab $5000 in irgendeiner Form (dorthin geladen werden, dort etwas speichern, ...) benutzen.

    Wenn das Programm diese Voraussetzung erfüllt, reicht es aus 2 Bytes (GEOS-Filetype) zu ändern. Der steht einmal im Directory-Eintrag (Offset 22 ($16)) und einmal im InfoBlock (Offset 69 ($45)).

    Gruß
    Werner

  • Ich wollte das Programm NewID automatisch starten lassen.

    Gibt es ein Tool zum aendern des Filetyps, Infoblocks bzw. des Directoryeintrags?

  • Ich wollte das Programm NewID automatisch starten lassen.

    Hast Du das Programm per Doppelklick gestartet schon länger im Einsatz?

    Ich frage, weil es meiner Meinung nach nicht funktionieren kann (siehe hier: Bitte melde dich an, um diesen Link zu sehen. und folgende).
    Es dürfte nur funktionieren, wenn zufällig die ersten beiden Ziffern nach dem $ im InfoBlock identisch sind mit der alten (auf Disk gespeicherten) Seriennummer. Trifft das nicht zu, sollte es bald nach dem Ausführen des Programms zum Absturz von Geos kommen....

    GetID zum Auslesen der Seriennummer funktioniert korrekt.

    Deshalb hänge ich hier mal 2 Archive an. Das erste enthält ein D64, das neben dem geänderten NewID (es startet jetzt automatisch beim Booten, Du mußt nur noch die Seriennummer im Info-Block eintragen) das von mir stammende Programm , dass auf den obigen Umstand angepasst wurde.
    Das zweite Archiv enhält die beiden Disketten "The Best of GUSS". Auf der 2. Disk hier ist ebenfalls ein Programm zum Ändern der Seriennummer (von Falk Rehwagen) enthalten, das ebenfalls korrekt funktioniert. Die anderen enthalten Programme sind auch recht interessant ... :wink:

    Gruß
    Werner

  • Mit Autoloader hat es schon mal funktioniert.
    Die anderen Programme von Werner konnte ich noch nicht testen..

    Werner, kann man den Absturz irgendwie provozieren?

    Die alte ID ist 0000 die neue 1362.

  • Werner, kann man den Absturz irgendwie provozieren?

    Normalerweise wird die Routine zum Aufrufen von Hilfsmitteln "sabotiert". Das sind die Programme, die normalerweise im Menü "Geos" innerhalb eines Programms aufgeführt werden (z.B. FotoManager).
    Rufe mal so ein Hilfsmittel über den geos-Menüpunkt auf ......


    Ich habe es probiert, NewID kennt die 3. Adresse nicht, die geändert werden muß. Es schaut nur in die Routine im Kernel, die die Seriennummer ausliest. Da stehen nur 2 Adressen.

    Die alte ID ist 0000

    Wie geht das denn????
    0000 heißt, die Diskette ist nicht installiert :) und das kann eigentlich nicht vorkommen....

    Gruß
    Werner

  • In der Tat, bei Seriennummer 0000 würde ich mir auch Sorgen machen. Seit Geos 1.3 kann man die zwar durch Hacken einstellen(*), aber pratisch App mit Seriennummernprüfung kommt damit klar.

    (*) Das Kennzeichen, ob eine Boot-Disk bereits installiert ist, ist ein extra-Byte.

    ---
    Meine Github-Projekte: Bitte melde dich an, um diesen Link zu sehen. Vice 3.2 Improved: Bitte melde dich an, um diesen Link zu sehen.
    1541 Ultimate II / Ultimate 64 Firmware Releases: Bitte melde dich an, um diesen Link zu sehen.
    1541 Ultimate II Update instructions: Bitte melde dich an, um diesen Link zu sehen.

    2 Mal editiert, zuletzt von markusC64 (24. Mai 2017 um 18:00)

  • ... in der Tat, das meine ich ...

    ---
    Meine Github-Projekte: Bitte melde dich an, um diesen Link zu sehen. Vice 3.2 Improved: Bitte melde dich an, um diesen Link zu sehen.
    1541 Ultimate II / Ultimate 64 Firmware Releases: Bitte melde dich an, um diesen Link zu sehen.
    1541 Ultimate II Update instructions: Bitte melde dich an, um diesen Link zu sehen.

  • Das ist die bootdisk von der 64hdd seite
    eigentlich sollte sie mit dem key-in verfahren die ID uebernehmen... aber dass klappt nicht so ganz.

  • Also wenn man mit der Bootdisk von 64hdd bootet kommt erstmal eine Fehlermeldung das diese nicht ge-keyed ist (also kein Key drauf gespeichert ist)

    Man muss nun die Originalgeosdiskette booten und das key-in Programm starten.

    Dann sollte der Key auf die 64hdd-Bootdisk gespeichert werden.

    Entweder das klappt nicht, oder nur mit einer bestimmten Geos version.

    Wo speichert Geos die ID auf der Diskette ? Gibt es da Unterschiede zwischen der deutschen und der englischen Version ?
    Möglicherweise sucht das Key-in Programm an der falschen Stelle.

    Nach dem das Key-in Programm gelaufen ist, bootet die Bootdiskette aber sauber durch.
    Vergleiche ich aber die beiden D64 vor und nach dem keyen, ist nur 1 Byte geändert worden.

    Möglicherweise funktioniert das speichern des Keys nicht, oder key-in liest die ID falsch aus (0000) und speichert ihn als 0000 ab , wo vorher auch schon 0000 stand, deshalb keine Änderung im Image.

    Hoffe ihr könnt mir soweit folgen...

  • Hallo Werner, dein umgebautes NewID funktioniert.
    Die anderen beiden Programme leider nicht, sie melden einen Kernel Checksum Error.

    Ich habe gestern aus geowrite und geopaint heraus den Rechner, PhotoManager, TextManager, ShowFont und den Notizblock aufgerufen, auch mehrmals.
    Keine Abstuerze, NewID scheint zu klappen, trotzdem waere mir lieber das Key-in programm wuerde den Key richtig uebernehmen.

  • Hallo Werner, dein umgebautes NewID funktioniert.

    Freut mich zu hören.

    Die anderen beiden Programme leider nicht, sie melden einen Kernel Checksum Error.

    Wer (welches Programm) meckert da? Zumindest das Programm, welches ich zue Änderung der Seriennummer programiert habe, enthält keinerlei Checksummen-Prüfung. Es ändert einfach die 3 nötigen Bytes im Speicher des C64/128. Auf Disk/Dxx-Image wird nichts geschrieben.

    64HDD kenne ich nicht weiter. Habe mir mal die Anleitung heruntergeladen. Da steht was davon ein D64 einer originalen Bootdiskette zu erstellen. Schön und gut. Aber ein solches D64 funktioniert dann nicht mehr auf echter Hardware. Soweit ich weiss, kann sowas nur das SD2IEC...

    Keine Abstuerze, NewID scheint zu klappen, trotzdem waere mir lieber das Key-in programm wuerde den Key richtig uebernehmen.

    Das sagt mir, das 64HDD Geos-Kernel ist verändert gegenüber dem Original (Thema: Kopierschutz). Soweit ich weiss, ist das aber nirgendwo dokumentiert. Möglicherweise ist es ein Problem zwischen US und deutschem Geos oder unterschiedlichen Verschlüsselungs-Werten, oder, oder ....

    Da kann ich leider nicht helfen.

    Gruß
    Werner

  • Ja der Kernel von 64Hdd wurde angepasst.

    Aber ich habe eine andere Lösung gefunden:
    Es gibt eine Pre-keyed Bootdiskette bei der die ID diejenige ist, welche für die freie Geos-Version benötigt wird.
    Ich habe mit dem Hexeditor die Adresse herausgefunden, und mit freundlicher Hilfe aus dem Forum wurde mir gesagt dass diese Adresse im Track18 Sektor0 liegt.
    Diesen haben ich dann abgeändert auf meine ID.
    Also quasi dass was das Keying-Programm macht per Hand ins D64 geschrieben.

    Nun bootet 64hd gleich mit meinem Key. New ID ist somit überfluessig.

    Achja, den Checksum Error meldet das Programm vom der Best of Guss GT123.

    Werner, dein Programm tut irgendwie gar nichts, man macht einen Doppelklick und es wird nur der DeskTop neu aufgebaut.
    Soweit ich die Anleitung verstanden habe müsste ein Fenster zum Key eingeben auftauchen ?

  • Nun bootet 64hd gleich mit meinem Key. New ID ist somit überfluessig.

    Glückwunsch.

    Ich gehe mal davon aus, es ist das "slow"-Image von Bitte melde dich an, um diesen Link zu sehen. , welches dann aber US-Geos ist. Das Ganze ist zumindest fragwürdig. Im "normalen" Geos steht im besagten Track 18 Sektor 0 an Adresse $bd der Type der Diskette: $42-Systemdiskette, $50-Hauptdiskette, $00-Arbeitsdiskette. Dieser Wert wird vom originalen Geos-Desktop ausgewertet und läßt dann einige Funktionen nicht zu (das gilt für die originalen Geos V2.0 Disketten). Die folgenden 2 Bytes haben mit der Installation zu tun, Da steht aber definitiv nicht die Seriennummer im Klartext. Wenn, dann ist sie verschlüsselt.....


    Werner, dein Programm tut irgendwie gar nichts,

    Was im Endeffekt sogar gut ist ... :bgdev

    Mein Programm prüft am Anfang, ob es in Wheels oder MegaPatch gestartet wurde. Nur wenn dieser Test positiv ausfällt, wird das Programm sofort wieder verlassen. Also meint das Programm das das 64HDD-Geos entweder Wheels oder MegaPatch ist. Deshalb tut es nichts.
    Im normalen Geos 64/128 funktioniert mein Programm :wink: .

    Die Änderungen im 64HDD-Geos scheinen also noch umfangreicher zu sein, als ich bisher angenommen habe .......

    Gruß
    Werner

  • Leider gibt es den Geos-Kernel von 64HDD nur in der US Version.
    Es fehlen also alle Umlaute in den Menues.

    Der Kernel wurde so veraendert, dass alle Aufrufe die normalerweise an die Floppy gehen auf 64hdd umgeleitet werden.
    (Vereinfacht gesagt)