📄 sub_function2.lst
字号:
##############################################################################
# #
# IAR Z80/64180 C-Compiler V4.04B/WIN #
# Front End V4.20N 18/Nov/107 22:39:46 #
# Global Optimizer V1.05D #
# #
# Target option = Z80 #
# Memory model = banked #
# Source file = d:\case_i_d913f\ap\ap_amv\sub_function2.c #
# List file = d:\case_i_d913f\ap\ap_amv\list\sub_function2.lst #
# Object file = d:\case_i_d913f\ap\ap_amv\obj\sub_function2.r01 #
# ASM file = d:\case_i_d913f\ap\ap_amv\list\sub_function2.s01 #
# Command line = -v0 -mb -OD:\case_i_d913f\ap\ap_amv\Obj\ -e -K -w #
# -gA -s9 -RCODE -r0 -DNAPDEBUG -DAMV_JPG_TXT #
# -LD:\case_i_d913f\ap\ap_amv\List\ -q -t8 #
# -AD:\case_i_d913f\ap\ap_amv\List\ #
# -ND:\case_i_d913f\ap\ap_amv\List\ -X #
# -Id:\sdk_i_913f\inc\ -Id:\case_i_d913f\inc\ #
# d:\case_i_d913f\ap\ap_amv\sub_function2.c #
# #
# (c) Copyright IAR Systems 1996 #
##############################################################################
\ 0000 NAME sub_function2(17)
\ 0000 RSEG APC_SUB_FUN(0)
\ 0000 RSEG CSTR(0)
\ 0000 RSEG UDATA0(0)
\ 0000 RSEG APD_SUB_FUN(0)
\ 0000 PUBLIC CheckMusicType
\ 0000 PUBLIC ClearTimePara
\ 0000 PUBLIC DUMP_TEST
\ 0000 PUBLIC DealErrCase
\ 0000 EXTERN EnableDAC
\ 0000 EXTERN EnablePA
\ 0000 EXTERN FS_Backup
\ 0000 EXTERN FS_CD
\ 0000 EXTERN FS_FClose
\ 0000 EXTERN FS_FOpen
\ 0000 EXTERN FS_FRead
\ 0000 EXTERN FS_FSeek
\ 0000 EXTERN FS_GetName
\ 0000 EXTERN FS_Restore
\ 0000 EXTERN GetDefaultComval
\ 0000 PUBLIC GetInformation
\ 0000 PUBLIC GetInformation1
\ 0000 PUBLIC MY_DUMP
\ 0000 EXTERN PutS
\ 0000 EXTERN ResClose
\ 0000 EXTERN SetPAVolume
\ 0000 EXTERN SetTextPos
\ 0000 EXTERN Totaltime
\ 0000 EXTERN UpdateScreen
\ 0000 EXTERN VMRead
\ 0000 EXTERN ap_get_message
\ 0000 EXTERN ap_message_init
\ 0000 EXTERN ap_sleep
\ 0000 EXTERN dir_name
\ 0000 PUBLIC fp
\ 0000 EXTERN fselGetErrID
\ 0000 EXTERN fselGetLocation
\ 0000 EXTERN g_BatteryType
\ 0000 EXTERN g_PAOpenFlag
\ 0000 EXTERN g_Resfp_Sav
\ 0000 EXTERN g_TagInfoBuf
\ 0000 EXTERN g_amv_vars
\ 0000 EXTERN g_comval
\ 0000 PUBLIC g_fileheadinfo
\ 0000 EXTERN g_from_browser
\ 0000 EXTERN g_langid
\ 0000 EXTERN itoa4
\ 0000 PUBLIC make_dirname
\ 0000 PUBLIC openDAC
\ 0000 PUBLIC openPA
\ 0000 PUBLIC read_var
\ 0000 EXTERN ui_show_msg
\ 0000 EXTERN unitochar
\ 0000 EXTERN ?CLZ80B_4_04_L00
\ 0000 EXTERN ?BANK_CALL_DIRECT_L08
\ 0000 EXTERN ?BANK_FAST_LEAVE_L08
\ 0000 EXTERN ?STRCPY_L11
\ 0000 RSEG APC_SUB_FUN
\ 0000 MY_DUMP:
1 /*
2 *******************************************************************************
3 * ACTOS AP
4 * This program demostrates how to build an AP
5 *
6 * (c) Copyright Actions Co,Ld.
7 *
8 * $Id: sub_function2.c,v 1.1.1.1 2006/05/22 03:24:02 selina Exp $
9 *******************************************************************************
10 */
11 #include "ap_amv.h"
12
13 #pragma codeseg(APC_SUB_FUN)
14
15 #pragma memory=constseg(APD_SUB_FUN)
16 char g_fileheadinfo[512]; //get file first sector data
17 #pragma memory=default
18
19 extern SD_FILE* g_Resfp_Sav;
20 extern bool ActiveDriveOK;
21 handle fp;
22
23 extern byte fselDirNo[8];
24 extern word fselFileNo;
25
26 void MY_DUMP(char *string, int value)
27 {
\ 0000 C5 PUSH BC
\ 0001 D5 PUSH DE
\ 0002 F5 PUSH AF
\ 0003 F5 PUSH AF
\ 0004 F5 PUSH AF
28 char dump_buf[6];
29 dump_buf[0] = ',';
\ 0005 210000 LD HL,0
\ 0008 39 ADD HL,SP
\ 0009 362C LD (HL),44
30 SetTextPos(0, 16);
\ 000B 0E10 LD C,16
\ 000D 1E00 LD E,0
\ 000F CD0000 CALL LWRD SetTextPos
31 PutS((string), -1);
\ 0012 0EFF LD C,255
\ 0014 210600 LD HL,6
\ 0017 39 ADD HL,SP
\ 0018 5E LD E,(HL)
\ 0019 23 INC HL
\ 001A 56 LD D,(HL)
\ 001B CD0000 CALL LWRD PutS
32 itoa4((value), &dump_buf[1]);
\ 001E 210000 LD HL,0
\ 0021 39 ADD HL,SP
\ 0022 010100 LD BC,1
\ 0025 09 ADD HL,BC
\ 0026 4D LD C,L
\ 0027 44 LD B,H
\ 0028 210800 LD HL,8
\ 002B 39 ADD HL,SP
\ 002C 5E LD E,(HL)
\ 002D 23 INC HL
\ 002E 56 LD D,(HL)
\ 002F 3E00 LD A,BYTE3 itoa4
\ 0031 210000 LD HL,LWRD itoa4
\ 0034 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
33 dump_buf[5] = '>';
\ 0037 210500 LD HL,5
\ 003A 39 ADD HL,SP
\ 003B 363E LD (HL),62
34
35 PutS(dump_buf, 6);
\ 003D 0E06 LD C,6
\ 003F 210000 LD HL,0
\ 0042 39 ADD HL,SP
\ 0043 EB EX DE,HL
\ 0044 CD0000 CALL LWRD PutS
36 UpdateScreen(NULL);
\ 0047 110000 LD DE,0
\ 004A CD0000 CALL LWRD UpdateScreen
\ 004D ?0003:
37 while( ap_get_message() != (AP_KEY_PLAY| AP_KEY_UP)) {;}
\ 004D CD0000 CALL LWRD ap_get_message
\ 0050 FE21 CP 33
\ 0052 20F9 JR NZ,?0003
\ 0054 ?0004:
38 }
\ 0054 ?0002:
\ 0054 210A00 LD HL,10
\ 0057 39 ADD HL,SP
\ 0058 F9 LD SP,HL
\ 0059 C30000 JP LWRD ?BANK_FAST_LEAVE_L08
\ 005C DUMP_TEST:
39
40 void DUMP_TEST(char *string)
41 {
\ 005C C5 PUSH BC
\ 005D DDE5 PUSH IX
\ 005F 21F4FF LD HL,65524
\ 0062 39 ADD HL,SP
\ 0063 F9 LD SP,HL
\ 0064 D5 PUSH DE
\ 0065 DDE1 POP IX
42 char str[9];
43 char i;
44 for(i = 0; i<8;i++)
\ 0067 3600 LD (HL),0
\ 0069 ?0006:
\ 0069 7E LD A,(HL)
\ 006A FE08 CP 8
\ 006C 3016 JR NC,?0005
\ 006E ?0007:
45 {
46 str[i] = string[i] + 0x30;
\ 006E 4F LD C,A
\ 006F 0600 LD B,0
\ 0071 DDE5 PUSH IX
\ 0073 E1 POP HL
\ 0074 09 ADD HL,BC
\ 0075 7E LD A,(HL)
\ 0076 C630 ADD A,48
\ 0078 210200 LD HL,2
\ 007B 39 ADD HL,SP
\ 007C 09 ADD HL,BC
\ 007D 77 LD (HL),A
\ 007E 68 LD L,B
\ 007F 60 LD H,B
\ 0080 39 ADD HL,SP
\ 0081 34 INC (HL)
\ 0082 18E5 JR ?0006
\ 0084 ?0005:
47 }
48 str[8] = 0;
\ 0084 210A00 LD HL,10
\ 0087 39 ADD HL,SP
\ 0088 3600 LD (HL),0
49 SetTextPos(0, 16);
\ 008A 0E10 LD C,16
\ 008C 1E00 LD E,0
\ 008E CD0000 CALL LWRD SetTextPos
50 PutS((str), -1);
\ 0091 0EFF LD C,255
\ 0093 210200 LD HL,2
\ 0096 39 ADD HL,SP
\ 0097 EB EX DE,HL
\ 0098 CD0000 CALL LWRD PutS
51 UpdateScreen(NULL);
\ 009B 110000 LD DE,0
\ 009E CD0000 CALL LWRD UpdateScreen
\ 00A1 ?0010:
52 while( ap_get_message() != (AP_KEY_PLAY| AP_KEY_UP)) {;}
\ 00A1 CD0000 CALL LWRD ap_get_message
\ 00A4 FE21 CP 33
\ 00A6 20F9 JR NZ,?0010
\ 00A8 ?0011:
53 }
\ 00A8 ?0009:
\ 00A8 210C00 LD HL,12
\ 00AB 39 ADD HL,SP
\ 00AC F9 LD SP,HL
\ 00AD DDE1 POP IX
\ 00AF C1 POP BC
\ 00B0 C30000 JP LWRD ?BANK_FAST_LEAVE_L08
\ 00B3 CheckMusicType:
54 /*
55 ********************************************************************************
56 * Music_type_t CheckMusicType(char *filename)
57 *
58 * Description : 检测当前是哪种类型的MUSIC文件
59 *
60 * Arguments : char *filename 文件名
61 *
62 * Returns : Music_type_t 文件类型
63 *
64 * Notes :
65 *
66 ********************************************************************************
67 */
68 Music_type_t CheckMusicType( char * filename )
69 {
\ 00B3 D5 PUSH DE
70
71 }
\ 00B4 E1 POP HL
\ 00B5 C30000 JP LWRD ?BANK_FAST_LEAVE_L08
\ 00B8 make_dirname:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -