📄 jianpan.s
字号:
sta *__r0
aix #33
sthx *__r2
lda *__r1
add *__r3
sta *__r1
lda *__r0
adc *__r2
sta *__r0
clra
ldhx *__r0
sta ,x
tsx
L120:
; if(time_array[gb_mask1*8+sign-2]>=10)
clr *__r0
lda 33,X
sta *__r1
clr *__r2
lda 34,X
sta *__r3
lsl *__r3
rol *__r2
lsl *__r3
rol *__r2
lsl *__r3
rol *__r2
lda *__r3
add *__r1
sta *__r1
lda *__r2
adc *__r0
sta *__r0
aix #33
sthx *__r2
lda *__r1
add *__r3
sta *__r1
lda *__r0
adc *__r2
sta *__r0
ldhx *__r0
lda ,x
tsx
cmp #10
blo L125
; time_array[gb_mask1*8+sign-2]=0;
clr *__r0
lda 33,X
sta *__r1
clr *__r2
lda 34,X
sta *__r3
lsl *__r3
rol *__r2
lsl *__r3
rol *__r2
lsl *__r3
rol *__r2
lda *__r3
add *__r1
sta *__r1
lda *__r2
adc *__r0
sta *__r0
aix #33
sthx *__r2
lda *__r1
add *__r3
sta *__r1
lda *__r0
adc *__r2
sta *__r0
clra
ldhx *__r0
sta ,x
tsx
L125:
; str_change(time_array,14);
lda #14
psha
aix #35
pshx
pshh
jsr _str_change
ais #3
; if(time_array[6]>getmonthdays(data[2],data[1])/10)
lda *_data+2+1
psha
ldhx *_data+4
pshx
pshh
jsr _getmonthdays
ais #3
ldx #10
clrh
div
tsx
sta *__r0
lda 41,X
cmp *__r0
bls L129
; time_array[gb_mask1*8+sign-2]=0;
clr *__r0
lda 33,X
sta *__r1
clr *__r2
lda 34,X
sta *__r3
lsl *__r3
rol *__r2
lsl *__r3
rol *__r2
lsl *__r3
rol *__r2
lda *__r3
add *__r1
sta *__r1
lda *__r2
adc *__r0
sta *__r0
aix #33
sthx *__r2
lda *__r1
add *__r3
sta *__r1
lda *__r0
adc *__r2
sta *__r0
clra
ldhx *__r0
sta ,x
tsx
L129:
; if((time_array[6]==(getmonthdays(data[2],data[1])/10)/10)&&(time_array[7]>(getmonthdays(data[2],data[1])/10)%10))
lda *_data+2+1
psha
ldhx *_data+4
pshx
pshh
jsr _getmonthdays
ais #3
sta *__r1
ldx #10
clrh
div
ldx #10
clrh
div
tsx
sta *__r0
lda 41,X
cmp *__r0
bne L135
lda *_data+2+1
psha
ldhx *_data+4
pshx
pshh
jsr _getmonthdays
ais #3
ldx #10
clrh
div
ldx #10
clrh
div
pshh
pula
tsx
sta *__r0
lda 42,X
cmp *__r0
bls L135
; time_array[gb_mask1*8+sign-2]=0;
clr *__r0
lda 33,X
sta *__r1
clr *__r2
lda 34,X
sta *__r3
lsl *__r3
rol *__r2
lsl *__r3
rol *__r2
lsl *__r3
rol *__r2
lda *__r3
add *__r1
sta *__r1
lda *__r2
adc *__r0
sta *__r0
aix #33
sthx *__r2
lda *__r1
add *__r3
sta *__r1
lda *__r0
adc *__r2
sta *__r0
clra
ldhx *__r0
sta ,x
tsx
L135:
; str_change(time_array,14);
lda #14
psha
aix #35
pshx
pshh
jsr _str_change
ais #3
; Lcd_Show(0);
clra
psha
jsr _Lcd_Show
ais #1
tsx
; KB_valve=0;
clr *_KB_valve
; }
L98:
; if(KB_valve=='#')//光标上下移
lda *_KB_valve
cmp #35
bne L144
; {
; sign=2;
lda #2
sta 33,X
; if(gb_mask1==0) {gb_mask1=1;gb_mask2=4;}
lda 34,X
bne L146
lda #1
sta 34,X
lda #4
sta 32,X
bra L147
L146:
; else {gb_mask1=0;gb_mask2=2;}
clr 34,X
lda #2
sta 32,X
L147:
; KB_valve=0;
clr *_KB_valve
; }
L144:
; if(KB_valve=='0')//退出调整时间
lda *_KB_valve
cmp #48
bne L148
; {
; unsigned char optioninit[32]="1.set time 2.set clock ";
sthx *__r0
lda #32
psha
clra
psha
lda #<L150
psha
lda #>L150
psha
lda *__r1
psha
lda *__r0
psha
jsr __asgnblk
ais #6
; lcdshow2(optioninit);
pshx
pshh
jsr _lcdshow2
ais #2
tsx
; KB_valve=0;
clr *_KB_valve
; break;
bra L83
L148:
L82:
jmp L81
L83:
; }
; }
; }
L79:
; if(KB_valve=='B')//选项2设置闹钟
lda *_KB_valve
cmp #66
beq X21
jmp L151
X21:
; {
; unsigned char gb_mask2=4,gb_mask1=0,sign=2,clock_array[14]={0};
lda #4
sta 48,X
clr 32,X
lda #2
sta 33,X
aix #34
sthx *__r0
lda #14
psha
clra
psha
lda #<L153
psha
lda #>L153
psha
lda *__r1
psha
lda *__r0
psha
jsr __asgnblk
ais #6
; Lcd_Show_init();
jsr _Lcd_Show_init
tsx
; KB_valve=1;
lda #1
sta *_KB_valve
jmp L155
L154:
; while(1)
; {
; if(sign==8) sign=2;
lda 33,X
cmp #8
bne L157
lda #2
sta 33,X
L157:
; if(gb_mask2==6) gb_mask2=7;
lda 48,X
cmp #6
bne L159
lda #7
sta 48,X
L159:
; if(gb_mask2==9) gb_mask2=10;
lda 48,X
cmp #9
bne L161
lda #10
sta 48,X
L161:
; if(gb_mask2==12) gb_mask2=4;
lda 48,X
cmp #12
bne L163
lda #4
sta 48,X
L163:
; if(clock_array[10]>=6||clock_array[12]>=6)
lda 44,X
cmp #6
bhs L169
lda 46,X
cmp #6
blo L165
L169:
; {
; clock_array[sign+5]=0;
aix #39
sthx *__r0
tsx
clr *__r2
lda 33,X
add *__r1
sta *__r1
lda *__r2
adc *__r0
sta *__r0
clra
ldhx *__r0
sta ,x
tsx
; gb_mask2--;
dec 48,X
; sign--;
dec 33,X
; }
L165:
; if(clock_array[8]>=3)
lda 42,X
cmp #3
blo L171
; {
; clock_array[sign+5]=0;
aix #39
sthx *__r0
tsx
clr *__r2
lda 33,X
add *__r1
sta *__r1
lda *__r2
adc *__r0
sta *__r0
clra
ldhx *__r0
sta ,x
tsx
; gb_mask2--;
dec 48,X
; sign--;
dec 33,X
; }
L171:
; if(clock_array[8]==2&&clock_array[9]>=5)
lda 42,X
cmp #2
bne L175
lda 43,X
cmp #5
blo L175
; {
; clock_array[sign+5]=0;
aix #39
sthx *__r0
tsx
clr *__r2
lda 33,X
add *__r1
sta *__r1
lda *__r2
adc *__r0
sta *__r0
clra
ldhx *__r0
sta ,x
tsx
; gb_mask2--;
dec 48,X
; sign--;
dec 33,X
; }
L175:
; guangbiao(1,gb_mask2);
lda 48,X
psha
lda #1
psha
jsr _guangbiao
ais #2
tsx
; if(KB_valve==0)
lda *_KB_valve
bne L180
; {
; KB_valve=1;
lda #1
sta *_KB_valve
; str_clock(clock_array,14);
lda #14
psha
aix #34
pshx
pshh
jsr _str_clock
ais #3
; Lcd_Show(1);
lda #1
psha
jsr _Lcd_Show
ais #1
tsx
; }
L180:
; if(KB_valve=='0')//退出设置闹钟
lda *_KB_valve
cmp #48
bne L182
; {
; unsigned char optioninit[32]="1.set time 2.set clock ";
sthx *__r0
lda #32
psha
clra
psha
lda #<L184
psha
lda #>L184
psha
lda *__r1
psha
lda *__r0
psha
jsr __asgnblk
ais #6
; lcdshow2(optioninit);
pshx
pshh
jsr _lcdshow2
ais #2
tsx
; KB_valve=0;
clr *_KB_valve
; break;
jmp L156
L182:
; }
; if(KB_valve=='C')//闹钟
lda *_KB_valve
cmp #67
bne L185
; {
; unsigned char Okinit[32]=" ok ";
sthx *__r0
lda #32
psha
clra
psha
lda #<L187
psha
lda #>L187
psha
lda *__r1
psha
lda *__r0
psha
jsr __asgnblk
ais #6
; lcdshow2(Okinit);
pshx
pshh
jsr _lcdshow2
ais #2
; Delay();
jsr _Delay
tsx
; naozhong=1;
lda #1
sta *_naozhong
; KB_valve=0;
clr *_KB_valve
; }
L185:
; switch(KB_valve)
clr 30,X
lda *_KB_valve
sta 31,X
lda 30,X
bne X6
lda 31,X
cmp #35
bne X22
jmp L212
X22:
X6:
lda 30,X
bne X7
lda 31,X
cmp #42
bne X23
jmp L211
X23:
X7:
lda 30,X
bne X8
lda 31,X
cmp #48
bne X24
jmp L191
X24:
X8:
lda 30,X
bne X9
lda 31,X
cmp #49
bne X25
jmp L193
X25:
X9:
lda 30,X
bne X10
lda 31,X
cmp #50
bne X26
jmp L195
X26:
X10:
lda 30,X
bne X11
lda 31,X
cmp #51
bne X27
jmp L197
X27:
X11:
lda 30,X
bne X12
lda 31,X
cmp #52
bne X28
jmp L199
X28:
X12:
lda 30,X
bne X13
lda 31,X
cmp #53
bne X29
jmp L201
X29:
X13:
lda 30,X
bne X14
lda 31,X
cmp #54
bne X30
jmp L203
X30:
X14:
lda 30,X
bne X15
lda 31,X
cmp #55
bne X31
jmp L205
X31:
X15:
lda 30,X
bne X16
lda 31,X
cmp #56
bne X32
jmp L207
X32:
X16:
lda 30,X
bne X17
lda 31,X
cmp #57
bne X33
jmp L209
X33:
X17:
jmp L188
X18:
; {
L191:
; case '0'://设置为 0
; clock_array[sign+6]=0;
aix #40
sthx *__r0
tsx
clr *__r2
lda 33,X
add *__r1
sta *__r1
lda *__r2
adc *__r0
sta *__r0
clra
ldhx *__r0
sta ,x
tsx
; gb_mask2++;
inc 48,X
; sign++;
inc 33,X
; KB_valve=0;
clr *_KB_valve
; break;
jmp L189
L193:
; case '1'://设置为 1
; clock_array[sign+6]=1;
aix #40
sthx *__r0
tsx
clr *__r2
lda 33,X
add *__r1
sta *__r1
lda *__r2
adc *__r0
sta *__r0
lda #1
ldhx *__r0
sta ,x
tsx
; gb_mask2++;
inc 48,X
; sign++;
inc 33,X
; KB_valve=0;
clr *_KB_valve
; break;
jmp L189
L195:
; case '2'://设置为 2
; clock_array[sign+6]=2;
aix #40
sthx *__r0
tsx
clr *__r2
lda 33,X
add *__r1
sta *__r1
lda *__r2
adc *__r0
sta *__r0
lda #2
ldhx *__r0
sta ,x
tsx
; gb_mask2++;
inc 48,X
; sign++;
inc 33,X
; KB_valve=0;
clr *_KB_valve
; break;
jmp L189
L197:
; case '3'://设置为 3
; clock_array[sign+6]=3;
aix #40
sthx *__r0
tsx
clr *__r2
lda 33,X
add *__r1
sta *__r1
lda *__r2
adc *__r0
sta *__r0
lda #3
ldhx *__r0
sta ,x
tsx
; gb_mask2++;
inc 48,X
; sign++;
inc 33,X
; KB_valve=0;
clr *_KB_valve
; break;
jmp L189
L199:
; case '4'://设置为 4
; clock_array[sign+6]=4;
aix #40
sthx *__r0
tsx
clr *__r2
lda 33,X
add *__r1
sta *__r1
lda *__r2
adc *__r0
sta *__r0
lda #4
ldhx *__r0
sta ,x
tsx
; gb_mask2++;
inc 48,X
; sign++;
inc 33,X
; KB_valve=0;
clr *_KB_valve
; break;
jmp L189
L201:
; case '5'://设置为 5
; clock_array[sign+6]=5;
aix #40
sthx *__r0
tsx
clr *__r2
lda 33,X
add *__r1
sta *__r1
lda *__r2
adc *__r0
sta *__r0
lda #5
ldhx *__r0
sta ,x
tsx
; gb_mask2++;
inc 48,X
; sign++;
inc 33,X
; KB_valve=0;
clr *_KB_valve
; break;
jmp L189
L203:
; case '6'://设置为 6
; clock_array[sign+6]=6;
aix #40
sthx *__r0
tsx
clr *__r2
lda 33,X
add *__r1
sta *__r1
lda *__r2
adc *__r0
sta *__r0
lda #6
ldhx *__r0
sta ,x
tsx
; gb_mask2++;
inc 48,X
; sign++;
inc 33,X
; KB_valve=0;
clr *_KB_valve
; break;
bra L189
L205:
; case '7'://设置为 7
; clock_array[sign+6]=7;
aix #40
sthx *__r0
tsx
clr *__r2
lda 33,X
add *__r1
sta *__r1
lda *__r2
adc *__r0
sta *__r0
lda #7
ldhx *__r0
sta ,x
tsx
; gb_mask2++;
inc 48,X
; sign++;
inc 33,X
; KB_valve=0;
clr *_KB_valve
; break;
bra L189
L207:
; case '8'://设置为 8
; clock_array[sign+6]=8;
aix #40
sthx *__r0
tsx
clr *__r2
lda 33,X
add *__r1
sta *__r1
lda *__r2
adc *__r0
sta *__r0
lda #8
ldhx *__r0
sta ,x
tsx
; gb_mask2++;
inc 48,X
; sign++;
inc 33,X
; KB_valve=0;
clr *_KB_valve
; break;
bra L189
L209:
; case '9'://设置为 9
; clock_array[sign+6]=9;
aix #40
sthx *__r0
tsx
clr *__r2
lda 33,X
add *__r1
sta *__r1
lda *__r2
adc *__r0
sta *__r0
lda #9
ldhx *__r0
sta ,x
tsx
; gb_mask2++;
inc 48,X
; sign++;
inc 33,X
; KB_valve=0;
clr *_KB_valve
; break;
bra L189
L211:
; case '*'://左移
; KB_valve=0;
clr *_KB_valve
; break;
bra L189
L212:
; case '#'://右移
; gb_mask2++;
inc 48,X
; sign++;
inc 33,X
; KB_valve=0;
clr *_KB_valve
; break;
L188:
L189:
L155:
jmp L154
L156:
; }
; }
; }
L151:
; if(KB_valve=='3')//选项3
lda *_KB_valve
cmp #51
bne L213
; {
; KB_valve=0;
clr *_KB_valve
; }
L213:
; if(KB_valve=='C')//确定
lda *_KB_valve
cmp #67
bne L215
; {
; KB_valve=0;
clr *_KB_valve
; }
L215:
; if(KB_valve=='*')//上移
lda *_KB_valve
cmp #42
bne L217
; {
; KB_valve=0;
clr *_KB_valve
; }
L217:
; if(KB_valve=='#')//下移
lda *_KB_valve
cmp #35
bne L219
; {
; KB_valve=0;
clr *_KB_valve
; }
L219:
; if(KB_valve=='0')//退出
lda *_KB_valve
cmp #48
bne L221
; {
; KB_valve=0;
clr *_KB_valve
; break;
bra L78
L221:
L77:
jmp L76
L78:
L74:
ais #81
.dbline 0 ; func end
rts
.area bss
_KB_valve::
.blkb 1
_naozhong::
.blkb 1
_clockn::
.blkb 2
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -