📄 ui_scroll_string.lst
字号:
\ 0204 05 DEC B
\ 0205 2833 JR Z,?0030
\ 0207 ?0032:
\ 0207 ?0031:
\ 0207 ?0029:
155 {
156 if(m+16 > scroll->width)break;
\ 0207 211000 LD HL,16
\ 020A FDE5 PUSH IY
\ 020C C1 POP BC
\ 020D 09 ADD HL,BC
\ 020E 4D LD C,L
\ 020F 44 LD B,H
\ 0210 210C00 LD HL,12
\ 0213 39 ADD HL,SP
\ 0214 56 LD D,(HL)
\ 0215 23 INC HL
\ 0216 66 LD H,(HL)
\ 0217 6A LD L,D
\ 0218 23 INC HL
\ 0219 23 INC HL
\ 021A 6E LD L,(HL)
\ 021B 2600 LD H,0
\ 021D F680 OR 128
\ 021F ED42 SBC HL,BC
\ 0221 E22502 JP PO,?0061
\ 0224 AC XOR H
\ 0225 ?0061:
\ 0225 FA6D02 JP M,?0026
\ 0228 ?0033:
\ 0228 ?0034:
157 *str++;
158 *str++;
159 n++;
\ 0228 210000 LD HL,0
\ 022B 39 ADD HL,SP
\ 022C 34 INC (HL)
\ 022D 23 INC HL
\ 022E DD23 INC IX
\ 0230 DD23 INC IX
\ 0232 2001 JR NZ,?0062
\ 0234 34 INC (HL)
\ 0235 ?0062:
160 m=m+16;
\ 0235 011000 LD BC,16
\ 0238 182F JR ?0065
161 }
162 else
\ 023A ?0030:
163 {
164 if(m+8>scroll->width)break;
\ 023A 210800 LD HL,8
\ 023D FDE5 PUSH IY
\ 023F C1 POP BC
\ 0240 09 ADD HL,BC
\ 0241 4D LD C,L
\ 0242 44 LD B,H
\ 0243 210C00 LD HL,12
\ 0246 39 ADD HL,SP
\ 0247 56 LD D,(HL)
\ 0248 23 INC HL
\ 0249 66 LD H,(HL)
\ 024A 6A LD L,D
\ 024B 23 INC HL
\ 024C 23 INC HL
\ 024D 6E LD L,(HL)
\ 024E 2600 LD H,0
\ 0250 F680 OR 128
\ 0252 ED42 SBC HL,BC
\ 0254 E25802 JP PO,?0063
\ 0257 AC XOR H
\ 0258 ?0063:
\ 0258 FA6D02 JP M,?0026
\ 025B ?0036:
\ 025B ?0037:
165 *str++;
166 n++;
\ 025B 210000 LD HL,0
\ 025E 39 ADD HL,SP
\ 025F 34 INC (HL)
\ 0260 23 INC HL
\ 0261 DD23 INC IX
\ 0263 2001 JR NZ,?0064
\ 0265 34 INC (HL)
\ 0266 ?0064:
167 m=m+8;
\ 0266 010800 LD BC,8
\ 0269 ?0065:
\ 0269 FD09 ADD IY,BC
\ 026B ?0035:
\ 026B 1888 JR ?0027
\ 026D ?0026:
168 }
169 }
170 return n;
\ 026D 210000 LD HL,0
\ 0270 39 ADD HL,SP
\ 0271 46 LD B,(HL)
\ 0272 23 INC HL
\ 0273 66 LD H,(HL)
\ 0274 68 LD L,B
171 }
\ 0275 F1 POP AF
\ 0276 F1 POP AF
\ 0277 DDE1 POP IX
\ 0279 FDE1 POP IY
\ 027B C30000 JP LWRD ?BANK_FAST_LEAVE_L08
\ 027E Count_Byte:
172
173 BYTE Count_Byte(char *str,char language) //统计字数 zxs added 2007.03.26
174 {
\ 027E DDE5 PUSH IX
\ 0280 C5 PUSH BC
\ 0281 F5 PUSH AF
\ 0282 D5 PUSH DE
\ 0283 DDE1 POP IX
175 BYTE n=0;
176 BYTE m=0;
\ 0285 210100 LD HL,1
\ 0288 39 ADD HL,SP
\ 0289 3600 LD (HL),0
\ 028B 2B DEC HL
\ 028C 3600 LD (HL),0
\ 028E ?0039:
177 while(*str!=0)
\ 028E AF XOR A
\ 028F DDB600 OR (IX+0)
\ 0292 285A JR Z,?0038
\ 0294 ?0040:
178 {
179 if((*str >= FirstSectionCode)&&(language!=1))
\ 0294 DD7E00 LD A,(IX+0)
\ 0297 FEA1 CP 161
\ 0299 382B JR C,?0042
\ 029B 23 INC HL
\ 029C 23 INC HL
\ 029D 46 LD B,(HL)
\ 029E 05 DEC B
\ 029F 2825 JR Z,?0042
\ 02A1 ?0044:
\ 02A1 ?0043:
\ 02A1 ?0041:
180 {
181 if(m+16 > DISPLAYWIDTH)break;
\ 02A1 2B DEC HL
\ 02A2 2B DEC HL
\ 02A3 4E LD C,(HL)
\ 02A4 0600 LD B,0
\ 02A6 211000 LD HL,16
\ 02A9 09 ADD HL,BC
\ 02AA 4D LD C,L
\ 02AB 44 LD B,H
\ 02AC 218000 LD HL,128
\ 02AF B5 OR L
\ 02B0 ED42 SBC HL,BC
\ 02B2 E2B602 JP PO,?0070
\ 02B5 AC XOR H
\ 02B6 ?0070:
\ 02B6 FAEE02 JP M,?0038
\ 02B9 ?0045:
\ 02B9 ?0046:
182 *str++;
183 *str++;
184 n++;
\ 02B9 210100 LD HL,1
\ 02BC 39 ADD HL,SP
\ 02BD 34 INC (HL)
185 m=m+16;
\ 02BE 2B DEC HL
\ 02BF 7E LD A,(HL)
\ 02C0 C610 ADD A,16
\ 02C2 DD23 INC IX
\ 02C4 1823 JR ?0073
186 }
187 else
\ 02C6 ?0042:
188 {
189 if(m+8>DISPLAYWIDTH)break;
\ 02C6 210000 LD HL,0
\ 02C9 39 ADD HL,SP
\ 02CA 4E LD C,(HL)
\ 02CB 0600 LD B,0
\ 02CD 210800 LD HL,8
\ 02D0 09 ADD HL,BC
\ 02D1 4D LD C,L
\ 02D2 44 LD B,H
\ 02D3 218000 LD HL,128
\ 02D6 B5 OR L
\ 02D7 ED42 SBC HL,BC
\ 02D9 E2DD02 JP PO,?0071
\ 02DC AC XOR H
\ 02DD ?0071:
\ 02DD FAEE02 JP M,?0038
\ 02E0 ?0048:
\ 02E0 ?0049:
190 *str++;
191 n++;
\ 02E0 210100 LD HL,1
\ 02E3 39 ADD HL,SP
\ 02E4 34 INC (HL)
192 m=m+8;
\ 02E5 2B DEC HL
\ 02E6 7E LD A,(HL)
\ 02E7 C608 ADD A,8
\ 02E9 ?0073:
\ 02E9 DD23 INC IX
\ 02EB 77 LD (HL),A
\ 02EC ?0047:
\ 02EC 18A0 JR ?0039
\ 02EE ?0038:
193 }
194 }
195 return n;
\ 02EE 210100 LD HL,1
\ 02F1 39 ADD HL,SP
\ 02F2 6E LD L,(HL)
196 }
\ 02F3 F1 POP AF
\ 02F4 F1 POP AF
\ 02F5 DDE1 POP IX
\ 02F7 C30000 JP LWRD ?BANK_FAST_LEAVE_L08
197
\ 0000 RSEG UDATA0
\ 0000 region_scroll:
\ 0004 DEFS 4
\ 0004 scroll_buf:
\ 0024 DEFS 32
\ 0024 ScrollFlag:
\ 0025 DEFS 1
\ 0025 END
Errors: none
Warnings: none
Code size: 762
Constant size: 0
Static variable size: Data(37) Iram(0)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -