Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Berkeley
Anmeldungsdatum: 13.05.2024 Beiträge: 78
|
Verfasst am: 28.05.2024, 20:15 Titel: RETROGRA |
|
|
"Retro" Grafikbibliothek vorallem zum Erstellen von Computerspielen. Soll immer einen 640x480-8bpp-Canvas erzeugen, bevorzugt im Vollbildmodus, mit Skalierung möglichst auf Bildschirmgröße.
Quelltext und nötige Dateien hier, erst mal nur mit dem Fonteditor:
https://uploadnow.io/de/share?utm_source=XHtJ4CD
Wichtig wäre mir erst mal, ob die Initialisierung klappt, ob das Programm auch unter Linux läuft bzw. mit anderen Windowsumgebungen als meiner. Zu Verbesserungen sag' ich auch nicht nein.
Zur Info: es ersetzt u.a. SCREENRES etc. durch eigene Funktionen, man muss im Wesentlichen nur rgSCREENNEW aufrufen, und kann dann gleich loslegen (im 640x480 Canvas).
- Fügt einen eigenen grafischen Mauspfeil hinzu, kann man je nach Anwendung wechseln und auch eigene zuweisen.
- Besitzt eine grafische, farbige Textkonsole. Mit rgPRINT kann man fast wie mit dem eingebauten PRINT Text ausgeben. Muss allerdings UTF-8-codierter Text sein. Derzeit ist Scrolling aber z.B. noch nicht implementiert.
- Der Fonteditor ist ultraprimitiv, kann derzeit nur die bereits existierenden "Codepages" editieren. Mit Cursor rauf/runter blättert man durch die "Codepages", Taste S zum Speichern, C zum Kopieren, V zum Einfügen, Q zum Beenden. Da es zu Beginn die Konsole noch nicht gab, bzw. sie ihren Font nicht hatte, musste das Interface auch ohne Text auskommen... |
|
Nach oben |
|
|
nemored
Anmeldungsdatum: 22.02.2007 Beiträge: 4672 Wohnort: ~/
|
Verfasst am: 28.05.2024, 22:31 Titel: |
|
|
Bei mir läuft es (Windows 10 Home, FreeBASIC-Compiler Version 1.09). Der Mauszeiger ist ein klein wenig träge, aber ich denke, das passt schon.
In der FontEdit.bas Zeile 420 meldet es mir ein "suspicious pointer assignment", und mir sieht die Zeile ebenfalls recht "suspicious" aus:
Code: | poffset-=CAST(BYTE PTR,@consolefontcontent(0)) |
Einen Pointer von einem anderen Pointer abzuziehen klingt für mich nicht korrekt - außer du willst die Differenz der beiden bestimmen, dann ist das Ergebnis aber ein INTEGER.
Code: | DIM AS BYTE PTR p1, p2
#print typeof(p1-p2) |
Ich bin nicht tief genug ins Programm eingestiegen, um zu sehen, wie genau die Stelle gemeint ist, mir scheint aber, poffset sollte ein INTEGER sein und BYTE PTR. Zumindest suggeriert das der Name. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
|
Berkeley
Anmeldungsdatum: 13.05.2024 Beiträge: 78
|
Verfasst am: 29.05.2024, 19:36 Titel: |
|
|
Wie träge der Mauszeiger ist hängt davon ab wie oft rgSCREENSHOW aufgerufen wird. Leider muss man das mit seinen Zeichenoperationen abstimmen, wenn man kein "Tearing" will.
Der betreffende Codeschnipsel ist Müll und außerdem tot, andernfalls würde er wohl nen Crash verursachen. Irgendein Überbleibsel von einer anderen Herangehensweise. Der Fonteditor hat allerdings einen richtigen Bug: wenn man die "Codepages" gewechselt und gleich auf Speichern gedrückt hat, ist er abgeschmiert - ist bereits gefixt. Bastle grad an einer Demo und beseitige ein paar Bugs in der RETROGRA-Lib... |
|
Nach oben |
|
|
Berkeley
Anmeldungsdatum: 13.05.2024 Beiträge: 78
|
Verfasst am: 30.05.2024, 16:39 Titel: |
|
|
Jetzt ist auch eine Demo von RETROGRA verfügbar, sie zeigt "ASCII Art" mit der grafischen Konsole, und demonstriert die eingebauten Mauszeiger. Alles andere wurde ein bisschen überarbeitet.
Link ist immer noch https://uploadnow.io/de/share?utm_source=XHtJ4CD |
|
Nach oben |
|
|
Berkeley
Anmeldungsdatum: 13.05.2024 Beiträge: 78
|
Verfasst am: 05.06.2024, 20:13 Titel: |
|
|
Eine neue Version von RETROGRA ist raus. Font und Mauspfeile leicht überarbeitet, Demo überarbeitet. Die grafische Konsole macht jetzt schon so ziemlich alles was sie soll inklusive Scrolling. Die Demo zeigt jetzt auch einen Fade-In mittels Farbpalettenrotation; die Funktion rgSHIFTPALETTE erlaubt es, die Standardfarben von RETROGRA zu verschieben, u.a. heller/dunkler, aber auch Rot-, Grün- oder Blaustich - um "warmes" oder "kaltes" Licht zu simulieren z.B.
Im Wesentlichen will ich da nur noch die rgINPUT-Funktion implementieren.
Die Demo schaut wild aus - so sollte man auch nicht mit der Konsole malen. Aber man kann sich so relativ gut anschauen, was da ausgegeben wird. |
|
Nach oben |
|
|
Berkeley
Anmeldungsdatum: 13.05.2024 Beiträge: 78
|
|
Nach oben |
|
|
Berkeley
Anmeldungsdatum: 13.05.2024 Beiträge: 78
|
Verfasst am: 02.11.2024, 22:07 Titel: |
|
|
Eine neue RETROGRA-Version ist raus, kleine Font- und Mauspfeilverbesserungen. Gravierende Änderung: benutzt jetzt einen/DEN "Data Folder" "FreeBASIC.rsc" für die Datendateien. Erste benutzbare Version von rgINPUT, der INPUT-Funktion der "VT2000"-Konsole. Später soll man damit noch Text markieren/ausschneiden können und überlanger Text horizontal in einem beschränkten Eingabebereich scrollen.
https://www.freebasic-portal.de/dlfiles/842/retrogra.zip |
|
Nach oben |
|
|
Berkeley
Anmeldungsdatum: 13.05.2024 Beiträge: 78
|
|
Nach oben |
|
|
Berkeley
Anmeldungsdatum: 13.05.2024 Beiträge: 78
|
Verfasst am: 22.11.2024, 23:58 Titel: |
|
|
Eine neue Version ist raus. Jetzt mit MESSAGEBOX, einem einfachen Dialog für Meldungen und Nachfragen. |
|
Nach oben |
|
|
|