📄 decodermenu.lst
字号:
91 g_reader_vars.g_txt.BufSector=0;
92 break;
\ 00FD ?0019:
93
94 case 1:
95 sub_list.strid = play_text;
\ 00FD 211600 LD HL,play_text
\ 0100 220900 LD (sub_list),HL
96 sub_list.total = 2;
\ 0103 210200 LD HL,2
\ 0106 220B00 LD (sub_list+2),HL
97 sub_list.active = g_reader_vars.playflag;
\ 0109 ED4B0200 LD BC,(g_reader_vars+2)
\ 010D 44 LD B,H
\ 010E ED430D00 LD (sub_list+4),BC
98 sub_list.string_id = g_comval.langid;
\ 0112 3A0C00 LD A,(g_comval+12)
\ 0115 321100 LD (sub_list+8),A
99 sub_list.headid = MenuStrID[list.active];
\ 0118 EB EX DE,HL
\ 0119 29 ADD HL,HL
\ 011A 010000 LD BC,MenuStrID
\ 011D 09 ADD HL,BC
\ 011E 46 LD B,(HL)
\ 011F 23 INC HL
\ 0120 66 LD H,(HL)
\ 0121 68 LD L,B
\ 0122 220F00 LD (sub_list+6),HL
100 result = ui_popup_list(&sub_list, NULL);
\ 0125 4A LD C,D
\ 0126 C5 PUSH BC
\ 0127 69 LD L,C
\ 0128 61 LD H,C
\ 0129 E5 PUSH HL
\ 012A 110900 LD DE,sub_list
\ 012D 3E00 LD A,BYTE3 ui_popup_list
\ 012F 210000 LD HL,LWRD ui_popup_list
\ 0132 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0135 F1 POP AF
\ 0136 F1 POP AF
\ 0137 E5 PUSH HL
\ 0138 DDE1 POP IX
101 if(result!=0) return result;
\ 013A 7D LD A,L
\ 013B B4 OR H
\ 013C C2B803 JP NZ,?0033
\ 013F ?0020:
\ 013F ?0021:
102 active=sub_list.active;
\ 013F 2A0D00 LD HL,(sub_list+4)
103 g_reader_vars.playflag=active;
\ 0142 7D LD A,L
\ 0143 320200 LD (g_reader_vars+2),A
104 if(active==1)
\ 0146 3E01 LD A,1
\ 0148 AD XOR L
\ 0149 B4 OR H
\ 014A C25103 JP NZ,?0046
\ 014D ?0022:
105 {
106 slider.min = 1;
\ 014D 210100 LD HL,1
\ 0150 221400 LD (slider+2),HL
107 slider.max = 10;
\ 0153 2E0A LD L,10
\ 0155 221600 LD (slider+4),HL
108 slider.step = 1;
\ 0158 2E01 LD L,1
\ 015A 221A00 LD (slider+8),HL
109 slider.value = g_reader_vars.autoplaytime;
\ 015D ED4B0300 LD BC,(g_reader_vars+3)
\ 0161 44 LD B,H
\ 0162 ED431800 LD (slider+6),BC
110 slider.title = JPEGSET2;
\ 0166 214D02 LD HL,589
\ 0169 221200 LD (slider),HL
111 slider.string_id=g_comval.langid;
\ 016C 3A0C00 LD A,(g_comval+12)
\ 016F 321C00 LD (slider+10),A
112 result = ui_slider(&slider, NULL);
\ 0172 48 LD C,B
\ 0173 C5 PUSH BC
\ 0174 C5 PUSH BC
\ 0175 111200 LD DE,slider
\ 0178 3E00 LD A,BYTE3 ui_slider
\ 017A 210000 LD HL,LWRD ui_slider
\ 017D CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0180 F1 POP AF
\ 0181 F1 POP AF
\ 0182 E5 PUSH HL
\ 0183 DDE1 POP IX
113 if(result != 0) return result;
\ 0185 7D LD A,L
\ 0186 B4 OR H
\ 0187 CA4B03 JP Z,?0048
\ 018A ?0024:
\ 018A C3B803 JP LWRD ?0033
\ 018D ?0025:
114 g_reader_vars.autoplaytime = (char)slider.value;
\ 018D ?0023:
115 }
116 return RESULT_IGNORE;
117
118
119 case 2:
\ 018D ?0026:
120 result=ui_delete(&g_reader_vars.location,DELETE_FILE,g_comval.langid);
\ 018D 210C00 LD HL,g_comval+12
\ 0190 4E LD C,(HL)
\ 0191 C5 PUSH BC
\ 0192 48 LD C,B
\ 0193 110600 LD DE,g_reader_vars+6
\ 0196 3E00 LD A,BYTE3 ui_delete
\ 0198 210000 LD HL,LWRD ui_delete
\ 019B CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 019E F1 POP AF
\ 019F E5 PUSH HL
\ 01A0 DDE1 POP IX
121 if(result==RESULT_IGNORE)
\ 01A2 3E34 LD A,52
\ 01A4 AD XOR L
\ 01A5 B4 OR H
\ 01A6 C27503 JP NZ,?0051
\ 01A9 ?0027:
122 result=0;
\ 01A9 C37103 JP LWRD ?0085
\ 01AC ?0028:
123 g_reader_vars.g_txt.PrevSeek=0;
124 g_reader_vars.g_txt.CurrentSeek=0;
125 g_reader_vars.g_txt.BufSector=0;
126 break;
\ 01AC ?0029:
127
128 case 3:
129 FSELSetMode(FSEL_ALL_REPEATALL);
\ 01AC 1E04 LD E,4
\ 01AE CDE203 CALL LWRD ?0090
130 result = ui_delete_all(&g_reader_vars.location, DELETE_TXT, g_comval.langid);
\ 01B1 210C00 LD HL,g_comval+12
\ 01B4 4E LD C,(HL)
\ 01B5 C5 PUSH BC
\ 01B6 0E04 LD C,4
\ 01B8 110600 LD DE,g_reader_vars+6
\ 01BB 3E00 LD A,BYTE3 ui_delete_all
\ 01BD 210000 LD HL,LWRD ui_delete_all
\ 01C0 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 01C3 F1 POP AF
\ 01C4 E5 PUSH HL
\ 01C5 DDE1 POP IX
131 if(result==RESULT_IGNORE)result=0;
\ 01C7 3E34 LD A,52
\ 01C9 AD XOR L
\ 01CA B4 OR H
\ 01CB C2B803 JP NZ,?0033
\ 01CE ?0030:
\ 01CE C3AE03 JP LWRD ?0084
\ 01D1 ?0031:
132 break;
\ 01D1 ?0032:
133
134 default:
135 result = RESULT_IGNORE;
136 break;
\ 01D1 ?0015:
137 }
138 return result;
139 }
\ 01D1 ?0014:
140
141 else //有卡
142 {
143
144 switch (list.active)
\ 01D1 CD0000 CALL LWRD ?S_S_SWITCH_L06
\ 01D4 0000 DEFW 0
\ 01D6 0500 DEFW 5
\ 01D8 B403 DEFW ?0055
\ 01DA E401 DEFW ?0034
\ 01DC 3302 DEFW ?0037
\ 01DE BE02 DEFW ?0042
\ 01E0 5603 DEFW ?0049
\ 01E2 8D03 DEFW ?0052
\ 01E4 ?0034:
145 {
146 case 0:
147
148 if (g_reader_vars.location.disk == 'H')
\ 01E4 3A0600 LD A,(g_reader_vars+6)
\ 01E7 FE48 CP 72
\ 01E9 201E JR NZ,?0036
\ 01EB ?0035:
149 {
150 g_reader_vars.location.disk = 'C';
\ 01EB 3E43 LD A,67
\ 01ED 320600 LD (g_reader_vars+6),A
151 FSELInit(FSEL_TYPE_TXT, FSEL_ALL_REPEATALL,FSEL_TYPE_COMMONDIR, g_reader_vars.location.disk);
\ 01F0 4F LD C,A
\ 01F1 C5 PUSH BC
\ 01F2 48 LD C,B
\ 01F3 C5 PUSH BC
\ 01F4 0E04 LD C,4
\ 01F6 59 LD E,C
\ 01F7 3E00 LD A,BYTE3 fselInit
\ 01F9 210000 LD HL,LWRD fselInit
\ 01FC CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 01FF F1 POP AF
\ 0200 F1 POP AF
152 fselGetLocation(& g_reader_vars.location);
\ 0201 CDC503 CALL LWRD ?0087
153 need_sel_file=TRUE;
\ 0204 3E01 LD A,1
\ 0206 320000 LD (need_sel_file),A
\ 0209 ?0036:
154 }
155 BankSwitch((unsigned long)DecodeOnePage >> 16);
\ 0209 0600 LD B,0
\ 020B 1E00 LD E,BYTE3 DecodeOnePage
\ 020D CD0000 CALL LWRD BankSwitch
156
157 result=ui_directory(&g_reader_vars.location, FSEL_TYPE_TXT, g_comval.langid);
\ 0210 210C00 LD HL,g_comval+12
\ 0213 4E LD C,(HL)
\ 0214 C5 PUSH BC
\ 0215 CDD003 CALL LWRD ?0088
\ 0218 F1 POP AF
158 FSELSetMode(FSEL_ALL_SEQUENCE);
\ 0219 CDDD03 CALL LWRD ?0089
159 BankSwitch((unsigned long)LoadData >> 16);
\ 021C 0600 LD B,0
\ 021E 1E00 LD E,BYTE3 LoadData
\ 0220 48 LD C,B
\ 0221 CD0000 CALL LWRD BankSwitch
160 g_reader_vars.g_txt.CurrentSeek=0;
\ 0224 69 LD L,C
\ 0225 60 LD H,B
\ 0226 223B00 LD (g_reader_vars+59),HL
\ 0229 ED433D00 LD (g_reader_vars+61),BC
161 g_reader_vars.g_txt.BufSector=0;
\ 022D 223F00 LD (g_reader_vars+63),HL
162
163 g_menu_active = FALSE;
\ 0230 C3B702 JP LWRD ?0074
164 break;
\ 0233 ?0037:
165
166 case 1:
167 if (g_reader_vars.location.disk == 'C')
\ 0233 3A0600 LD A,(g_reader_vars+6)
\ 0236 FE43 CP 67
\ 0238 204F JR NZ,?0039
\ 023A ?0038:
168 {
169 g_reader_vars.location.disk = 'H';
\ 023A 3E48 LD A,72
\ 023C 320600 LD (g_reader_vars+6),A
170 need_sel_file=TRUE;
\ 023F 3E01 LD A,1
\ 0241 320000 LD (need_sel_file),A
171 result=FSELInit(FSEL_TYPE_TXT, FSEL_ALL_REPEATALL,FSEL_TYPE_COMMONDIR, g_reader_vars.location.disk);
\ 0244 0E48 LD C,72
\ 0246 C5 PUSH BC
\ 0247 48 LD C,B
\ 0248 C5 PUSH BC
\ 0249 0E04 LD C,4
\ 024B 59 LD E,C
\ 024C 3E00 LD A,BYTE3 fselInit
\ 024E 210000 LD HL,LWRD fselInit
\ 0251 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0254 F1 POP AF
\ 0255 F1 POP AF
\ 0256 2600 LD H,0
\ 0258 E5 PUSH HL
\ 0259 DDE1 POP IX
172 if(!result)
\ 025B 7D LD A,L
\ 025C B7 OR A
\ 025D 2022 JR NZ,?0041
\ 025F ?0040:
173 {
174 g_reader_vars.location.disk = 'C';
\ 025F 3E43 LD A,67
\ 0261 320600 LD (g_reader_vars+6),A
175 g_DiskStateFlag=g_DiskStateFlag&ClrCardOKFlag_def;
\ 0264 210000 LD HL,g_DiskStateFlag
\ 0267 CB9E RES 3,(HL)
176 ui_show_msg (CREADERR, CREADERR, g_comval.langid); //temp ybfu
\ 0269 ED4B0C00 LD BC,(g_comval+12)
\ 026D 0600 LD B,0
\ 026F C5 PUSH BC
\ 0270 017602 LD BC,630
\ 0273 59 LD E,C
\ 0274 50 LD D,B
\ 0275 3E00 LD A,BYTE3 ui_show_msg
\ 0277 210000 LD HL,LWRD ui_show_msg
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -