Gordons Projects

--> Projects Top-Level GIT

Initial GIT creation
[lmc] / pibrella.lmc
1
2 // pibrella.lmc
3 //      Example to use the PiBrella board from Pimoroni
4
5
6         jsr     setup
7
8 loop    jsr     wButton
9         lda     yellow
10         ghi
11         lda     green
12         glo
13         lda     one
14         jsr     delay
15         lda     red
16         ghi
17         lda     yellow
18         glo
19         lda     five
20         jsr     delay
21
22 // Back to Green
23
24         lda     yellow
25         ghi
26         lda     red
27         glo
28         lda     one
29         jsr     delay
30         lda     green
31         ghi
32         lda     yellow
33         glo
34
35         bra     loop
36
37 // delay:
38 //      Delay for acc seconds. (approx)
39
40 delay   sta     timer
41         lda     zero    // 2
42         lda     zero
43         lda     zero
44         lda     zero
45         lda     zero
46         lda     zero    // 7 10ths.
47         lda     timer
48         sub     one
49         brp     delay
50         ret
51
52 // wButton:
53 //      Subroutine to wait for the button to be pressed
54
55 wButton
56         lda     button
57         gin
58         brz     wButton
59         ret
60
61 // Sub to initialise the Pibrella in TUXX mode
62
63 setup   lda     red
64         glo
65         lda     yellow
66         glo
67         lda     green
68         ghi
69         ret
70
71 // Constants for the Pibrella LEDs
72
73         org     80
74
75 red     dat     2
76 yellow  dat     0
77 green   dat     7
78 button  dat     14
79
80 led0    dat     3
81 led1    dat     4
82 led2    dat     5
83 led3    dat     6
84
85 // Program data
86
87         org     90
88
89 zero    dat     0
90 one     dat     1
91 five    dat     5
92 timer   dat
93