⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fp_vol.lis

📁 sunplus spca514 cdmp3 源码
💻 LIS
字号:
                         .module fp_vol.c
                         .area data(ram, con, rel)
 0000                 _fp_vol_0_cnt:
 0000                   .blkb 1
                         .area idata
 0000 00                .byte 0
                         .area data(ram, con, rel)
 0001                   .dbfile D:\avrmcu\AT980\fpvol\fp_vol.c
 0001                   .dbsym s fp_vol_0_cnt _fp_vol_0_cnt c
 0001                 _fp_vol_1_cnt:
 0001                   .blkb 1
                         .area idata
 0001 00                .byte 0
                         .area data(ram, con, rel)
 0002                   .dbfile D:\avrmcu\AT980\fpvol\fp_vol.c
 0002                   .dbsym s fp_vol_1_cnt _fp_vol_1_cnt c
                         .area vector(rom, abs)
                         .org 4
 0004 0C940000          jmp _int0_isr
                         .area data(ram, con, rel)
 0002                   .dbfile D:\avrmcu\AT980\fpvol\fp_vol.c
                         .area text(rom, con, rel)
 0000                   .dbfile D:\avrmcu\AT980\fpvol\fp_vol.c
 0000                   .dbfunc s int0_isr _int0_isr fI
                         .even
 0000                 _int0_isr::
 0000 8A93              st -y,R24
 0002 9A93              st -y,R25
 0004 8FB7              in R24,0x3f
 0006 8A93              st -y,R24
 0008                   .dbline -1
 0008                   .dbline 11
                       ; #include <iom163.h>
                       ; #include "..\uicc_def.h"
                       ; #include "..\key.h"
                       ; #include "..\io.h"
                       ; extern unsigned int dvd_key;
                       ; static unsigned char fp_vol_0_cnt = 0;
                       ; static unsigned char fp_vol_1_cnt = 0;
                       ; extern unsigned char uicc_code;
                       ; #pragma interrupt_handler int0_isr:2
                       ; void int0_isr(void) // fp_vol_key_input
                       ; {
 0008                   .dbline 12
                       ;     if(get_vol_input())
 0008 9C9B              sbis 0x13,4
 000A 06C0              rjmp L2
 000C                   .dbline 13
                       ;         {
 000C                   .dbline 14
                       ;             fp_vol_0_cnt++;
 000C 80910000          lds R24,_fp_vol_0_cnt
 0010 8F5F              subi R24,255    ; addi 1
 0012 80930000          sts _fp_vol_0_cnt,R24
 0016                   .dbline 15
                       ;         }
 0016 05C0              xjmp L3
 0018                 L2:
 0018                   .dbline 17
 0018                   .dbline 18
 0018 80910100          lds R24,_fp_vol_1_cnt
 001C 8F5F              subi R24,255    ; addi 1
 001E 80930100          sts _fp_vol_1_cnt,R24
 0022                   .dbline 19
 0022                 L3:
 0022                   .dbline -2
 0022                   .dbline 20
                       ;         else
                       ;         {
                       ;              fp_vol_1_cnt++;
                       ;         }
                       ; }
 0022                 L1:
 0022 8991              ld R24,y+
 0024 8FBF              out 0x3f,R24
 0026 9991              ld R25,y+
 0028 8991              ld R24,y+
 002A                   .dbline 0 ; func end
 002A 1895              reti
 002C                   .dbfunc s clear_vol_cnt _clear_vol_cnt fI
                         .even
 002C                 _clear_vol_cnt::
 002C                   .dbline -1
 002C                   .dbline 22
                       ; void clear_vol_cnt(void)
                       ; {
 002C                   .dbline 23
                       ;  fp_vol_0_cnt = 0;
 002C 2224              clr R2
 002E 20920000          sts _fp_vol_0_cnt,R2
 0032                   .dbline 24
                       ;  fp_vol_1_cnt = 0;
 0032 20920100          sts _fp_vol_1_cnt,R2
 0036                   .dbline -2
 0036                   .dbline 25
                       ; }
 0036                 L4:
 0036                   .dbline 0 ; func end
 0036 0895              ret
 0038                   .dbfunc s fp_vol_scan _fp_vol_scan fI
                         .even
 0038                 _fp_vol_scan::
 0038                   .dbline -1
 0038                   .dbline 28
                       ; 
                       ; void fp_vol_scan(void)
                       ; {
 0038                   .dbline 49
                       ;     /*if(g_ui_key_cnt)
                       ;         g_ui_key_cnt--;
                       ;     if (fp_next_cnt >fp_prev_cnt)
                       ;     {
                       ;         if((fp_next_cnt-fp_prev_cnt)>2)
                       ;         {
                       ;             ui_input_handler(UICC_SKIPF);
                       ;             fp_next_cnt = 0;
                       ;             fp_prev_cnt = 0;
                       ;             g_ui_key_cnt = 5;
                       ;         };
                       ;     }
                       ;     else if((fp_prev_cnt-fp_next_cnt)>1)
                       ;     {
                       ;         ui_input_handler(UICC_SKIPB);
                       ;         fp_next_cnt = 0;
                       ;         fp_prev_cnt = 0;
                       ;         g_ui_key_cnt = 5;
                       ;     };
                       ;     */
                       ;     if (fp_vol_0_cnt >fp_vol_1_cnt)
 0038 20900100          lds R2,_fp_vol_1_cnt
 003C 30900000          lds R3,_fp_vol_0_cnt
 0040 2314              cp R2,R3
 0042 78F4              brsh L6
 0044                   .dbline 50
                       ;     {
 0044                   .dbline 51
                       ;         if((fp_vol_0_cnt-fp_vol_1_cnt)>1)
 0044 3218              sub R3,R2
 0046 81E0              ldi R24,1
 0048 8315              cp R24,R3
 004A E8F4              brsh L7
 004C                   .dbline 52
                       ;         {
 004C                   .dbline 53
                       ;             uicc_code = UICC_VOLUME_DOWN;
 004C 8EE9              ldi R24,158
 004E 80930000          sts _uicc_code,R24
 0052                   .dbline 54
                       ;             ui_input_handler();
 0052 0E940000          xcall _ui_input_handler
 0056                   .dbline 56
                       ;             //dvd_key = IRKC_VOLUME_DOWN;
                       ;             fp_vol_0_cnt = 0;
 0056 2224              clr R2
 0058 20920000          sts _fp_vol_0_cnt,R2
 005C                   .dbline 57
                       ;             fp_vol_1_cnt = 0;
 005C 20920100          sts _fp_vol_1_cnt,R2
 0060                   .dbline 58
                       ;         };
 0060                   .dbline 58
 0060                   .dbline 59
                       ;     }
 0060 12C0              xjmp L7
 0062                 L6:
 0062                   .dbline 60
                       ;     else if((fp_vol_1_cnt-fp_vol_0_cnt)>2)
 0062 20900000          lds R2,_fp_vol_0_cnt
 0066 30900100          lds R3,_fp_vol_1_cnt
 006A 3218              sub R3,R2
 006C 82E0              ldi R24,2
 006E 8315              cp R24,R3
 0070 50F4              brsh L10
 0072                   .dbline 61
                       ;     {
 0072                   .dbline 62
                       ;         uicc_code = UICC_VOLUME_UP;
 0072 8DE9              ldi R24,157
 0074 80930000          sts _uicc_code,R24
 0078                   .dbline 63
                       ;         ui_input_handler();
 0078 0E940000          xcall _ui_input_handler
 007C                   .dbline 65
                       ;         //dvd_key = IRKC_VOLUME_UP;
                       ;         fp_vol_0_cnt = 0;
 007C 2224              clr R2
 007E 20920000          sts _fp_vol_0_cnt,R2
 0082                   .dbline 66
                       ;         fp_vol_1_cnt = 0;
 0082 20920100          sts _fp_vol_1_cnt,R2
 0086                   .dbline 67
                       ;     }
 0086                 L10:
 0086                 L7:
 0086                   .dbline -2
 0086                   .dbline 68
                       ; }
 0086                 L5:
 0086                   .dbline 0 ; func end
 0086 0895              ret

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -