📄 sub_function2.lst
字号:
251 {
252 unitochar(g_TagInfoBuf, sizeof(g_TagInfoBuf), g_langid);
\ 028E 3A0000 LD A,(g_langid)
\ 0291 4F LD C,A
\ 0292 C5 PUSH BC
\ 0293 0E42 LD C,66
\ 0295 110000 LD DE,g_TagInfoBuf
\ 0298 3E00 LD A,BYTE3 unitochar
\ 029A 210000 LD HL,LWRD unitochar
\ 029D CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 02A0 F1 POP AF
253 }
254 else
\ 02A1 1810 JR ?0033
\ 02A3 ?0032:
255 {
256 memcpy(g_TagInfoBuf, g_amv_vars.location.filename, 12);
\ 02A3 0E0C LD C,12
\ 02A5 110000 LD DE,g_TagInfoBuf
\ 02A8 211F00 LD HL,g_amv_vars+31
\ 02AB EDB0 LDIR
257 g_TagInfoBuf[8]=0;
\ 02AD 320800 LD (g_TagInfoBuf+8),A
258 g_TagInfoBuf[9]=0;
\ 02B0 320900 LD (g_TagInfoBuf+9),A
\ 02B3 ?0033:
259 }
260
261 output8(REG4E_RTC_WATCH_DOG, input8(REG4E_RTC_WATCH_DOG) | 0x08);
\ 02B3 DB4E IN A,(78)
\ 02B5 CBDF SET 3,A
\ 02B7 D34E OUT (78),A
262 }
\ 02B9 DDE1 POP IX
\ 02BB D1 POP DE
\ 02BC C1 POP BC
\ 02BD C30000 JP LWRD ?BANK_FAST_LEAVE_L08
\ 02C0 GetInformation:
263
264
265 int GetInformation( void )
266 {
\ 02C0 C5 PUSH BC
\ 02C1 D5 PUSH DE
\ 02C2 DDE5 PUSH IX
267 int result;
268
269 memcpy(g_TagInfoBuf, g_amv_vars.location.filename, 12);
\ 02C4 010C00 LD BC,12
\ 02C7 110000 LD DE,g_TagInfoBuf
\ 02CA 211F00 LD HL,g_amv_vars+31
\ 02CD EDB0 LDIR
270 result = FS_GetName(g_TagInfoBuf, 32); //取出长名
\ 02CF 0E20 LD C,32
\ 02D1 110000 LD DE,g_TagInfoBuf
\ 02D4 CD0000 CALL LWRD FS_GetName
\ 02D7 0600 LD B,0
271 if (result != 0)
\ 02D9 B7 OR A
\ 02DA 2815 JR Z,?0035
\ 02DC ?0034:
272 {
273 unitochar(g_TagInfoBuf, sizeof(g_TagInfoBuf), g_langid);
\ 02DC 3A0000 LD A,(g_langid)
\ 02DF 4F LD C,A
\ 02E0 C5 PUSH BC
\ 02E1 0E42 LD C,66
\ 02E3 110000 LD DE,g_TagInfoBuf
\ 02E6 3E00 LD A,BYTE3 unitochar
\ 02E8 210000 LD HL,LWRD unitochar
\ 02EB CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 02EE F1 POP AF
274 }
275 else
\ 02EF 180A JR ?0036
\ 02F1 ?0035:
276 {
277 memcpy(g_TagInfoBuf, g_amv_vars.location.filename, 12);
\ 02F1 0E0C LD C,12
\ 02F3 110000 LD DE,g_TagInfoBuf
\ 02F6 211F00 LD HL,g_amv_vars+31
\ 02F9 EDB0 LDIR
\ 02FB ?0036:
278 }
279
280 fp=FS_FOpen( g_amv_vars.location.filename, FS_OPEN_NORMAL );
\ 02FB 0E00 LD C,0
\ 02FD 111F00 LD DE,g_amv_vars+31
\ 0300 CD0000 CALL LWRD FS_FOpen
\ 0303 220000 LD (fp),HL
281 FS_FSeek( 0, 0, fp );
\ 0306 E5 PUSH HL
\ 0307 0E00 LD C,0
\ 0309 C5 PUSH BC
\ 030A 41 LD B,C
\ 030B 50 LD D,B
\ 030C 59 LD E,C
\ 030D CD0000 CALL LWRD FS_FSeek
\ 0310 E1 POP HL
\ 0311 E1 POP HL
282 FS_FRead(&g_fileheadinfo[0], 1 ,fp );
\ 0312 2A0000 LD HL,(fp)
\ 0315 E5 PUSH HL
\ 0316 0E01 LD C,1
\ 0318 110000 LD DE,g_fileheadinfo
\ 031B CD0000 CALL LWRD FS_FRead
\ 031E E1 POP HL
283 FS_FClose(fp);
\ 031F ED5B0000 LD DE,(fp)
\ 0323 CD0000 CALL LWRD FS_FClose
284 Totaltime.second=g_fileheadinfo[84];
\ 0326 3A5400 LD A,(g_fileheadinfo+84)
\ 0329 320200 LD (Totaltime+2),A
285 Totaltime.minute=g_fileheadinfo[85];
\ 032C 3A5500 LD A,(g_fileheadinfo+85)
\ 032F 320100 LD (Totaltime+1),A
286 Totaltime.hour=g_fileheadinfo[86]; //小时的低位
\ 0332 3A5600 LD A,(g_fileheadinfo+86)
\ 0335 320000 LD (Totaltime),A
287 output8(0x4e,input8(0x4e)|0x08);
\ 0338 DB4E IN A,(78)
\ 033A CBDF SET 3,A
\ 033C D34E OUT (78),A
288 return 0;
\ 033E 210000 LD HL,0
289 }
\ 0341 DDE1 POP IX
\ 0343 D1 POP DE
\ 0344 C1 POP BC
\ 0345 C30000 JP LWRD ?BANK_FAST_LEAVE_L08
\ 0348 openPA:
290
291
292
293 //==================================================================
294 void openPA(char volume)
295 {
\ 0348 C5 PUSH BC
\ 0349 D5 PUSH DE
\ 034A F5 PUSH AF
\ 034B F5 PUSH AF
296 int i;
297 pa_t paattr;
298
299 g_PAOpenFlag = TRUE;//标志PA已打开
\ 034C 3E01 LD A,1
\ 034E 320000 LD (g_PAOpenFlag),A
300 paattr.pa_in.dacin = 1;
\ 0351 210000 LD HL,0
\ 0354 39 ADD HL,SP
\ 0355 CBC6 SET 0,(HL)
301 paattr.pa_in.fmin = 0;
\ 0357 CB8E RES 1,(HL)
302 paattr.pa_in.linein = 0;
\ 0359 CB96 RES 2,(HL)
303 paattr.pa_in.micin = 0;
\ 035B CB9E RES 3,(HL)
304 paattr.volume = volume;
\ 035D 23 INC HL
\ 035E E5 PUSH HL
\ 035F 43 LD B,E
\ 0360 E1 POP HL
\ 0361 70 LD (HL),B
305 EnablePA(& paattr);
\ 0362 210000 LD HL,0
\ 0365 39 ADD HL,SP
\ 0366 EB EX DE,HL
\ 0367 CD0000 CALL LWRD EnablePA
306 SetPAVolume(volume);
\ 036A 58 LD E,B
\ 036B CD0000 CALL LWRD SetPAVolume
307 }
\ 036E E1 POP HL
\ 036F E1 POP HL
\ 0370 E1 POP HL
\ 0371 C1 POP BC
\ 0372 C30000 JP LWRD ?BANK_FAST_LEAVE_L08
308 //===================================================
309
310
311
\ 0000 RSEG CSTR
\ 0000 ?0014:
\ 0000 524F4F54 DEFB 'ROOT'
\ 0004 00 DEFB 0
\ 0005 ?0023:
\ 0005 3A DEFB ':'
\ 0006 00 DEFB 0
\ 0000 RSEG UDATA0
\ 0000 fp:
\ 0002 DEFS 2
\ 0000 RSEG APD_SUB_FUN
\ 0000 g_fileheadinfo:
\ 0000 00000000 DEFB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
\ 0004 00000000
\ 0008 00000000
\ 000C 00000000
\ 0010 00000000
\ 0014 00000000
\ 0018 00000000
\ 001C 00000000
\ 0020 00
\ 0021 00000000 DEFB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
\ 0025 00000000
\ 0029 00000000
\ 002D 00000000
\ 0031 00000000
\ 0035 00000000
\ 0039 00000000
\ 003D 00000000
\ 0041 00
\ 0042 00000000 DEFB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
\ 0046 00000000
\ 004A 00000000
\ 004E 00000000
\ 0052 00000000
\ 0056 00000000
\ 005A 00000000
\ 005E 00000000
\ 0062 00
\ 0063 00000000 DEFB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
\ 0067 00000000
\ 006B 00000000
\ 006F 00000000
\ 0073 00000000
\ 0077 00000000
\ 007B 00000000
\ 007F 00000000
\ 0083 00
\ 0084 00000000 DEFB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
\ 0088 00000000
\ 008C 00000000
\ 0090 00000000
\ 0094 00000000
\ 0098 00000000
\ 009C 00000000
\ 00A0 00000000
\ 00A4 00
\ 00A5 00000000 DEFB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
\ 00A9 00000000
\ 00AD 00000000
\ 00B1 00000000
\ 00B5 00000000
\ 00B9 00000000
\ 00BD 00000000
\ 00C1 00000000
\ 00C5 00
\ 00C6 00000000 DEFB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
\ 00CA 00000000
\ 00CE 00000000
\ 00D2 00000000
\ 00D6 00000000
\ 00DA 00000000
\ 00DE 00000000
\ 00E2 00000000
\ 00E6 00
\ 00E7 00000000 DEFB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
\ 00EB 00000000
\ 00EF 00000000
\ 00F3 00000000
\ 00F7 00000000
\ 00FB 00000000
\ 00FF 00000000
\ 0103 00000000
\ 0107 00
\ 0108 00000000 DEFB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
\ 010C 00000000
\ 0110 00000000
\ 0114 00000000
\ 0118 00000000
\ 011C 00000000
\ 0120 00000000
\ 0124 00000000
\ 0128 00
\ 0129 00000000 DEFB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
\ 012D 00000000
\ 0131 00000000
\ 0135 00000000
\ 0139 00000000
\ 013D 00000000
\ 0141 00000000
\ 0145 00000000
\ 0149 00
\ 014A 00000000 DEFB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
\ 014E 00000000
\ 0152 00000000
\ 0156 00000000
\ 015A 00000000
\ 015E 00000000
\ 0162 00000000
\ 0166 00000000
\ 016A 00
\ 016B 00000000 DEFB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
\ 016F 00000000
\ 0173 00000000
\ 0177 00000000
\ 017B 00000000
\ 017F 00000000
\ 0183 00000000
\ 0187 00000000
\ 018B 00
\ 018C 00000000 DEFB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
\ 0190 00000000
\ 0194 00000000
\ 0198 00000000
\ 019C 00000000
\ 01A0 00000000
\ 01A4 00000000
\ 01A8 00000000
\ 01AC 00
\ 01AD 00000000 DEFB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
\ 01B1 00000000
\ 01B5 00000000
\ 01B9 00000000
\ 01BD 00000000
\ 01C1 00000000
\ 01C5 00000000
\ 01C9 00000000
\ 01CD 00
\ 01CE 00000000 DEFB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
\ 01D2 00000000
\ 01D6 00000000
\ 01DA 00000000
\ 01DE 00000000
\ 01E2 00000000
\ 01E6 00000000
\ 01EA 00000000
\ 01EE 00
\ 01EF 00000000 DEFB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
\ 01F3 00000000
\ 01F7 00000000
\ 01FB 00000000
\ 01FF 00
\ 0200 END
Errors: none
Warnings: none
Code size: 885
Constant size: 519
Static variable size: Data(2) Iram(0)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -