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.
dta b($c2+$10),a(obraz)
lda #$0c ;przesunięcie o 3 znaki w prawo
sta $d404 ; rejestr HScrol
...................
never jmp never
mono:
Przecież DMA ma Antic, więc to on bierze dane dla sprajtów, to dlaczego nie wystawia ich kształtów dla GTIA tak, jak dla pola gry?xxl:
juz w 1977 atari dysponowalo ukladem generujacym sprity hires o rozdzialce poziomej 16 px w ilosci chyba 8 sztuk (jak trzeba bedzie to sprawdze:p) mogly poruszac sie o 1 pixel hires i mialy kolory. przykladem jest gra sprint4 z automatow.epi:
Nie wiem, czy są jakieś komputery, które umożliwiają zmianę fazy chromy częściej. Nie wiem też, jak telewizory/monitory/karty tv reagują na takie zmiany. (Ale chętnie się dowiem :))mono:
Jak lubisz niekonsekwencje, to włącz obydwa scrolle w linii trybu tekstowego hires i na dodatek przerwanie. Zobaczysz co się będzie działo ze znaczkami z lewej strony ekranu :)obraz equ $6000
opt h+
org $5000
lda#$23
sta 559
lda <ant ;adres programu ANTICA
sta 560
lda >ant
sta 561
lda 20 ;czekamy na synchro :)
cmp 20
beq *-2
lda <dli ;mlodszy bajt naszego nowego DLI
sta $200
lda >dli ;starszy bajt naszego nowego DLI
sta $201
lda #$c0 ;pozwalamy na przerwania DLI
sta $d40e
lda #$0c
sta $ff
skok jmp skok
dli pha ;A (akumulator) na stos
tya ;rej.Y do A
pha ;A na stos
lda 15
sta $d017
ldy #100
l0 tya
sta $d40a
sta $d018
sta$d01a
dey
bne l0
dec $ff
lda $ff
cmp #$00
bne dalej
lda#$0c
sta $ff
dalej
sta $d404
pla ;zdejmij ze stosu do A
tay ;z A do Y
pla ;zdejmij ze stosu do A
rti ;wyjście
ant dta b($70,$70+$80) ;2 x 8 pustych linii
dta b($70) ;8 pustych linii z przerwaniem DLI, bo `+$80`
dta b($72),a(obraz) ;tutaj już wszyscy wiedzą co i jak itd
dta b(5,5,5,5,5)
dta b($41),a(ant)
org (obraz)
dta d'abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc'
$D016 - 53270:
Screen control register #2. Bits:jhusak:
Jedyne co mogło by być, to nowy układ pomiędzy ANTIC i GTIA podkładający świnie, tfu sprajty, w locie :) Ale byłyby one takiej rozdzielczości, i w tych samych kolorach, co pole gry.0xF:
To się nazywa VBXE. :)jhusak:
I właśnie tak działa?epi:
Robi to w cyklach następujących po wykryciu opadającego zbocza /HALT w czasie wygaszania poziomego. O wygaszaniu poziomym informują stany 010 i 011 na AN2-AN0 od ANTICa.epi:
Granie sampli na DMA graczy/pocisków wymyśliłem już parę lat temu. Trzeba dodać trochę prostej elektroniki, żeby w cyklach DMA P/MG wygenerować WR dla np. Covoxa. Trzeba też załatwić linie poza ekranem, w których dane P/MG nie są czytane, programowo.at0mic:
dodatkowy bajerem jest to że tekst w c64 można przesuwać w zakresie 0-7 ten sam znak czyli górna część znaku i dolna mogą być inaczej wysunięte a w a8 trzeba już robić to w trybie graficznym bo wcięcie D404 dotyczy całej linii z DLI. Dlatego faraon na Atari jest w trybie graficznym a w C64 został zrobiony w trybie tekstowym.HSCROLL =$D404
VCOUNT =$D40B
RANDOM =$D20A
WSYNC =$D40A
org $600
loop:
lda #$12
ldx #16
lp4:
sta $BC28,x ;podmiana linii display list - ustawienie hscroll
dex
bne lp4
lp2:
lda RANDOM ; zapełnianie ekranu śmieciami
sta $BC40,x
sta $BD40,x
sta $BE40,x
sta $BF40,x
dex
bne lp2
lp3:
lda VCOUNT
sta WSYNC
sta HSCROLL ; kopiowanie vcount do HSCROLL w pętelce :)
jmp lp3
run loop
0xF:
W zeszłym roku Phaeron od Altirry poszedł dalej i dzięki precyzyjnym trickom z HSCROLem rozszerzył DMA obrazu na wygaszenie poziome - dzięki temu PMG jest pobierane wg licznika pamięci obrazu. Ale to już temat dla największych guru, a nie początkujących. ;)Kuba:
Dotąd nie różnię się od przeciętnego zjadacza chleba :D