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

📄 mp3player.lis

📁 diy硬盘mp3的程序
💻 LIS
📖 第 1 页 / 共 4 页
字号:
 0144 20920000          sts _Key,R2
 0148                   .dbline 87
 0148           ;                       }
 0148           L9:
 0148                   .dbline 91
 0148           ;                               
 0148           ;               // Up
 0148           ;               
 0148           ;               if ((Key == 0x02) || (Key == 0x82))
 0148 80910000          lds R24,_Key
 014C 8230              cpi R24,2
 014E 29F0              breq L23
 0150 80910000          lds R24,_Key
 0154 8238              cpi R24,130
 0156 09F0              breq X3
 0158 4CC0              xjmp L21
 015A           X3:
 015A           L23:
 015A                   .dbline 92
 015A           ;                  {
 015A                   .dbline 93
 015A           ;                  if (Key == 0x02) FilePtr--;
 015A 80910000          lds R24,_Key
 015E 8230              cpi R24,2
 0160 19F4              brne L24
 0162                   .dbline 93
 0162 C501              movw R24,R10
 0164 0197              sbiw R24,1
 0166 5C01              movw R10,R24
 0168           L24:
 0168                   .dbline 94
 0168           ;            if (Key == 0x82) FilePtr -= SONGPAGE;
 0168 80910000          lds R24,_Key
 016C 8238              cpi R24,130
 016E 19F4              brne L26
 0170                   .dbline 94
 0170 C501              movw R24,R10
 0172 0597              sbiw R24,5
 0174 5C01              movw R10,R24
 0176           L26:
 0176                   .dbline 95
 0176           ;                  if (FilePtr < 0) FilePtr = 0;
 0176 C501              movw R24,R10
 0178 8030              cpi R24,0
 017A E0E0              ldi R30,0
 017C 9E07              cpc R25,R30
 017E 14F4              brge L28
 0180                   .dbline 95
 0180 AA24              clr R10
 0182 BB24              clr R11
 0184           L28:
 0184                   .dbline 96
 0184           ;                  if ((FilePtr / SONGPAGE) != Page)
 0184 25E0              ldi R18,5
 0186 30E0              ldi R19,0
 0188 8501              movw R16,R10
 018A 0E940000          xcall div16s
 018E 0C15              cp R16,R12
 0190 1D05              cpc R17,R13
 0192 29F1              breq L30
 0194                   .dbline 97
 0194           ;                 {
 0194                   .dbline 98
 0194           ;                               Page = FilePtr / SONGPAGE;
 0194 25E0              ldi R18,5
 0196 30E0              ldi R19,0
 0198 8501              movw R16,R10
 019A 0E940000          xcall div16s
 019E 6801              movw R12,R16
 01A0                   .dbline 99
 01A0           ;                 GetDir(Cluster,Page*SONGPAGE,SONGPAGE,TRUE); 
 01A0 81E0              ldi R24,1
 01A2 90E0              ldi R25,0
 01A4 9D83              std y+5,R25
 01A6 8C83              std y+4,R24
 01A8 85E0              ldi R24,5
 01AA 9B83              std y+3,R25
 01AC 8A83              std y+2,R24
 01AE 05E0              ldi R16,5
 01B0 10E0              ldi R17,0
 01B2 9601              movw R18,R12
 01B4 0E940000          xcall empy16s
 01B8 1983              std y+1,R17
 01BA 0883              std y+0,R16
 01BC FE01              movw R30,R28
 01BE 0489              ldd R16,z+20
 01C0 1589              ldd R17,z+21
 01C2 2689              ldd R18,z+22
 01C4 3789              ldd R19,z+23
 01C6 0E940000          xcall _GetDir
 01CA                   .dbline 100
 01CA           ;                               RemoteSendScreen(DIR,(FilePtr%SONGPAGE));
 01CA 25E0              ldi R18,5
 01CC 30E0              ldi R19,0
 01CE 8501              movw R16,R10
 01D0 0E940000          xcall mod16s
 01D4 202F              mov R18,R16
 01D6 01E0              ldi R16,1
 01D8 0E940000          xcall _RemoteSendScreen
 01DC                   .dbline 101
 01DC           ;                               }
 01DC 07C0              xjmp L31
 01DE           L30:
 01DE                   .dbline 103
 01DE           ;                  else
 01DE           ;                 {
 01DE                   .dbline 104
 01DE           ;                               RemoteSendLine((FilePtr%SONGPAGE));
 01DE 25E0              ldi R18,5
 01E0 30E0              ldi R19,0
 01E2 8501              movw R16,R10
 01E4 0E940000          xcall mod16s
 01E8 0E940000          xcall _RemoteSendLine
 01EC                   .dbline 105
 01EC           ;                 }     
 01EC           L31:
 01EC                   .dbline 106
 01EC           ;                       Key = 0;
 01EC 2224              clr R2
 01EE 20920000          sts _Key,R2
 01F2                   .dbline 107
 01F2           ;                       }       
 01F2           L21:
 01F2                   .dbline 111
 01F2           ;                       
 01F2           ;               // Left         
 01F2           ;       
 01F2           ;               if (Key == 0x04) 
 01F2 80910000          lds R24,_Key
 01F6 8430              cpi R24,4
 01F8 11F5              brne L32
 01FA                   .dbline 112
 01FA           ;                  {
 01FA                   .dbline 113
 01FA           ;                  Cluster = 2;  // Root Dir
 01FA 42E0              ldi R20,2
 01FC 50E0              ldi R21,0
 01FE 60E0              ldi R22,0
 0200 70E0              ldi R23,0
 0202 FE01              movw R30,R28
 0204 448B              std z+20,R20
 0206 558B              std z+21,R21
 0208 668B              std z+22,R22
 020A 778B              std z+23,R23
 020C                   .dbline 115
 020C           ;                  
 020C           ;                  Key = 0xff;
 020C 8FEF              ldi R24,255
 020E 80930000          sts _Key,R24
 0212                   .dbline 116
 0212           ;                  FilePtr = 0;
 0212 AA24              clr R10
 0214 BB24              clr R11
 0216                   .dbline 117
 0216           ;                  Page = 99;
 0216 83E6              ldi R24,99
 0218 90E0              ldi R25,0
 021A 6C01              movw R12,R24
 021C                   .dbline 118
 021C           ;                  MaxFile = GetDir(Cluster,FilePtr,999,FALSE);
 021C 2224              clr R2
 021E 3324              clr R3
 0220 3D82              std y+5,R3
 0222 2C82              std y+4,R2
 0224 87EE              ldi R24,999
 0226 93E0              ldi R25,3
 0228 9B83              std y+3,R25
 022A 8A83              std y+2,R24
 022C B982              std y+1,R11
 022E A882              std y+0,R10
 0230 0489              ldd R16,z+20
 0232 1589              ldd R17,z+21
 0234 2689              ldd R18,z+22
 0236 3789              ldd R19,z+23
 0238 0E940000          xcall _GetDir
 023C 7801              movw R14,R16
 023E                   .dbline 119
 023E           ;                  }                            
 023E           L32:
 023E                   .dbline 123
 023E           ;                       
 023E           ;               // Right                
 023E           ; 
 023E           ;               if (Key == 0x08) 
 023E 80910000          lds R24,_Key
 0242 8830              cpi R24,8
 0244 09F0              breq X4
 0246 CBC0              xjmp L34
 0248           X4:
 0248                   .dbline 124
 0248           ;                  {
 0248                   .dbline 125
 0248           ;                  GetDir(Cluster,FilePtr,1,FALSE);
 0248 2224              clr R2
 024A 3324              clr R3
 024C 3D82              std y+5,R3
 024E 2C82              std y+4,R2
 0250 81E0              ldi R24,1
 0252 90E0              ldi R25,0
 0254 9B83              std y+3,R25
 0256 8A83              std y+2,R24
 0258 B982              std y+1,R11
 025A A882              std y+0,R10
 025C FE01              movw R30,R28
 025E 0489              ldd R16,z+20
 0260 1589              ldd R17,z+21
 0262 2689              ldd R18,z+22
 0264 3789              ldd R19,z+23
 0266 0E940000          xcall _GetDir
 026A                   .dbline 127
 026A           ;          
 026A           ;                  if ((File.Attr & ATTR_DIRECTORY) == ATTR_DIRECTORY)
 026A 80910301          lds R24,_File+259
 026E 8071              andi R24,16
 0270 8031              cpi R24,16
 0272 39F5              brne L36
 0274                   .dbline 128
 0274           ;                         {
 0274                   .dbline 129
 0274           ;                         Key = 0xff;
 0274 8FEF              ldi R24,255
 0276 80930000          sts _Key,R24
 027A                   .dbline 130
 027A           ;                         FilePtr = 0;
 027A AA24              clr R10
 027C BB24              clr R11
 027E                   .dbline 131
 027E           ;                         Page = 99;
 027E 83E6              ldi R24,99
 0280 90E0              ldi R25,0
 0282 6C01              movw R12,R24
 0284                   .dbline 132
 0284           ;                         Cluster = File.FirstClust;
 0284 40900601          lds R4,_File+260+2
 0288 50900701          lds R5,_File+260+2+1
 028C 20900401          lds R2,_File+260
 0290 30900501          lds R3,_File+260+1
 0294 FE01              movw R30,R28
 0296 248A              std z+20,R2
 0298 358A              std z+21,R3
 029A 468A              std z+22,R4
 029C 578A              std z+23,R5
 029E                   .dbline 133
 029E           ;                         MaxFile = GetDir(Cluster,FilePtr,999,FALSE);
 029E 2224              clr R2
 02A0 3324              clr R3
 02A2 3D82              std y+5,R3
 02A4 2C82              std y+4,R2
 02A6 87EE              ldi R24,999
 02A8 93E0              ldi R25,3
 02AA 9B83              std y+3,R25
 02AC 8A83              std y+2,R24
 02AE B982              std y+1,R11
 02B0 A882              std y+0,R10
 02B2 0489              ldd R16,z+20
 02B4 1589              ldd R17,z+21
 02B6 2689              ldd R18,z+22
 02B8 3789              ldd R19,z+23
 02BA 0E940000          xcall _GetDir
 02BE 7801              movw R14,R16
 02C0                   .dbline 134
 02C0           ;                         }
 02C0 8EC0              xjmp L37
 02C2           L36:
 02C2                   .dbline 136
 02C2           ;                  else 
 02C2           ;                         {
 02C2                   .dbline 137
 02C2           ;                         Page = 99;
 02C2 83E6              ldi R24,99
 02C4 90E0              ldi R25,0
 02C6 6C01              movw R12,R24
 02C8                   .dbline 138
 02C8           ;                         FilePtr--;
 02C8 C501              movw R24,R10
 02CA 0197              sbiw R24,1
 02CC 5C01              movw R10,R24
 02CE 65C0              xjmp L41
 02D0           L40:
 02D0                   .dbline 140
 02D0           ;                               while(1)
 02D0           ;                                       {
 02D0                   .dbline 141
 02D0           ;                                       Key = 0;
 02D0 2224              clr R2
 02D2 20920000          sts _Key,R2
 02D6                   .dbline 142
 02D6           ;                                       FilePtr++;
 02D6 C501              movw R24,R10
 02D8 0196              adiw R24,1
 02DA 5C01              movw R10,R24
 02DC                   .dbline 143
 02DC           ;                                       if (FilePtr >= MaxFile) FilePtr--;
 02DC 8E15              cp R24,R14
 02DE 9F05              cpc R25,R15
 02E0 10F0              brlo L43
 02E2                   .dbline 143
 02E2 0197              sbiw R24,1
 02E4 5C01              movw R10,R24
 02E6           L43:
 02E6                   .dbline 144
 02E6           ;                                       if ((FilePtr / SONGPAGE) != Page)
 02E6 25E0              ldi R18,5
 02E8 30E0              ldi R19,0
 02EA 8501              movw R16,R10
 02EC 0E940000          xcall div16s
 02F0 0C15              cp R16,R12
 02F2 1D05              cpc R17,R13
 02F4 21F1              breq L45
 02F6                   .dbline 145
 02F6           ;                                          {
 02F6                   .dbline 146

⌨️ 快捷键说明

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