Rev 6617 | Rev 6673 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 6617 | Rev 6639 | ||
---|---|---|---|
Line 104... | Line 104... | ||
104 | mcall SF_GET_BUTTON |
104 | mcall SF_GET_BUTTON |
Line 105... | Line 105... | ||
105 | 105 | ||
106 | cmp ah,1 |
106 | cmp ah,1 |
Line 107... | Line 107... | ||
107 | jne still |
107 | jne still |
108 | 108 | ||
109 | .exit: |
109 | .exit: ; ª®¥æ ¯à®£à ¬¬ë |
Line 110... | Line 110... | ||
110 | mcall SF_SYS_MISC,SSF_MEM_FREE,[m2] |
110 | mcall SF_SYS_MISC,SSF_MEM_FREE,[m2] |
111 | mcall SF_TERMINATE_PROCESS ; ¨ ç¥ ª®¥æ ¯à®£à ¬¬ë |
111 | mcall SF_TERMINATE_PROCESS |
112 | 112 | ||
113 | align 4 |
113 | align 4 |
Line 162... | Line 162... | ||
162 | mov eax,my_strm |
162 | mov eax,my_strm |
163 | mov [eax+z_stream.next_in],m0 ;ãáâ ¢«¨¢ ¥¬ ¯ ¬ïâì ¤«ï ᦠâ¨ï |
163 | mov [eax+z_stream.next_in],m0 ;ãáâ ¢«¨¢ ¥¬ ¯ ¬ïâì ¤«ï ᦠâ¨ï |
164 | mov ecx,[m0size] |
164 | mov ecx,[m0size] |
165 | mov word[eax+z_stream.avail_in],cx ;à §¬¥à ᦨ¬ ¥¬ë¦ ¤ ëå |
165 | mov word[eax+z_stream.avail_in],cx ;à §¬¥à ᦨ¬ ¥¬ë¦ ¤ ëå |
166 | mov [eax+z_stream.next_out],m1 ;ãáâ ¢«¨¢ ¥¬ ¡ãä¥à ¤«ï ᦠâ¨ï |
166 | mov [eax+z_stream.next_out],m1 ;ãáâ ¢«¨¢ ¥¬ ¡ãä¥à ¤«ï ᦠâ¨ï |
167 | mov word[eax+z_stream.avail_out],1024 ;à §¬¥à ¡ãä¥à ¤«ï ᦠâ¨ï |
167 | mov word[eax+z_stream.avail_out],1024 ;à §¬¥à ¡ãä¥à ¤«ï ᦠâ¨ï (¬ ªá¨¬ã¬ 16 ¡) |
- | 168 | ||
- | 169 | ;¢ëç¨á«ï¥¬ crc ¤«ï ᦨ¬ ¥¬ë¦ ¤ ëå |
|
- | 170 | stdcall [calc_crc32], 0,m0,ecx |
|
- | 171 | mov edx,eax |
|
Line 168... | Line 172... | ||
168 | 172 | ||
Line 169... | Line 173... | ||
169 | ;call print_z_struct |
173 | ;call print_z_struct |
Line 170... | Line 174... | ||
170 | 174 | ||
Line 171... | Line 175... | ||
171 | stdcall [deflate], my_strm, Z_FINISH ;Z_NO_FLUSH |
175 | stdcall [deflate], my_strm, Z_FINISH ;Z_NO_FLUSH |
172 | - | ||
173 | ;call print_z_struct |
176 | |
174 | 177 | ;call print_z_struct |
|
175 | ;à §¬¥à ᦠâëå ¤ ëå: 1024-word[eax+z_stream.avail_out] |
178 | |
Line 176... | Line 179... | ||
176 | mov eax,my_strm |
179 | ;à §¬¥à ᦠâëå ¤ ëå: 1024-word[my_strm.avail_out] |
177 | mov ecx,1024 |
180 | mov ecx,1024 |
Line -... | Line 181... | ||
- | 181 | sub cx,word[my_strm.avail_out] |
|
- | 182 | mov [m1size],ecx |
|
- | 183 | ||
- | 184 | ;assert(ret != Z_STREAM_ERROR) |
|
- | 185 | ;while (strm.avail_out == 0) |
|
- | 186 | ||
- | 187 | ;áâ ¢¨¬ crc ᦠâë¥ ¤ ë¥ |
|
- | 188 | mov ecx,[m1size] |
|
178 | sub cx,word[eax+z_stream.avail_out] |
189 | sub ecx,4 |
179 | mov [m1size],ecx |
190 | add ecx,m1 |
180 | 191 | mov [ecx],edx |
|
181 | ;assert(ret != Z_STREAM_ERROR) |
192 | |
- | 193 | ;ä®à¬¨à®¢ ¨¥ ⥪áâ ¤«ï ®â®¡à ¦¥¨ï ᦠâëå ¤ ëå |
|
182 | ;while (strm.avail_out == 0) |
194 | ;¢ 16-à¨ç®¬ ¢¨¤¥, 㦮 ⮫쪮 ¤«ï ¯à¨¬¥à |
183 | 195 | mov ebx,[m1size] |
|
- | 196 | mov esi,m1 |
|
184 | mov ebx,[m1size] |
197 | mov edi,buf |
185 | mov esi,m1 |
198 | mov edx,7 |
186 | mov edi,buf |
199 | align 4 |
187 | mov edx,7 |
200 | .cycle1: ;rows |
188 | .cycle1: ;rows |
201 | mov ecx,32 |
Line 197... | Line 210... | ||
197 | inc edi |
210 | inc edi |
198 | loop .cycle0 |
211 | loop .cycle0 |
199 | mov byte[edi-1],0 |
212 | mov byte[edi-1],0 |
200 | dec edx |
213 | dec edx |
201 | jnz .cycle1 |
214 | jnz .cycle1 |
202 | - | ||
203 | .cycle1end: |
215 | .cycle1end: |
204 | mov byte[edi],0 |
216 | mov byte[edi],0 |
Line -... | Line 217... | ||
- | 217 | ||
205 | 218 | ;㤠«¥¨¥ ¡ãä¥à á à ¥¥ à ᯠª®¢ 묨 ¤ 묨 |
|
Line 206... | Line 219... | ||
206 | mcall SF_SYS_MISC,SSF_MEM_FREE,[m2] |
219 | mcall SF_SYS_MISC,SSF_MEM_FREE,[m2] |
207 | 220 | ||
208 | mov eax,[m1size] |
221 | mov eax,[m1size] |
209 | sub eax,2 ;;; 2? or 6? |
222 | sub eax,2 ;;; 2? or 6? |
210 | mov [m2size],eax |
223 | mov [m2size],eax |
211 | mov eax,m1 |
224 | mov eax,m1 |
212 | add eax,2 |
225 | add eax,2 |
213 | stdcall [deflate_unpack],eax,m2size |
226 | stdcall [deflate_unpack],eax,m2size |
214 | mov [m2],eax |
227 | mov [m2],eax ;§ ¯¨áì ®¢ëå à ᯠª®¢ ëå ¤ ëå |
215 | mov ecx,[m0size] ;;; ??? |
228 | mov ecx,[m0size] ;;; ??? |
Line 216... | Line 229... | ||
216 | mov [m2size],ecx |
229 | mov [m2size],ecx |
Line 241... | Line 254... | ||
241 | deflateInit dd sz_deflateInit |
254 | deflateInit dd sz_deflateInit |
242 | deflateInit2 dd sz_deflateInit2 |
255 | deflateInit2 dd sz_deflateInit2 |
243 | deflateReset dd sz_deflateReset |
256 | deflateReset dd sz_deflateReset |
244 | deflate dd sz_deflate |
257 | deflate dd sz_deflate |
245 | deflateEnd dd sz_deflateEnd |
258 | deflateEnd dd sz_deflateEnd |
- | 259 | calc_crc32 dd sz_calc_crc32 |
|
Line 246... | Line 260... | ||
246 | 260 | ||
Line 247... | Line 261... | ||
247 | dd 0,0 |
261 | dd 0,0 |
248 | 262 | ||
249 | ; sz_lib_init db 'lib_init',0 |
263 | ; sz_lib_init db 'lib_init',0 |
250 | sz_deflateInit db 'deflateInit',0 |
264 | sz_deflateInit db 'deflateInit',0 |
251 | sz_deflateInit2 db 'deflateInit2',0 |
265 | sz_deflateInit2 db 'deflateInit2',0 |
252 | sz_deflateReset db 'deflateReset',0 |
266 | sz_deflateReset db 'deflateReset',0 |
- | 267 | sz_deflate db 'deflate',0 |
|
- | 268 | sz_deflateEnd db 'deflateEnd',0 |
|
253 | sz_deflate db 'deflate',0 |
269 | sz_calc_crc32 db 'calc_crc32',0 |
254 | sz_deflateEnd db 'deflateEnd',0 |
270 | |
255 | ;-------------------------------------------------- |
271 | ;-------------------------------------------------- |
Line 256... | Line 272... | ||
256 | system_dir_0 db '/sys/lib/' |
272 | system_dir_0 db '/sys/lib/' |