summaryrefslogtreecommitdiff
path: root/demo/ledmatrix.rst
diff options
context:
space:
mode:
Diffstat (limited to 'demo/ledmatrix.rst')
-rw-r--r--demo/ledmatrix.rst494
1 files changed, 0 insertions, 494 deletions
diff --git a/demo/ledmatrix.rst b/demo/ledmatrix.rst
deleted file mode 100644
index 9a26795..0000000
--- a/demo/ledmatrix.rst
+++ /dev/null
@@ -1,494 +0,0 @@
- 1 ;--------------------------------------------------------
- 2 ; File Created by SDCC : free open source ANSI-C Compiler
- 3 ; Version 2.9.0 #5416 (Oct 6 2009) (UNIX)
- 4 ; This file was generated Mon Oct 19 23:11:07 2009
- 5 ;--------------------------------------------------------
- 6 .module ledmatrix
- 7 .optsdcc -mmcs51 --model-small
- 8
- 9 ;--------------------------------------------------------
- 10 ; Public variables in this module
- 11 ;--------------------------------------------------------
- 12 .globl _main
- 13 .globl _CY
- 14 .globl _AC
- 15 .globl _F0
- 16 .globl _RS1
- 17 .globl _RS0
- 18 .globl _OV
- 19 .globl _FL
- 20 .globl _P
- 21 .globl _PS
- 22 .globl _PT1
- 23 .globl _PX1
- 24 .globl _PT0
- 25 .globl _PX0
- 26 .globl _RD
- 27 .globl _WR
- 28 .globl _T1
- 29 .globl _T0
- 30 .globl _INT1
- 31 .globl _INT0
- 32 .globl _TXD
- 33 .globl _RXD
- 34 .globl _P3_7
- 35 .globl _P3_6
- 36 .globl _P3_5
- 37 .globl _P3_4
- 38 .globl _P3_3
- 39 .globl _P3_2
- 40 .globl _P3_1
- 41 .globl _P3_0
- 42 .globl _EA
- 43 .globl _ES
- 44 .globl _ET1
- 45 .globl _EX1
- 46 .globl _ET0
- 47 .globl _EX0
- 48 .globl _P2_7
- 49 .globl _P2_6
- 50 .globl _P2_5
- 51 .globl _P2_4
- 52 .globl _P2_3
- 53 .globl _P2_2
- 54 .globl _P2_1
- 55 .globl _P2_0
- 56 .globl _SM0
- 57 .globl _SM1
- 58 .globl _SM2
- 59 .globl _REN
- 60 .globl _TB8
- 61 .globl _RB8
- 62 .globl _TI
- 63 .globl _RI
- 64 .globl _P1_7
- 65 .globl _P1_6
- 66 .globl _P1_5
- 67 .globl _P1_4
- 68 .globl _P1_3
- 69 .globl _P1_2
- 70 .globl _P1_1
- 71 .globl _P1_0
- 72 .globl _TF1
- 73 .globl _TR1
- 74 .globl _TF0
- 75 .globl _TR0
- 76 .globl _IE1
- 77 .globl _IT1
- 78 .globl _IE0
- 79 .globl _IT0
- 80 .globl _P0_7
- 81 .globl _P0_6
- 82 .globl _P0_5
- 83 .globl _P0_4
- 84 .globl _P0_3
- 85 .globl _P0_2
- 86 .globl _P0_1
- 87 .globl _P0_0
- 88 .globl _B
- 89 .globl _A
- 90 .globl _ACC
- 91 .globl _PSW
- 92 .globl _IP
- 93 .globl _P3
- 94 .globl _IE
- 95 .globl _P2
- 96 .globl _SBUF
- 97 .globl _SCON
- 98 .globl _P1
- 99 .globl _TH1
- 100 .globl _TH0
- 101 .globl _TL1
- 102 .globl _TL0
- 103 .globl _TMOD
- 104 .globl _TCON
- 105 .globl _PCON
- 106 .globl _DPH
- 107 .globl _DPL
- 108 .globl _SP
- 109 .globl _P0
- 110 ;--------------------------------------------------------
- 111 ; special function registers
- 112 ;--------------------------------------------------------
- 113 .area RSEG (DATA)
- 0080 114 G$P0$0$0 == 0x0080
- 0080 115 _P0 = 0x0080
- 0081 116 G$SP$0$0 == 0x0081
- 0081 117 _SP = 0x0081
- 0082 118 G$DPL$0$0 == 0x0082
- 0082 119 _DPL = 0x0082
- 0083 120 G$DPH$0$0 == 0x0083
- 0083 121 _DPH = 0x0083
- 0087 122 G$PCON$0$0 == 0x0087
- 0087 123 _PCON = 0x0087
- 0088 124 G$TCON$0$0 == 0x0088
- 0088 125 _TCON = 0x0088
- 0089 126 G$TMOD$0$0 == 0x0089
- 0089 127 _TMOD = 0x0089
- 008A 128 G$TL0$0$0 == 0x008a
- 008A 129 _TL0 = 0x008a
- 008B 130 G$TL1$0$0 == 0x008b
- 008B 131 _TL1 = 0x008b
- 008C 132 G$TH0$0$0 == 0x008c
- 008C 133 _TH0 = 0x008c
- 008D 134 G$TH1$0$0 == 0x008d
- 008D 135 _TH1 = 0x008d
- 0090 136 G$P1$0$0 == 0x0090
- 0090 137 _P1 = 0x0090
- 0098 138 G$SCON$0$0 == 0x0098
- 0098 139 _SCON = 0x0098
- 0099 140 G$SBUF$0$0 == 0x0099
- 0099 141 _SBUF = 0x0099
- 00A0 142 G$P2$0$0 == 0x00a0
- 00A0 143 _P2 = 0x00a0
- 00A8 144 G$IE$0$0 == 0x00a8
- 00A8 145 _IE = 0x00a8
- 00B0 146 G$P3$0$0 == 0x00b0
- 00B0 147 _P3 = 0x00b0
- 00B8 148 G$IP$0$0 == 0x00b8
- 00B8 149 _IP = 0x00b8
- 00D0 150 G$PSW$0$0 == 0x00d0
- 00D0 151 _PSW = 0x00d0
- 00E0 152 G$ACC$0$0 == 0x00e0
- 00E0 153 _ACC = 0x00e0
- 00E0 154 G$A$0$0 == 0x00e0
- 00E0 155 _A = 0x00e0
- 00F0 156 G$B$0$0 == 0x00f0
- 00F0 157 _B = 0x00f0
- 158 ;--------------------------------------------------------
- 159 ; special function bits
- 160 ;--------------------------------------------------------
- 161 .area RSEG (DATA)
- 0080 162 G$P0_0$0$0 == 0x0080
- 0080 163 _P0_0 = 0x0080
- 0081 164 G$P0_1$0$0 == 0x0081
- 0081 165 _P0_1 = 0x0081
- 0082 166 G$P0_2$0$0 == 0x0082
- 0082 167 _P0_2 = 0x0082
- 0083 168 G$P0_3$0$0 == 0x0083
- 0083 169 _P0_3 = 0x0083
- 0084 170 G$P0_4$0$0 == 0x0084
- 0084 171 _P0_4 = 0x0084
- 0085 172 G$P0_5$0$0 == 0x0085
- 0085 173 _P0_5 = 0x0085
- 0086 174 G$P0_6$0$0 == 0x0086
- 0086 175 _P0_6 = 0x0086
- 0087 176 G$P0_7$0$0 == 0x0087
- 0087 177 _P0_7 = 0x0087
- 0088 178 G$IT0$0$0 == 0x0088
- 0088 179 _IT0 = 0x0088
- 0089 180 G$IE0$0$0 == 0x0089
- 0089 181 _IE0 = 0x0089
- 008A 182 G$IT1$0$0 == 0x008a
- 008A 183 _IT1 = 0x008a
- 008B 184 G$IE1$0$0 == 0x008b
- 008B 185 _IE1 = 0x008b
- 008C 186 G$TR0$0$0 == 0x008c
- 008C 187 _TR0 = 0x008c
- 008D 188 G$TF0$0$0 == 0x008d
- 008D 189 _TF0 = 0x008d
- 008E 190 G$TR1$0$0 == 0x008e
- 008E 191 _TR1 = 0x008e
- 008F 192 G$TF1$0$0 == 0x008f
- 008F 193 _TF1 = 0x008f
- 0090 194 G$P1_0$0$0 == 0x0090
- 0090 195 _P1_0 = 0x0090
- 0091 196 G$P1_1$0$0 == 0x0091
- 0091 197 _P1_1 = 0x0091
- 0092 198 G$P1_2$0$0 == 0x0092
- 0092 199 _P1_2 = 0x0092
- 0093 200 G$P1_3$0$0 == 0x0093
- 0093 201 _P1_3 = 0x0093
- 0094 202 G$P1_4$0$0 == 0x0094
- 0094 203 _P1_4 = 0x0094
- 0095 204 G$P1_5$0$0 == 0x0095
- 0095 205 _P1_5 = 0x0095
- 0096 206 G$P1_6$0$0 == 0x0096
- 0096 207 _P1_6 = 0x0096
- 0097 208 G$P1_7$0$0 == 0x0097
- 0097 209 _P1_7 = 0x0097
- 0098 210 G$RI$0$0 == 0x0098
- 0098 211 _RI = 0x0098
- 0099 212 G$TI$0$0 == 0x0099
- 0099 213 _TI = 0x0099
- 009A 214 G$RB8$0$0 == 0x009a
- 009A 215 _RB8 = 0x009a
- 009B 216 G$TB8$0$0 == 0x009b
- 009B 217 _TB8 = 0x009b
- 009C 218 G$REN$0$0 == 0x009c
- 009C 219 _REN = 0x009c
- 009D 220 G$SM2$0$0 == 0x009d
- 009D 221 _SM2 = 0x009d
- 009E 222 G$SM1$0$0 == 0x009e
- 009E 223 _SM1 = 0x009e
- 009F 224 G$SM0$0$0 == 0x009f
- 009F 225 _SM0 = 0x009f
- 00A0 226 G$P2_0$0$0 == 0x00a0
- 00A0 227 _P2_0 = 0x00a0
- 00A1 228 G$P2_1$0$0 == 0x00a1
- 00A1 229 _P2_1 = 0x00a1
- 00A2 230 G$P2_2$0$0 == 0x00a2
- 00A2 231 _P2_2 = 0x00a2
- 00A3 232 G$P2_3$0$0 == 0x00a3
- 00A3 233 _P2_3 = 0x00a3
- 00A4 234 G$P2_4$0$0 == 0x00a4
- 00A4 235 _P2_4 = 0x00a4
- 00A5 236 G$P2_5$0$0 == 0x00a5
- 00A5 237 _P2_5 = 0x00a5
- 00A6 238 G$P2_6$0$0 == 0x00a6
- 00A6 239 _P2_6 = 0x00a6
- 00A7 240 G$P2_7$0$0 == 0x00a7
- 00A7 241 _P2_7 = 0x00a7
- 00A8 242 G$EX0$0$0 == 0x00a8
- 00A8 243 _EX0 = 0x00a8
- 00A9 244 G$ET0$0$0 == 0x00a9
- 00A9 245 _ET0 = 0x00a9
- 00AA 246 G$EX1$0$0 == 0x00aa
- 00AA 247 _EX1 = 0x00aa
- 00AB 248 G$ET1$0$0 == 0x00ab
- 00AB 249 _ET1 = 0x00ab
- 00AC 250 G$ES$0$0 == 0x00ac
- 00AC 251 _ES = 0x00ac
- 00AF 252 G$EA$0$0 == 0x00af
- 00AF 253 _EA = 0x00af
- 00B0 254 G$P3_0$0$0 == 0x00b0
- 00B0 255 _P3_0 = 0x00b0
- 00B1 256 G$P3_1$0$0 == 0x00b1
- 00B1 257 _P3_1 = 0x00b1
- 00B2 258 G$P3_2$0$0 == 0x00b2
- 00B2 259 _P3_2 = 0x00b2
- 00B3 260 G$P3_3$0$0 == 0x00b3
- 00B3 261 _P3_3 = 0x00b3
- 00B4 262 G$P3_4$0$0 == 0x00b4
- 00B4 263 _P3_4 = 0x00b4
- 00B5 264 G$P3_5$0$0 == 0x00b5
- 00B5 265 _P3_5 = 0x00b5
- 00B6 266 G$P3_6$0$0 == 0x00b6
- 00B6 267 _P3_6 = 0x00b6
- 00B7 268 G$P3_7$0$0 == 0x00b7
- 00B7 269 _P3_7 = 0x00b7
- 00B0 270 G$RXD$0$0 == 0x00b0
- 00B0 271 _RXD = 0x00b0
- 00B1 272 G$TXD$0$0 == 0x00b1
- 00B1 273 _TXD = 0x00b1
- 00B2 274 G$INT0$0$0 == 0x00b2
- 00B2 275 _INT0 = 0x00b2
- 00B3 276 G$INT1$0$0 == 0x00b3
- 00B3 277 _INT1 = 0x00b3
- 00B4 278 G$T0$0$0 == 0x00b4
- 00B4 279 _T0 = 0x00b4
- 00B5 280 G$T1$0$0 == 0x00b5
- 00B5 281 _T1 = 0x00b5
- 00B6 282 G$WR$0$0 == 0x00b6
- 00B6 283 _WR = 0x00b6
- 00B7 284 G$RD$0$0 == 0x00b7
- 00B7 285 _RD = 0x00b7
- 00B8 286 G$PX0$0$0 == 0x00b8
- 00B8 287 _PX0 = 0x00b8
- 00B9 288 G$PT0$0$0 == 0x00b9
- 00B9 289 _PT0 = 0x00b9
- 00BA 290 G$PX1$0$0 == 0x00ba
- 00BA 291 _PX1 = 0x00ba
- 00BB 292 G$PT1$0$0 == 0x00bb
- 00BB 293 _PT1 = 0x00bb
- 00BC 294 G$PS$0$0 == 0x00bc
- 00BC 295 _PS = 0x00bc
- 00D0 296 G$P$0$0 == 0x00d0
- 00D0 297 _P = 0x00d0
- 00D1 298 G$FL$0$0 == 0x00d1
- 00D1 299 _FL = 0x00d1
- 00D2 300 G$OV$0$0 == 0x00d2
- 00D2 301 _OV = 0x00d2
- 00D3 302 G$RS0$0$0 == 0x00d3
- 00D3 303 _RS0 = 0x00d3
- 00D4 304 G$RS1$0$0 == 0x00d4
- 00D4 305 _RS1 = 0x00d4
- 00D5 306 G$F0$0$0 == 0x00d5
- 00D5 307 _F0 = 0x00d5
- 00D6 308 G$AC$0$0 == 0x00d6
- 00D6 309 _AC = 0x00d6
- 00D7 310 G$CY$0$0 == 0x00d7
- 00D7 311 _CY = 0x00d7
- 312 ;--------------------------------------------------------
- 313 ; overlayable register banks
- 314 ;--------------------------------------------------------
- 315 .area REG_BANK_0 (REL,OVR,DATA)
- 0000 316 .ds 8
- 317 ;--------------------------------------------------------
- 318 ; internal ram data
- 319 ;--------------------------------------------------------
- 320 .area DSEG (DATA)
- 321 ;--------------------------------------------------------
- 322 ; overlayable items in internal ram
- 323 ;--------------------------------------------------------
- 324 .area OSEG (OVR,DATA)
- 325 ;--------------------------------------------------------
- 326 ; Stack segment in internal ram
- 327 ;--------------------------------------------------------
- 328 .area SSEG (DATA)
- 0008 329 __start__stack:
- 0008 330 .ds 1
- 331
- 332 ;--------------------------------------------------------
- 333 ; indirectly addressable internal ram data
- 334 ;--------------------------------------------------------
- 335 .area ISEG (DATA)
- 336 ;--------------------------------------------------------
- 337 ; absolute internal ram data
- 338 ;--------------------------------------------------------
- 339 .area IABS (ABS,DATA)
- 340 .area IABS (ABS,DATA)
- 341 ;--------------------------------------------------------
- 342 ; bit data
- 343 ;--------------------------------------------------------
- 344 .area BSEG (BIT)
- 345 ;--------------------------------------------------------
- 346 ; paged external ram data
- 347 ;--------------------------------------------------------
- 348 .area PSEG (PAG,XDATA)
- 349 ;--------------------------------------------------------
- 350 ; external ram data
- 351 ;--------------------------------------------------------
- 352 .area XSEG (XDATA)
- 353 ;--------------------------------------------------------
- 354 ; absolute external ram data
- 355 ;--------------------------------------------------------
- 356 .area XABS (ABS,XDATA)
- 357 ;--------------------------------------------------------
- 358 ; external initialized ram data
- 359 ;--------------------------------------------------------
- 360 .area XISEG (XDATA)
- 361 .area HOME (CODE)
- 362 .area GSINIT0 (CODE)
- 363 .area GSINIT1 (CODE)
- 364 .area GSINIT2 (CODE)
- 365 .area GSINIT3 (CODE)
- 366 .area GSINIT4 (CODE)
- 367 .area GSINIT5 (CODE)
- 368 .area GSINIT (CODE)
- 369 .area GSFINAL (CODE)
- 370 .area CSEG (CODE)
- 371 ;--------------------------------------------------------
- 372 ; interrupt vector
- 373 ;--------------------------------------------------------
- 374 .area HOME (CODE)
- 0000 375 __interrupt_vect:
- 0000 02 00 08 376 ljmp __sdcc_gsinit_startup
- 377 ;--------------------------------------------------------
- 378 ; global & static initialisations
- 379 ;--------------------------------------------------------
- 380 .area HOME (CODE)
- 381 .area GSINIT (CODE)
- 382 .area GSFINAL (CODE)
- 383 .area GSINIT (CODE)
- 384 .globl __sdcc_gsinit_startup
- 385 .globl __sdcc_program_startup
- 386 .globl __start__stack
- 387 .globl __mcs51_genXINIT
- 388 .globl __mcs51_genXRAMCLEAR
- 389 .globl __mcs51_genRAMCLEAR
- 390 .area GSFINAL (CODE)
- 0061 02 00 03 391 ljmp __sdcc_program_startup
- 392 ;--------------------------------------------------------
- 393 ; Home
- 394 ;--------------------------------------------------------
- 395 .area HOME (CODE)
- 396 .area HOME (CODE)
- 0003 397 __sdcc_program_startup:
- 0003 12 00 64 398 lcall _main
- 399 ; return from main will lock up
- 0006 80 FE 400 sjmp .
- 401 ;--------------------------------------------------------
- 402 ; code
- 403 ;--------------------------------------------------------
- 404 .area CSEG (CODE)
- 405 ;------------------------------------------------------------
- 406 ;Allocation info for local variables in function 'main'
- 407 ;------------------------------------------------------------
- 408 ;i Allocated to registers r2 r3
- 409 ;------------------------------------------------------------
- 0000 410 G$main$0$0 ==.
- 0000 411 C$ledmatrix.c$27$0$0 ==.
- 412 ; ledmatrix.c:27: int main()
- 413 ; -----------------------------------------
- 414 ; function main
- 415 ; -----------------------------------------
- 0064 416 _main:
- 0002 417 ar2 = 0x02
- 0003 418 ar3 = 0x03
- 0004 419 ar4 = 0x04
- 0005 420 ar5 = 0x05
- 0006 421 ar6 = 0x06
- 0007 422 ar7 = 0x07
- 0000 423 ar0 = 0x00
- 0001 424 ar1 = 0x01
- 0000 425 C$ledmatrix.c$30$1$1 ==.
- 426 ; ledmatrix.c:30: while(1) {
- 0064 427 00102$:
- 0000 428 C$ledmatrix.c$31$2$2 ==.
- 429 ; ledmatrix.c:31: for(i=0; i<8; i++) {
- 0064 7A 00 430 mov r2,#0x00
- 0066 7B 00 431 mov r3,#0x00
- 0068 432 00104$:
- 0068 C3 433 clr c
- 0069 EA 434 mov a,r2
- 006A 94 08 435 subb a,#0x08
- 006C EB 436 mov a,r3
- 006D 64 80 437 xrl a,#0x80
- 006F 94 80 438 subb a,#0x80
- 0071 50 F1 439 jnc 00102$
- 000F 440 C$ledmatrix.c$32$3$3 ==.
- 441 ; ledmatrix.c:32: P1 = 0xff;
- 0073 75 90 FF 442 mov _P1,#0xFF
- 0012 443 C$ledmatrix.c$33$3$3 ==.
- 444 ; ledmatrix.c:33: P0 = image[i];
- 0076 EA 445 mov a,r2
- 0077 24 A7 446 add a,#_image
- 0079 F5 82 447 mov dpl,a
- 007B EB 448 mov a,r3
- 007C 34 00 449 addc a,#(_image >> 8)
- 007E F5 83 450 mov dph,a
- 0080 E4 451 clr a
- 0081 93 452 movc a,@a+dptr
- 0082 F5 80 453 mov _P0,a
- 0020 454 C$ledmatrix.c$34$3$3 ==.
- 455 ; ledmatrix.c:34: P1 = (1 << i) ^ 255;
- 0084 8A F0 456 mov b,r2
- 0086 05 F0 457 inc b
- 0088 7C 01 458 mov r4,#0x01
- 008A 7D 00 459 mov r5,#0x00
- 008C 80 06 460 sjmp 00115$
- 008E 461 00114$:
- 008E EC 462 mov a,r4
- 008F 2C 463 add a,r4
- 0090 FC 464 mov r4,a
- 0091 ED 465 mov a,r5
- 0092 33 466 rlc a
- 0093 FD 467 mov r5,a
- 0094 468 00115$:
- 0094 D5 F0 F7 469 djnz b,00114$
- 0097 74 FF 470 mov a,#0xFF
- 0099 6C 471 xrl a,r4
- 009A F5 90 472 mov _P1,a
- 0038 473 C$ledmatrix.c$31$2$2 ==.
- 474 ; ledmatrix.c:31: for(i=0; i<8; i++) {
- 009C 0A 475 inc r2
- 009D BA 00 C8 476 cjne r2,#0x00,00104$
- 00A0 0B 477 inc r3
- 003D 478 C$ledmatrix.c$37$1$1 ==.
- 003D 479 XG$main$0$0 ==.
- 00A1 80 C5 480 sjmp 00104$
- 481 .area CSEG (CODE)
- 482 .area CONST (CODE)
- 0000 483 Fledmatrix$image$0$0 == .
- 00A7 484 _image:
- 00A7 B1 485 .db #0xB1
- 00A8 9D 486 .db #0x9D
- 00A9 BD 487 .db #0xBD
- 00AA B1 488 .db #0xB1
- 00AB B7 489 .db #0xB7
- 00AC B7 490 .db #0xB7
- 00AD 11 491 .db #0x11
- 00AE FF 492 .db #0xFF
- 493 .area XINIT (CODE)
- 494 .area CABS (ABS,CODE)