📄 playedit.s
字号:
L206:
.dbline 333
; while(1){
.dbline 334
; Play_xuanzhe(&path[0],1); //文件选择菜单
ldi R18,1
ldi R19,0
movw R16,R28
subi R16,216 ; offset = 40
sbci R17,255
xcall _Play_xuanzhe
.dbline 335
; if(keybuf == K_ESC) goto out;
lds R24,_keybuf
cpi R24,5
brne L209
.dbline 335
xjmp L211
L209:
.dbline 336
; if(keybuf == K_ENTER) break;
lds R24,_keybuf
cpi R24,4
brne L212
.dbline 336
xjmp L208
L212:
.dbline 337
L207:
.dbline 333
xjmp L206
L208:
.dbline 338
; }
; show_clear(); //清除显示区
xcall _show_clear
.dbline 339
; show_lcd(0, 0, 192, 2, &please_time[0],0);
clr R2
clr R3
std y+7,R3
std y+6,R2
ldi R24,<_please_time
ldi R25,>_please_time
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,192
std y+1,R25
std y+0,R24
clr R18
clr R19
clr R16
clr R17
xcall _show_lcd
.dbline 340
; show_play(&Filename[0],3,0); //显示选择的文件名
clr R2
clr R3
std y+1,R3
std y+0,R2
ldi R18,3
ldi R19,0
ldi R16,<_Filename
ldi R17,>_Filename
xcall _show_play
.dbline 341
; set_out_time(&playtime,6); //得到定时时间
ldi R18,6
ldi R19,0
movw R16,R28
subi R16,206 ; offset = 50
sbci R17,255
xcall _set_out_time
.dbline 342
; if(keybuf == K_ESC) break;
lds R24,_keybuf
cpi R24,5
brne L214
.dbline 342
xjmp L194
L214:
.dbline 343
ldd R2,y+52
std y+37,R2
.dbline 344
ldd R2,y+51
std y+38,R2
.dbline 345
ldd R2,y+50
std y+39,R2
.dbline 346
ldi R24,85
std y+36,R24
.dbline 347
ldi R18,<_Filename
ldi R19,>_Filename
movw R16,R28
subi R16,248 ; offset = 8
sbci R17,255
xcall _strcpy
.dbline 348
ldi R24,32
ldi R25,0
std y+1,R25
std y+0,R24
movw R18,R28
subi R18,248 ; offset = 8
sbci R19,255
movw R16,R20
xcall _EEPROMWriteBytes
.dbline 349
L193:
.dbline 316
xjmp L198
L194:
L211:
.dbline 350
.dbline 351
L179:
.dbline 306
xjmp L182
X23:
.dbline -2
L177:
adiw R28,53
xcall pop_gset2
.dbline 0 ; func end
ret
.dbsym l playtime 50 X
.dbsym l path 40 A[10:10]c
.dbsym r point 20 i
.dbsym r day 22 c
.dbsym l FILE 8 X
.dbsym r data 22 c
.dbend
.dbfunc e Play_edit_data _Play_edit_data fV
; data -> R20
; ii -> R22
.even
_Play_edit_data::
xcall push_gset5
sbiw R28,8
.dbline -1
.dbline 361
; FILE.hour = playtime.hour;
; FILE.min = playtime.min;
; FILE.sec = playtime.sec;
; FILE.active = 0x55;
; strcpy(&FILE.filename[0],&Filename[0]);
; EEPROMWriteBytes(point,&FILE,sizeof(FILE));
; }
; out:;
; }
; }
;
; /////////////////////////////////////////////////////////////////////////////////////////////
; extern uchar const DotTbl16[];
; extern unsigned char const add_tab[];
; extern unsigned char const del_tab[];
; extern unsigned char const show_tab[];
; extern unsigned char const nAsciiDot[];
; void Play_edit_data(void)
; {
.dbline 364
; uchar ii;
; uchar data;
; data = 0;
clr R20
.dbline 365
; show_clear();
xcall _show_clear
xjmp L224
L223:
.dbline 366
; while(1){
.dbline 367
; ii = 0;
clr R22
.dbline 368
; show_lcd(0, ii, 16, 2, &DotTbl16[9*32],0);//星期
clr R2
clr R3
std y+7,R3
std y+6,R2
ldi R24,<_DotTbl16+288
ldi R25,>_DotTbl16+288
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,16
std y+1,R25
std y+0,R24
mov R18,R22
clr R19
clr R16
clr R17
xcall _show_lcd
.dbline 369
; ii += 16;
subi R22,240 ; addi 16
.dbline 370
; show_lcd(0, ii, 16, 2, &DotTbl16[10*32],0);//星期
clr R2
clr R3
std y+7,R3
std y+6,R2
ldi R24,<_DotTbl16+320
ldi R25,>_DotTbl16+320
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,16
std y+1,R25
std y+0,R24
mov R18,R22
clr R19
clr R16
clr R17
xcall _show_lcd
.dbline 371
; ii += 16;
subi R22,240 ; addi 16
.dbline 372
; show_lcd(0, ii, 8, 2, &nAsciiDot[26*16],0);//:
clr R2
clr R3
std y+7,R3
std y+6,R2
ldi R24,<_nAsciiDot+416
ldi R25,>_nAsciiDot+416
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,8
std y+1,R25
std y+0,R24
mov R18,R22
clr R19
clr R16
clr R17
xcall _show_lcd
.dbline 374
;
; ii = 32;
ldi R22,32
.dbline 375
; show_lcd(3, ii, 16, 2, &DotTbl16[11*32],0);
clr R2
clr R3
std y+7,R3
std y+6,R2
ldi R24,<_DotTbl16+352
ldi R25,>_DotTbl16+352
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,16
std y+1,R25
std y+0,R24
mov R18,R22
clr R19
ldi R16,3
ldi R17,0
xcall _show_lcd
.dbline 376
; ii += 32;
subi R22,224 ; addi 32
.dbline 377
; show_lcd(3, ii, 16, 2, &DotTbl16[12*32],0);
clr R2
clr R3
std y+7,R3
std y+6,R2
ldi R24,<_DotTbl16+384
ldi R25,>_DotTbl16+384
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,16
std y+1,R25
std y+0,R24
mov R18,R22
clr R19
ldi R16,3
ldi R17,0
xcall _show_lcd
.dbline 378
; ii += 32;
subi R22,224 ; addi 32
.dbline 379
; show_lcd(3, ii, 16, 2, &DotTbl16[13*32],0);
clr R2
clr R3
std y+7,R3
std y+6,R2
ldi R24,<_DotTbl16+416
ldi R25,>_DotTbl16+416
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,16
std y+1,R25
std y+0,R24
mov R18,R22
clr R19
ldi R16,3
ldi R17,0
xcall _show_lcd
.dbline 380
; ii = 129;
ldi R22,129
.dbline 381
; show_lcd(3, ii, 16, 2, &DotTbl16[14*32],0);
clr R2
clr R3
std y+7,R3
std y+6,R2
ldi R24,<_DotTbl16+448
ldi R25,>_DotTbl16+448
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,16
std y+1,R25
std y+0,R24
mov R18,R22
clr R19
ldi R16,3
ldi R17,0
xcall _show_lcd
.dbline 383
;
; ii += 32;
subi R22,224 ; addi 32
.dbline 384
; show_lcd(3, ii, 16, 2, &DotTbl16[15*32],0);
clr R2
clr R3
std y+7,R3
std y+6,R2
ldi R24,<_DotTbl16+480
ldi R25,>_DotTbl16+480
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,16
std y+1,R25
std y+0,R24
mov R18,R22
clr R19
ldi R16,3
ldi R17,0
xcall _show_lcd
.dbline 385
; ii = 0;
clr R22
.dbline 386
; show_lcd(6, ii, 16, 2, &DotTbl16[16*32],0);
clr R2
clr R3
std y+7,R3
std y+6,R2
ldi R24,<_DotTbl16+512
ldi R25,>_DotTbl16+512
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,16
std y+1,R25
std y+0,R24
mov R18,R22
clr R19
ldi R16,6
ldi R17,0
xcall _show_lcd
.dbline 387
; ii += 32;
subi R22,224 ; addi 32
.dbline 388
; show_lcd(6, ii, 16, 2, &DotTbl16[2*32],0);
clr R2
clr R3
std y+7,R3
std y+6,R2
ldi R24,<_DotTbl16+64
ldi R25,>_DotTbl16+64
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,16
std y+1,R25
std y+0,R24
mov R18,R22
clr R19
ldi R16,6
ldi R17,0
xcall _show_lcd
.dbline 389
; ii += 32;
subi R22,224 ; addi 32
.dbline 390
mov R10,R20
clr R11
tst R10
brne X24
tst R11
breq L239
X24:
movw R24,R10
cpi R24,1
ldi R30,0
cpc R25,R30
breq L241
cpi R24,2
ldi R30,0
cpc R25,R30
brne X32
xjmp L243
X32:
cpi R24,3
ldi R30,0
cpc R25,R30
brne X33
xjmp L245
X33:
cpi R24,4
ldi R30,0
cpc R25,R30
brne X34
xjmp L247
X34:
cpi R24,5
ldi R30,0
cpc R25,R30
brne X35
xjmp L249
X35:
cpi R24,6
ldi R30,0
cpc R25,R30
brne X36
xjmp L251
X36:
xjmp L236
X25:
.dbline 390
; switch(data){
L239:
.dbline 392
; case 0://星期1
; show_lcd(3, 32, 16, 2, &DotTbl16[11*32],1);
ldi R24,1
ldi R25,0
std y+7,R25
std y+6,R24
ldi R24,<_DotTbl16+352
ldi R25,>_DotTbl16+352
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,16
std y+1,R25
std y+0,R24
ldi R18,32
ldi R19,0
ldi R16,3
ldi R17,0
xcall _show_lcd
.dbline 393
; break;
xjmp L237
L241:
.dbline 395
; case 1://星期2
; show_lcd(3, 64, 16, 2, &DotTbl16[12*32],1);
ldi R24,1
ldi R25,0
std y+7,R25
std y+6,R24
ldi R24,<_DotTbl16+384
ldi R25,>_DotTbl16+384
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,16
std y+1,R25
std y+0,R24
ldi R18,64
ldi R19,0
ldi R16,3
ldi R17,0
xcall _show_lcd
.dbline 396
; break;
xjmp L237
L243:
.dbline 398
; case 2://星期3
; show_lcd(3, 96, 16, 2, &DotTbl16[13*32],1);
ldi R24,1
ldi R25,0
std y+7,R25
std y+6,R24
ldi R24,<_DotTbl16+416
ldi R25,>_DotTbl16+416
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,16
std y+1,R25
std y+0,R24
ldi R18,96
ldi R19,0
ldi R16,3
ldi R17,0
xcall _show_lcd
.dbline 399
; break;
xjmp L237
L245:
.dbline 401
; case 3://星期4
; show_lcd(3, 129, 16, 2, &DotTbl16[14*32],1);
ldi R24,1
ldi R25,0
std y+7,R25
std y+6,R24
ldi R24,<_DotTbl16+448
ldi R25,>_DotTbl16+448
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,16
std y+1,R25
std y+0,R24
ldi R18,129
ldi R19,0
ldi R16,3
ldi R17,0
xcall _show_lcd
.dbline 402
; break;
xjmp L237
L247:
.dbline 404
; case 4://星期5
; show_lcd(3, 161, 16, 2, &DotTbl16[15*32],1);
ldi R24,1
ldi R25,0
std y+7,R25
std y+6,R24
ldi R24,<_DotTbl16+480
ldi R25,>_DotTbl16+480
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,16
std y+1,R25
std y+0,R24
ldi R18,161
ldi R19,0
ldi R16,3
ldi R17,0
xcall _show_lcd
.dbline 405
; break;
xjmp L237
L249:
.dbline 407
; case 5://星期6
; show_lcd(6, 0, 16, 2, &DotTbl16[16*32],1);
ldi R24,1
ldi R25,0
std y+7,R25
std y+6,R24
ldi R24,<_DotTbl16+512
ldi R25,>_DotTbl16+512
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,16
std y+1,R25
std y+0,R24
clr R18
clr R19
ldi R16,6
ldi R17,0
xcall _show_lcd
.dbline 408
; break;
xjmp L237
L251:
.dbline 410
; case 6://星期日
; show_lcd(6, 32, 16, 2, &DotTbl16[2*32],1);
ldi R24,1
ldi R25,0
std y+7,R25
std y+6,R24
ldi R24,<_DotTbl16+64
ldi R25,>_DotTbl16+64
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,16
std y+1,R25
std y+0,R24
ldi R18,32
ldi R19,0
ldi R16,6
ldi R17,0
xcall _show_lcd
.dbline 411
; break;
L236:
L237:
.dbline 413
; }
; KEYBUF_NULL;
clr R2
sts _keybuf,R2
.dbline 413
L253:
.dbline 414
L254:
.dbline 414
; while(keybuf == NULL);
lds R2,_keybuf
tst R2
breq L253
.dbline 415
; if((keybuf == K_RIFT)|(keybuf == K_DOWN)){(++data == 7) ? (data = 0) : 0;}
mov R24,R2
cpi R24,6
brne L258
ldi R24,1
ldi R25,0
movw R14,R24
xjmp L259
L258:
clr R14
clr R15
L259:
lds R24,_keybuf
cpi R24,1
brne L260
ldi R24,1
ldi R25,0
movw R12,R24
xjmp L261
L260:
clr R12
clr R13
L261:
movw R2,R14
or R2,R12
or R3,R13
tst R2
brne X26
tst R3
breq L256
X26:
.dbline 415
.dbline 415
mov R24,R20
subi R24,255 ; addi 1
mov R20,R24
cpi R20,7
brne L263
clr R20
xjmp L263
L263:
.dbline 415
L256:
.dbline 416
; if((keybuf == K_LIFT)|(keybuf == K_UP)){(--data == 255) ? (data = 6) : 0;}
lds R24,_keybuf
cpi R24,2
brne L266
ldi R24,1
ldi R25,0
movw R14,R24
xjmp L267
L266:
clr R14
clr R15
L267:
lds R24,_keybuf
cpi R24,3
brne L268
ldi R24,1
ldi R25,0
movw R12,R24
xjmp L269
L268:
clr R12
clr R13
L269:
movw R2,R14
or R2,R12
or R3,R13
tst R2
brne X27
tst R3
breq L264
X27:
.dbline 416
.dbline 416
mov R24,R20
subi R24,1
mov R20,R24
cpi R20,255
brne L271
ldi R20,6
xjmp L271
L271:
.dbline 416
L264:
.dbline 417
; if(keybuf == K_ESC) break;
lds R24,_keybuf
cpi R24,5
brne L272
.dbline 417
xjmp L225
L272:
.dbline 418
; if(keybuf != K_ENTER) continue;
lds R24,_keybuf
cpi R24,4
breq L274
.dbline 418
xjmp L224
L274:
.dbline 419
; ii = 0;
clr R22
xjmp L277
L276:
.dbline 420
; while(1){
.dbline 421
; show_clear();
xcall _show_clear
.dbline 422
; show_lcd(0, 56, 80, 2, &show_tab[0],0);
clr R2
clr R3
std y+7,R3
std y+6,R2
ldi R24,<_show_tab
ldi R25,>_show_tab
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,80
std y+1,R25
std y+0,R24
ldi R18,56
ldi R19,0
clr R16
clr R17
xcall _show_lcd
.dbline 423
; show_lcd(3, 56, 80, 2, &add_tab[0],0);
clr R2
clr R3
std y+7,R3
std y+6,R2
ldi R24,<_add_tab
ldi R25,>_add_tab
std y+5,R25
std y+4,R24
ldi R24,2
ldi R25,0
std y+3,R25
std y+2,R24
ldi R24,80
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -