?? vfd.s
字號:
cpc R25,R23
brlt L141
ldi R24,<L215
ldi R25,>L215
movw R30,R22
sbiw R30,1
lsl R30
rol R31
add R30,R24
adc R31,R25
lpm R0,Z+
lpm R1,Z
movw R30,R0
ijmp
X10:
.dbline 718
; {
L210:
.dbline 720
; case TUNER_MODE:
; tuner_display();
xcall _tuner_display
.dbline 721
; break;
xjmp L141
L211:
.dbline 723
; case TAPE_MODE:
; Set_String(" AV1");
ldi R16,<L197
ldi R17,>L197
xcall _Set_String
.dbline 724
; break;
xjmp L141
L212:
.dbline 726
; case AV2_MODE:
; Set_String(" AV2");
ldi R16,<L199
ldi R17,>L199
xcall _Set_String
.dbline 727
; break;
xjmp L141
L213:
.dbline 729
; case AV3_MODE:
; Set_String(" AV3");
ldi R16,<L201
ldi R17,>L201
xcall _Set_String
.dbline 730
; break;
xjmp L141
L214:
.dbline 742
; case POWER_OFF_MODE:
; #ifdef CLOCK_STANDBY
; g_vfd_grid_buffer[7] = num_trans(time_val[0]/10);
; g_vfd_grid_buffer[6] = (num_trans(time_val[0]%10)|VFD_LED_COL);
; g_vfd_grid_buffer[5] = num_trans(time_val[1]/10);
; g_vfd_grid_buffer[4] = (num_trans(time_val[1]%10)|VFD_LED_COL);
; g_vfd_grid_buffer[3] = num_trans(time_val[2]/10);
; g_vfd_grid_buffer[2] = num_trans(time_val[2]%10);
; #endif
; //Set_FS1_H();
; //Set_FS2_H();
; muted = 1;
ldi R24,1
sts _muted,R24
.dbline 743
; MCU_mute();
xcall _MCU_mute
.dbline 744
; delay_ms(100);
ldi R16,100
ldi R17,0
xcall _delay_ms
.dbline 745
; led_val = 0x01;
ldi R24,1
sts _led_val,R24
.dbline 746
; decoder_power_off();
clr R16
clr R17
xcall _DEC_power
.dbline 747
; break;
.dbline 749
; }
; break;
L141:
.dbline 754
L134:
.dbline 754
;
;
; }
;
; };
.dbline 755
; if(work_mode != POWER_OFF_MODE)
lds R24,_work_mode
cpi R24,5
breq L217
.dbline 756
; {
.dbline 757
; if(muted)
lds R2,_muted
tst R2
breq L219
.dbline 758
; g_vfd_grid_buffer[7] |= VFD_LED_MUTE;
lds R25,_g_vfd_grid_buffer+14+1
lds R24,_g_vfd_grid_buffer+14
ori R25,64
sts _g_vfd_grid_buffer+14+1,R25
sts _g_vfd_grid_buffer+14,R24
L219:
.dbline 759
; if(g_ui_timing_cnt)
lds R3,_g_ui_timing_cnt+1
lds R2,_g_ui_timing_cnt
tst R2
brne X17
tst R3
breq L222
X17:
.dbline 760
; g_vfd_grid_buffer[0] |= VFD_LED_SLEEP;
lds R25,_g_vfd_grid_buffer+1
lds R24,_g_vfd_grid_buffer
ori R25,128
sts _g_vfd_grid_buffer+1,R25
sts _g_vfd_grid_buffer,R24
L222:
.dbline 763
L217:
.dbline 763
; //if(g_tape_s.pstate==TAPE_FWD_REC)
; //g_vfd_grid_buffer[10] |= VFD_LED_REC;
; };
.dbline 764
; VFD_LL_SetGrid();
xcall _VFD_LL_SetGrid
.dbline 765
; for(i=0; i<VFD_BUFFER_SIZE; i++)
clr R20
xjmp L227
L224:
.dbline 766
.dbline 767
ldi R24,<_g_vfd_grid_buffer
ldi R25,>_g_vfd_grid_buffer
mov R30,R20
clr R31
lsl R30
rol R31
add R30,R24
adc R31,R25
ldd R18,z+0
ldd R19,z+1
mov R16,R20
clr R17
xcall _VFD_LL_WriteDisplayRAM
.dbline 769
lds R16,_led_val
clr R17
xcall _VFD_LL_RefreshLED
.dbline 773
L225:
.dbline 765
inc R20
L227:
.dbline 765
cpi R20,12
brlo L224
.dbline 773
; {
; VFD_LL_WriteDisplayRAM( i, g_vfd_grid_buffer[i]);
;
; VFD_LL_RefreshLED(led_val);
; #ifdef MORE_THAN_16SEGMENT
; VFD_LL_WriteExtDisplayRAM(i,g_vfd_grid_ext_buffer[i]);
; #endif
; };
.dbline 774
; VFD_LL_SetDim(0x0f);
ldi R16,15
ldi R17,0
xcall _VFD_LL_SetDim
.dbline -2
.dbline 775
; }
L133:
xcall pop_gset2
.dbline 0 ; func end
ret
.dbsym r value 22 i
.dbsym r i 20 c
.dbfunc s Set_String _Set_String fI
; pos -> R20,R21
; str -> R16,R17
.even
_Set_String::
xcall push_gset1
.dbline -1
.dbline 778
;
; unsigned char Set_String(unsigned char *str)
; {
.dbline 784
; // int position;
; // int counter = 0;
; int pos;
; // int letter_index;
;
; for(pos = 9; pos > 1; pos--)
ldi R20,9
ldi R21,0
L229:
.dbline 785
; {
.dbline 786
; if (*str)
movw R30,R16
ldd R2,z+0
tst R2
brne X18
xjmp L233
X18:
.dbline 787
; {
.dbline 788
; if ( ((*str)>='A') && ((*str)<='Z'))
clr R3
movw R24,R2
cpi R24,65
ldi R30,0
cpc R25,R30
brlt L235
ldi R24,90
ldi R25,0
cp R24,R2
cpc R25,R3
brlt L235
.dbline 789
; {
.dbline 790
; g_vfd_grid_buffer[pos] = vfd_alpha[(*str)-'A'];
ldi R24,<_vfd_alpha
ldi R25,>_vfd_alpha
mov R30,R2
clr R31
subi R30,65
sbci R31,0
lsl R30
rol R31
add R30,R24
adc R31,R25
lpm R0,Z+
lpm R1,Z
movw R30,R0
ldi R24,<_g_vfd_grid_buffer
ldi R25,>_g_vfd_grid_buffer
movw R26,R20
lsl R26
rol R27
add R26,R24
adc R27,R25
st x+,R30
st x,R31
.dbline 791
; }
xjmp L236
L235:
.dbline 792
; else if ( (*str) == '-' )
movw R30,R16
ldd R24,z+0
cpi R24,45
brne L237
.dbline 793
; {
.dbline 794
; g_vfd_grid_buffer[pos] = VFD_alpha_DASH;
ldi R24,<_g_vfd_grid_buffer
ldi R25,>_g_vfd_grid_buffer
movw R30,R20
lsl R30
rol R31
add R30,R24
adc R31,R25
ldi R24,8192
ldi R25,32
std z+0,R24
std z+1,R25
.dbline 795
; }
xjmp L238
L237:
.dbline 796
; else if ( ((*str)>='0') && ((*str)<='9'))
movw R30,R16
ldd R2,z+0
clr R3
movw R24,R2
cpi R24,48
ldi R30,0
cpc R25,R30
brlt L239
ldi R24,57
ldi R25,0
cp R24,R2
cpc R25,R3
brlt L239
.dbline 797
; {
.dbline 799
;
; g_vfd_grid_buffer[pos] = num_xlate[(*str)-'0'];
ldi R24,<_num_xlate
ldi R25,>_num_xlate
mov R30,R2
clr R31
sbiw R30,48
lsl R30
rol R31
add R30,R24
adc R31,R25
lpm R0,Z+
lpm R1,Z
movw R30,R0
ldi R24,<_g_vfd_grid_buffer
ldi R25,>_g_vfd_grid_buffer
movw R26,R20
lsl R26
rol R27
add R26,R24
adc R27,R25
st x+,R30
st x,R31
.dbline 800
; }
xjmp L240
L239:
.dbline 801
; else if((*str)=='*')
movw R30,R16
ldd R24,z+0
cpi R24,42
brne L241
.dbline 802
; {
.dbline 803
; g_vfd_grid_buffer[pos] = VFD_alpha_aster;
ldi R24,<_g_vfd_grid_buffer
ldi R25,>_g_vfd_grid_buffer
movw R30,R20
lsl R30
rol R31
add R30,R24
adc R31,R25
ldi R24,3804
ldi R25,14
std z+0,R24
std z+1,R25
.dbline 804
; }
xjmp L242
L241:
.dbline 805
; else if((*str)==0x0D)
movw R30,R16
ldd R24,z+0
cpi R24,13
brne L243
.dbline 806
; return 0;
clr R16
clr R17
xjmp L228
L243:
.dbline 807
; else if((*str)==0x0A)
movw R30,R16
ldd R24,z+0
cpi R24,10
brne L245
.dbline 808
; return 1;
ldi R16,1
ldi R17,0
xjmp L228
L245:
L242:
L240:
L238:
L236:
.dbline 809
; str++;
subi R16,255 ; offset = 1
sbci R17,255
.dbline 811
;
; }
xjmp L234
L233:
.dbline 813
; else
; return 0;
clr R16
clr R17
xjmp L228
L234:
.dbline 815
L230:
.dbline 784
subi R20,1
sbci R21,0
.dbline 784
ldi R24,1
ldi R25,0
cp R24,R20
cpc R25,R21
brge X19
xjmp L229
X19:
.dbline 816
;
; }
; return 1;
ldi R16,1
ldi R17,0
.dbline -2
L228:
xcall pop_gset1
.dbline 0 ; func end
ret
.dbsym r pos 20 I
.dbsym r str 16 pc
.area bss(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
_info::
.blkb 2
.dbsym s info _info i
_blink_time::
.blkb 1
.dbsym s blink_time _blink_time c
_err_msg::
.blkb 2
.dbsym s err_msg _err_msg pc
_g_ui_timing_cnt::
.blkb 2
.dbsym s g_ui_timing_cnt _g_ui_timing_cnt i
_g_vfd_grid_buffer::
.blkb 24
.dbsym s g_vfd_grid_buffer _g_vfd_grid_buffer A[24:12]i
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L201:
.blkb 7
.area idata
.byte 32,32,32,'A,'V,51,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L199:
.blkb 7
.area idata
.byte 32,32,32,'A,'V,50,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L197:
.blkb 7
.area idata
.byte 32,32,32,'A,'V,49,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L195:
.blkb 7
.area idata
.byte 32,'T,'U,'N,'E,'R,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L182:
.blkb 6
.area idata
.byte 'S,'L,'E,'E,'P,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L170:
.blkb 4
.area idata
.byte 'B,'A,'L,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L161:
.blkb 7
.area idata
.byte 'T,'R,'E,'B,'L,'E,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L153:
.blkb 5
.area idata
.byte 'B,'A,'S,'S,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L146:
.blkb 4
.area idata
.byte 'V,'O,'L,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L144:
.blkb 9
.area idata
.byte 'A,57,56,48,'R,49,48,52,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L119:
.blkb 6
.area idata
.byte 'S,'T,'O,'R,'E,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L115:
.blkb 6
.area idata
.byte 'N,'O,32,'C,'T,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L105:
.blkb 6
.area idata
.byte 'N,'O,32,'R,'T,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L93:
.blkb 6
.area idata
.byte 'O,'T,'H,'E,'R,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L92:
.blkb 6
.area idata
.byte 'A,'L,'A,'R,'M,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L90:
.blkb 8
.area idata
.byte 'O,'T,'H,'E,'R,32,'M,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L88:
.blkb 9
.area idata
.byte 'C,'L,'A,'S,'S,'I,'C,'S,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L86:
.blkb 8
.area idata
.byte 'L,'I,'G,'H,'T,32,'M,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L84:
.blkb 7
.area idata
.byte 'E,'A,'S,'Y,32,'M,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L82:
.blkb 7
.area idata
.byte 'R,'O,'C,'K,32,'M,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L80:
.blkb 6
.area idata
.byte 'P,'O,'P,32,'M,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L78:
.blkb 7
.area idata
.byte 'V,'A,'R,'I,'E,'D,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L76:
.blkb 8
.area idata
.byte 'S,'C,'I,'E,'N,'C,'E,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L74:
.blkb 8
.area idata
.byte 'C,'U,'L,'T,'U,'T,'E,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L72:
.blkb 6
.area idata
.byte 'D,'R,'A,'M,'A,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L70:
.blkb 8
.area idata
.byte 'E,'D,'U,'C,'A,'T,'E,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L68:
.blkb 6
.area idata
.byte 'S,'P,'O,'R,'T,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L66:
.blkb 5
.area idata
.byte 'I,'N,'F,'O,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L64:
.blkb 8
.area idata
.byte 'A,'F,'F,'A,'I,'R,'S,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L62:
.blkb 5
.area idata
.byte 'N,'E,'W,'S,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L60:
.blkb 5
.area idata
.byte 'N,'O,'N,'E,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L53:
.blkb 7
.area idata
.byte 'N,'O,32,'P,'T,'Y,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L39:
.blkb 4
.area idata
.byte 'P,'T,'Y,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
L33:
.blkb 9
.area idata
.byte 'N,'O,'P,'S,'N,'A,'M,'E,0
.area data(ram, con, rel)
.dbfile D:\avrmcu\AT980\AT980\vfd.c
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -