Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.
Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.
dli: pha
txa
pha
ldx #0
loop:
lda xpos,x
sta HSCROL,x ;$D404
sta WSYNC ;$D40A
inx
cpx #100 ;ilość linii ekranu ze skrolem
bcc loop
pla
tax
pla
rti
int d = 0, l = 0;
for (int i = 0; i < 72; i++) {
DISTAB[72-1-i] = l;
d = d + TOURTAB[TOURPOS+i];
l = l + d;
}
HSCROL = DISTAB[i] & 3
int a = 0x8000; //pierwsza linia ekranowa od $8000
for (int i = 0; i < 72; i++) {
LMS[i] = a + 40 + DISTAB[i] / 4;
a += 80; //szerokość logicznej linii
}
TOURSTEP = {
14,
13,13
12,12,
11,11,11,
10,10,10,
9,9,9,9,
8,8,8,8,8,
7,7,7,7,7,
6,6,6,6,6,6,
5,5,5,5,5,5,5,
4,4,4,4,4,4,4,4,
3,3,3,3,3,3,3,3,
2,2,2,2,2,2,2,2,2,
1,1,1,1,1,1,1,1,1,1,
0,0,0,0,0,0,0,0,0,0,
};
int d = 0, l = 0, s = 0;
for (int i = 0; i < 72; i++) {
DISTAB[72-1-i] = l;
if (s != TOURSTEP[72-1-i]) {
d = d + TOURTAB[TOURPOS+TOURSTEP[72-1-i]];
l = l + d;
s = TOURSTEP[72-1-i];
}
}