C64 Kryptische Bilder

Hier kann alles mögliche diskutiert werden. Themen zu Purebasic sind hier erwünscht.
Flames und Spam kommen ungefragt in den Mülleimer.
Benutzeravatar
dllfreak2001
Beiträge: 2925
Registriert: 07.09.2004 23:44
Wohnort: Bayern

C64 Kryptische Bilder

Beitrag von dllfreak2001 »

Hey,
hab mich schon immer mal gerfagt was das für seltsame
kryptische Bilder sind die man manchmal sieht wenn ein Spiel/Prog
geladen wird.
I´a dllfreak2001
Benutzeravatar
ZeHa
Beiträge: 4760
Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Kontaktdaten:

Beitrag von ZeHa »

Ich bin mir nicht sicher, aber ich glaube, das liegt daran, daß irgendwelche Daten eingelesen werden müssen, und da die evtl. im RAM keinen Platz finden, werden sie teilweise in den Bildschirm-Speicher geschrieben.

So hab ich mir das jedenfalls erklärt, als ich mir auch Gedanken gemacht hab. Könnte mir aber vorstellen, daß Kaeru Gaman (oder wie der heißt) evtl. Ahnung davon hat, der war doch früher auch so ein C64-Freak ;)
Benutzeravatar
dllfreak2001
Beiträge: 2925
Registriert: 07.09.2004 23:44
Wohnort: Bayern

Beitrag von dllfreak2001 »

Das hab ich mir auch schon mal so gedacht habe aber das gleiche Phenomän auf einem 286 beobachtet.
I´a dllfreak2001
tranquil
Beiträge: 117
Registriert: 22.09.2004 22:07
Kontaktdaten:

Beitrag von tranquil »

Naja beim C64 wars ja nicht so schön bequem wie auf heutigen Systemen sich einfach mal nen gesicherten Buffer allocieren zu lassen. Und ein sicherer Buffer der von einem Programm während des entpackens nicht benötigt wurde war nurmal eben der Screenbuffer. Pointer und Variablen wurden zudem manchmal in den Grafikregistern (Randfarbe, Hintergrundfarbe) oder auch in den Audio-Registern des SID gespeichert.

Ausserdem hat es doch was wenn man sieht das das da grad was passiert.
Benutzeravatar
Zaphod
Beiträge: 2875
Registriert: 29.08.2004 00:40

Beitrag von Zaphod »

es war damals üblich das zu machen, wenn man daten beim programmstart entpackt hat. das hatte natürlich nichts damit zu tun, das daten in den bildspeicher geladen werden, sondern sollte nur zeigen, dass das programm grade noch was macht. wildes häßliches buntes blinken und streifen haben sich deswegen besonders dafür geeignet, weil man sowas in ein paar zeilen assembly machen konnte und das ganze so den entpack-prozess nicht wesentlich verlangsamt hat.
seinen ursprung hatte das ganze in der demo szene/cracker szene (damals noch eng verbandelt).
Benutzeravatar
hardfalcon
Beiträge: 3447
Registriert: 29.08.2004 20:46

Beitrag von hardfalcon »

Ich hab ein kleines Programm zum Thema geschrieben:
http://forums.purebasic.com/german/viewtopic.php?t=4902
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

(oder wie der heißt)

andere möglichkeit (anstatt screen als buffer verwenden)
(hab ich nie gemacht, schließlich gabs genug RAM unterm ROM)

- auf dem bildschirm erschien eine wilde folge von standartbuchstaben:

* der ponter des screens wurde geändert, der neue speicherbereich noch nicht gelöscht

- auf dem bildschirm erschienen wilde pixelmuster:

* der pointer auf den zeichensatz wurde geändert, aber der neue zeichensatz noch nicht geladen, oder das RAM unter dem ROM (in dem der neue zeichensatz steht) noch nicht aktiviert

oder
* der grafikmodus wurde aktiviert, das grafik-RAM aber noch nicht geleert

------------------------------------------
@Zaphod:
du meinst was anderes: wilde farbstreifen...

wie du richtig sagtest: billige anzeige von aktivität, einfach ein
INC *Framecolor
da die schleife x-mal pro bildaufbau durchlaufen wurde, änderte die farbe sich manchmal sogar innerhalb einer rasterzeile.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Zaphod
Beiträge: 2875
Registriert: 29.08.2004 00:40

Beitrag von Zaphod »

naja, ich hatte nie wirklich viel auf dem c64 programmiert. auf dem amiga war es mode bei entpackprozessen die farbe in abhängigkeit vom der, beim amiga ja direkt auslesbaren, position des bildschirm-elektronenstrahls zu verändern. beim c64 habe ich oft sowas ähnliches gesehen, darum dachte ich das währe gemeint.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

genau das konnte man beim C64 auch machen, die rasterzeile war auslesbar, konnte sogar an einen maskable-interrupt übergeben werden.
das wurde verwendet, um bei spielen 2 hintergrundfarben, z.b. für luft und boden, zu erhalten.

wenn man allerdings in einer schleife, z.b. mem-übertragung, ganz einfach in jedem durchlauf die hintergrundfarbe erhöht bzw erniedrigt hat, kam es zu dem wilde-streifen-effekt...
...dürfte also beim amiga ähnlich möglich gewesen sein... den hab ich nie ausgiebig programmiert...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
ZeHa
Beiträge: 4760
Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Kontaktdaten:

Beitrag von ZeHa »

Kaeru Gaman hat geschrieben:(oder wie der heißt)
LOL ja, beim ersten Wort ja ich mir sicher, beim zweiten nicht so sehr ;)
Antworten