Tak sobie myślę, że operowanie na 4-bajtowych wartościach w mode 9 jest niezbyt szybkie, a i wygoda pisania wszelakich operacji
na obrazie w trybach tego typu pozostawia do życzenia. Nasunął mi się więc banalny pomysł, żeby zrobić dwa tylne bufory - jeden
standardowy, a drugi z jednobajtowymi wartościami kolorów pikseli. Nie wiem czy jasno tłumaczę: jeśli normalnie mamy dla dwóch
punktów coś takiego:
#$AF
to w back-backbufferze jest to rozpisane jako:
#AA, #$FF
Tak więc proces chunk2nibble przebiega w następujący sposób:
    ldx #59        ;59
yeh    ldy cnt2        ;licznik dla chunkbufora
kp    lda (c_bufpnt),y
    and #$F0        ;lewy nibble
    sta lewy
    iny        ;next bajt
    lda (c_bufpnt),y
    and #$0F        ;prawy nibble
    ora lewy        ;sklej
    iny
    sty cnt2
    ldy cnt1        ;licznik dla ekranu
    sta (scrpnt),y    ;na bufor, tudzież ekran
    iny
    sty cnt1
    cpy #40
    bne yehDo tego dochodzi oczywiście przeładowanie adresów, które też zabija sporo cykli (nawet jeśli na raz załatwimy więcej niż jedną
linię, jak w przykładzie). Jeśli za pomocą tej procki przerzucam chunk'a bezpośrednio na screen, to niestety widać jak wszystko się
rysuje, a dodatkowego bufora nie chcę angażować. W związku z tym dwa pytania:
1. Jak to zrobić żeby chodziło w jednej ramce (niekoniecznie optymalizując mój kod - może stosując inne techniki?)
2. Czy to ma wogóle sens?
Z góry jak zawsze THC.