OpenCores
URL https://opencores.org/ocsvn/socgen/socgen/trunk

Subversion Repositories socgen

[/] [socgen/] [trunk/] [Projects/] [opencores.org/] [Mos6502/] [sw/] [io_irq_2/] [io_irq_2.asm] - Blame information for rev 131

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 131 jt_eaton
 
2
  include ../io_module/io_module.asm
3
 
4
 
5
        * = $ff00  ; assemble start
6
               code
7
 
8
.start             nop
9
                   ldx #00
10
                   ldy #00
11
                   lda io_base+io_gpio_0
12
                   sec
13
                   adc #00
14
                   sta io_base+io_gpio_0
15
                   lda io_base+io_gpio_0
16
                   sec
17
                   adc #00
18
                   sta io_base+io_gpio_0
19
 
20
                   lda #$01
21
                                ;
22
                   sta io_base+io_pic_irq_en
23
 
24
                   lda #$04
25
                   sta io_base+io_pic_nmi_en
26
 
27
                   lda #$f7
28
                   sta io_base+io_vic_irq_en
29
 
30
 
31
                   lda #$c0
32
                   sta io_base+io_uart_cnt
33
                   lda #$42
34
                   sta io_base+io_uart_xmt
35
                   cli          ; was cli
36
                   lda #$fe
37
                   sta io_base+io_tim0_start
38
 
39
                   lda #$67
40
                   sta io_base+io_tim1_start
41
 
42
                   ldx #$00
43
                   inx
44
                   inx
45
                   inx
46
                   inx
47
                   inx
48
                   inx
49
                   inx
50
                   inx
51
                   inx
52
                   inx
53
                   inx
54
                   inx
55
                   inx
56
                   inx
57
                   inx
58
                   inx
59
 
60
 
61
.lab_80            lda $05
62
                   jmp .lab_80
63
 
64
 
65
 
66
 
67
 
68
.tim0_vec          php
69
                   pha
70
                   lda io_base+io_gpio_0
71
                   sec
72
                   adc #00
73
                   sta io_base+io_gpio_0
74
                   lda #$fe
75
                   sta io_base+io_tim0_end
76
                   sta io_base+io_tim0_start
77
                   pla
78
                   plp
79
                   rti
80
 
81
 
82
.tim1_vec          php
83
                   pha
84
                   lda io_base+io_gpio_1
85
                   sec
86
                   adc #00
87
                   sta io_base+io_gpio_1
88
                   lda #$e4
89
                   sta io_base+io_tim1_end
90
                   sta io_base+io_tim1_start
91
                   pla
92
                   plp
93
                   rti
94
 
95
 
96
 
97
 
98
.uart_rx_vec       php
99
                   pha
100
                   lda io_base+io_uart_rcv
101
                   sta io_base+io_vga_ascii
102
                   sta io_base+io_uart_xmt
103
                   pla
104
                   plp
105
                   rti
106
 
107
 
108
 
109
 
110
 
111
.irq_vec           pha
112
                   txa
113
                   pha
114
                   tya
115
                   pha
116
                   lda io_base+io_gpio_0
117
                   sec
118
                   adc #00
119
                   sta io_base+io_gpio_0
120
                   lda #$fe
121
                   sta io_base+io_tim0_end
122
                   sta io_base+io_tim0_start
123
                   pla
124
                   tay
125
                   pla
126
                   tax
127
                   pla
128
                   rti
129
 
130
.nmi_vec           pha
131
                   lda io_base+io_uart_rcv
132
                   sec
133
                   adc #01
134
                   sta io_base+io_uart_xmt
135
                   lda io_base+io_gpio_1
136
                   sec
137
                   adc #00
138
                   sta io_base+io_gpio_1
139
                   pla
140
                   rti
141
 
142
                   * = $ffe0
143
                   dw .tim0_vec
144
                   dw .tim1_vec
145
                   dw .uart_rx_vec
146
 
147
 
148
 
149
                   * = $fffa
150
                   dw .nmi_vec
151
                   dw .start
152
                   dw .irq_vec
153
 
154
 
155
 
156
 code
157
 
158
 
159
 
160
 
161
 
162
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.