amiga-news ENGLISH VERSION
.
Links| Forum| Kommentare| News melden
.
Chat| Umfragen| Newsticker| Archiv
.

amiga-news.de Forum > Programmierung > window double buffer [ - Suche - Neue Beiträge - Registrieren - Login - ]

-1- [ - Beitrag schreiben - ]

05.08.2009, 09:33 Uhr

AGSzabo
Posts: 1663
Nutzer
hi,

nachdem die nahtlose brush-füll-funktion löppt möchte ich den eindruck von smooth refreshing erzeugen und zu diesem zweck das window doublebuffern. im moment versuche ich es so, dass ich eine bitmap anlege die genau so große und tief ist wie die des fensters und den zeiger darauf im rastport eintrage, aber die bitmap deren werte ich mit GetBitMapAttr() bekomme (rp_BitMap) ist immer die des Screens nicht des Fensters.

hier der verantwortliche code:
code:
; init double buffer part

		move.l	xuiWin_window(a3),a4
		move.l	wd_RPort(a4),a2
		move.l	gfxbase(pc),a6

		; free old size offbitmap

		move.l	xuiWin_offbmp(a3),d0
		beq.b	.getoffbmp

		clr.l	xuiWin_offbmp(a3)
		move.l	d0,a0
		jsr	_LVOFreeBitMap(a6)

.getoffbmp	; get new offbitmap

		move.l	rp_BitMap(a2),a0
		moveq	#BMA_HEIGHT,d1
		jsr	_LVOGetBitMapAttr(a6)
		move.l	d0,-(a7)
		move.l	rp_BitMap(a2),a0
		moveq	#BMA_WIDTH,d1
		jsr	_LVOGetBitMapAttr(a6)
		move.l	d0,-(a7)
		move.l	rp_BitMap(a2),a0
		moveq	#BMA_DEPTH,d1
		jsr	_LVOGetBitMapAttr(a6)
		move.l	d0,d2
		move.l	#BMF_MINPLANES,d3
		cmp.w	#8,d2
		ble.b	.get_sizes
		move.l	#BMF_MINPLANES|BMF_SPECIALFMT|PIXFMT_RGB24,d3
.get_sizes	move.l	(a7)+,d0
		move.l	(a7)+,d1

		sub.l	a0,a0
		jsr	_LVOAllocBitMap(a6)

		move.l	d0,xuiWin_offbmp(a3)
		beq.b	.send_draw

		; set off-bitmap into rastport

		move.l	rp_BitMap(a2),xuiWin_frontbmp(a3)
		move.l	xuiWin_offbmp(a3),rp_BitMap(a2)

		; send draw to all members

.send_draw	bsr	drawbg

		moveq	#XUIM_DRAW,d1
		move.l	a3,a0
		moveq	#XUIBMODE_EVERYBODY,d2
		bsr	_xuiBroadcast

		tst.l	xuiWin_offbmp(a3)
		beq.b	wu_rts

		; copy off-bitmap to front-bitmap

		move.l	xuiWin_offbmp(a3),a0
		move.l	xuiWin_frontbmp(a3),a1
		moveq	#0,d0
		moveq	#0,d1
		moveq	#0,d2
		moveq	#0,d3
		movem.w	wd_GZZWidth(a4),d4/d5
		move.b	#$c0,d6
		push	a2
		move.b	#$FF,d7
		sub.l	a2,a2
		jsr	_LVOBltBitMap(a6)
		pop	a2

		; set back front-bitmap into rastport

		move.l	xuiWin_frontbmp(a3),rp_BitMap(a2)


grüßl
Andreas
--
Sam os4.1, e-uae 39bb2 - A4000d 39bb2 - Cyberst.MK3 060 50mhz 128mb - Cybervis. - Ariadne_II - ide DVD und 320gb HD (nur 128gb) - HD Floppy -- A500 3.1 adide 50mb -- Duron 1600mhz Ubuntu Linux / WinXP -- BenQ FP93G TFT - 1048 like CRT - HP psc1110

[ Dieser Beitrag wurde von AGSzabo am 05.08.2009 um 10:26 Uhr geändert. ]

[ - Antworten - Zitieren - Direktlink - ]

05.08.2009, 10:36 Uhr

fingus
Posts: 155
Nutzer
@AGSzabo:

Sagmal, was wird das denn wenns fertig ist?

[ - Antworten - Zitieren - Direktlink - ]

05.08.2009, 11:02 Uhr

Thore
Posts: 2266
Nutzer
@fingus
Eine GUI Oberfläche namens xui, das weiß jeder der Andreas über die Wochen schon begleitet hat ;)
Sieht aber mal gar nicht schlecht aus, ich bin gespannt auf das Ergebnis.

[ - Antworten - Zitieren - Direktlink - ]

05.08.2009, 11:12 Uhr

AGSzabo
Posts: 1663
Nutzer
@fingus:

siehe zb hier: http://otaku.onlinehome.de/xui.jpg

@thore
> der Andreas über die Wochen schon begleitet ha

wofür ich sehr dankabr bin. wer in der readme als helfer genannt werden will (und wirklich geholfen hat) bitte pn an mich.

--
Sam os4.1, e-uae 39bb2 - A4000d 39bb2 - Cyberst.MK3 060 50mhz 128mb - Cybervis. - Ariadne_II - ide DVD und 320gb HD (nur 128gb) - HD Floppy -- A500 3.1 adide 50mb -- Duron 1600mhz Ubuntu Linux / WinXP -- BenQ FP93G TFT - 1048 like CRT - HP psc1110

[ Dieser Beitrag wurde von AGSzabo am 05.08.2009 um 11:50 Uhr geändert. ]

[ - Antworten - Zitieren - Direktlink - ]

05.08.2009, 15:40 Uhr

thomas
Posts: 7717
Nutzer
@AGSzabo:

Zitat:
den zeiger darauf im rastport eintrage

Du schreibst doch hoffentlich nicht in den Rastport des Fensters ?!

Du darfst niemals nirgends in irgendeine Struktur schreiben, die vom System angelegt wurde. Lesen ist meistens ok, aber schreiben nie. Nie.

Zitat:
(rp_BitMap) ist immer die des Screens nicht des Fensters.

Es gibt keine Bitmap des Fensters. Der Screen hat eine Bitmap, das Fenster nicht. Die Bitmap ist der physische Speicher der Anzeige. Ein Fenster ist ein logisches Objekt, dem ein Teil der physischen Anzeige zugeordnet sein kann, oder nicht.

Gruß Thomas

--
Email: thomas-rapp@web.de
Home: thomas-rapp.homepage.t-online.de/

[ - Antworten - Zitieren - Direktlink - ]

05.08.2009, 15:54 Uhr

AGSzabo
Posts: 1663
Nutzer
@thomas:

>Du schreibst doch hoffentlich nicht in den Rastport des Fensters ?!

im falle der zwischenspeicherung eines rechteckigen bereichs (get, put) habe ich einen speicher reserviert und dann mit InitRastPort() zum RP erklärt und dann eine bitmap angelegt und deren zeiger in den RP eingetragen. die autodocs schreiben dass man das so machen soll und das funktioniert soweit ich ClipBlit() benutze wunderbar.

aber im falle des double buffering weis ich nicht wie ich vorgehen soll. der codeteil im anfang des threads ist blos ein schräger versuch der nicht geht. also wie gehts denn?

was ich wohl brauche ist BltBitMapRastPort(), aber wie bekomme ich a) die maße und tiefe der offbitmap raus - vieleicht mit GZZ_from window und GetBtiMapAttr() - und vo allem, wie bekomme ich meine grafikinhalte als erstes in diese offbitmap gezeichnet? soll ich der offbitmap auch einen ratsport verpassen, da reinzeichnen und dann CLipBlit() benutzen um den inhalt auf den schirm zu bekommen?

ich frage mich woher das system bei ClipBlit() weiss wo in der bitmap der ausschnitt des fensters ist.
--
Sam os4.1, e-uae 39bb2 - A4000d 39bb2 - Cyberst.MK3 060 50mhz 128mb - Cybervis. - Ariadne_II - ide DVD und 320gb HD (nur 128gb) - HD Floppy -- A500 3.1 adide 50mb -- Duron 1600mhz Ubuntu Linux / WinXP -- BenQ FP93G TFT - 1048 like CRT - HP psc1110

[ Dieser Beitrag wurde von AGSzabo am 05.08.2009 um 15:59 Uhr geändert. ]

[ - Antworten - Zitieren - Direktlink - ]

05.08.2009, 18:04 Uhr

thomas
Posts: 7717
Nutzer
@AGSzabo:
Zitat:
habe ich einen speicher reserviert und dann mit InitRastPort() zum RP erklärt und dann eine bitmap angelegt und deren zeiger in den RP eingetragen.

Das ist ok. Mit allem, was du selbst angelegt hast, kannst du machen, was du willst. Nur mit Window->RPort nicht.


Zitat:
wie bekomme ich a) die maße und tiefe der offbitmap raus - vieleicht mit GZZ_from window

Exakt. GZZWidth und GZZHeight enthalten die Größe des Innenteils des Fensters.

Zitat:
und GetBtiMapAttr()

Es wäre sinnvoller, mit einer Friend-Bitmap zu arbeiten. Die erbt dann bei einem Truecolor-Screen auch die Palette des Screens. Ansonsten kannst du bei der Offline-Bitmap nämlich nicht mit Pens arbeiten.


Zitat:
wie bekomme ich meine grafikinhalte als erstes in diese offbitmap gezeichnet? soll ich der offbitmap auch einen ratsport verpassen, da reinzeichnen

Genau so.


Zitat:
und dann CLipBlit() benutzen um den inhalt auf den schirm zu bekommen?

Was hindert dich, BltBitMapRastPort zu benutzen, nachdem du die Bitmap fertig gezeichnet hast ?

Aber ClipBlit ist genauso gut.

Zitat:
ich frage mich woher das system bei ClipBlit() weiss wo in der bitmap der ausschnitt des fensters ist.

Das steht im RastPort, genauer im Layer.

Gruß Thomas

--
Email: thomas-rapp@web.de
Home: thomas-rapp.homepage.t-online.de/

[ - Antworten - Zitieren - Direktlink - ]

05.08.2009, 21:12 Uhr

AGSzabo
Posts: 1663
Nutzer
@thomas:

so. jetzt habe ich es gemacht wie eben besprochen. es passiert aber garnix, obwohl (zur bug-einkreisung) zwar nichts gezeichnet wurde, aber die stelle mit dem BltBitMapRastPort() und einer leeren quellbitmap durchlaufen wird. es muesste eigntlich das fenster geleert werden, wird es aber nicht. Stimmt was mit meinem off-RastPort oder der BitMap darin nicht? woran könnte es liegen wenn die Funktion aufgerufen wird und aber nix passiert (minterm $c0)? nichtmal ein absturz?

so allokiere ich die off-bitmap:
code:
.getoffbmp	; get new size offbitmap

		move.l	rp_BitMap(a2),a0
		moveq	#BMA_DEPTH,d1
		jsr	_LVOGetBitMapAttr(a6)
		move.l	d0,d2
		move.l	#BMF_MINPLANES|BMF_INTERLEAVED,d3
		cmp.w	#8,d2
		ble.b	.set_sizes
		move.l	#BMF_MINPLANES|BMF_SPECIALFMT|PIXFMT_RGB24|BMF_INTERLEAVED,d3
.set_sizes	moveq	#0,d0
		moveq	#0,d1
		movem.w	wd_GZZWidth(a4),d0/d1
		move.l	rp_BitMap(a2),a0		; friend bitmap
		jsr	_LVOAllocBitMap(a6)


und so kopiere ich das off-bild nach vorne:
code:
move.l	xuiWin_offbitmap(a3),a0
		move.l	a2,a1   ; front rastport
		moveq	#0,d0
		moveq	#0,d1
		moveq	#0,d2
		moveq	#0,d3
		movem.w	wd_GZZWidth(a4),d4/d5
		move.b	#$c0,d6
		jsr	_LVOBltBitMapRastPort(a6)


--
Sam os4.1, e-uae 39bb2 - A4000d 39bb2 - Cyberst.MK3 060 50mhz 128mb - Cybervis. - Ariadne_II - ide DVD und 320gb HD (nur 128gb) - HD Floppy -- A500 3.1 adide 50mb -- Duron 1600mhz Ubuntu Linux / WinXP -- BenQ FP93G TFT - 1048 like CRT - HP psc1110

[ Dieser Beitrag wurde von AGSzabo am 05.08.2009 um 21:40 Uhr geändert. ]

[ - Antworten - Zitieren - Direktlink - ]

05.08.2009, 22:30 Uhr

thomas
Posts: 7717
Nutzer
Zitat:
move.l #BMF_MINPLANES|BMF_SPECIALFMT|PIXFMT_RGB24|BMF_INTERLEAVED,d3

Ich weiß nicht, wie die Assembler-Includes aussehen, aber bei C ist PIXFMT_#? ist eine Zahl zwischen 1 und 15 oder so. Wenn du das einfach so dazu-oderst, dann machst du dir die ganzen Flags kaputt und setzt überhaupt kein Pixel-Format. Das muß noch ein paar Bits nach links geshiftet werden. Bei C gibt es das Makro SHIFT_PIXFMT oder so ähnlich dafür.

BMF_INTERLEAVED macht bei Truecolor auch nicht viel Sinn. Wenn man eine Friend-Bitmap angibt, reicht es normalerweise, BMF_MINPLANES anzugeben. Alles andere wird sowieso vom Friend übernommen. MINPLANES ist ja nur dazu da, um Cybergraphics zu sagen, daß man mit Truecolor-Bitmaps umgehen kann. Sonst bekommt man keine.

Zitat:
woran könnte es liegen wenn die Funktion aufgerufen wird und aber nix passiert

Normalerweise ist dann das Pixelformat der beiden Bitmaps nicht kompatibel.

Gruß Thomas

--
Email: thomas-rapp@web.de
Home: thomas-rapp.homepage.t-online.de/

[ - Antworten - Zitieren - Direktlink - ]

05.08.2009, 22:40 Uhr

AGSzabo
Posts: 1663
Nutzer
@thomas:

ich war so frei und hatte das pixfmt im .i auf <<24 geändert weil im autodoc stand dass es im obersten byte sein muss.

der code ist jetzt so:
code:
.getoffbmp	; get new size offbitmap

		move.l	rp_BitMap(a2),a0
		moveq	#BMA_DEPTH,d1
		jsr	_LVOGetBitMapAttr(a6)
		move.l	d0,d2
		move.l	#BMF_INTERLEAVED,d3
		cmp.w	#8,d2
		ble.b	.set_sizes
		move.l	#BMF_MINPLANES,d3	;|BMF_SPECIALFMT|PIXFMT_RGB24|BMF_INTERLEAVED,d3
.set_sizes	moveq	#0,d0
		moveq	#0,d1
		movem.w	wd_GZZWidth(a4),d0/d1
		move.l	rp_BitMap(a2),a0		; friend bitmap
		jsr	_LVOAllocBitMap(a6)


es funktioniert aber nach wie vor nicht, es passiert garnichts. obwohl der obige code eine bitmap zurueckliefert.
--
Sam os4.1, e-uae 39bb2 - A4000d 39bb2 - Cyberst.MK3 060 50mhz 128mb - Cybervis. - Ariadne_II - ide DVD und 320gb HD (nur 128gb) - HD Floppy -- A500 3.1 adide 50mb -- Duron 1600mhz Ubuntu Linux / WinXP -- BenQ FP93G TFT - 1048 like CRT - HP psc1110

[ Dieser Beitrag wurde von AGSzabo am 05.08.2009 um 22:46 Uhr geändert. ]

[ - Antworten - Zitieren - Direktlink - ]

06.08.2009, 15:16 Uhr

AGSzabo
Posts: 1663
Nutzer
jetzt habe ich es soweit das sich wenigsten iragendwas tut. ich musste blos a4 über drawbg hinweg retten. aber mit dem zeichnen geht es noch nicht so wie es soll. es kommt entweder in falschen farben oder garnicht (dann dreht die festpallte durch bis ich uae beende). jetzt ist mir was eingefallen woran es liegen könnte: muss ich vielleicht meinem off-rastport auch einen layer verpassen (was ziemlich kompliziert sein dürfte)?

um den fehler einzukreisen habe ich eine simple zeichenfunktion auf die off-bitmap durch den off-rastport gemacht. einfach ein rechteck mit farbe 3 füllen. aber egal welche farbe ich setze, es kommt immer blos ein schwarzes rechteck raus. das kopieren von der off-bitmap in die front rastport scheint aber jetzt zu funktionieren. es stimmt etwas mit dem off-rastport nicht! oder das mit der friend bitmap geht nicht?

ps: unter os4 geht das mit dem testrechteck, blos meine gui zeichnet sich nicht / grim at addi im rom / system friert ein.
--
Sam os4.1, e-uae 39bb2 - A4000d 39bb2 - Cyberst.MK3 060 50mhz 128mb - Cybervis. - Ariadne_II - ide DVD und 320gb HD (nur 128gb) - HD Floppy -- A500 3.1 adide 50mb -- Duron 1600mhz Ubuntu Linux / WinXP -- BenQ FP93G TFT - 1048 like CRT - HP psc1110


[ Dieser Beitrag wurde von AGSzabo am 06.08.2009 um 16:59 Uhr geändert. ]

[ - Antworten - Zitieren - Direktlink - ]

10.08.2009, 21:54 Uhr

Holger
Posts: 8116
Nutzer
Zitat:
Original von AGSzabo:
muss ich vielleicht meinem off-rastport auch einen layer verpassen...

Nur wenn Du über den Rand hinaus zeichnest.
Zitat:
... (was ziemlich kompliziert sein dürfte)?
Nicht komplizierter als die meisten anderen Operationen.
Zitat:
aber egal welche farbe ich setze, es kommt immer blos ein schwarzes rechteck raus. das kopieren von der off-bitmap in die front rastport scheint aber jetzt zu funktionieren. es stimmt etwas mit dem off-rastport nicht! oder das mit der friend bitmap geht nicht?
Arbeitest Du noch unter AOS3.x? Dann bist Du möglicherweise über ein leidiges Problem gestolpert: das System funktioniert eigentlich nur mit Paletten. Um auf eine TrueColor-BitMap korrekt zu zeichnen, brauchst Du auch einen ViewPort, in dem die aktuelle Farbpalette enthalten ist. Und den gibt es nur bei Screens, nicht bei Offscreen-BitMaps. Die Magie, mit der ein RastPort mit einem ViewPort verknüpft ist, ist stark systemspezifisch (CGX vs. P96).

mfg

--
Good coders do not comment. What was hard to write should be hard to read too.

[ - Antworten - Zitieren - Direktlink - ]

11.08.2009, 07:13 Uhr

AGSzabo
Posts: 1663
Nutzer
@Holger:

> Um auf eine TrueColor-BitMap korrekt zu zeichnen, brauchst Du auch einen ViewPort, in dem die aktuelle Farbpalette enthalten ist. Und den gibt es nur bei Screens, nicht bei Offscreen-BitMaps.

Hier wurde schon behauptet den viewport könne man verknüpfen indem man die window/screen bitmap als friend-bitmap üebergibt?

allerdings gibt es weder im rastport, noch in der bitmap einen zeiger auf den viewport. also wie soll das gehen? folglich muss es was mit den special-format bitmaps z tun haben!

--
Sam os4.1, e-uae 39bb2 - A4000d 39bb2 - Cyberst.MK3 060 50mhz 128mb - Cybervis. - Ariadne_II - ide DVD und 320gb HD (nur 128gb) - HD Floppy -- A500 3.1 adide 50mb -- Duron 1600mhz Ubuntu Linux / WinXP -- BenQ FP93G TFT - 1048 like CRT - HP psc1110

[ Dieser Beitrag wurde von AGSzabo am 11.08.2009 um 08:22 Uhr geändert. ]

[ - Antworten - Zitieren - Direktlink - ]

11.08.2009, 17:59 Uhr

Der_Wanderer
Posts: 1229
Nutzer
Richtig. Und das ist soweit ich weis nirgends dokumentiert, bzw. es gibt keinen legalen Zugriff darauf.
Wenn du auf eine True color bitmap malen willst, gibt es nur zwei möglichkeiten:

1) Erzwinge ARGB (oder ein anderes Pixelformat) und zeichne selbst in die RAW Daten hinein.
Problematisch wird es allerdings, wenn du das Resultat auf einem 8bit Screen anzeigen willst. Dann musst du selbst Hand anlegen beim Re-mapping-

2) Verknüpfe die Bitmap mit der Screen Bitmap via Friendbitmap und benutze OS Funktionen. Die Bitmap ist dann aber nicht notwendigerweise True Color, sie kann alles mögliche sein, also treffe keine Annahmen über die RAW Daten.


BTW, ich verstehe nicht ganz warum du das ganze in 68k ASM machst. Damit ist dein GUI system auf 68K beschränkt für alle Ewigkeit, und somit wird es niemand benutzen.




--
HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, AB3 Includes und viele mehr...
Homepage: http://www.hd-rec.de


[ - Antworten - Zitieren - Direktlink - ]

11.08.2009, 19:52 Uhr

AGSzabo
Posts: 1663
Nutzer
@Der_Wanderer:

> Verknüpfe die Bitmap mit der Screen Bitmap via Friendbitmap u

habsch probiert. kommt blos der selbe datenmüll auf den bildschirm. angeblich (war hier igrendwo erwähnt) ist die bitmap des fenster rasports auch die des screens.


[EDIT]

Hab nochmal was im Code umgestellt und jetzt geht es, aber vielleicht noch nicht alle zeichenoperationen...


[/EDIT]




> BTW, ich verstehe nicht ganz warum du das ganze in 68k ASM machst.

ob ich ein assembler programm oder ein basic programm unter os4 laufen lasse ist das selbe, beides muss interpretiert werden. naja, für basic gibts compiler, aber siehe zb java, da wird auch blos into einen speziellen code compiliert, der noch nicht = maschienencode ist.

68k programme laufen auf ALLEN amiga systemen. ich bin mit der geschwindigkeit von petunia und co zufrieden.

betrachten wir 68k assembler unter os4 als eine art java.

unabhängig davon gillt ausserdem: ich schreibe es für mein wohlgefallen. obs wer benutz ist egal aber fraglich .. und man könnte diese frage mit ja beantworten, wenn man mal sieht wie toll es ausschaut: http://otaku.onlinehome.de/xuibig.jpg

mfg,
Andreas
--
Sam os4.1, e-uae 39bb2 - A4000d 39bb2 - Cyberst.MK3 060 50mhz 128mb - Cybervis. - Ariadne_II - ide DVD und 320gb HD (nur 128gb) - HD Floppy -- A500 3.1 adide 50mb -- Duron 1600mhz Ubuntu Linux / WinXP -- BenQ FP93G TFT - 1048 like CRT - HP psc1110

[ Dieser Beitrag wurde von AGSzabo am 11.08.2009 um 19:53 Uhr geändert. ]

[ Dieser Beitrag wurde von AGSzabo am 12.08.2009 um 17:56 Uhr geändert. ]

[ - Antworten - Zitieren - Direktlink - ]

02.09.2009, 20:01 Uhr

AGSzabo
Posts: 1663
Nutzer
AllocBitMap stürzt ab

Nachdem das hantieren mit der off-bitmap (friend zur screenbitmap) unter e/uae 3.9 bb2 und os 4.1 funktioniert, entdecke ich leider dass AllocBitMap() unter native amiga os 3.0 (68040, 4 farben) abstürzt oder null zurück liefert! zur info: das programm öffnet und benutzt alle libraries ab v39, sollte also mit os3.0 zusammenpassen .. geht aber nicht!

das ist der fragliche code:

code:
move.l	xuiWin_window(a3),a4
		move.l	wd_WScreen(a4),a0
		movem.w	sc_Width(a0),d0/d1
		move.l	#0,d2
		move.l	#BMF_MINPLANES,d3

		move.l	sc_RastPort+rp_BitMap(a0),a0	; friend bitmap
		jsr	_LVOAllocBitMap(a6)

		move.l	xuiWin_offrastport(a3),a0

		move.l	d0,rp_BitMap(a0)


interessant in diesem zusammenhang ist vielleicht auch, dass der debugger unter os3.0 in der AllocBitmap zeile statt "AllocBitMap" komischerweise "CoerceMode" anzeigt. der offset an der stelle ist aber laut lvo derjenige von AllocBitMap.

wer weis da weiter?

grüsse,
Andreas
--
Sam os4.1, e-uae 39bb2 - A4000d 39bb2 - Cyberst.MK3 060 50mhz 128mb - Cybervis. - Ariadne_II - ide DVD und 320gb HD (nur 128gb) - HD Floppy -- A500 3.1 adide 50mb -- Duron 1600mhz Ubuntu Linux / WinXP -- BenQ FP93G TFT - 1048 like CRT - HP psc1110

[ - Antworten - Zitieren - Direktlink - ]

03.09.2009, 10:09 Uhr

thomas
Posts: 7717
Nutzer
@AGSzabo:

Ich denke mal, es liegt an der Farbtiefe 0. Das macht nicht sehr viel Sinn.

Gruß Thomas

--
Email: thomas-rapp@web.de
Home: thomas-rapp.homepage.t-online.de/

[ - Antworten - Zitieren - Direktlink - ]

03.09.2009, 10:17 Uhr

AGSzabo
Posts: 1663
Nutzer
@thomas:

gut möglich aber das würde bedeuten dass es dem amiga mit grafikkarte egal ist wwas man als bittiefe angibt. ich dachte der holt sich das IMMER von der friend-bitmap?

grüsse,
Andreas

--
Sam os4.1, e-uae 39bb2 - A4000d 39bb2 - Cyberst.MK3 060 50mhz 128mb - Cybervis. - Ariadne_II - ide DVD und 320gb HD (nur 128gb) - HD Floppy -- A500 3.1 adide 50mb -- Duron 1600mhz Ubuntu Linux / WinXP -- BenQ FP93G TFT - 1048 like CRT - HP psc1110

[ - Antworten - Zitieren - Direktlink - ]

03.09.2009, 10:49 Uhr

thomas
Posts: 7717
Nutzer
@AGSzabo:

Das Pixelformat und Attribute wie Interleaved werden von der Friend-Bitmap übernommen, Breite, Höhe und Farbtiefe nicht.

Bei chunky Pixelformaten hat die Farbtiefe keine Auswirkung, deshalb kann man die da weglassen. Bei planaren Bitmaps bestimmt die Farbtiefe, wieviele Bitplanes allokiert werden.

Gruß Thomas

--
Email: thomas-rapp@web.de
Home: thomas-rapp.homepage.t-online.de/

[ - Antworten - Zitieren - Direktlink - ]

03.09.2009, 14:48 Uhr

AGSzabo
Posts: 1663
Nutzer
@thomas:

jetzt geht es. 1k dank!
--
Sam os4.1, e-uae 39bb2 - A4000d 39bb2 - Cyberst.MK3 060 50mhz 128mb - Cybervis. - Ariadne_II - ide DVD und 320gb HD (nur 128gb) - HD Floppy -- A500 3.1 adide 50mb -- Duron 1600mhz Ubuntu Linux / WinXP -- BenQ FP93G TFT - 1048 like CRT - HP psc1110

[ - Antworten - Zitieren - Direktlink - ]


-1- [ - Beitrag schreiben - ]


amiga-news.de Forum > Programmierung > window double buffer [ - Suche - Neue Beiträge - Registrieren - Login - ]


.
Impressum | Datenschutzerklärung | Netiquette | Werbung | Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten.
.