Printfox am 1581 bzw auf d81

Es gibt 79 Antworten in diesem Thema, welches 8.526 mal aufgerufen wurde. Der letzte Beitrag (1. November 2023 um 09:56) ist von ClausS.

  • Ich hätte versucht, die Printfox Ladedatei (die mit 1 Block) mal so zu ändern, dass statt Device Bitte melde dich an, um diesen Link zu sehen. die letzt verwendete Devicenummer verwendet wird.

    Der Wert der in $BA steht (also zB 9)

    (links meine Änderung, rechts das ursprüngliche Programm)

    Bitte melde dich an, um diesen Anhang zu sehen.

    Allerdings stürzt Vice dann bei $031D ab (Main CPU Jam).

    Dort ist aber eigentlich garnix.

    Bitte melde dich an, um diesen Anhang zu sehen.

    Was mach ich denn falsch?

    Wenn das funktioniert hätte, hätt ich mich auch durch das Hauptprogramm duchgewühlt und das angepasst.

    Danke!

    Dateien

    YouTube Kanäle über Basic, den C128 und den VDC-Chip
    Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen.
    Commodore 8-Bit Projekte
    auf Bitte melde dich an, um diesen Link zu sehen.
    Bitte melde dich an, um diesen Link zu sehen. zu Commodore 8-bit Hardware
    auf printables.com
  • hier mal mein Image, womit ich lange gearbeitet und gedruckt habe ...

    Dateien

    Viele Grüße,
    GI-Joe
    Bitte melde dich an, um diesen Link zu sehen. * Bitte melde dich an, um diesen Link zu sehen. * Bitte melde dich an, um diesen Link zu sehen. * Bitte melde dich an, um diesen Link zu sehen. * Bitte melde dich an, um diesen Link zu sehen. * Bitte melde dich an, um diesen Link zu sehen.

  • hier noch eine Kurzreferenz für Printfox aus der 64er....

    Bilder

    Viele Grüße,
    GI-Joe
    Bitte melde dich an, um diesen Link zu sehen. * Bitte melde dich an, um diesen Link zu sehen. * Bitte melde dich an, um diesen Link zu sehen. * Bitte melde dich an, um diesen Link zu sehen. * Bitte melde dich an, um diesen Link zu sehen. * Bitte melde dich an, um diesen Link zu sehen.

  • Ich hätte versucht, die Printfox Ladedatei (die mit 1 Block) mal so zu ändern, dass statt Device Bitte melde dich an, um diesen Link zu sehen. die letzt verwendete Devicenummer verwendet wird.

    Diese Datei lädt die im Directory unmittelbar folgende Datei mit dem Namen "----------------" (die also so aussieht wie ein Trennstrich) und führt sie aus. Ist die bei dir vorhanden?

    Arndt

    GoDot C64 Image Processing
    Bitte melde dich an, um diesen Link zu sehen. - Bitte melde dich an, um diesen Link zu sehen. - Bitte melde dich an, um diesen Link zu sehen.
    Bitte melde dich an, um diesen Link zu sehen. - Bitte melde dich an, um diesen Link zu sehen. - Bitte melde dich an, um diesen Link zu sehen.

  • Ich hätte versucht, die Printfox Ladedatei (die mit 1 Block) mal so zu ändern, dass statt Device Bitte melde dich an, um diesen Link zu sehen. die letzt verwendete Devicenummer verwendet wird.

    Diese Datei lädt die im Directory unmittelbar folgende Datei mit dem Namen "----------------" (die also so aussieht wie ein Trennstrich) und führt sie aus. Ist die bei dir vorhanden?

    Arndt

    Schon, aber dh meine veränderte Datei muss an der richtigen Stelle sitzen? Das könnte dann das Problem sein

    Werd ich morgen weiter probieren.
    Danke!

    YouTube Kanäle über Basic, den C128 und den VDC-Chip
    Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen.
    Commodore 8-Bit Projekte
    auf Bitte melde dich an, um diesen Link zu sehen.
    Bitte melde dich an, um diesen Link zu sehen. zu Commodore 8-bit Hardware
    auf printables.com
  • Schon, aber dh meine veränderte Datei muss an der richtigen Stelle sitzen?

    Das sollte eigentlich egal sein, denn es werden offenbar die normalen Kernalroutinen zum nachladen verwendet. Verwendet Printfox möglicherweise selbst die Zeropage und überschreibt die Adresse $BA mit einem Wert, der Kernal Load aus dem Tritt bringt?

  • -trb-
    Diese eine Datei ist ja nur 1 Block groß. Da werd ich mir wohl mal die Zeit nehmen müssen, diese voll zu verstehen. Nicht nur punktuell :smile:

    YouTube Kanäle über Basic, den C128 und den VDC-Chip
    Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen.
    Commodore 8-Bit Projekte
    auf Bitte melde dich an, um diesen Link zu sehen.
    Bitte melde dich an, um diesen Link zu sehen. zu Commodore 8-bit Hardware
    auf printables.com
  • Was mach ich denn falsch?


    Wenn das funktioniert hätte, hätt ich mich auch durch das Hauptprogramm duchgewühlt und das angepasst.

    Schau dir mal im Bild die rot maierten Stellen an, ich denke dann wird klar was du falsch machst, bzw. falsch gemacht hast.;)

    Bitte melde dich an, um diesen Anhang zu sehen.

    Links ist deine Datei, rechts ist die originale Datei.

    Das mit "ldx $BA" sollte funktionieren.

    Hier mal zum Verstaendniss, wie die Laferoutine funktioniert.

    Zuerst wird die Datei "PRINTFOX V1.2" absolut an die Adresse $0302 geladen.

    Dabei wird der Vector in Adresse $0304 ueberschrieben, und zeigt nun auf $0334.

    In $0334 wir zuerst der Vector in $0304 wiederhergestelt, und dann die erste Datai mit dem Namen "----*" nachgeladen.

    Diese nachgeladene Datei ist ein Basicprogramm, bestehend aus zwei Zeilen, und im Anhang daran befindet sich noch eine Maschienenspracheroutine.

    Mit dieser Routine, welche mit SYS2096 aufgerufen wird, wird der Grafikbildschirm eingeschaltet.

    Dann wird mit dem Befehl "LOAD "FOXI,8,1" das Bild in den Speicher geladen und waehrend dem Laden angezeigt.

    Danach wird das Hauptprogramm nachgeladen, und gestartet.

    Der Basicloader laedt abllerdings immer nur von der angegebenen Geraeteadresse, somit kann man immer nur von dem Laufwerk laden, welches dort angegebn ist.

    Es wuerde sich hier anbieten, eine neue Laderoutine in Assembler zu schreiben, welche zuerst das Bild laedt, und anzeigt, und anschliessend das Hauptprogramm.

    MfG aus dem fernen China

    Claus

    "Wer einen Fehler begangen hat und ihn nicht korrigiert, begeht einen weiteren Fehler."

    (aus den Lehren des Konfuzius)

    Mein GitHub: Bitte melde dich an, um diesen Link zu sehen.

  • Vielen Dank ClausS


    Da hab ich eindeutig zu isoliert gearbeitet :biggrin:

    Das werd ich mir am Abend genauer ansehen

    YouTube Kanäle über Basic, den C128 und den VDC-Chip
    Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen.
    Commodore 8-Bit Projekte
    auf Bitte melde dich an, um diesen Link zu sehen.
    Bitte melde dich an, um diesen Link zu sehen. zu Commodore 8-bit Hardware
    auf printables.com
  • Danach wird das Hauptprogramm nachgeladen, und gestartet.

    Ich muss mal blöd nachfragen: Was spricht denn dagegen, gleich direkt das Hauptprogramm zu laden? Das klappt auch mit LOAD "FOX",9 von Laufwerk 9 von Diskette.

    Geht es "nur" um Kosmetik, weil man den Startbildschirm immer sehen will?

  • Ich vermute das es darum geht.

    "Wer einen Fehler begangen hat und ihn nicht korrigiert, begeht einen weiteren Fehler."

    (aus den Lehren des Konfuzius)

    Mein GitHub: Bitte melde dich an, um diesen Link zu sehen.

  • Danach wird das Hauptprogramm nachgeladen, und gestartet.

    Ich muss mal blöd nachfragen: Was spricht denn dagegen, gleich direkt das Hauptprogramm zu laden? Das klappt auch mit LOAD "FOX",9 von Laufwerk 9 von Diskette.

    Geht es "nur" um Kosmetik, weil man den Startbildschirm immer sehen will?

    Nein, selbst senn das Hauptprogramm mit ,9 geladen wird, werden die Dokumente und Schriftarten danach trotzdem wieder von ,8 geholt.

    Dh das Programm selber greift hardcoded auf 8 zu, nicht auf das, wovon es geladen wurde.


    Das Problem mit dem Lader hier war nur mein erster Schritt.

    YouTube Kanäle über Basic, den C128 und den VDC-Chip
    Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen.
    Commodore 8-Bit Projekte
    auf Bitte melde dich an, um diesen Link zu sehen.
    Bitte melde dich an, um diesen Link zu sehen. zu Commodore 8-bit Hardware
    auf printables.com
  • Hier mal die Disk mit einem neuen Bootloader, gefixt auf $BA

    nun fehlt nur noch der Fix fuer das Hauptprogramm.

  • Hier mal die Disk mit einem neuen Bootloader, gefixt auf $BA

    nun fehlt nur noch der Fix fuer das Hauptprogramm.

    Das funktioniert bei mir schon, vielen Dank :smile:

    Die "------" Datei enthält jetzt nur noch das SYS, dh du hast "PRINTFOX v1.2" direkt so geändert, wie du es vorhin beschrieben hattest, richtig?

    Also dass Bild und Hauptprogramm direkt da drin geladen werden, nicht über das Basic Programm.

    YouTube Kanäle über Basic, den C128 und den VDC-Chip
    Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen.
    Commodore 8-Bit Projekte
    auf Bitte melde dich an, um diesen Link zu sehen.
    Bitte melde dich an, um diesen Link zu sehen. zu Commodore 8-bit Hardware
    auf printables.com
  • In dem Hauptlader "PRINTFIX V1.2" habe ich eine Abfrage rein gebaut, ob in $BA schon was drin steht. Falls dort 0 drin steht, wird 8 als Standardlaufwerk geladen, ansonsten wird der Wert aus $BA uebergeben

    In der Datei "----*" habe ich auch diese Abfrage mit drin, fuer den Fall, das man damit startet. desweiteren habe ich den Lader fuer das Hauptprogramm als Maschinenspracheprogramm dort mit rein gebaut.

    "Wer einen Fehler begangen hat und ihn nicht korrigiert, begeht einen weiteren Fehler."

    (aus den Lehren des Konfuzius)

    Mein GitHub: Bitte melde dich an, um diesen Link zu sehen.

  • nun fehlt nur noch der Fix fuer das Hauptprogramm.

    Toll wäre, zB über Commodore+T dann im Programm die Device-Nummer für die Texte (also die Dokumente) festlegen zu können.

    Dann könnte man sich nämlich wirklich eine Diskette mit dem Programm, allen Schriftarten, vielleicht Cliparts etc zurechtlegen und die Dokumente auf separaten Disks ablegen.

    YouTube Kanäle über Basic, den C128 und den VDC-Chip
    Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen.
    Commodore 8-Bit Projekte
    auf Bitte melde dich an, um diesen Link zu sehen.
    Bitte melde dich an, um diesen Link zu sehen. zu Commodore 8-bit Hardware
    auf printables.com
  • Ich habe mir das Hauptprogramm mal kurz angeschaut, aber noch keine erfolgreichen Aenderungen vornehmen koennen.

    Mal sehen, wie ich da weiter komme.

    Eventuell hat ja jemand anderes auch noch eine Idee wie man da vorgehen kann.

    Wenn man es so einrichten kann, das man die Geraeteadresse aus der Speicherstelle $BA nehmen kann, dann findet sich vielleicht auch noch ein Weg, wie man die Device-Nummer per Taste im Programm umschalten kann.

    Ich werde mir den Source -Code mal anschauen. Wird aber ein bisschen dauern.

    "Wer einen Fehler begangen hat und ihn nicht korrigiert, begeht einen weiteren Fehler."

    (aus den Lehren des Konfuzius)

    Mein GitHub: Bitte melde dich an, um diesen Link zu sehen.

  • Toll wäre, zB über Commodore+T dann im Programm die Device-Nummer für die Texte (also die Dokumente) festlegen zu können.

    C= + T ist in Printfox schon belegt (schaltet den Textmode ein)

    EDIT: Blödsinn, die Tastenkombi ist noch frei - in den Textmode kommt man nur mit T.

    Viele Grüße,
    GI-Joe
    Bitte melde dich an, um diesen Link zu sehen. * Bitte melde dich an, um diesen Link zu sehen. * Bitte melde dich an, um diesen Link zu sehen. * Bitte melde dich an, um diesen Link zu sehen. * Bitte melde dich an, um diesen Link zu sehen. * Bitte melde dich an, um diesen Link zu sehen.

    Einmal editiert, zuletzt von GI-Joe (25. Oktober 2023 um 17:58)

  • Achja, wens interessiert, der Kollege in dem Video blickt ein bisschen zurück auf DSA-Fanzines die am C64 gemacht wurden.

    Toll wäre, zB über Commodore+T dann im Programm die Device-Nummer für die Texte (also die Dokumente) festlegen zu können.

    C= + T ist in Printfox schon belegt (schaltet den Textmode ein)

    EDIT: Blödsinn, die Tastenkombi ist noch frei - in den Textmode kommt man nur mit T.

    Genau.

    Und wenn man schon im Textmodus ist, dann ist die Kombi nicht belegt.

    Ich würde diese Umschaltung auch nur im Textmodus erlauben.

    Also Commodore+T würde zur Frage "Laufwerksnummer für Text?" führen, wo man dann mit 8-x antworten kann.

    Ich würde meinen, man kann das abschreiben: wenn man Commodore+P drückt, kommt ja auch die Frage "Seitenhälfte 1/2"

    Mal sehen was der Terminkalender vom ClausS zulässt :smile:

    (vielen Dank übrigens für das Interesse, sich das anzusehen)

    YouTube Kanäle über Basic, den C128 und den VDC-Chip
    Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen.
    Commodore 8-Bit Projekte
    auf Bitte melde dich an, um diesen Link zu sehen.
    Bitte melde dich an, um diesen Link zu sehen. zu Commodore 8-bit Hardware
    auf printables.com