Published
[xchallenge/.git] / xchallenge.asm
1         ;; Challenge to draw an 'X' on the screen
2         ;; Does not wait for keypress when done
3         ;; Couldn't tell if challenge included black border, so
4         ;;   just make backgroun black and ignored border
5
6         ;; Compiler: 64tass
7
8         *=$1000
9         
10         ;; Put cursor on line 24
11         ldx     #$18
12         jsr     $e50c
13         
14         ;; Do this after since PlaceCursor destroys registers
15         ldx     #$00
16         ldy     #$27
17         stx     $d021
18 Loop:
19         txa
20         ldx     #$07    
21 GetBit:
22         rol     data,x
23         dex
24         bpl     GetBit
25         tax
26         
27         bcs     PlotChar
28         lda     #$0d
29         jsr     $ffd2
30
31         bcc     loop            ; CHROUT *should* be CLCing.
32
33 PlotChar:       
34         lda     #$a0
35         sta     $07c0, X        ; can't indirect-index with X
36         sta     ($d1), Y        ; $d1 holds c0 07, so save a byte
37         inx
38         dey
39         bpl     Loop
40
41 exit:   
42         rts
43
44         ;; 1 = block; 0 = CR
45 data:   .byte %11010110, %10110110, %10110101, %10110101
46         .byte %10101101, %10101101, %01101101, %01101011
47