Hello, Guest the thread was called752 times and contains 26 replays

last post from spacer at the

Beim TC64 v2 GEOS-Programe laden mit dem chacocmd.

  • Schon beim Laden von Geos wird der Stack überschrieben, dafür ist er ja auch da.

    fast... 38911 ist die Anzahl der freien Bytes bei der Einschaltmeldung des C64, d.h. er hat einen Reset gemacht und die Einschaltmeldung hat die Werte überschrieben.


    Laut "C64 für Insider" ist $0100-$010A der Arbeitsbereich bei der Umwandlung von Gleitpunkt nach ASCII.
    Der Bereich $0100-$013E wird auch bei Bandfehler genutzt.


    GEOS hat damit also überhaupt nichts zu tun... Hab Bild.3 mit dem 3ten Bild (=Bild.4) verwechselt. Auf "Bild.4" sind verschiedene ASCII-Zeichen. Die Zeichen da sagen mir aber nichts, sieht aber aus wie -1.70301501E. Also evtl. auch eine Zahl von Float nach ASCII gewandelt. Für GEOS aber eine merkwürdige Zahl...

  • Ergänzung:
    Das Programm "GEOS" wird absolut mit ,8,1 geladen. Die Ladeadresse liegt da schon im Stack-Speicher, bei MegaPatch ab $0110. Damit wird quasi das Programm nach dem laden auch gleich gestartet weil der Stack bis zum Ende mit bestimmten Werten gefüllt wird das Sytem dann zu einer Stelle im Ladeprogramm "zurückkehrt" und diese dann ausführt.

  • Diese Zahl kommt immer auch wenn ich eine andere Float nehme:
    ----------------------------------------
    sieht aber aus wie -1.70301501E
    ----------------------------------------


    Ich weiß keine Lösung dafür , weil dort nun mal der String reingelegt wird.



    Danke.
    Gruss

  • Ich hab eben mal GEOS 2.0 gestartet, da steht bei mir nach dem starten von GEOS ab $0100 nach wie vor der String "38911.0000",NULL. GEOS scheint den Wert also doch nicht zu ändern... der Autostart wird ja nach $0110 geladen und die 38911 sind unverändert. Für MegaPatch gilt das nicht: Das gibt beim start die Größe des DACC als Float->ASCII aus und überschreibt dann die Werte ab $0100...

  • Jetzt funktioniert es.
    Alle Floatbefehle die es für Basic gibt können in GEOS dargestellt werden...sinus..cosinus..tangens...div...mult...und..und.


    Test ist 2xPi Wert.


    Jetzt liegen die Daten bei $7f40 , habe sie dort hinkopiert zur Weiterverarbeitung.
    Brauche mal eure Hilfe, mit welchen Befehl ich jetzt den String ausgeben kann in GEOS.


    Danke.
    Gruss


    Habe den ASM-Code in ASM gepackt.


    Datei 2xPI in cc65: