enhanced_unicode.lst
来自「炬力方案176*132软件源码,适用于AK1025」· LST 代码 · 共 826 行 · 第 1/3 页
LST
826 行
\ 0247 ?0044:
\ 0247 ?0041:
\ 0247 ?0038:
158 str[d_cnt++]=code;
\ 0247 DD6EFE LD L,(IX-2)
\ 024A DD66FF LD H,(IX-1)
\ 024D 23 INC HL
\ 024E DD75FE LD (IX-2),L
\ 0251 DD74FF LD (IX-1),H
\ 0254 2B DEC HL
\ 0255 DD4E02 LD C,(IX+2)
\ 0258 DD4603 LD B,(IX+3)
\ 025B 09 ADD HL,BC
\ 025C FDE5 PUSH IY
\ 025E C1 POP BC
\ 025F 71 LD (HL),C
159 s_cnt+=2;
\ 0260 210200 LD HL,2
\ 0263 39 ADD HL,SP
\ 0264 7E LD A,(HL)
\ 0265 C602 ADD A,2
\ 0267 77 LD (HL),A
\ 0268 3002 JR NC,?0089
\ 026A 23 INC HL
\ 026B 34 INC (HL)
\ 026C ?0089:
\ 026C C34501 JP LWRD ?0028
\ 026F ?0027:
160 }
161 str[d_cnt]=0; //结尾添0
\ 026F DD6EFE LD L,(IX-2)
\ 0272 DD66FF LD H,(IX-1)
\ 0275 DD4E02 LD C,(IX+2)
\ 0278 DD4603 LD B,(IX+3)
\ 027B 09 ADD HL,BC
\ 027C 3600 LD (HL),0
162 return 1;
\ 027E C38503 JP LWRD ?0099
163 //-break;
164 default: //ASCII和拉丁文
\ 0281 ?0066:
165 fp=SD_FOpen(ftbl_LA,MODE_READ);
\ 0281 4F LD C,A
\ 0282 114400 LD DE,ftbl_LA
\ 0285 ?0105:
\ 0285 CD0000 CALL LWRD SD_FOpen
\ 0288 DD75FC LD (IX-4),L
\ 028B DD74FD LD (IX-3),H
166 break;
\ 028E ?0018:
167 }
168
169
170 if(fp==NULL)
\ 028E 7D LD A,L
\ 028F B4 OR H
\ 0290 200A JR NZ,?0068
\ 0292 ?0067:
171 {
172 SD_FClose(fp);
\ 0292 5D LD E,L
\ 0293 54 LD D,H
\ 0294 CD0000 CALL LWRD SD_FClose
173 return 0;
\ 0297 2E00 LD L,0
174 }
\ 0299 C38703 JP LWRD ?0082
\ 029C ?0068:
175
176 for(d_cnt=0,s_cnt=0; (s_cnt<len)
\ 029C AF XOR A
\ 029D DD77FE LD (IX-2),A
\ 02A0 DD77FF LD (IX-1),A
\ 02A3 DD77FA LD (IX-6),A
\ 02A6 DD77FB LD (IX-5),A
\ 02A9 ?0070:
177 && ( (str[s_cnt]!=0) || (str[s_cnt+1]!=0) ); )
\ 02A9 DD4E04 LD C,(IX+4)
\ 02AC DD4605 LD B,(IX+5)
\ 02AF DD6EFA LD L,(IX-6)
\ 02B2 DD66FB LD H,(IX-5)
\ 02B5 CD0000 CALL LWRD ?SS_CMP_L02
\ 02B8 D26703 JP NC,?0069
\ 02BB DD4E02 LD C,(IX+2)
\ 02BE DD4603 LD B,(IX+3)
\ 02C1 09 ADD HL,BC
\ 02C2 7E LD A,(HL)
\ 02C3 B7 OR A
\ 02C4 200D JR NZ,?0074
\ 02C6 DD6EFA LD L,(IX-6)
\ 02C9 DD66FB LD H,(IX-5)
\ 02CC 09 ADD HL,BC
\ 02CD 23 INC HL
\ 02CE 7E LD A,(HL)
\ 02CF B7 OR A
\ 02D0 CA6703 JP Z,?0069
\ 02D3 ?0074:
\ 02D3 ?0075:
\ 02D3 ?0073:
\ 02D3 ?0072:
\ 02D3 ?0071:
178 {
179 code=OneUniToChar(str[s_cnt]+str[s_cnt+1]*0x100, fp, encode);
\ 02D3 DD6E0A LD L,(IX+10)
\ 02D6 E5 PUSH HL
\ 02D7 DD4EFC LD C,(IX-4)
\ 02DA DD46FD LD B,(IX-3)
\ 02DD DD6EFA LD L,(IX-6)
\ 02E0 DD66FB LD H,(IX-5)
\ 02E3 DD5E02 LD E,(IX+2)
\ 02E6 DD5603 LD D,(IX+3)
\ 02E9 19 ADD HL,DE
\ 02EA 23 INC HL
\ 02EB 66 LD H,(HL)
\ 02EC 2E00 LD L,0
\ 02EE E5 PUSH HL
\ 02EF DD6EFA LD L,(IX-6)
\ 02F2 DD66FB LD H,(IX-5)
\ 02F5 19 ADD HL,DE
\ 02F6 5E LD E,(HL)
\ 02F7 1600 LD D,0
\ 02F9 E1 POP HL
\ 02FA 19 ADD HL,DE
\ 02FB EB EX DE,HL
\ 02FC 3E00 LD A,BYTE3 OneUniToChar
\ 02FE 210000 LD HL,LWRD OneUniToChar
\ 0301 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0304 F1 POP AF
\ 0305 E5 PUSH HL
\ 0306 FDE1 POP IY
180 str[d_cnt++]=code;//放了低位
\ 0308 DD4EFE LD C,(IX-2)
\ 030B DD46FF LD B,(IX-1)
\ 030E 03 INC BC
\ 030F DD71FE LD (IX-2),C
\ 0312 DD70FF LD (IX-1),B
\ 0315 0B DEC BC
\ 0316 DD6E02 LD L,(IX+2)
\ 0319 DD6603 LD H,(IX+3)
\ 031C 09 ADD HL,BC
\ 031D FDE5 PUSH IY
\ 031F C1 POP BC
\ 0320 71 LD (HL),C
181 if((encode!=1)&&(encode<5))
\ 0321 DD460A LD B,(IX+10)
\ 0324 05 DEC B
\ 0325 282B JR Z,?0081
\ 0327 DD7E0A LD A,(IX+10)
\ 032A FE05 CP 5
\ 032C 3024 JR NC,?0081
\ 032E ?0079:
\ 032E ?0078:
\ 032E ?0076:
182 {
183 if(code>127)
\ 032E FDE5 PUSH IY
\ 0330 C1 POP BC
\ 0331 217F00 LD HL,127
\ 0334 A7 AND A
\ 0335 ED42 SBC HL,BC
\ 0337 3019 JR NC,?0081
\ 0339 ?0080:
184 {
185 str[d_cnt++]=code>>8;//把高位移到低位去
\ 0339 DD6EFE LD L,(IX-2)
\ 033C DD66FF LD H,(IX-1)
\ 033F 23 INC HL
\ 0340 DD75FE LD (IX-2),L
\ 0343 DD74FF LD (IX-1),H
\ 0346 2B DEC HL
\ 0347 DD4E02 LD C,(IX+2)
\ 034A DD4603 LD B,(IX+3)
\ 034D 09 ADD HL,BC
\ 034E FDE5 PUSH IY
\ 0350 C1 POP BC
\ 0351 70 LD (HL),B
\ 0352 ?0081:
\ 0352 ?0077:
186 }
187 }
188 s_cnt+=2;
\ 0352 210200 LD HL,2
\ 0355 39 ADD HL,SP
\ 0356 7E LD A,(HL)
\ 0357 C602 ADD A,2
\ 0359 77 LD (HL),A
\ 035A 3002 JR NC,?0090
\ 035C 23 INC HL
\ 035D 34 INC (HL)
\ 035E ?0090:
189 output8(REG4E_RTC_WATCH_DOG, input8(REG4E_RTC_WATCH_DOG) | 0x08);
\ 035E DB4E IN A,(78)
\ 0360 CBDF SET 3,A
\ 0362 D34E OUT (78),A
\ 0364 C3A902 JP LWRD ?0070
\ 0367 ?0069:
190 }
191
192 //str[s_cnt]=0; //结尾添0
193 str[d_cnt]=0; //Rcmai 04-1-31 20:37
\ 0367 DD6EFE LD L,(IX-2)
\ 036A DD66FF LD H,(IX-1)
\ 036D DD4E02 LD C,(IX+2)
\ 0370 DD4603 LD B,(IX+3)
\ 0373 09 ADD HL,BC
\ 0374 3600 LD (HL),0
194 SD_FClose(fp);
\ 0376 DD5EFC LD E,(IX-4)
\ 0379 DD56FD LD D,(IX-3)
\ 037C CD0000 CALL LWRD SD_FClose
195
196 //清 WATCH_DOG
197 output8(REG4E_RTC_WATCH_DOG, input8(REG4E_RTC_WATCH_DOG) | 0x08);
\ 037F DB4E IN A,(78)
\ 0381 CBDF SET 3,A
\ 0383 D34E OUT (78),A
198
199 return 1;
\ 0385 ?0099:
\ 0385 2E01 LD L,1
200 }
\ 0387 ?0082:
\ 0387 FDE1 POP IY
\ 0389 C30000 JP LWRD ?BANK_LEAVE_DIRECT_L08
\ 0000 RSEG MOC_EH_UNI
\ 0000 ftbl_GB:
\ 0000 4654424C DEFB 'FTBL_GB.$$$'
\ 0004 5F47422E
\ 0008 242424
\ 000B 00 DEFB 0
\ 000C ftbl_B5:
\ 000C 4654424C DEFB 'FTBL_B5.$$$'
\ 0010 5F42352E
\ 0014 242424
\ 0017 00 DEFB 0
\ 0018 ftbl_JP:
\ 0018 4654424C DEFB 'FTBL_JP.$$$'
\ 001C 5F4A502E
\ 0020 242424
\ 0023 00 DEFB 0
\ 0024 ftbl_KR:
\ 0024 4654424C DEFB 'FTBL_KR.$$$'
\ 0028 5F4B522E
\ 002C 242424
\ 002F 00 DEFB 0
\ 0030 ftbl_RS:
\ 0030 55313235 DEFB 'U1251.BIN'
\ 0034 312E4249
\ 0038 4E
\ 0039 00 DEFB 0
\ 003A ftbl_BC:
\ 003A 55313235 DEFB 'U1250.BIN'
\ 003E 302E4249
\ 0042 4E
\ 0043 00 DEFB 0
\ 0044 ftbl_LA:
\ 0044 55313235 DEFB 'U1252.BIN'
\ 0048 322E4249
\ 004C 4E
\ 004D 00 DEFB 0
\ 004E ftbl_XL:
\ 004E 55313235 DEFB 'U1255.BIN'
\ 0052 352E4249
\ 0056 4E
\ 0057 00 DEFB 0
\ 0058 END
Errors: none
Warnings: none
Code size: 908
Constant size: 88
Static variable size: Data(0) Iram(0)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?