📄 ui_play.lst
字号:
\ 00C4 3805 JR C,?0023
\ 00C6 ?0022:
\ 00C6 3E1F LD A,31
\ 00C8 320200 LD (g_amv_vars+2),A
\ 00CB ?0023:
89 SetPAVolume(g_amv_vars.volume);
\ 00CB ED5B0200 LD DE,(g_amv_vars+2)
\ 00CF CD0000 CALL LWRD SetPAVolume
90 break;
\ 00D2 C38801 JP LWRD ?0054
\ 00D5 ?0024:
91 case AP_MSG_STANDBY:
92 break;
\ 00D5 ?0025:
93 case AP_KEY_NEXT | AP_KEY_LONG:
94 if(PlayStatus==PlaySta)
\ 00D5 3A0000 LD A,(PlayStatus)
\ 00D8 3D DEC A
\ 00D9 3D DEC A
\ 00DA C28801 JP NZ,?0054
\ 00DD ?0026:
95 {
96 AmvDecSetCMD(MC_STEP,4);
\ 00DD 010400 LD BC,4
\ 00E0 1E07 LD E,7
\ 00E2 CD9302 CALL LWRD ?0126
97 PlayStatus=FFPlaySta;
\ 00E5 3E03 LD A,3
\ 00E7 1812 JR ?0117
\ 00E9 ?0027:
98 }
99 break;
\ 00E9 ?0028:
100 case AP_KEY_PREV | AP_KEY_LONG:
101 if(PlayStatus==PlaySta)
\ 00E9 3A0000 LD A,(PlayStatus)
\ 00EC 3D DEC A
\ 00ED 3D DEC A
\ 00EE C28801 JP NZ,?0054
\ 00F1 ?0029:
102 {
103 AmvDecSetCMD(MC_STEP,-4);
\ 00F1 01FCFF LD BC,65532
\ 00F4 1E07 LD E,7
\ 00F6 CD9302 CALL LWRD ?0126
104 PlayStatus=FBPlaySta;
\ 00F9 3E04 LD A,4
\ 00FB ?0117:
\ 00FB 320000 LD (PlayStatus),A
\ 00FE ?0030:
105 }
106 break;
\ 00FE C38801 JP LWRD ?0054
\ 0101 ?0031:
107 case AP_KEY_PREV|AP_KEY_UP:
108 if(PlayStatus==FBPlaySta)
\ 0101 3A0000 LD A,(PlayStatus)
\ 0104 FE04 CP 4
\ 0106 2816 JR Z,?0121
\ 0108 ?0032:
109 {
110 PlayStatus=PlaySta;
111 AmvDecSetCMD(MC_PLAY,0);
\ 0108 ?0033:
112 }
113 else if(PlayStatus==PlaySta)
\ 0108 3D DEC A
\ 0109 3D DEC A
\ 010A 207C JR NZ,?0054
\ 010C ?0035:
114 {
115 PlayStatus=PrevPlaySta;
\ 010C 3E06 LD A,6
\ 010E 320000 LD (PlayStatus),A
116 AmvDecSetCMD(MC_STOP,0);
\ 0111 010000 LD BC,0
\ 0114 5F LD E,A
\ 0115 1849 JR ?0122
\ 0117 ?0036:
\ 0117 ?0034:
117 }
118
119 break;
\ 0117 ?0037:
120 case AP_KEY_NEXT|AP_KEY_UP:
121 if(PlayStatus==FFPlaySta)
\ 0117 3A0000 LD A,(PlayStatus)
\ 011A FE03 CP 3
\ 011C 200C JR NZ,?0039
\ 011E ?0038:
122 {
123 PlayStatus=PlaySta;
\ 011E ?0121:
\ 011E 3E02 LD A,2
\ 0120 320000 LD (PlayStatus),A
124 AmvDecSetCMD(MC_PLAY,0);
\ 0123 010000 LD BC,0
\ 0126 1E04 LD E,4
\ 0128 1836 JR ?0122
\ 012A ?0039:
125 }
126 else if(PlayStatus==PlaySta)
\ 012A 3D DEC A
\ 012B 3D DEC A
\ 012C 205A JR NZ,?0054
\ 012E ?0041:
127 {
128 PlayStatus=NextPlaySta;
\ 012E 3E05 LD A,5
\ 0130 320000 LD (PlayStatus),A
129 AmvDecSetCMD(MC_STOP,0);
\ 0133 1826 JR ?0123
\ 0135 ?0042:
\ 0135 ?0040:
130 }
131
132 break;
\ 0135 ?0043:
133 case AP_KEY_PLAY | AP_KEY_UP:
134 output8(0x27,input8(0x27)&0xbf);
\ 0135 DB27 IN A,(39)
\ 0137 CBB7 RES 6,A
\ 0139 D327 OUT (39),A
135 AmvDecSetCMD(MC_STOP,0);
\ 013B CD8E02 CALL LWRD ?0127
136 PlayStatus=StopSta;
\ 013E AF XOR A
\ 013F 320000 LD (PlayStatus),A
137 g_result=0;
\ 0142 6F LD L,A
\ 0143 67 LD H,A
\ 0144 220000 LD (g_result),HL
138 break;
\ 0147 183F JR ?0054
\ 0149 ?0044:
139 case AP_MSG_RTC:
140 if(g_amv_vars.repeat_mode==Intro)
\ 0149 3A0300 LD A,(g_amv_vars+3)
\ 014C FE06 CP 6
\ 014E 2038 JR NZ,?0054
\ 0150 ?0045:
141 {
142 g_introCNT++;
\ 0150 210000 LD HL,g_introCNT
\ 0153 34 INC (HL)
143 if(g_introCNT>=20)AmvDecSetCMD(MC_STOP,0);
\ 0154 3A0000 LD A,(g_introCNT)
\ 0157 FE14 CP 20
\ 0159 382D JR C,?0054
\ 015B ?0047:
\ 015B ?0123:
\ 015B 010000 LD BC,0
\ 015E 1E06 LD E,6
\ 0160 ?0122:
\ 0160 CD9302 CALL LWRD ?0126
\ 0163 ?0048:
\ 0163 ?0046:
144 }
145 break;
\ 0163 1823 JR ?0054
\ 0165 ?0049:
146 default:
147 key = ap_handle_hotkey( key);
\ 0165 CD0000 CALL LWRD ap_handle_hotkey
\ 0168 210000 LD HL,0
\ 016B 39 ADD HL,SP
\ 016C 77 LD (HL),A
148 if(key == RESULT_REDRAW) ; // 不响应锁键
\ 016D FE32 CP 50
\ 016F 2817 JR Z,?0054
\ 0171 ?0050:
\ 0171 ?0051:
149 else if(key != 0)
\ 0171 AF XOR A
\ 0172 B6 OR (HL)
\ 0173 2813 JR Z,?0054
\ 0175 ?0053:
150 {
151 PlayStatus=HotkeyPlaysta;
\ 0175 3E07 LD A,7
\ 0177 320000 LD (PlayStatus),A
152 AmvDecSetCMD(MC_STOP,0);
\ 017A CD8E02 CALL LWRD ?0127
153 g_result=key;
\ 017D 210000 LD HL,0
\ 0180 39 ADD HL,SP
\ 0181 4E LD C,(HL)
\ 0182 0600 LD B,0
\ 0184 ED430000 LD (g_result),BC
\ 0188 ?0054:
\ 0188 ?0052:
\ 0188 ?0017:
154 }
155 }
156
157 tmp=AmvDecModPolling();
\ 0188 3E00 LD A,BYTE3 AmvDecModPolling
\ 018A 210000 LD HL,LWRD AmvDecModPolling
\ 018D CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0190 E5 PUSH HL
\ 0191 210500 LD HL,5
\ 0194 39 ADD HL,SP
\ 0195 C1 POP BC
\ 0196 71 LD (HL),C
158 if(tmp==2)
\ 0197 41 LD B,C
\ 0198 05 DEC B
\ 0199 05 DEC B
\ 019A 206A JR NZ,?0056
\ 019C ?0055:
159 {
160 int i;
161 for(i=0;i<1000;i++); //等待检测卡的状态 zxs modify 2006.02.17
\ 019C DD210000 LD IX,0
\ 01A0 ?0058:
\ 01A0 01E883 LD BC,33768
\ 01A3 DDE5 PUSH IX
\ 01A5 E1 POP HL
\ 01A6 3E80 LD A,128
\ 01A8 AC XOR H
\ 01A9 67 LD H,A
\ 01AA ED42 SBC HL,BC
\ 01AC 3004 JR NC,?0057
\ 01AE ?0059:
\ 01AE DD23 INC IX
\ 01B0 18EE JR ?0058
\ 01B2 ?0057:
162 output8(0x27,input8(0x27)|0x40);
\ 01B2 DB27 IN A,(39)
\ 01B4 CBF7 SET 6,A
\ 01B6 D327 OUT (39),A
163 output8(0x4e,input8(0x4e)|0x08);
\ 01B8 DB4E IN A,(78)
\ 01BA CBDF SET 3,A
\ 01BC D34E OUT (78),A
164 if ( (g_amv_vars.location.disk == 'H')
165 &&(DRV_DetectUD(1)!= 0x20))
\ 01BE 3A0500 LD A,(g_amv_vars+5)
\ 01C1 FE48 CP 72
\ 01C3 2021 JR NZ,?0062
\ 01C5 1E01 LD E,1
\ 01C7 CD0000 CALL LWRD DRV_DetectUD
\ 01CA FE20 CP 32
\ 01CC 2818 JR Z,?0062
\ 01CE ?0064:
\ 01CE ?0063:
\ 01CE ?0061:
166 {
167 AmvDecSetCMD(MC_STOP,0);
\ 01CE CD8E02 CALL LWRD ?0127
168 FS_FClose(fp);
\ 01D1 ED5B0000 LD DE,(fp)
\ 01D5 CD0000 CALL LWRD FS_FClose
169 g_amv_vars.location.disk = 'C';
\ 01D8 3E43 LD A,67
\ 01DA 320500 LD (g_amv_vars+5),A
170 //DisplayErrMsg(CARDPULL);//显示卡拔出
171 DisablePA();
\ 01DD CD0000 CALL LWRD DisablePA
172 return RESULT_UI_STOP2;
\ 01E0 216700 LD HL,103
173 }
\ 01E3 C37002 JP LWRD ?0082
\ 01E6 ?0062:
174
175 FS_FClose(fp);
\ 01E6 ED5B0000 LD DE,(fp)
\ 01EA CD0000 CALL LWRD FS_FClose
176 output8(0x27,input8(0x27)&0xfe); //关Dsp中断 防止花屏 zxs add
\ 01ED DB27 IN A,(39)
\ 01EF CB87 RES 0,A
\ 01F1 D327 OUT (39),A
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -