>Teraz wyobraź sobie długie skrolowanie w dół. Aby ograniczyć przepisywanie pamięci, dorysowujemy tylko dolną linię i zwiększamy LMS. Jednak musimy mieć jakąś granicę, bo inaczej zamazalibyśmy całą pamięć. Dlatego zaczynamy rysować w pamięci "od góry" (której już nie widać) i w DL musimy wstawić drugi LMS, gdzie na ekranie zaczyna się ta "góra".
> Nie do tego, że mamy w pamięci całą wielką grafikę i chcemy ją skrolować. Grafikę generujemy na bieżąco.
wlasnie o tym mowie.
1 linia znaki: 0,1,2,3,.....47, pierwszy zestaw znakow
2 linia znaki: 48,49,......95, pierwszy zestaw znakow - reszta znakow dla spritow
3 linia znaki: 0,1,2,3,.....47, drugi zestaw znakow
4 linia znaki: 48,49,......95, drugi zestaw znakow - reszta znakow dla spritow
....
jesli chcemy scrollowac w bok to wstarczy zwiekszyc LMS o 2 otrzymujemy
1 linia znaki: 2,3,.....47,0,1, pierwszy zestaw znakow
2 linia znaki: 50,51,......95,48,49 pierwszy zestaw znakow - reszta znakow dla spritow
3 linia znaki: 2,3,.....47,0,1, drugi zestaw znakow
4 linia znaki: 50,51,......95,48,49 drugi zestaw znakow - reszta znakow dla spritow
w pamieci obrazu nie kopiujemy niczego
w pamieci zestawu znakow na pozycji 0,1,48,49 lub 0,1,2,3 zalezy jak zbudowana jest linia kopiujemy klocka - nie ma ograniczen co do rozmaitosci grafiki - nie ogranicza nas 128 elementow w zestaw znakow
zeby zrobic scroll pionowy o jeden klocek wystarczy w dli zmienic zestaw na ten nizszy czyli
1,2 linia zestaw 1
3,4 linia zesatw 2
5,6 linia zestaw 3
po scrollu:
1,2 linia zestaw 2
3,4 linia zesatw 3
5,6 linia zestaw 0
i w zestaw zero kopiujemy definicje klockow
i tu nie trzeba zwiekszac nic po LMS
> Zestawy znaków nie mają tu nic do rzeczy.
to by oznaczalo ze mamy ograniczona ilosc elementow graficznych - bo zestaw ma 128 znakow a jeszcze potrzeba cos na sprity programowe.
obawiam sie ze to chyba nie jest MWP.
czy zestaw znakow w MWP jest jeden?