summaryrefslogtreecommitdiffstats
path: root/Bachelor/Mikroprozessorsysteme/Praktikum3/P3_3.LST
blob: 136cf5638910721ca8a2efddb0b7e600a772f7a9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
################################################################################
#                                                                              #
#    Micro Series 8051 Assembler V2.02/DOS              22/Jun/05  22:57:11    #
#                                                                              #
#       Source   =   p3_3.s03                                                  #
#       List     =   p3_3.lst                                                  #
#       Object   =   p3_3.r03                                                  #
#       Options  =   f                                                         #
#                                                                              #
#                                               (c) Copyright IAR Systems 1990 #
################################################################################


    1                 ;Sven Eisenhauer
    2                 ;MPS1 Versuch 3 Aufgabe 3
    3                 ;16.06.2005
    4                 
  102                 
  103  0000                     ORG     0000h
  104                 
  105  0000 90F803              MOV     DPTR,#0F803h
  106  0003 7492                MOV     A,#92h
  107  0005 F0                  MOVX    @DPTR,A
  108  0006 75F8FF              MOV     P5,#0FFh
  109  0009 75E8FF              MOV     P4,#0FFh
  110  000C 7590FF              MOV     P1,#0FFh
  111  000F 90F800              MOV     DPTR,#0F800h
  112  0012 7400                MOV     A,#00h
  113  0014 F0                  MOVX    @DPTR,A
  114  0015 A3                  INC     DPTR
  115  0016 F0                  MOVX    @DPTR,A
  116  0017 A3                  INC     DPTR
  117  0018 F0                  MOVX    @DPTR,A
  118  0019 7800                MOV     R0,#0
  119  001B 7900                MOV     R1,#0
  120  001D 7A00                MOV     R2,#0
  121  001F 7B00                MOV     R3,#0
  122                 
  123  0021 20B303    BEGIN:    JB      P3.3,START
  124  0024 028000              LJMP    8000h
  125  0027 12008B    START:    LCALL   EINLES
  126                 
  127  002A 30B203              JNB     P3.2,SUBJMP
  128  002D 120046              LCALL   ADDIT
  129  0030 120035    SUBJMP:   LCALL   SUBST
  130  0033 80EC                SJMP    BEGIN
  131                 
  132  0035 C3        SUBST:    CLR     C
  133  0036 C2D2                CLR     OV
  134  0038 C2B4                CLR     P3.4
  135  003A C2B5                CLR     P3.5
  136  003C E8                  MOV     A,R0
  137  003D 9A                  SUBB    A,R2
  138  003E FC                  MOV     R4,A          ;LOWBYTE
  139  003F E9                  MOV     A,R1
  140  0040 9B                  SUBB    A,R3
  141  0041 FD                  MOV     R5,A          ;HIGHBYTE
  142  0042 120057              LCALL   AUSG
  143  0045 22                  RET
  144                 
  145  0046 C3        ADDIT:    CLR     C
  146  0047 C2D2                CLR     OV
  147  0049 C2B4                CLR     P3.4
  148  004B C2B5                CLR     P3.5
  149  004D E8                  MOV     A,R0
  150  004E 2A                  ADD     A,R2
  151  004F FC                  MOV     R4,A          ;LOWBYTE
  152  0050 EB                  MOV     A,R3
  153  0051 39                  ADDC    A,R1
  154  0052 FD                  MOV     R5,A          ;HIGHBYTE
  155  0053 120057              LCALL   AUSG
  156  0056 22                  RET
  157                 
  158  0057 8C90      AUSG:     MOV     P1,R4         ;LOWBYTE
  159  0059 ED                  MOV     A,R5
  160  005A 90F802              MOV     DPTR,#0F802h
  161  005D F0                  MOVX    @DPTR,A       ;HIGHBYTE
  162  005E 92B4                MOV     P3.4,C
  163  0060 30D21B              JNB     OV,NOOV
  164  0063 D2B5                SETB    P3.5
  165  0065 20E70B              JB      ACC.7,POS
  166  0068 7408                MOV     A,#08h        ;Backspace
  167  006A 12009A              LCALL   SENDSE
  168  006D 742B                MOV     A,#2Bh        ;+
  169  006F 12009A              LCALL   SENDSE
  170  0072 22                  RET
  171  0073 7408      POS:      MOV     A,#08h        ;Backspace
  172  0075 12009A              LCALL   SENDSE
  173  0078 742D                MOV     A,#2Dh        ;-
  174  007A 12009A              LCALL   SENDSE
  175  007D 22                  RET
  176  007E C2B5      NOOV:     CLR     P3.5
  177  0080 7408                MOV     A,#08h        ;Backspace
  178  0082 12009A              LCALL   SENDSE
  179  0085 7420                MOV     A,#20h        ;space
  180  0087 12009A              LCALL   SENDSE
  181  008A 22                  RET
  182                 
  183                 
  184  008B 90F800    EINLES:   MOV     DPTR,#0F800h  ;Port A
  185  008E E0                  MOVX    A,@DPTR
  186  008F F9                  MOV     R1,A
  187  0090 A890                MOV     R0,P1
  188  0092 90F801              MOV     DPTR,#0F801h  ;Port B
  189  0095 E0                  MOVX    A,@DPTR
  190  0096 FB                  MOV     R3,A
  191  0097 AAE8                MOV     R2,P4
  192  0099 22                  RET
  193                 
  194  009A F599      SENDSE:   MOV     SBUF,A
  195  009C C299                CLR     TI
  196  009E 3099FD    WARTE:    JNB     TI, WARTE
  197  00A1 22                  RET
  198                 
  199  00A2                     END

    Errors:  None             ########
    Bytes:   162              # p3_3 #
    CRC:     9563             ########