Union Jack / lock-down challenge, draw your country's flag..

Basic and Machine Language

Moderator: Moderators

User avatar
beamrider
Vic 20 Scientist
Posts: 1452
Joined: Sun Oct 17, 2010 2:28 pm
Location: UK

Re: Union Jack / lock-down challenge, draw your country's flag..

Post by beamrider »

nice one!

Without studying your code too much, are you shifting around the ROM char to get fine placement (and if so what is the char data for at the end)?
User avatar
aitsch
Vic 20 Amateur
Posts: 51
Joined: Sun Mar 08, 2020 12:54 pm
Location: Germany NS

Re: Union Jack / lock-down challenge, draw your country's flag..

Post by aitsch »

For the best placement i've used a single character star, a horizontal halfed and a vertical halfed star. These are the custom characters.
User avatar
aitsch
Vic 20 Amateur
Posts: 51
Joined: Sun Mar 08, 2020 12:54 pm
Location: Germany NS

Re: Union Jack / lock-down challenge, draw your country's flag..

Post by aitsch »

pirates.png
pirates.png (11.52 KiB) Viewed 245 times
I've always wanted to try out custom and rom characters in a mixed mode :wink:

Code: Select all

*=$1001
!byte $0b,$08, $e2,$07, $9e, $20, $34, $36, $30, $32, $00,$00, $00

*=$11fa
                          ; char pointer to $1c00 / screen to $100 / screen color to $9400
                          lda $9002
                          and #%01111111
                          sta $9002
                          lda #%11001111
                          sta $9005
                          
                          ;CLS
                          ldy #0
                          lda #160
  .loop                   sta $1000,y                          
                          sta $1100,y
                          dey
                          bne .loop
                          
                          ; char color
                          ldy #0
                          sty $0286 
                          
                          ; draw flag
 .x                       ldx #2
 .flag                    lda flag,y
                    srn   sta $1000,x
                          iny
                          dex
                          bpl .flag
                          lda srn+1
                          adc #22
                          sta srn+1
                          cpy #18
                          bne .x
                          
                          ;text
                          ldy #0
 .text                    lda pirate,y
                          beq .end
                          clc 
                          adc #64
                          sta $10b0,y
                          iny
                          bne .text
  .end                    rts

pirate
!text "PIRATES"
!byte $00

flag
!byte $0,$0,$0,$1,$5,$2,$4,$6,$3,$a0,$a0,$7,$a0,$a0,$7,$a0,$a0,$7

;cust. characters flag  
*=$1c00
!byte  $00,$00,$00,$00,$00,$ff,$ff,$ff
!byte  $ff,$ff,$ff,$f3,$f3,$c1,$09,$3f
!byte  $ff,$ff,$ff,$cf,$cf,$83,$90,$fc
!byte  $fc,$90,$83,$cf,$cf,$ff,$ff,$ff
!byte  $3f,$09,$c1,$f3,$f3,$ff,$ff,$ff
!byte  $c3,$81,$42,$66,$99,$c3,$db,$c3
!byte  $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
!byte  $c0,$c0,$c0,$c0,$c0,$c0,$c0,$c0
Post Reply