Screen 40x24 Zeilen mit Byte-Char 8x8 vom C64.

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
funkheld
Beiträge: 636
Registriert: 31.12.2009 11:58

Re: Screen 40x24 Zeilen mit Byte-Char 8x8 vom C64.

Beitrag von funkheld »

OpenWindowedScreen(WindowID(#Window_0), 10, 10,640,384, 0, 0, 0) ist ja nicht akzeptabel in der Ausführungsgeschwindigkeit.
Das Canvas ist ja fast 20x schneller in der Ausführung der Grafik.

Habe dieses jetzt eingebaut und der Debugger meckert nicht mehr, keine Fehlermeldung bei Debug.
Die Ausgabe erfolgt weiterhin im schnellen CanvasGadget.

Code: Alles auswählen

InitSprite()
InitKeyboard()
OpenConsole()

OpenWindow(#Window_0, 10, 50,800,600, "canvas", #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
OpenWindowedScreen(WindowID(#Window_0), 0, 0,1,1, 0, 0, 0)
CanvasGadget(#img, 10,10,640,384)
....
...
Gruss
Zuletzt geändert von funkheld am 18.07.2017 14:27, insgesamt 1-mal geändert.
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8675
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 32 GB DDR4-3200
Ubuntu 22.04.3 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken
Kontaktdaten:

Re: Screen 40x24 Zeilen mit Byte-Char 8x8 vom C64.

Beitrag von NicTheQuick »

Screens sind nur dann schneller, wenn du auch mit Sprites arbeitest. Mit Images und 2D-Drawing sind sie langsam.
Bild
Benutzeravatar
Bisonte
Beiträge: 2427
Registriert: 01.04.2007 20:18

Re: Screen 40x24 Zeilen mit Byte-Char 8x8 vom C64.

Beitrag von Bisonte »

funkheld hat geschrieben:OpenWindowedScreen(WindowID(#Window_0), 10, 10,640,384, 0, 0, 0) ist ja nicht akzeptabel in der Ausführungsgeschwindigkeit.
Das Canvas ist ja fast 20x schneller in der Ausführung der Grafik.
Das lass ich jetzt mal so stehen :mrgreen: Aber sag nicht, ich hätte Dich nicht gewarnt....
PureBasic 6.04 LTS (Windows x86/x64) | Windows10 Pro x64 | Asus TUF X570 Gaming Plus | R9 5900X | 64GB RAM | GeForce RTX 3080 TI iChill X4 | HAF XF Evo | build by vannicom​​
funkheld
Beiträge: 636
Registriert: 31.12.2009 11:58

Re: Screen 40x24 Zeilen mit Byte-Char 8x8 vom C64.

Beitrag von funkheld »

Du hast recht, weil die Meldung nur im Debug auftauchte.

Gruss
Benutzeravatar
Mijikai
Beiträge: 754
Registriert: 25.09.2016 01:42

Re: Screen 40x24 Zeilen mit Byte-Char 8x8 vom C64.

Beitrag von Mijikai »

funkheld hat geschrieben:"For zz=0 To 23" nehme ich weil ja 24 Zeilen vorhanden sind.

Wenn jetzt ein Poke(955,2) auftaucht ist er ja in der Zeile 24 bzw "0 To 23".

Gruss
Naja der Code ist sehr ineffizient, wenn nur die relevanten (3) Zeilen auf diese Weise
dargestellt würden wäre der Code zumindest etwas schneller (aber immer noch ungeeignet für einen Emulator).

Character - Sprites z.B wären da eine Option (wie schon angedeutet).

Für Alle die wissen wollen wie die Character-Datei aufgebaut ist (Quad-Array).
1 Character = 8 Bytes -> 8 Bytes = 8 x 8 Bit -> für jedes Bit gilt: 1 = Solid / 0 = Ignore (Darstellung)
funkheld
Beiträge: 636
Registriert: 31.12.2009 11:58

Re: Screen 40x24 Zeilen mit Byte-Char 8x8 vom C64.

Beitrag von funkheld »

Die Darstellung ist immer noch zu etwas zu schnell gegenüber Natura.
Habe noch viel Zeit um andere Rechnungen zu erledigen.

Gruss
Antworten