📄 eyes_twinkle.asl
字号:
+ 1 ;****************************************************************;
+ 2 ; Eyes Twinkle
+ 3 ;
+ 4 ; Eyes control output pin: PRTC[3]
+ 5 ;
+ 6 ; Written by: Mr.ZhangJinBo
+ 7 ; Date: 2004-02-16
+ 8 ;****************************************************************;
+ 9
+ 10 ;================================================================;
+ 11 ;Constant Area
+ 12 ;================================================================;
0008 13 c_prtc3_1 equ #00001000b
00F7 14 c_prtc3_0 equ #11110111b
+ 15
+ 16 ;================================================================;
+ 17 ;Data Area
+ 18 ;================================================================;
+B 00 01
+ 19 .area eyes_twinkle_var(data)
+ 20
0000 21 flg_eyes_twinkle:: .ds 1
+ 22
+ 23 ;================================================================;
+ 24 ;Code Area
+ 25 ;================================================================;
+B 00 02
+ 26 .area eyes_twinkle_code(code)
+ 27
0000 28 eyes_twinkle::
+ 29
+ 30 ;******/*04-02-26*/******;
0000 F1 00 31 lda flg_ir_received ;judge if there is obstacle
0002 A7 00 32 cmpe #0
0004 06 00 10 33 brz no_ir_twinkle
+ 34
0007 F3 08 35 lda #c_prtc3_1 ;if there is obstacle, the eyes keep lighting.
0009 D8 31 36 ora r_prtc
+ 37 ; lda #c_prtc3_0
+ 38 ; anda r_prtc
000B FC 31 39 sta r_prtc
+ 40
000D 02 00 31 41 br end_eyes_twinkle
+ 42
0010 43 no_ir_twinkle:
+ 44 ;************************;
+ 45
0010 F1 00 46 lda flg_eyes_twinkle ;condition
0012 A7 01 47 cmpe #1
0014 07 00 31 48 brnz end_eyes_twinkle
+ 49
0017 F3 00 50 lda #0 ;clear the flag
0019 FD 00 51 sta flg_eyes_twinkle
+ 52
001B F0 31 53 lda r_prtc
001D CB 08 54 anda #c_prtc3_1
001F 06 00 2B 55 brz 1$
+ 56
0022 F3 F7 57 lda #c_prtc3_0 ;if prtc.3=1
0024 C8 31 58 anda r_prtc ;reverse
0026 FC 31 59 sta r_prtc
0028 02 00 31 60 br end_eyes_twinkle
+ 61 1$:
002B F3 08 62 lda #c_prtc3_1 ;if prtc.3=0
002D D8 31 63 ora r_prtc ;reverse
002F FC 31 64 sta r_prtc
+ 65
0031 66 end_eyes_twinkle:
0031 24 67 ret
+ 68
+ 69 ;================================================================;
+ 70
+ 71
+
+Symbol Table
+
+ c_prtc3_0 = 00F7
+ c_prtc3_1 = 0008
+ 2 end_eyes_twinkle 0031 R
+ 2 eyes_twinkle 0000 GR
+ 1 flg_eyes_twinkle 0000 GR
+ flg_ir_received **** GX
+ 2 no_ir_twinkle 0010 R
+
+
+Area Table
+
+ 0 . size 0 flags 0
+ 1 eyes_twinkle_var size 1 flags 2
+ 2 eyes_twinkle_code size 32 flags 1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -