📄 function.lis
字号:
013A AB0A add #10
013C B701 sta *_BasicT+1
013E B600 lda *_BasicT
0140 A900 adc #0
0142 B700 sta *_BasicT
0144 .dbline 47
0144 L16:
0144 .dbline 47
0144 ; else break;}
0144 L13:
0144 .dbline 48
0144 ; if(SignBT=='-')//负数
0144 B600 lda *_SignBT
0146 A12D cmp #45
0148 264D bne L10
014A .dbline 49
014A ; {if(BasicT<=400)
014A .dbline 49
014A 5500 ldhx *_BasicT
014C 650190 cphx #400
014F 95 tsx
0150 2245 bhi L10
0152 .dbline 50
0152 ; {BasicT=BasicT-10;
0152 .dbline 50
0152 B601 lda *_BasicT+1
0154 A00A sub #10
0156 B701 sta *_BasicT+1
0158 B600 lda *_BasicT
015A A200 sbc #0
015C B700 sta *_BasicT
015E .dbline 51
015E ; if(BasicT==0) SignBT='+';}
015E 5500 ldhx *_BasicT
0160 650000 cphx #0
0163 95 tsx
0164 2631 bne L10
0166 .dbline 51
0166 A62B lda #43
0168 B700 sta *_SignBT
016A .dbline 51
016A .dbline 52
016A ; else break;
016A .dbline 53
016A ; }
016A .dbline 54
016A ; break;
016A 202B bra L10
016C L23:
016C .dbline 56
016C ; case 2://湿度加1
016C ; SCISend1('B');
016C A642 lda #66
016E 87 psha
016F CD0000 jsr _SCISend1
0172 A701 ais #1
0174 .dbline 57
0174 ; if(BasicH<1000) BasicH=BasicH+10;
0174 5500 ldhx *_BasicH
0176 6503E8 cphx #1000
0179 95 tsx
017A 241B bhs L10
017C .dbline 57
017C B601 lda *_BasicH+1
017E AB0A add #10
0180 B701 sta *_BasicH+1
0182 B600 lda *_BasicH
0184 A900 adc #0
0186 B700 sta *_BasicH
0188 .dbline 58
0188 ; break;
0188 200D bra L10
018A L26:
018A .dbline 60
018A ; case 3:
018A ; ColdHotFlag=(ColdHotFlag+1)%3;
018A B600 lda *_ColdHotFlag
018C AB01 add #1
018E AE03 ldx #3
0190 8C clrh
0191 52 div
0192 8B pshh
0193 86 pula
0194 95 tsx
0195 B700 sta *_ColdHotFlag
0197 .dbline 61
0197 ; }
0197 L9:
0197 L10:
0197 .dbline 63
0197 ; //在LCD上显示
0197 ; PackShowBuf(LcdShowBuff);
0197 450000 ldhx #_LcdShowBuff
019A 89 pshx
019B 8B pshh
019C CD0000 jsr _PackShowBuf
019F A702 ais #2
01A1 .dbline 64
01A1 ; LcdShCh(LcdShowBuff);
01A1 450000 ldhx #_LcdShowBuff
01A4 89 pshx
01A5 8B pshh
01A6 CD0000 jsr _LcdShCh
01A9 A702 ais #2
01AB 95 tsx
01AC .dbline -2
01AC L8:
01AC A703 ais #3
01AE .dbline 0 ; func end
01AE 81 rts
01AF .dbsym l i 2 c
01AF .dbsym l CurrentRow 5 c
01AF .dbend
01AF .dbfunc e SubBtn _SubBtn fV
01AF ; j -> 2,X
01AF ; i -> 3,X
01AF ; CurrentRow -> 6,X
01AF _SubBtn::
01AF .dbline -1
01AF A7FC ais #-4
01B1 95 tsx
01B2 .dbline 72
01B2 ; }
01B2 ; //SubBtn:减少待调节的值---------------------------------------------------*
01B2 ; //功 能:将待调节的值减少0.1 *
01B2 ; //参 数:当前光标所在行号CurrentRow(取值1/2/3) *
01B2 ; //返 回: 无 *
01B2 ; //------------------------------------------------------------------------*
01B2 ; void SubBtn(INT8U CurrentRow)
01B2 ; {
01B2 .dbline 74
01B2 ; INT8U i,j;
01B2 ; i=(CurrentRow-1)*16;
01B2 E606 lda 6,X
01B4 A001 sub #1
01B6 62 nsa
01B7 A4F0 and #-16
01B9 E703 sta 3,X
01BB .dbline 75
01BB ; switch (CurrentRow)
01BB 7F clr ,X
01BC E606 lda 6,X
01BE E701 sta 1,X
01C0 F6 lda ,X
01C1 2606 bne X4
01C3 E601 lda 1,X
01C5 A101 cmp #1
01C7 2715 beq L31
01C9 X4:
01C9 F6 lda ,X
01CA 2606 bne X5
01CC E601 lda 1,X
01CE A102 cmp #2
01D0 2756 beq L42
01D2 X5:
01D2 F6 lda ,X
01D3 2606 bne X6
01D5 E601 lda 1,X
01D7 A103 cmp #3
01D9 276B beq L45
01DB X6:
01DB CC0253 jmp L28
01DE X7:
01DE .dbline 76
01DE ; {
01DE L31:
01DE .dbline 78
01DE ; case 1://温度减1
01DE ; if(SignBT=='+')
01DE B600 lda *_SignBT
01E0 A12B cmp #43
01E2 2628 bne L32
01E4 .dbline 79
01E4 ; {
01E4 .dbline 80
01E4 ; if(BasicT==0)
01E4 5500 ldhx *_BasicT
01E6 650000 cphx #0
01E9 95 tsx
01EA 260C bne L34
01EC .dbline 81
01EC ; {BasicT=10,SignBT='-';break;}
01EC .dbline 81
01EC 6E0000 mov #0,*_BasicT
01EF 6E0A01 mov #10,*_BasicT+1
01F2 A62D lda #45
01F4 B700 sta *_SignBT
01F6 .dbline 81
01F6 205B bra L29
01F8 L34:
01F8 .dbline 82
01F8 5500 ldhx *_BasicT
01FA 650578 cphx #1400
01FD 95 tsx
01FE 220C bhi L36
0200 .dbline 82
0200 B601 lda *_BasicT+1
0202 A00A sub #10
0204 B701 sta *_BasicT+1
0206 B600 lda *_BasicT
0208 A200 sbc #0
020A B700 sta *_BasicT
020C L36:
020C .dbline 82
020C ; if(BasicT<=1400) BasicT=BasicT-10;}
020C L32:
020C .dbline 83
020C ; if(SignBT=='-')
020C B600 lda *_SignBT
020E A12D cmp #45
0210 2641 bne L29
0212 .dbline 84
0212 ; {if(BasicT<400) BasicT=BasicT+10;}
0212 .dbline 84
0212 5500 ldhx *_BasicT
0214 650190 cphx #400
0217 95 tsx
0218 2439 bhs L29
021A .dbline 84
021A B601 lda *_BasicT+1
021C AB0A add #10
021E B701 sta *_BasicT+1
0220 B600 lda *_BasicT
0222 A900 adc #0
0224 B700 sta *_BasicT
0226 .dbline 84
0226 .dbline 85
0226 ; break;
0226 202B bra L29
0228 L42:
0228 .dbline 87
0228 ; case 2://湿度减1
0228 ; if((BasicH>0)&&(BasicH<=1000)) BasicH=BasicH-10;
0228 5500 ldhx *_BasicH
022A 650000 cphx #0
022D 95 tsx
022E 2723 beq L29
0230 5500 ldhx *_BasicH
0232 6503E8 cphx #1000
0235 95 tsx
0236 221B bhi L29
0238 .dbline 87
0238 B601 lda *_BasicH+1
023A A00A sub #10
023C B701 sta *_BasicH+1
023E B600 lda *_BasicH
0240 A200 sbc #0
0242 B700 sta *_BasicH
0244 .dbline 88
0244 ; break;
0244 200D bra L29
0246 L45:
0246 .dbline 90
0246 ; case 3:
0246 ; ColdHotFlag=(ColdHotFlag+1)%3;
0246 B600 lda *_ColdHotFlag
0248 AB01 add #1
024A AE03 ldx #3
024C 8C clrh
024D 52 div
024E 8B pshh
024F 86 pula
0250 95 tsx
0251 B700 sta *_ColdHotFlag
0253 .dbline 91
0253 ; }
0253 L28:
0253 L29:
0253 .dbline 93
0253 ; //在LCD上显示
0253 ; PackShowBuf(LcdShowBuff);
0253 450000 ldhx #_LcdShowBuff
0256 89 pshx
0257 8B pshh
0258 CD0000 jsr _PackShowBuf
025B A702 ais #2
025D .dbline 94
025D ; LcdShCh(LcdShowBuff);
025D 450000 ldhx #_LcdShowBuff
0260 89 pshx
0261 8B pshh
0262 CD0000 jsr _LcdShCh
0265 A702 ais #2
0267 95 tsx
0268 .dbline -2
0268 L27:
0268 A704 ais #4
026A .dbline 0 ; func end
026A 81 rts
026B .dbsym l j 2 c
026B .dbsym l i 3 c
026B .dbsym l CurrentRow 6 c
026B .dbend
.area lit
0000 L4:
0000 3E00 .byte 62,0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -