oczywiscie wszystko zalezy jaka to bedzie "obrobka". Teksturowanie napewno bedzie wolniejsze bo juz je testowalem jakis czas temu ;) co do blur'a to sie nie wypowiem, wszystko zalezy od algorytmu, dla dokladniejszego blur'a prawdopodobnie sposob z buforem 1bajt/pixel bedzie szybszy i wygodniejszy, poniewaz trzeba bedzie odczytywac kilka pixeli (co napewno bedzie szybsze niz bawic sie z nibblami), w sumi gdyby sie zastanowic to mozna dojsc do wniosku ,ze wszystkie algorytmy ktore wymagaja odczytu zawartosci pixela powinny dzialac szybciej z buforem 1bajt/pixel, bo caly klopot to wlasnie odczyt pixela z bufora (trzeba ANDowac albo uzywac do tego tablic) a nie zapis...
jedno jest pewne, taka organizacja ekranu jest "ladna" z punktu widzenia programisty bo wtedy bardzo przyjemnie sie pisze program, z szybkoscia bywa roznie ;)
trzeba jeszcze wziosc pod uwage, ze czyszczenie takiego bufora zajmuje 2 razy wiecej czasu niz czyszczenie ekranu, poniewaz bufor bedzie 2 razy wiekszy niz pamiec ekranu...
a co do:
lda kolor
ldy pos_x
sta (screenp),y
policzmy cykle: 3+3+6=12cykli na zapis do bufora, teraz dodamy jeszcze cykle jakie sa potrzebne zeby "skonwertowac" pixel:
ldx backbuf
lda mul16tb,x
ora backbuf+1
sta screen
mamy 4+3+4+4=15cykli/per two pixels, czyli srednio 8cykli na pixel, dodajmy to 12+8=20 cyki, do tego jeszcze dochodza 4 dodatkowe cykle na czyszczenie bufora, 10+4=24 i tyle potrzeba cykli aby postawic 1 pixel.
teraz normalna procka do stawiania pixeli (na nibblach):
ldx pos_x
ldy div2tab,x
lda (scr),y
and maska,x
ora kolor,x
sta (scr),y
3+4+5+4+4+6=26cykli
hmm czyli teoretycznie wyglada na to ,jesli dobrze wszystko obliczylem ,ze stawianie pojedynczych pixeli jest szybsze w trybie "chunk" o 2 cykli T___T, ale napewno jest wolniejsze niz stawianie kilku pixeli na raz, bo procka na nibblach by wygladala mniej wiecej tak:
ldx kolorpixelapierwszego
lda mul16tb,x
ora kolorpixeladrugiego
sta (scr),y
iny
...
co by dawalo 3+3+3+6+2=17cykli/per two pixels, czyli 8/9 cykli na pixel
a w "chunk" wygladalo by to tak:
lda kolorpixelapierwszego
sta (scr),y
iny
lda kolorpixeladrugiego
sta (scr),y
iny
3+6+2 + 3+6+2 = 22cykli na zapis do bufora + 8 cykli na wyczyszczenie bufora + 15cykli na konwersje, czyli mamy razem 35cykli/per two pixels!!! czyli 17-18cykli na pixel!!! co jest dwa razy wolniejsze niz ta sama procedura na niblach....