Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; ANTIC F 320x192 + Wide Bit -> 256x192
- ; Display List
- org $2000
- SDLSTL = $0230 ; Display List starting address
- screen = $4000 ; Screen buffer
- scrru = screen + 31 ; Right Up Corner
- scrld = screen + 191 * 32 ; Left Down Corner
- scrrd = screen + 191 * 32 + 31 ; Right Down Corner
- NP32chr = 61 ; Narrow playfield (32 bytes/chars)
- SDMCTL = $022F ; https://atariwiki.org/wiki/Wiki.jsp?page=SDMCTL
- blank8 = $70 ; 8 blank lines
- anticF = $F ; ANTIC F mode
- lms = $40 ; Load memory scan
- jvb = $41 ; Jump while vertical blank
- ; Color registers
- cr_BG = 710 ; screen background
- ; Load Display List
- mwa #dlist SDLSTL
- ; Main
- lda #0
- sta cr_BG ; set screen backgroud to BLACK
- lda #NP32chr
- sta SDMCTL ; set 32 byte wide screen
- lda #$FF
- sta screen
- sta scrld
- sta scrrd
- sta scrru ; set 4 "points" of screen square corners up left/right and down left/right
- jmp *
- ; Display List
- dlist
- .byte blank8, blank8, blank8
- ; $4000 address border (start of screen memory)
- .byte anticF + lms, <screen, >screen
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF
- ; $5000 address border (start of screen memory in new 4K block)
- ; to calculate this line -> 4096*5=20480, this is 124 screen line of 32 byte per line
- ; below this line 125 screen line starts and use +lms and 2 bytes address of new screen
- ; position of $5000
- .byte anticF + lms, <($5000), >($5000)
- .byte anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF, anticF
- .byte anticF, anticF
- .byte jvb, <dlist, >dlist
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement