Neueste Beiträge

Seiten: [1] 2 3 ... 10
1
FutureOS / Re: Wallpaper / HinterGrundBilder für FutureOS
« Letzter Beitrag von TFM am 17. Mai 2022, 19:48:49 »
Aus lauter Gaudi hab ich heute schnell ein neues Wallpaper gemacht, es ist ursprünglich ein Wallpaper vom PC. Also nur des Spasses halber hier ein Bild und das ganze auch auf der .DSK.

Für neue Wallpaper-Anregungen bin ich immer dankbar. Ein CPC6128 wäre ja auch mal was.  ;)


EDIT: Tolkin hat der Vorschlag gemacht die Icon Sektion und die Datei Sektion durch einen horizontalen Strich abzugrenzen, hier im Bild ist 'zufällig' so ein Strich. Was haltet ihr davon? Ist das optisch ein Vorteil?
2
Spiele / Re: Textadventure: Mandelprison - Free Benoit!
« Letzter Beitrag von TFM am 17. Mai 2022, 18:31:25 »
Hier die Dateien als .DSK bereits in BASIC umgewandelt und damit kleiner.
3
Hardware / Re: Floppy Disc Controller für den CPC nachbauen - und zwar den Vortex F1-D
« Letzter Beitrag von TFM am 17. Mai 2022, 18:08:23 »
Heimkomputer mussten damals billig sein, also haben eine oder zwei Laufwerke gereicht.
Bei PC's auf Z80 Basis war es allerdings üblich mehrere Laufwerke nutzen zu können.
Hier ein Foto von meinem Genie IIIs, an dem man acht Laufwerke betreiben kann.
Im gezeigten Fall sind A bis D jeweils 5,25" Laufwerke mit ca. 800 KB pro Diskette und die Laufwerke E bis H sind 8" Laufwerke, deren Kapazität bis zu 1,6 MB reicht.
Es können aber auch 5,25" HD-Laufwerke angeschlossen werden (hab ich aber noch nie gemacht).

Also lasst und den DDI-1 bzw. Vortex F1-D Kontroller klonen, dann haben wir extern vier Laufwerke mehr!  :jubelaola:
4
Hardware / Re: BOS 2.0 oder 2.1 gesucht für 464 / Vortex SP512 RAM expansion
« Letzter Beitrag von TFM am 17. Mai 2022, 16:08:52 »
Ein heißes Teil also! :kaffee:
5
Spiele / Re: Textadventure: Mandelprison - Free Benoit!
« Letzter Beitrag von marcm200 am 17. Mai 2022, 09:05:04 »
@prodatron: Du hast völlig recht. Der Code ist recht redundant, die Räume sehen qualitativ im Code recht ähnlich aus. Deshalb musste ich auch die 3 Level getrennt als Dateien erzeugen, sonst hätte der Speicher bei weitem nicht ausgereicht. Da ich nur eine vorab bekannte Anzahl an C++-Objekten und Objektarten habe, hatte ich am Anfang der Konvertierung versucht, die C++-Objekte mittels DATA-Zeilen zu repräsentieren. Das wurde aber schnell sehr abstrakt, so dass ich mich für die lokale Variante (ein Objekt anschauen, der Rest ist nicht relevant) entschieden habe. Nur beim Befehlsparser habe ich die DATA-Zeilen-Methodik beibehalten, da dieser so leicht erweiterbar ist, wenn ich neue Verben, Präpositionen und Objekte (hier jetzt Kiste, Tisch, Notiz etc) einbauen möchte. Die fehlende Wartbarkeit des BASIC-Codes spielt für mich keine Rolle, da die BASIC-Version nur zum Ausführen gedacht ist, geändert wird nur im C++-Code.

Was die Mathematik angeht, so ist sie das Ergebnis von 3 Jahren Artikel lesen in meiner Freizeit, herausziehen, was mich gerade interessiert hat und ich zumindest teilweise verstanden habe, und den Rest überspringen ("Mut zur Lücke :) Aber bei der Beantwortung (und beim Testen) hilft der magische Zauberspruich dann.
6
Spiele / Re: Textadventure: Mandelprison - Free Benoit!
« Letzter Beitrag von HAL6128 am 16. Mai 2022, 16:07:56 »
Ist Deine Datengenerierung wirklich so langsam - und sind es Sekunden oder Minuten, die Du warten musst, bis Deine Bitmaps erzeugt sind?
Ehrlich gesagt ist das recht unterschiedlich. Manchmal sind das wenige Minuten (2-3), manchmal auch 15 - 20 Minuten. Ich vermute mal, das hängt stark von "tagesaktuellen Excel-Laune" ab und was so im Hintergrund läuft. :)

Und ja... Hardcore-Mathe. Ziemlich interessant, musste bisher einige Stellen im Internet nachlesen. :)
7
Spiele / Re: Textadventure: Mandelprison - Free Benoit!
« Letzter Beitrag von prodatron am 16. Mai 2022, 15:34:38 »
Interessant, Du hast die Datenstrukturen und deren Handhabung also einfach umgewandelt in ausgerollten Code.

Auf CPC Seite müssen dadurch keine komplexeren Datenstrukturen mehr gehandhabt werden. Dafür kommt aber fast identischer Code zigmal hintereinander vor. Somit spult der CPC also auf für ihn recht einfache Weise quasi vorcompilierten Code ab. Diesen Ansatz habe ich so bei Basic noch nicht gesehen, wohl aber bei Assembler.

Sicherlich wäre man auch in Locomotive Basic in der Lage, über Arrays usw. die Objekte und Eigenschaften abzubilden und mit einer einzigen generischen Engine zu verarbeiten. Das hätte natürlich für mehr Arbeit auf CPC-Seite gesorgt, allerdings wäre das Ergebnis wesentlich kompakter und auch auf CPC-Seite wartbar.

Auf jeden Fall cool, so einen Ansatz mal zu sehen!
Übrigens ein ziemlich krasses Hardcore-Mathe-Freak-Adventure! :)
8
Spiele / Re: Textadventure: Mandelprison - Free Benoit!
« Letzter Beitrag von marcm200 am 16. Mai 2022, 13:43:57 »
Ich konvertiere nach simplen Text-ASCII-Dateien. Zum Reinladen (in den Emulator) schalte ich dann die Echtzeitsimulation aus, da ich die Programmzeilen nicht sortiert ausgebe, sondern  so, wie es gerade passt. Ich laufe einmal über den Objektbaum, sammle die globalen Variablen auf, und gebe diesen Code dann ganz am Ende aus (zeittechnisch kann man es natürlich auch anders machen, selbst tausende Läufe über den Baum kosten kaum Zeit, aber so funktioniert es gerade). Und so habe ich dann auch gelernt, dass eine Zeilen-sortierte BASIC-Datei auch im Echtzeitmodus sehr schnell eingelesen wird.

Aber interessant, wie Du Deine Sprites machst. Ich mache fast dasselbe für meine Räume hier. Ein Bild mit einer Apfelmännchen-Komponente, ein Gridmuster drüberlegen, manuell ein paar Quadrate markieren (gelbe Punkte reinsetzen), und dieses Bild wird dann automatisch in Code umgesetzt, so dass ich mich nicht darum kümmern muss, dass, wenn es eine Tür nach rechts gibt, vom Zielraum dann auch eine nach links geben muss. Mein Workflow hier ist also C++ (Bild erzeugen), Bitmap (in MSPaint manuell markieren), C++ (Code erzeugen).

Ist Deine Datengenerierung wirklich so langsam - und sind es Sekunden oder Minuten, die Du warten musst, bis Deine Bitmaps erzeugt sind? Für mein Textadventure ist weder der C++- noch der BASIC-Code zeitlich optimiert.

9
Spiele / Re: Textadventure: Mandelprison - Free Benoit!
« Letzter Beitrag von HAL6128 am 16. Mai 2022, 10:49:03 »
Diese "Konvertierungsgeschichten" und Ansätze finde ich recht interessant zu hören. Ich arbeite zum Beispiel an einen Tilegenerator (in EXCEL / VisualBASIC, haha), der mir ein komplett gemaltes Pixelbild (im GIF Format) in Tiles zerlegt (> nach BMPs) und daraus entsprechende Daten-Statements ausgibt, die für einen C-Code genutzt werden (SDCC). Der Code selbst wird von einem Freund (Shining) programmiert und daraus entsteht z.B. ein Spiel. Ich liefere nur die Bild- / Sprite-Daten. Der Workflow oder Schuss ist sozusagen "von hinten durch die Brust ins Auge". :) Excel bzw. VisualBASIC ist hier total langsam, aber das einzige, was ich an modernen Programmiersprachen kann.
In welchen Format konvertiert Du die Daten? ASCII-Textdatei oder BASIC-Token-RAMsnaphot?
10
Spiele / Re: Textadventure: Mandelprison - Free Benoit!
« Letzter Beitrag von marcm200 am 16. Mai 2022, 09:58:08 »
zum Warum nach BASIC: Ich mache mit meiner Freundin einen kleinen Podcast über Hörspiele der 80er. Von Hörspielen war es dann nicht weit bis zu meinem ersten Computer und Thor (Llywnhuf und der Spiegel waren meine Erinnerungen). Da ich in den 80ern auch ein kleines Programm für die Schule geschrieben hatte - ein Frosch-Identifikationstool in BASIC, das auf Frage/Antwort basiert, wollte ich alles zusammenwerfen, und habe ein kleines Textadventure programmiert mit Fragen zur Mathematik, dann öffnen sich Kisten.

Wenn ich was neues programmiere, nehme ich C++, da ich mich da am besten auskenne, allerdings wirken die RetroComputing-Dinge erst im richtigen Setting, und das wäre hier dann BASIC. Was mich dabei am meisten interessierte, war, was ich alles von C++ nach BASIC bekomme, also wie "mächtig" der Schneider bereits in den 80ern war. Einen programmiertechnischen Vorteil hat BASIC hier nicht m.E.

zum Wie nach BASIC: Das C++-Spiel besteht im wesenlichen aus einer Hauptschleife, in der der Nutzer seine Befehle eingibt und der Ausgabe, was er sieht, sowie der Reaktion des Spieles. Das Spiel selbst (die "Räume") sind alles C++-Objekte, die wiederum Dinge im Raum in sich als lokale Variablen tragen (polymrorphe Objekte mit Befehlshandlern), das ergibt dann schlussendlich den Objektbaum. Zum Konvertieren wandle ich nun jeden Raum in eine Sequenz an Programmzeilen um und füge die adäquaten GOTOs ein, je nachdem in welche Richtung der Nutzer geht, sowie die entsprechenden Fragen. Ein paar globale Variablen am Anfang auf Initialwerte setzen, und fertig. 

Eines meiner Lieblingshörspiele ist "Captain Blitz - Falsch programmiert". Da gibt es den Satz "Ich lass das mal den Computer machen" - insofern lasse ich den Computer hier die Konvertierung machen :) Ich glaube sogar, dass das für mich schlussendlich zeitlich schneller war, als das Spiel direkt in BASIC zu programmieren.


Seiten: [1] 2 3 ... 10