📄 ui_main_for_rec.lst
字号:
\ 00E0 E1 POP HL
\ 00E1 E1 POP HL
127 SD_FRead(res_fp, &res_entry, sizeof(res_entry_t));
\ 00E2 211000 LD HL,16
\ 00E5 E5 PUSH HL
\ 00E6 010000 LD BC,res_entry
\ 00E9 ED5B0000 LD DE,(res_fp)
\ 00ED CD0000 CALL LWRD SD_FRead
\ 00F0 F1 POP AF
128 if(res_entry.type != RES_TYPE_PIC) return 0;
\ 00F1 3A0600 LD A,(res_entry+6)
\ 00F4 3D DEC A
\ 00F5 2805 JR Z,?0003
\ 00F7 ?0002:
\ 00F7 210000 LD HL,0
129 ASSERT(res_entry.length <= 512);
\ 00FA 1869 JR ?0006
\ 00FC ?0003:
130
131 //读数据
132 SD_FSeek(res_fp, SEEK_SET, res_entry.offset);
\ 00FC 2A0200 LD HL,(res_entry+2)
\ 00FF E5 PUSH HL
\ 0100 2A0000 LD HL,(res_entry)
\ 0103 E5 PUSH HL
\ 0104 4F LD C,A
\ 0105 ED5B0000 LD DE,(res_fp)
\ 0109 CD0000 CALL LWRD SD_FSeek
\ 010C E1 POP HL
\ 010D E1 POP HL
133
134 SD_FRead(res_fp, buf, sizeof(buf));
\ 010E 210400 LD HL,4
\ 0111 E5 PUSH HL
\ 0112 2B DEC HL
\ 0113 2B DEC HL
\ 0114 39 ADD HL,SP
\ 0115 4D LD C,L
\ 0116 44 LD B,H
\ 0117 ED5B0000 LD DE,(res_fp)
\ 011B CD0000 CALL LWRD SD_FRead
\ 011E F1 POP AF
135
136 res_region.width = (char)buf[0];
\ 011F 210000 LD HL,0
\ 0122 39 ADD HL,SP
\ 0123 7E LD A,(HL)
\ 0124 320200 LD (res_region+2),A
137 res_region.height = (char)buf[1];
\ 0127 23 INC HL
\ 0128 23 INC HL
\ 0129 7E LD A,(HL)
\ 012A 320300 LD (res_region+3),A
138
139 //显示
140 res_region.x = x;
\ 012D 210600 LD HL,6
\ 0130 39 ADD HL,SP
\ 0131 7E LD A,(HL)
\ 0132 320000 LD (res_region),A
141 res_region.y = y;
\ 0135 210C00 LD HL,12
\ 0138 39 ADD HL,SP
\ 0139 7E LD A,(HL)
\ 013A 320100 LD (res_region+1),A
142 PutSDImage(&res_region, res_fp->rwpointer);
\ 013D 211400 LD HL,20
\ 0140 ED4B0000 LD BC,(res_fp)
\ 0144 09 ADD HL,BC
\ 0145 4E LD C,(HL)
\ 0146 23 INC HL
\ 0147 46 LD B,(HL)
\ 0148 23 INC HL
\ 0149 5E LD E,(HL)
\ 014A 23 INC HL
\ 014B 56 LD D,(HL)
\ 014C D5 PUSH DE
\ 014D C5 PUSH BC
\ 014E 110000 LD DE,res_region
\ 0151 CD0000 CALL LWRD PutSDImage
\ 0154 E1 POP HL
\ 0155 E1 POP HL
143 if(ui_auto_update) UpdateScreen(&res_region);
\ 0156 3A0000 LD A,(ui_auto_update)
\ 0159 B7 OR A
\ 015A 2806 JR Z,?0005
\ 015C ?0004:
\ 015C 110000 LD DE,res_region
\ 015F CD0000 CALL LWRD UpdateScreen
\ 0162 ?0005:
144 return 1;
\ 0162 210100 LD HL,1
145 }
\ 0165 ?0006:
\ 0165 F1 POP AF
\ 0166 F1 POP AF
\ 0167 F1 POP AF
\ 0168 F1 POP AF
\ 0169 C30000 JP LWRD ?BANK_FAST_LEAVE_L08
\ 016C ui_show_a:
146
147
148
149 void ui_show_a(WORD id) //音乐类型
150 {
\ 016C C5 PUSH BC
\ 016D D5 PUSH DE
151 main_ResShowPic(id, POS_TYPE, POSY_TYPE);
\ 016E 0E04 LD C,4
\ 0170 C5 PUSH BC
\ 0171 0E42 LD C,66
\ 0173 CD8401 CALL LWRD ?0089
\ 0176 F1 POP AF
152
153 }
\ 0177 E1 POP HL
\ 0178 C1 POP BC
\ 0179 C30000 JP LWRD ?BANK_FAST_LEAVE_L08
\ 017C ?0091:
\ 017C 5F LD E,A
\ 017D 1600 LD D,0
\ 017F 21E700 LD HL,231
\ 0182 ?0090:
\ 0182 19 ADD HL,DE
\ 0183 EB EX DE,HL
\ 0184 ?0089:
\ 0184 3E00 LD A,BYTE3 main_ResShowPic
\ 0186 21C700 LD HL,LWRD main_ResShowPic
\ 0189 C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 018C ui_show_d:
154
155 void ui_show_d(const char *string) //显示当前时间
156 { char id;
\ 018C C5 PUSH BC
\ 018D DDE5 PUSH IX
\ 018F F5 PUSH AF
\ 0190 D5 PUSH DE
\ 0191 DDE1 POP IX
157 id=*string-0x30;
\ 0193 1A LD A,(DE)
\ 0194 C6D0 ADD A,208
158 main_ResShowPic(RPRGNUM0+id,139,107);
\ 0196 0E6B LD C,107
\ 0198 C5 PUSH BC
\ 0199 0E8B LD C,139
\ 019B 5F LD E,A
\ 019C 1600 LD D,0
\ 019E 21C800 LD HL,200
\ 01A1 CD8201 CALL LWRD ?0090
\ 01A4 F1 POP AF
159 string++;
160 id= *string-0x30;
\ 01A5 DD7E01 LD A,(IX+1)
\ 01A8 C6D0 ADD A,208
161 main_ResShowPic(RPRGNUM0+id,159,107);
\ 01AA 0E6B LD C,107
\ 01AC C5 PUSH BC
\ 01AD 0E9F LD C,159
\ 01AF 5F LD E,A
\ 01B0 1600 LD D,0
\ 01B2 21C800 LD HL,200
\ 01B5 CD8201 CALL LWRD ?0090
\ 01B8 F1 POP AF
162 string++;
163 id= *string-0x30;
\ 01B9 DD7E02 LD A,(IX+2)
\ 01BC C6D0 ADD A,208
164 main_ResShowPic(RPRGNUM0+id,171,107);
\ 01BE 0E6B LD C,107
\ 01C0 C5 PUSH BC
\ 01C1 0EAB LD C,171
\ 01C3 5F LD E,A
\ 01C4 1600 LD D,0
\ 01C6 21C800 LD HL,200
\ 01C9 CD8201 CALL LWRD ?0090
\ 01CC F1 POP AF
165 string++;
166 id= *string-0x30;
\ 01CD DD7E03 LD A,(IX+3)
\ 01D0 C6D0 ADD A,208
167 main_ResShowPic(RPRGNUM0+id,191,107);
\ 01D2 0E6B LD C,107
\ 01D4 C5 PUSH BC
\ 01D5 0EBF LD C,191
\ 01D7 5F LD E,A
\ 01D8 1600 LD D,0
\ 01DA 21C800 LD HL,200
\ 01DD CD8201 CALL LWRD ?0090
\ 01E0 F1 POP AF
168 string++;
169 id= *string-0x30;
\ 01E1 DD7E04 LD A,(IX+4)
\ 01E4 C6D0 ADD A,208
170 main_ResShowPic(RPRGNUM0+id,203,107);
\ 01E6 0E6B LD C,107
\ 01E8 C5 PUSH BC
\ 01E9 0ECB LD C,203
\ 01EB 5F LD E,A
\ 01EC 1600 LD D,0
\ 01EE 21C800 LD HL,200
\ 01F1 ?0085:
\ 01F1 CD8201 CALL LWRD ?0090
\ 01F4 F1 POP AF
171 }
\ 01F5 E1 POP HL
\ 01F6 DDE1 POP IX
\ 01F8 C1 POP BC
\ 01F9 C30000 JP LWRD ?BANK_FAST_LEAVE_L08
\ 01FC ui_show_d2:
172
173 void ui_show_d2(const char *string) //显示当前时间
174 { char id;
\ 01FC C5 PUSH BC
\ 01FD DDE5 PUSH IX
\ 01FF F5 PUSH AF
\ 0200 D5 PUSH DE
\ 0201 DDE1 POP IX
175 id=*string-0x30;
\ 0203 1A LD A,(DE)
\ 0204 C6D0 ADD A,208
176 main_ResShowPic(TIMENUM0+id,157,92);
\ 0206 0E5C LD C,92
\ 0208 C5 PUSH BC
\ 0209 0E9D LD C,157
\ 020B CD7C01 CALL LWRD ?0091
\ 020E F1 POP AF
177 string++;
178 id= *string-0x30;
\ 020F DD7E01 LD A,(IX+1)
\ 0212 C6D0 ADD A,208
179 main_ResShowPic(TIMENUM0+id,165,92);
\ 0214 0E5C LD C,92
\ 0216 C5 PUSH BC
\ 0217 0EA5 LD C,165
\ 0219 CD7C01 CALL LWRD ?0091
\ 021C F1 POP AF
180 string++;
181 id= *string-0x30;
\ 021D DD7E02 LD A,(IX+2)
\ 0220 C6D0 ADD A,208
182 main_ResShowPic(TIMENUM0+id,179,92);
\ 0222 0E5C LD C,92
\ 0224 C5 PUSH BC
\ 0225 0EB3 LD C,179
\ 0227 CD7C01 CALL LWRD ?0091
\ 022A F1 POP AF
183 string++;
184 id= *string-0x30;
\ 022B DD7E03 LD A,(IX+3)
\ 022E C6D0 ADD A,208
185 main_ResShowPic(TIMENUM0+id,187,92);
\ 0230 0E5C LD C,92
\ 0232 C5 PUSH BC
\ 0233 0EBB LD C,187
\ 0235 CD7C01 CALL LWRD ?0091
\ 0238 F1 POP AF
186 string++;
187 id= *string-0x30;
\ 0239 DD7E04 LD A,(IX+4)
\ 023C C6D0 ADD A,208
188 main_ResShowPic(TIMENUM0+id,200,92);
\ 023E 0E5C LD C,92
\ 0240 C5 PUSH BC
\ 0241 0EC8 LD C,200
\ 0243 CD7C01 CALL LWRD ?0091
\ 0246 F1 POP AF
189 string++;
190 id= *string-0x30;
\ 0247 DD7E05 LD A,(IX+5)
\ 024A C6D0 ADD A,208
191 main_ResShowPic(TIMENUM0+id,208,92);
\ 024C 0E5C LD C,92
\ 024E C5 PUSH BC
\ 024F 0ED0 LD C,208
\ 0251 5F LD E,A
\ 0252 1600 LD D,0
\ 0254 21E700 LD HL,231
\ 0257 C3F101 JP LWRD ?0085
192 }
\ 025A ui_show_f:
193
194 void ui_show_f(const char *string) //文件名/滚屏显示
195 {
\ 025A C5 PUSH BC
\ 025B D5 PUSH DE
196 SetTextPos(45, 34);
\ 025C 0E22 LD C,34
\ 025E 1E2D LD E,45
\ 0260 ?0086:
\ 0260 CD0000 CALL LWRD SetTextPos
197 PutS(string, -1);
\ 0263 0EFF LD C,255
\ 0265 210000 LD HL,0
\ 0268 39 ADD HL,SP
\ 0269 5E LD E,(HL)
\ 026A 23 INC HL
\ 026B 56 LD D,(HL)
\ 026C CD0000 CALL LWRD PutS
198 }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -