Simons’ Basic/TSB: Farben, Zeichensätze, Sprites & Co.

Es gibt 4.424 Antworten in diesem Thema, welches 407.151 mal aufgerufen wurde. Der letzte Beitrag (19. November 2025 um 16:35) ist von GoDot.

  • i, gemogelt!

    Wieso gemogelt?

    Wenn Du in Zeile 10 next i schreibst dann geht's.

    Kann ich bestätigen, das Beispielprogramm von Omega funktioniert:

    Bitte melde dich an, um diesen Anhang zu sehen.

  • 1) Wieso gemogelt?

    2) Wenn Du in Zeile 10 next i schreibst dann geht's.

    1) Wenn Dir die Wirkung des "i" hinter dem "next" klar war und Du uns die Version ohne "i" verschwiegen hast, damit verschachteltes FOR...NEXT "robust" aussieht, dann empfinde ich das als "gemogelt". "i, gemogelt" ist aber eher als Scherz gemeint gewesen.

    2) Richtig. Und wie kommt das? Im C64-Artikel Bitte melde dich an, um diesen Link zu sehen. finden wir:

    'Ein NEXT ohne Variablenangabe schließt dann immer das "innerste" und nächstliegende FOR, sonst jenes mit der dazu passenden Schleifenvariable.'

    Wenn also die Schleifenvariable "i" mit angegeben wird, werden die problematischen j-Schleifen geschlossen, und wir haben keinen Fehler.

    FOR...NEXT hat daher gegenüber anderen Kontrollstrukturen tatsächlich einen Vorteil: man kann ziemlich bequem aussteigen, muss allerdings die richtige Schleifenvariable dafür einfügen, sonst gibt es eine Fehlermeldung. Bei anderen Strukturen steht zusätzliche Information (wie die Schleifenvarible) nicht so unmittelbar zur Verfügung. Wir haben in unseren frühere Beispielen aber gesehen, dass man dort auch korrekt aussteigen kann, wenn eine weitere Information (z.B. eine Variable "ab" als Ausstiegskennung oder ein PEEK vom Stapelzeiger) hinzugefügt wird.

  • Mit der Klammer nur um %%129 klappt es dann korrekt:

    Weil der „Ausdruck“ dann Priorität hat.


    Arndt


    (Für FRMEVL ist er eigentlich auf der falschen Seite der Gleichung, daher musst du ihm mit der Klammerung sagen, dass hier ein Ausdruck vorliegt, der ausgewertet werden muss.)

    In der Tat, wenn man die Seiten vertauscht, dann geht es:

    Bitte melde dich an, um diesen Anhang zu sehen.

    Gut, mit Klammern drumherum funktioniert es.

    Nichtsdestotrotz ist es halt ein Fehlverhalten, wenn das %%129 nicht immer als String erkannt wird.

    Ich würde da hier nichts dran ändern (geht ja mit Klammern), aber vielleicht wäre ein anderes, einzelnes Zeichen besser gewählt gewesen als das doppelte %?

  • vielleicht wäre ein anderes, einzelnes Zeichen besser gewählt gewesen als das doppelte %?

    Ich fand, dass damit (mit dem Doppelpräfix) eindeutig klar ist, was dabei herauskommen soll.

    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.

  • petrus: Ich habe mittlerweile Dein Bitte melde dich an, um diesen Link zu sehen. in meinen Spriteeditor eingebaut. Das funktioniert jetzt absolut spitzenmäßig.

    Ich benutze es sowohl zum Kopieren von Spriteblöcken als auch um den Bildschirminhalt zu merken, beim Darstellen des Directory. Und danach wird der Bildschirm blitzschnell wiederhergestellt. Und diesmal klappt es auch mit dem Farbspeicher. Heureka!

    Dein Copymem ist ein sehr nützliches und universell verwendbares Unterprogramm. Ich habe auch schon einige Ideen, wie man das sonst noch so verwenden kann.

    Ich vergebe hiermit den Kassettenpuffer-Award 2022. (Die goldene Kassette.)

    Bitte melde dich an, um diesen Anhang zu sehen.

  • Dein Copymem ist ein sehr nützliches und universell verwendbares Unterprogramm.

    Ich vergebe hiermit den Kassettenpuffer-Award 2022.

    Freut mich, das es funktioniert und für Dich nützlich ist. Eine Anmerkung noch dazu:

    Das Block-Copy-Programm aus dem Betriebssystem ist eigentlich dafür gedacht, Platz zu schaffen, und kann auch sich überlappende Speicherbereiche von "unten" nach "oben" verschieben, wobei von hinten nach vorn kopiert wird, also die letzten Bytes zuerst.

    Das Copymem ist dafür gedacht, ganze Bereiche zu kopieren und tut dies von vorn nach hinten (niedrigwertige Bytes zuerst). Dadurch kann es sich überlappende Bereiche nur korrekt kopieren, wenn der Zielbereich im Speicher vor dem Quellbereich liegt. Um beliebige Überlappungen verarbeiten zu können, müsste das Programm abhängig von der Lage des Quell- und Zielbereichs die Kopierreihenfolge anpassen. Das habe ich aber erst mal nicht mit eingebaut.

    Danke für Deine Auszeichnung (obwohl ich ja lieber Kartoffelpuffer als Kassettenpuffer mag).

  • Dadurch kann es sich überlappende Bereiche nur korrekt kopieren, wenn der Zielbereich im Speicher vor dem Quellbereich liegt.

    Danke für die Information. Das man bei Sich-überlappenden-Bereichen unter gewissen Umständen Schwierigkeiten bekommen kann, habe ich mir schon gedacht. Das ist aber kein Problem. Ich puffere die Daten immer irgendwo zwischen und kopiere sie dann zurück in den Zielbereich. Mit dem schnellen Maschinenprogramm dauert das ja nicht länger als ein Augenzwinkern. ;)

  • Im C64 Wiki gibt es eine Bitte melde dich an, um diesen Link zu sehen., die mit Simons Basic entwickelt wurden.

    Diese wurde erst kürzlich um das Spiel "Reaktor 64" erweitert.

    Gibt es eine entsprechende Liste auch für TSB?

  • Im C64 Wiki gibt es eine Bitte melde dich an, um diesen Link zu sehen., die mit Simons Basic entwickelt wurden.

    Gibt es eine entsprechende Liste auch für TSB?

    Im Prinzip gilt diese Liste ja auch für TSB (bis auf eventuell nötige Anpassungen).

    Für eine eigene TSB-Liste gibt es zur Zeit kaum Programme. Dein ZeichenEd ist IMHO die erste bekannte Anwendung.

  • Ich habe ein paar spezielle Anwendungen für GoDot in TSB gemacht. Wenn das zählt? In einem ist so ein Gimmick wie der derzeit beliebte drehende Ring beim Abspeichern mit drin.


    Arndt


    Edit: A propos Anpassen: Die jetzt noch eigentlich einzige Anpassung ist bei USE erforderlich. Geht ja schnell: finduse - und hast alle Stellen, wo du ändern musst (meist eher gar keine).

    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 habe ein paar spezielle Anwendungen für GoDot in TSB gemacht. Wenn das zählt?

    Aber ja! Eine Liste mit TSB-Programmen (die mehr als nur reines Demo sind) im C64-Wiki Artikel TSB zu haben, wäre schon interessant. Da bin ich ganz der Meinung von Omega.

  • Und natürlich mein Sokoban! Hab ich völlig vergessen! 8\|

    Arndt

    Edit: Wo wäre denn mein Maustreiber aufgehoben?

    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.

  • Das ist auch eine wichtige Anwendung. Der gehört mit dazu.

    Ok. Dann lade ich wohl mal die Disks in meine TSB-Seiten rein.

    Mir ist da noch was eingefallen. Wir hatten hier mal das Bitte melde dich an, um diesen Link zu sehen. (lief das auf Atari?), eine Software, die SVG-Dateien (Vektorgrafik) in Bitmapdateien umwandelte und anzeigte. Weil mich das Thema sehr interessierte, hab ich damals eine TSB-Version des TinySVG-Viewers gebastelt. Faszinierend zuzuschauen, wenn ein Bild wie von Zauberhand am Bildschirm gemalt wird! :smile: Ich hab das bis zu einem gewissen Grad verfolgt und das TSB-PRG eine Zeitlang immer angepasst, bis mir das Original zu aufwendig wurde. D.h., dass Dateien der aktuellen Original-Version wohl nicht mehr in TSB angezeigt werden können.

    Und schließlich hab ich selbst mal (Ende der 80er-Jahre) vier TSB-Programme ans NRW-Schulministerium verkauft (die waren ziemlich beeindruckt! :D) Die PRGs hatten eine mausgesteuerte Oberfläche (mit dem Schmieder-Zeichensatz) und waren dazu da, verschiedene Geräte, die die Schüler entweder selbst zusammenbauen mussten (mit Fischer-Technik) oder die von den Schulen angeschafft werden sollten, über den Userport zu steuern (mit Fischer-Technik oder damals extra entwickelten Steuermodulen für den Userport, z.B. das AK-Tronik-Interface oder den Oktobus). Die Schüler mussten auch die selbstgebauten Geräte programmieren, was von den TSB-PRGs aus geschah (ich hatte in meinen PRGs einen extra Interpreter für die Steuerbefehle implementiert, also einen Interpreter innerhalb eines Interpreters, hehe..., der war sogar makrofähig, d.h. man konnte ein eigenes Programm komplett in einen Einzelbefehl umwandeln). Mit den Geräten gefertigt wurden entweder aus Styropor geschnittene Figuren, Roboter-Bandstraßen und soas. Eines der PRGs war eine Warenhaus-Simulation mit Einkauf per (selbstgefertigter) Code-Karte, (simpler) Lagerhaltung und Kundendatei.

    Aber - ehrlich gesagt - man kann mit den PRGs ohne die erforderliche Zusatz-Hardware heute rein gar nichts anfangen. Darum hab ich hier auch nur selten was davon erzählt. Außerdem waren sie ja auch copyright-geschützt. (Oder sind sie's noch?) Bitte melde dich an, um diesen Link zu sehen. steht ein bisschen was dazu, mit einem Screenshot des Styroporschneider-Programms.

    Arndt

    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.

  • Wenn man den Artikel so liest, hat man den Eindruck, dass Dir an GoDot mehr liegt als an TSB.

    Was ist denn dieses sagenumwobene GoDot nun eigentlich? Ist es eher ein Malprogramm wie Paint? Oder eher ein Bildbearbeitungprogramm wie Photo Shop? Oder ein Konvertierungsprogramm? Oder alles in einem? Und kann ich damit meine enorme Sammlung von schlüpfrigen GIF-Bildern vom PC auf den C64 konvertieren und diese an Schulen verkaufen? Hmmm. Fragen über Fragen...

    Und übrigens: Die Person auf dem Bild sieht ganz anders aus als Dein Avatar hier im Forum. Ich vermute, das bist Du gar nicht. :D

  • Meinst du sowas hier?

    Bitte melde dich an, um diesen Anhang zu sehen.


    Und das Foto von mir im Wiki ist rund 20 Jahre alt…


    Über GoDot liest du am besten Bitte melde dich an, um diesen Link zu sehen. nach.


    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.

  • Meinst du sowas hier?

    Jaaaaah. :sabber:

    Hast du nicht Lust, GoDot mal ausführlich zu testen? :whistling:

    Ein Programm, mit dem man schlüpfrige Bilder auf dem C64 darstellen kann, hat schon seinen Reiz.

    Aber das lenkt mich zu sehr von TSB ab. :tits: