Hello, Guest the thread was viewed678 times and contains 12 replies

last post from Drachen at the

?ILLEGAL QUANTITY ERROR verstehe ich nicht wirklich

  • Hallo Leute,


    hoffe ihr könnt mir Licht ins Dunkel bringen.

    Ich habe ja schon recht früh mit dem Basic programmieren angefangen, und da kam diese Fehlermeldung "?ILLEGAL QUANTITY ERROR" auch öffters vor.

    Aber den konnte ich dann immer sehr schnell beheben.

    Aber jetzt zu meien speziellen Fall:

    Ich Teste immer noch mit der Routine von Snoopy für die FCM Umgebung herum. Bin gerate dabei eine Schleife zu basteln wie ich die Grafikzeichen an der besagen Adresse zu Poken.

    Da die Printfunktion mit der FCM-Umgebung nicht funktioniert.

    Also habe ich das erst einmal unter der Standart-Umgebung getestet:

    Und was soll ich sagen, es läuft ohne wenn und aber.

    So jetzt das ganze unter FCM-Umgebung

    So und hier schmeist mich mein Programm in der Zeile 5100 raus mit der Fehlermeldung "?ILLEGAL QUANTITY ERROR"

    Ich habe danach zick verschiedene Einstellung probiert, aber immer wieder die Fehlermeldung.

    Also ich bilcke es nicht. Vielleich sehe ich den Baum nicht vor lauter Bäume.

    Hoffe einer von euch hat einen Lichtblick für mich

  • :platsch:

    So ein blöder Denkfehler.

    OK jetzt läuft es ohne Probleme.

    Aber Snoopy wenn du schon mal hier bist.

    Hast du vielleicht eine Idee wie ich meinen String so umwandeln kann das er bei 1 anfängt.

    Mit meiner Schleife und den ASC-Befehl beginnt er bei der Zahl 64 dementsprechend sieht meine Ausgabe auch so aus


    statt so wie in meinen Beispieltext = "DAS IST NUR EIN TEST"

    Oder muß ich den String seperrat noch mal umrechnen lassen. :gruebel

  • Oder muß ich den String seperrat noch mal umrechnen lassen.

    Ja, du musst die Zeichen des Strings, die ASC in PETSCII-Codes liefert, noch in Bildschirmcodes umrechnen.


    Zum Beispiel nach dieser Tabelle hier:


    https://sta.c64.org/cbm64pettoscr.html


    Also PETSCII-Code 64 wird in Bildschirmcode 0 umgewandelt. Das zeigt dir dann nach dem POKE das richtige Zeichen auf dem Bildschirm.



    Wenn du noch paar Tage Geduld hast, dann kannst du das alles viel einfacher machen. Ich habe was in der Pipeline, muss es aber noch weiter testen und zumindest eine kurze Anleitung schreiben. Und über ungelegte Eier rede ich nur ungern. Also noch bisschen Geduld! ;)

  • Wenn du noch paar Tage Geduld hast, dann kannst du das alles viel einfacher machen. Ich habe was in der Pipeline, muss es aber noch weiter testen und zumindest eine kurze Anleitung schreiben. Und über ungelegte Eier rede ich nur ungern. Also noch bisschen Geduld! ;)

    Ah der Sagen umwobene Basic Compiler ist endlich fertig.:thumbsup:

  • OK Snoopy dann warte ich noch ein wenig, denn jetzt hast du mich angfixt was das wohl sein wird. Etwa ein Basicbefehl für den FCM-Modus :gruebel

  • OK Snoopy dann warte ich noch ein wenig, denn jetzt hast du mich angfixt was das wohl sein wird. Etwa ein Basicbefehl für den FCM-Modus :gruebel

    Ach was soll's, ich habe mich eh schon von deiner Frage hinreissen lassen ... bei Spielen gibt es ja auch Trailer und Previews ... :whistling:


    Ich habe in den letzten Monaten, ausgehend von meinem BASIC 65.EX, mein "ganz privates" BASIC für den MEGA65 gebastelt, weil ich doch einige Dinge vermisst habe, die ich auch gerne und bequem in BASIC machen wollte. So hab ich halt dann immer wieder mal Zeit investiert und dabei geschaut, was ich gerne drin haben würde und was nicht (erleichtert ungemein die Kompromissfrage in Projektmeetings, wenn man nur selbst Teilnehmer ist :D ).


    Herausgekommen ist nun mittlerweile ein BASIC für den MEGA65, das zum Beispiel sowas ohne ein einziges POKE hinbekommt und das - im Beispiel - bei "nur" 3.5 MHz:


    Videoclip: https://65site.de/downloads/animated_mono_color_sprite_b.mp4



    Ich will das Ganze noch etwas weiter testen und zumindest eine Kurzanleitung für alle neuen Befehle schreiben, sonst kann ja niemand anderes was vernünftig damit anfangen. Also bitte noch etwas Geduld!


    Aber wenn es bald soweit ist, dann soll das mein Weihnachtsgeschenk für die Community sein! :weihnachten:

  • Das finde ich echt Klasse von dir Snoopy. :thumbsup:

    Ich möcht auch mal ein kleines Game machen mit dem Mega65, aber mit dem FCM-Mode. Und mit deiner Hilfe von damals komme ich damit einen Schritt weiter.

    Wenn das mit dem FCM-Mode so läuft wie ich mir das vorstelle, kommt dann noch der Multicolr-Mode für die Sprites in Basic.

    Und ich bekomme dieses Jahr hoffentlich endlich meinen echten Mega65 :D

  • Ganz generell als Tipp, wenn man bei Fehlern nicht weiter kommt:

    Debugausgaben produzieren. Also schauen, was in den Variablen tatsächlich drin steht. Dann merkt man schon, welche Variablen einen unerwarteten Wert haben. Dann eben weiter schauen, wo der Wert her kommt und in welcher Funktion nicht den Wert erzeugt, den man eigentlich haben wollte.

  • Ganz generell als Tipp, wenn man bei Fehlern nicht weiter kommt:

    Debugausgaben produzieren. Also schauen, was in den Variablen tatsächlich drin steht. Dann merkt man schon, welche Variablen einen unerwarteten Wert haben. Dann eben weiter schauen, wo der Wert her kommt und in welcher Funktion nicht den Wert erzeugt, den man eigentlich haben wollte.

    Danke für diesen hilfreichen Tipp.