;license:MIT ;(c) 2019 by 4am ; !cpu 6502 !to "build/FX.INDEXED/DHGR.DIAGONAL",plain *=$6000 hgrlo = $0200 ; [$C0 bytes, main memory only] hgr1hi = $0300 ; [$C0 bytes, main memory only] copymasks= $02C0 ; [$08 bytes, different values in main and auxmem] !source "src/fx/macros.a" ldx #(end-start) ; copy code to zero page - lda start-1, x sta $FF, x dex bne - +BUILD_HGR_LOOKUP_TABLES_X_IS_ALREADY_0 hgrlo, hgr1hi ldy #8 ; copy copymask arrays into place in main and auxmem - lda copymasks_main-1, y sta copymasks-1, y lda copymasks_aux-1, y sta $C005 sta copymasks-1, y sta $C004 dey bne - jmp loop ;1GFEDCBA -> ;1GGFFEED (main) + ;1DCCBBAA (aux) copymasks_aux ; used in reverse order !byte %11111111 !byte %11111100 !byte %11110000 !byte %11000000 !byte %00000000 !byte %00000000 !byte %00000000 !byte %00000000 copymasks_main ; used in reverse order !byte %11111111 !byte %11111111 !byte %11111111 !byte %11111111 !byte %11111110 !byte %11111000 !byte %11100000 !byte %00000000 start !pseudopc 0 { loop lda #23 sta