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

Subversion Repositories lattice6502

[/] [lattice6502/] [ghdl/] [usrcode.asm] - Blame information for rev 2

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 stanley82
;
2
        cpu 6502
3
PAGE 40,120
4
;       ****************************************************************************************
5
;       This is intended to be the template for the user code
6
;       ****************************************************************************************
7
 
8
*       =       $290    ;user code starts at $290
9
return  equ     $fff6   ;jump to fcoo to return control and restart
10
sendtxt equ     $fff0
11
hex2txt equ     $fff3
12
 
13
 
14
main    ldy     #$55
15
        ldx     #$aa
16
        lda     #$7e
17
        clc
18
        adc     #$6     ;9-3=6 carry=0
19
        php
20
        pha
21
        txa
22
        pha
23
        tya
24
        pha
25
 
26
        lda     #"Y"    ;Display Y register
27
        jsr     sendtxt
28
        lda     #"="
29
        jsr     sendtxt
30
        pla
31
        jsr     hex2txt
32
        lda     #" "
33
        jsr     sendtxt
34
 
35
        lda     #"X"    ;Display X register
36
        jsr     sendtxt
37
        lda     #"="
38
        jsr     sendtxt
39
        pla
40
        jsr     hex2txt
41
        lda     #" "
42
        jsr     sendtxt
43
 
44
        lda     #"A"    ;Display A register
45
        jsr     sendtxt
46
        lda     #"="
47
        jsr     sendtxt
48
        pla
49
        jsr     hex2txt
50
        lda     #" "
51
        jsr     sendtxt
52
 
53
        lda     #"C"    ;Display carry
54
        jsr     sendtxt
55
        lda     #"="
56
        jsr     sendtxt
57
        plp
58
        php
59
        bcc     clear1
60
        lda     #"1"
61
        jmp     cont1
62
clear1  lda     #"0"
63
cont1   jsr     sendtxt
64
        lda     #" "
65
        jsr     sendtxt
66
 
67
        lda     #"V"    ;Display overflow
68
        jsr     sendtxt
69
        lda     #"="
70
        jsr     sendtxt
71
        plp
72
        php
73
        bvc     clear2
74
        lda     #"1"
75
        jmp     cont2
76
clear2  lda     #"0"
77
cont2   jsr     sendtxt
78
        lda     #" "
79
        jsr     sendtxt
80
 
81
        lda     #"Z"    ;Display zero
82
        jsr     sendtxt
83
        lda     #"="
84
        jsr     sendtxt
85
        plp
86
        php
87
        beq     clear3
88
        lda     #"1"
89
        jmp     cont3
90
clear3  lda     #"0"
91
cont3   jsr     sendtxt
92
        lda     #" "
93
        jsr     sendtxt
94
 
95
        lda     #"M"    ;Display minus
96
        jsr     sendtxt
97
        lda     #"="
98
        jsr     sendtxt
99
        plp
100
        bpl     clear4
101
        lda     #"1"
102
        jmp     cont4
103
clear4  lda     #"0"
104
cont4   jsr     sendtxt
105
 
106
 
107
        lda     #"\r"
108
        jsr     sendtxt
109
        jmp     (return)
110
 
111
;       end of program

powered by: WebSVN 2.1.0

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