Xionum nutzt jetzt TSB

Es gibt 120 Antworten in diesem Thema, welches 5.870 mal aufgerufen wurde. Der letzte Beitrag (6. September 2025 um 15:39) ist von GoDot.

  • Du legst zu viel Wert auf diesen einzelnen Aspekt und verteufelst zu Unrecht TSB.

    Ich verteufele überhaupt nichts - das liegt mir fern. Wenn man sich zum ersten Mal mit Simons Basic oder TSB beschäftigt und die Befehle überfliegt, entsteht durchaus der Eindruck, es handle sich um eine BASIC-Erweiterung mit strukturierten Programmieransätzen: Es gibt PROC, ENDPROC, LOCAL, GLOBAL – Begriffe, die aus anderen Sprachen vertraut sind und dort bestimmte Erwartungen wecken. Nur: Diese Erwartungen erfüllt TSB eben nicht.

    Das muss man nicht schlimm finden - solange einem bewusst ist, worauf man sich einlässt. Wer mit diesen Einschränkungen leben kann oder sie gar als kreative Herausforderung sieht, dem möchte ich keinesfalls den Spaß daran nehmen. Ich versuche lediglich, xionum (oder anderen, die hier mitlesen) unverbindlich darauf hinzuweisen, dass TSB strukturell deutlich hinter dem bleibt, was die Begriffe suggerieren.

    Und wenn man nach diesem Hinweis immer noch Freude daran hat, mit TSB zu programmieren - umso besser! Mir geht es nicht darum, irgendjemandem etwas auszureden, sondern nur darum, ein realistisches Bild davon zu vermitteln, was TSB ist - und was eben nicht. Gerade auf einem System mit so engen Grenzen wie dem C64 hilft es, wenn man keine falschen Erwartungen an die Werkzeuge hat.

    Aber wie TD1334 und Lynx sagen, wir reden hier über den C64 mit kleinem Speicher.

    Es gibt auf dem C64 durchaus richtige strukturierte Programmiersprachen.

    Und ohne Plan geht es einfach nicht.

    Klar, ein Plan kann sicher nicht schaden - aber ich muss zugeben: Ich gehe meistens ohne konkreten Plan an ein Projekt ran. Meistens notiere ich mir ein paar Stichworte auf einem Stück Klopapier (wenn’s gut läuft), und dann hoffe ich einfach auf eine glückliche Fügung. ;)

  • Du legst zu viel Wert auf diesen einzelnen Aspekt und verteufelst zu Unrecht TSB.

    Ich verteufele überhaupt nichts - das liegt mir fern. Wenn man sich zum ersten Mal mit Simons Basic oder TSB beschäftigt und die Befehle überfliegt, entsteht durchaus der Eindruck, es handle sich um eine BASIC-Erweiterung mit strukturierten Programmieransätzen: Es gibt PROC, ENDPROC, LOCAL, GLOBAL – Begriffe, die aus anderen Sprachen vertraut sind und dort bestimmte Erwartungen wecken. Nur: Diese Erwartungen erfüllt TSB eben nicht.

    Deine Erwartungshaltung kommt von Software auf aktueller Hardware., Das ist für mich die falsche Sichtweise. Die Befehle in TSB unterliegen gewissen Beschränkungen, das wird aber, so wie ich das mitbekommen habe, sehr gut in der Dokumentation erklärt. Wer diese liest und dann etwas anderes erwartet hat ein falsches Verständnis vom Programmieren und da spielt es keine Rolle ob auf dem C64 oder einem Supercomputer.

    Ich verstehe dein Dilemma mit den Prozeduren und der nicht perfekten Abkapselung, jedoch ist das kein Grund TSB abzusprechen, dass man hier nicht strukturiert arbeiten kann.

    Hätte GoDot soviel Speicher zur Verfügung wie in deinem aktuellen Favoriten (CRT), so könnte er dort auch ganz ganz viele schöne Sachen unterbringen. Er hat sich für einen anderen Weg entschieden, Basis ist die Diskettenversion und der Speicher im C64.

    Das muss man nicht schlimm finden - solange einem bewusst ist, worauf man sich einlässt. Wer mit diesen Einschränkungen leben kann oder sie gar als kreative Herausforderung sieht, dem möchte ich keinesfalls den Spaß daran nehmen. Ich versuche lediglich, xionum (oder anderen, die hier mitlesen) unverbindlich darauf hinzuweisen, dass TSB strukturell deutlich hinter dem bleibt, was die Begriffe suggerieren.

    Dann beziehe dich bitte auch nur auf die Prozeduren und spreche TSB als ganzes nicht ab, das es Funktionen zum strukturierten arbeiten enthält.

    Aber wie TD1334 und Lynx sagen, wir reden hier über den C64 mit kleinem Speicher.

    Es gibt auf dem C64 durchaus richtige strukturierte Programmiersprachen.

    Yep, wie man an meine Signatur erkennen kann .. :thumbsup: ;)

    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.

  • Deine Erwartungshaltung kommt von Software auf aktueller Hardware.,

    Nein.

    Dann beziehe dich bitte auch nur auf die Prozeduren und spreche TSB als ganzes nicht ab, das es Funktionen zum strukturierten arbeiten enthält.

    Welche Funktionen zum strukturierten Arbeiten hat TSB?

  • Eigentlich wollte xionum hier was ganz anderes besprechen.

    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.

  • Deine Erwartungshaltung kommt von Software auf aktueller Hardware.,

    Nein.

    Jedem seine Meinung.

    Dann beziehe dich bitte auch nur auf die Prozeduren und spreche TSB als ganzes nicht ab, das es Funktionen zum strukturierten arbeiten enthält.

    Welche Funktionen zum strukturierten Arbeiten hat TSB?

    Hier ein Auszug aus dem TSB-Handbuch

    Bitte melde dich an, um diesen Anhang zu sehen.

    Und natürlich darf man den : und das nicht vergessen :wink:

    Eigentlich wollte xionum hier was ganz anderes besprechen.

    Korrekt, ich werde eine Mod bitten das auszulagern.

    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.

  • GoDot , vielleicht keine schlechte Idee, danke.

    Omega , ich kenne den C64 seit 1991 und ich muss ehrlich sagen, ich wäre nie auf die Idee gekommen das eine Basic-Erweiterung lokale Variablen einführt. Für mich passt alles in TSB ziemlich gut.

  • Hier mal ein Update zum Spiel.

    Der Zeichensatz ist jetzt ich ein eigener um keine Copyright-Probleme zu bekommen.

    Die Routine zum Anzeigen der Fahrzeuge ist auch fertig. Am Ende war es ganz simpel. Da ich die invertierten Zeichen benutze, printe ich einfach das normale Zeichen invertiert.

    Das Ergebnis ist ein String-Array mit jeweils 3 Zeichen pro Eintrag.

    Das UI wird Fenster basiert gestaltet. Das gefällt mir richtig gut.

    Als nächstes ist jetzt die Karte, auf der alles spielt, an der Reihe. Und dann kommt die Auftrags-Routine.

    Das ist jetzt erstmal ein bisschen Arbeit mit Stift und Zettel.

  • Die Routine zum Anzeigen der Fahrzeuge ist auch fertig. Am Ende war es ganz simpel. Da ich die invertierten Zeichen benutze, printe ich einfach das normale Zeichen invertiert.

    Wie ich das als erstes vorgeschlagen habe. ;)

    Copyright-Probleme mit dem Zeichensatz: Ich glaube, da musst du nichts befürchten. Ich benutze ihn ja auch (schon lange - ich finde ihn halt genial), z.B. in meinen Bitte melde dich an, um diesen Link zu sehen.. Der Autor ist meines Wissens auch nie wieder im C64-Dunstkreis aufgetaucht (oder weiß jemand mehr?)


    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.

  • Hier ein Auszug aus dem TSB-Handbuch...

    Wenn du das für strukturierte Funktionen hältst, dann wundert mich nichts mehr. He he he! :D

    Komm doch mit Argumenten .... :zeig:

    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.

  • Komm doch mit Argumenten .... :zeig:

    Ich glaub, jetzt haben wir alles gesagt. xionum mag TSB - und das ist super. Ich wollte lediglich ein paar kritische Anmerkungen loswerden, aber kein Fass aufmachen. Und am Ende bleibt es wie immer: Ich hab natürlich Recht - aber ich sag’s keinem weiter. ;)

  • Um etwas Speicherplatz zu sparen, habe ich initiale Variableninhalte in eine Datei ausgelagert. Die Laderoutine ist kürzer als das Zeug im Basicspeicher zu haben. Es wird ja nur einmal eingelesen

    Die "Spielwelt", ab jetzt Streckenplan, hat aktuell 10 Stationen zwischen denen Waren ausgetauscht werden können. Auch die Map wird beim Anzeigen von Disk geladen um Speicher zu sparen.

  • Kommst du voran, xionum ?

    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.

  • Hallo Arndt,

    Ja, nicht wie gehofft aber es geht vorwärts.

    Bin grad beruflich etwas eingespannt und komme weniger zum Hobby.

    Der Streckenplan steht, eine grobe Vorstellung des Bildschirmaufbaus ist auch vorhanden.

    Aktuell erstelle ich die Koordinatenpaare für die Streckenpunkte um dann die Positionen auf der Karte zu zeigen. So bewegt sich auch was im Spiel.

    Ich erstelle auch noch nebenbei den Aufbau der REL-Datei um die Datensätze zu gruppieren.

    Im August habe ich Urlaub, da wird mehr passieren.

  • Kurze Zwischenmeldung mal von mir.

    Das Gericht stellt fest: Der Angeklagte behauptet einerseits in PostBitte melde dich an, um diesen Link zu sehen., im Urlaub mehr Zeit für das Projekt zu haben - erklärt aber gleichzeitig in PostBitte melde dich an, um diesen Link zu sehen., dass Urlaub gleichbedeutend sei mit Pause der Denkarbeit.

    Das ist in sich so widersprüchlich, dass es nur zwei Möglichkeiten gibt:

    a) Es handelt sich um eine besonders raffinierte Form der kreativen Ausrede.

    b) Es liegt ein Fehler in der Urlaubslogik vor.

    Der Widerspruch zwischen mehr Zeit und Pause der Denkarbeit wird zugunsten des Angeklagten ausgelegt.

    Urteil: Urlaub frei, aber ab September täglich Berichtspflicht! :hammer:

  • Es ging diese Woche wieder weiter mit TSB.

    Gibt es eine einfache Möglichkeit Dateinamen in ein Array einzulesen?

    Ich würde gern alle SEQ-Dateien in einer Liste sammeln um dann auswählen zu können.

    Ich weis das ich das mit open, input#, get# usw hinbekomme, aber vielleicht gibt's da schon was von Ratiopharm TSB?

  • Gibt es eine einfache Möglichkeit Dateinamen in ein Array einzulesen?

    Nicht als Befehl und (bei der Alternative) auch nicht direkt in ein Array. Es gibt eine TSB-Erweiterung, die ein Directory in den Speicher holt und von dort aus zur Bearbeitung zur Verfügung stellt: Bitte melde dich an, um diesen Link zu sehen.. Vielleicht kannst du damit ja was anfangen?

    Arndt

    Edit: DirSelect ist auch auf der TSB-Disk drauf.

    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.

  • Danke für den Tipp, schaue ich mir an.

    Aber ich vermute das es dann auf open, get und input hinauslaufen wird.

    Eine Selector-Routine die ein Array als Quelle verwendet habe ich schon gebastelt.