Und was sagt uns das (Bild 3)?
Schon beim Laden von Geos wird der Stack überschrieben, dafür ist er ja auch da.
Adresse $0100 ist wie im anderen Thema schon erwähnt denkbar ungeeignet.
Gruß
Werner
Du bist in Begriff, Forum64 zu verlassen, um auf die folgende Adresse weitergeleitet zu werden:
Bitte beachte, dass wir für den Inhalt der Zielseite nicht verantwortlich sind und unsere Datenschutzbestimmungen dort keine Anwendung finden.
letzter Beitrag von spacer am
Und was sagt uns das (Bild 3)?
Schon beim Laden von Geos wird der Stack überschrieben, dafür ist er ja auch da.
Adresse $0100 ist wie im anderen Thema schon erwähnt denkbar ungeeignet.
Gruß
Werner
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:
Hmmm. ist hier komisch im Forum.
Vor 10 Minuten gab es den Text oben nicht und jetzt steht der da.
Darum habe ich einen neuen Titel aufgemacht in GEOS mit dem Float...
Gruss