1

Temat: ANTIC Display List

Ktoś podpowie co skopałem?

Pierwsze 256 bajtów to $FF dalej $55, chcę uzyskać pełny obraz w trybie ANTIC F, jak widać na obrazku te 256 pierwszych bajtów się powiela 2 razy.

antic    dta b($70),b($70),b($70)
    dta b($4f),a(obraz) 
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($4f),l(0),h(obraz+$0FF0)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($41),a(antic)

Ostatnio edytowany przez PROTON (2017-06-28 21:10:24)

Post's attachments

altirra.png 11.18 kb, nikt jeszcze nie pobierał tego pliku. 

Tylko zalogowani mogą pobierać załączniki.

2

Odp: ANTIC Display List

A obraz zaczyna się od $x000-$ff0 ?

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

3

Odp: ANTIC Display List

2 adres jest zly, nie jest wyrownany do 4096. Antic wyswieta Ci pare bajtow a nastepnie po przekroczeniu 4kb zawija sie i wyswietla dane z obraz przesuniete o kilka bajtow.

dl  :3 dta $70
 dta $4f, a($4010)
 :101 dta $0f
 dta $4f, a($5000)
 :97 dta $0f
    dta $41, a(dl)

Ostatnio edytowany przez Vidol (2017-06-29 06:11:06)

4

Odp: ANTIC Display List

Wrzucam cały kod, może gdzieś indziej mam błąd ?!?!
Efekt jest taki, że w obudwóch połówkach obrazu zawija sie licznik ANTIC-a.

    org $8000

adr    equ $CC
obraz    equ $9000

    ldx <antic
    ldy >antic
    stx 560
    sty 561
    
    lda #<obraz
    sta adr
    lda #>obraz
    sta adr+1
    
    ldx #$19
    ldy #$00 
    lda #$FF
pisz    sta (adr),y
    dey
    bne pisz
    dex
    beq loop
    
    clc
    lda #$FF
    adc adr
    sta adr
    lda #$00
    adc adr+1
    sta adr+1
    lda #$55
    jmp pisz

loop    jmp loop

antic    dta b($70),b($70),b($70)
    dta b($4f),a(obraz) 
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($4f),l(0),h(obraz+$1000)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f),b($1f)
    dta b($41),a(antic)
    

5

Odp: ANTIC Display List

blad jest taki ze wstawiasz $1f zamiast $0f. Przy $1f linia ekranowa  ma 48 bajtow a nie 40 i stad to zawiajanie. Dla szerokiego ekranu nowy adres trzeba ustawic po 85 liniach. I obraz nie moze byc od $9000 tylko od $9010.

Ostatnio edytowany przez Vidol (2017-06-29 09:06:03)

6

Odp: ANTIC Display List

@Vidol, dzięki, to było to!
Fachowiec rzucił okiem i od razu zobaczył błąd :)

7

Odp: ANTIC Display List

fachura :)

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C