Rev 1512 | Rev 1524 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1512 | Rev 1515 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | ; RTF READER FOR MENUET v1. |
1 | ; RTF READER FOR MENUET v1. |
2 | ; Written in pure assembler by Ivushkin Andrey aka Willow |
2 | ; Written in pure assembler by Ivushkin Andrey aka Willow |
3 | ; |
- | |
- | 3 | ; Menu_bar and scroll_bar from box_lib provided by dunkaist |
|
4 | ;--------------------------------------------------------------------- |
4 | ;--------------------------------------------------------------------- |
5 | M64 equ 64*1024 |
5 | M64 equ 64*1024 |
6 | N_A equ 0x412f4e |
6 | N_A equ 0x412f4e |
7 | RTFSIZE equ M64 |
7 | RTFSIZE equ M64 |
8 | RTFSTACKSIZE equ M64 |
8 | RTFSTACKSIZE equ M64 |
9 | BGIFONTSIZE equ 120*1024 |
9 | BGIFONTSIZE equ 120*1024 |
10 | ESPSIZE equ M64 |
10 | ESPSIZE equ M64 |
11 | LMARGIN equ 20 |
11 | LMARGIN equ 15 |
12 | CHARW equ 6 |
12 | CHARW equ 6 |
13 | CHARH equ 11 |
13 | CHARH equ 11 |
14 | WINW equ 600 |
14 | WINW equ 600 |
15 | WINH equ 450 |
15 | WINH equ 450 |
16 | WIN_COLOR equ 0x3f0f0f0 |
16 | WIN_COLOR equ 0x33f0f0f0;0x3f0f0f0 |
17 | DEFCOLOR equ 0x303030 |
17 | DEFCOLOR equ 0x303030 |
18 | ;RENDER equ PIX |
18 | ;RENDER equ PIX |
19 | ;RENDER equ BGI |
19 | ;RENDER equ BGI |
20 | RENDER equ FREE |
20 | RENDER equ FREE |
Line 21... | Line 21... | ||
21 | 21 | ||
22 | BGIFONT_PATH equ '/sys/fonts/' |
22 | BGIFONT_PATH equ '/sys/fonts/' |
23 | FONT_NAME equ 'LITT' |
23 | FONT_NAME equ 'LITT' |
24 | TOP =55 |
24 | TOP = 45 |
25 | MODE equ RTF |
25 | MODE equ RTF |
26 | INVALHEX equ 0 |
26 | INVALHEX equ 0 |
27 | RTF_COLORLESS equ 1 |
27 | RTF_COLORLESS equ 1 |
28 | RTF_ALIGNLESS equ 2 |
28 | RTF_ALIGNLESS equ 2 |
Line 38... | Line 38... | ||
38 | SHOWALIGN equ 10 |
38 | SHOWALIGN equ 10 |
39 | GUTTER equ 10 |
39 | GUTTER equ 10 |
40 | BENCH equ 0;1 |
40 | BENCH equ 0;1 |
41 | syms equ 12 |
41 | syms equ 12 |
Line -... | Line 42... | ||
- | 42 | ||
- | 43 | ;------------------------------- |
|
- | 44 | ||
- | 45 | scroll_width_size equ 15 |
|
- | 46 | AR_OFFSET equ 10 |
|
- | 47 | ||
- | 48 | ;------------------------------- |
|
42 | 49 | ||
43 | use32 ; ¢ª«îç¨âì 32-¡¨âë© à¥¦¨¬ áᥬ¡«¥à |
50 | use32 ; ¢ª«îç¨âì 32-¡¨âë© à¥¦¨¬ áᥬ¡«¥à |
Line 44... | Line 51... | ||
44 | org 0x0 ; ¤à¥á æ¨ï á ã«ï |
51 | org 0x0 ; ¤à¥á æ¨ï á ã«ï |
45 | 52 | ||
Line 50... | Line 57... | ||
50 | dd esp_end ; ª®«¨ç¥á⢮ ¯ ¬ï⨠|
57 | dd esp_end ; ª®«¨ç¥á⢮ ¯ ¬ï⨠|
51 | dd sys_mem ; ¤à¥á ¢¥àè¨ë áâíª |
58 | dd sys_mem ; ¤à¥á ¢¥àè¨ë áâíª |
52 | dd fname_buf ; ¤à¥á ¡ãä¥à ¤«ï ¯ à ¬¥â஢ (¥ ¨á¯®«ì§ã¥âáï) |
59 | dd fname_buf ; ¤à¥á ¡ãä¥à ¤«ï ¯ à ¬¥â஢ (¥ ¨á¯®«ì§ã¥âáï) |
53 | dd cur_dir_path ; § १¥à¢¨à®¢ ® |
60 | dd cur_dir_path ; § १¥à¢¨à®¢ ® |
Line 54... | Line 61... | ||
54 | 61 | ||
- | 62 | include '../../../macros.inc' ; ¬ ªà®áë ®¡«¥£ç îâ ¦¨§ì áᥬ¡«¥à騪®¢! |
|
55 | include '..\..\..\macros.inc' ; ¬ ªà®áë ®¡«¥£ç îâ ¦¨§ì áᥬ¡«¥à騪®¢! |
63 | include '../../../develop/libraries/box_lib/trunk/box_lib.mac' |
Line 56... | Line 64... | ||
56 | include '..\..\..\develop\libraries\box_lib\load_lib.mac' |
64 | include '../../../develop/libraries/box_lib/load_lib.mac' |
57 | 65 | ||
Line 58... | Line 66... | ||
58 | ;include 'MACROS.INC' |
66 | ;include 'MACROS.INC' |
Line 65... | Line 73... | ||
65 | if ~ RENDER eq PIX |
73 | if ~ RENDER eq PIX |
66 | TOP=TOP+4 |
74 | TOP=TOP+4 |
67 | include 'bgifont.inc' |
75 | include 'bgifont.inc' |
68 | end if |
76 | end if |
69 | include 'rtf_lite.inc' |
77 | include 'rtf_lite.inc' |
70 | include 'ascl.inc' |
78 | ;include 'ascl.inc' |
71 | ;--------------------------------------------------------------------- |
79 | ;--------------------------------------------------------------------- |
72 | ;--- ---------------------------------------------- |
80 | ;--- ---------------------------------------------- |
73 | ;--------------------------------------------------------------------- |
81 | ;--------------------------------------------------------------------- |
74 | help_file: |
82 | help_file: |
75 | file 'reader.rtf' |
83 | file 'reader.rtf' |
76 | help_end: |
84 | help_end: |
Line 77... | Line 85... | ||
77 | 85 | ||
78 | START: |
86 | START: |
- | 87 | mcall 68, 11 |
|
Line 79... | Line 88... | ||
79 | mcall 68, 11 |
88 | mcall 40, 0x27 |
Line 80... | Line 89... | ||
80 | 89 | ||
81 | load_libraries l_libs_start,end_l_libs |
90 | load_libraries l_libs_start,end_l_libs |
Line 115... | Line 124... | ||
115 | test eax, eax |
124 | test eax, eax |
116 | jz .sizok |
125 | jz .sizok |
117 | mov dword [fileinfo.name], N_A |
126 | mov dword [fileinfo.name], N_A |
118 | .sizok: |
127 | .sizok: |
119 | and [wSave],0 |
128 | and [wSave],0 |
120 | mov [HClick],-100 |
129 | ; mov [HClick],-100 |
121 | mov eax,ebx |
130 | mov eax,ebx |
122 | and eax,RTFSIZE-1 |
131 | and eax,RTFSIZE-1 |
123 | add eax,I_END |
132 | add eax,I_END |
124 | mov [tail],eax |
133 | mov [tail],eax |
125 | shr ebx,16 |
134 | shr ebx,16 |
Line 131... | Line 140... | ||
131 | repne scasb |
140 | repne scasb |
132 | sub edi,fileinfo.name+1 |
141 | sub edi,fileinfo.name+1 |
133 | mov [fname_size],edi |
142 | mov [fname_size],edi |
134 | top_red: |
143 | top_red: |
135 | mov [top],TOP |
144 | mov [top],TOP |
- | 145 | mov [scroll_bar_data_vertical.position],0 |
|
136 | red: ; ¯¥à¥à¨á®¢ âì ®ª® |
146 | red: ; ¯¥à¥à¨á®¢ âì ®ª® |
137 | - | ||
138 | call draw_window ; ¢ë§ë¢ ¥¬ ¯à®æ¥¤ãàã ®âà¨á®¢ª¨ ®ª |
147 | call draw_window ; ¢ë§ë¢ ¥¬ ¯à®æ¥¤ãàã ®âà¨á®¢ª¨ ®ª |
Line 139... | Line 148... | ||
139 | 148 | ||
140 | ;--------------------------------------------------------------------- |
149 | ;--------------------------------------------------------------------- |
141 | ;--- ---------------------------------------- |
150 | ;--- ---------------------------------------- |
Line 146... | Line 155... | ||
146 | 155 | ||
147 | cmp eax,1 ; ¯¥à¥à¨á®¢ âì ®ª® ? |
156 | cmp eax,1 ; ¯¥à¥à¨á®¢ âì ®ª® ? |
148 | je red ; ¥á«¨ ¤ - ¬¥âªã red |
157 | je red ; ¥á«¨ ¤ - ¬¥âªã red |
149 | cmp eax,3 ; ¦ â ª®¯ª ? |
158 | cmp eax,3 ; ¦ â ª®¯ª ? |
- | 159 | je button ; ¥á«¨ ¤ - button |
|
- | 160 | cmp eax,6 |
|
Line 150... | Line 161... | ||
150 | je button ; ¥á«¨ ¤ - button |
161 | je mouse |
Line 151... | Line 162... | ||
151 | 162 | ||
Line 158... | Line 169... | ||
158 | jne .nohelp |
169 | jne .nohelp |
159 | .help: |
170 | .help: |
160 | xor [mode],RTF_HELP |
171 | xor [mode],RTF_HELP |
161 | test [mode],RTF_HELP |
172 | test [mode],RTF_HELP |
162 | jz load_file |
173 | jz load_file |
- | 174 | mov dword[HDoc],200 ; it makes the help page not scroll |
|
163 | mov ecx,help_end-help_file |
175 | mov ecx,help_end-help_file |
164 | mov [block_end],ecx |
176 | mov [block_end],ecx |
165 | add [block_end],I_END |
177 | add [block_end],I_END |
166 | mov [tail],ecx |
178 | mov [tail],ecx |
167 | add [tail],I_END |
179 | add [tail],I_END |
Line 206... | Line 218... | ||
206 | inc [pitch] |
218 | inc [pitch] |
207 | jmp red |
219 | jmp red |
208 | .nopi: |
220 | .nopi: |
209 | cmp ah,180 ; Home |
221 | cmp ah,180 ; Home |
210 | je top_red |
222 | je top_red |
- | 223 | ||
- | 224 | cmp byte[is_scroll_bar_needed], 0 |
|
- | 225 | je still |
|
- | 226 | ||
211 | mov ebx,dword[prcinfo+46] |
227 | mov ebx,dword[prcinfo+46] |
212 | sub ebx,TOP+15 |
228 | sub ebx,TOP+15 |
213 | cmp ah,183 ;PgDn |
229 | cmp ah,183 ;PgDn |
214 | jne .nopgdn |
230 | jne .nopgdn |
215 | sub [top],bx |
231 | ; sub [top],bx |
- | 232 | ||
- | 233 | cmp byte[is_scroll_bar_needed], 0 |
|
- | 234 | je still |
|
- | 235 | ||
- | 236 | mov eax, [scroll_bar_data_vertical.position] |
|
- | 237 | add eax, AR_OFFSET*7 |
|
- | 238 | mov ebx, [scroll_bar_data_vertical.max_area] |
|
- | 239 | sub ebx, [scroll_bar_data_vertical.cur_area] |
|
- | 240 | cmp eax, ebx |
|
- | 241 | mov dword[scroll_bar_data_vertical.position], eax |
|
- | 242 | jl @f |
|
- | 243 | mov dword[scroll_bar_data_vertical.position], ebx |
|
- | 244 | @@: |
|
- | 245 | call Set_position |
|
216 | jmp red |
246 | jmp red |
217 | .nopgdn: |
247 | .nopgdn: |
218 | cmp ah,177 ;arrDn |
248 | cmp ah,177 ;arrDn |
219 | jne .noardn |
249 | jne .noardn |
220 | sub [top],CHARH |
250 | ; sub [top],CHARH |
- | 251 | ||
- | 252 | cmp byte[is_scroll_bar_needed], 0 |
|
- | 253 | je still |
|
- | 254 | ||
- | 255 | mov eax, [scroll_bar_data_vertical.position] |
|
- | 256 | add eax, AR_OFFSET |
|
- | 257 | mov ebx, [scroll_bar_data_vertical.max_area] |
|
- | 258 | sub ebx, [scroll_bar_data_vertical.cur_area] |
|
- | 259 | cmp eax, ebx |
|
- | 260 | mov dword[scroll_bar_data_vertical.position], eax |
|
- | 261 | jl @f |
|
- | 262 | mov dword[scroll_bar_data_vertical.position], ebx |
|
- | 263 | @@: |
|
- | 264 | call Set_position |
|
- | 265 | ||
221 | jmp red |
266 | jmp red |
222 | .noardn: |
267 | .noardn: |
223 | mov cx,[top] |
268 | mov cx,[top] |
224 | cmp ah,184 ;PgUp |
269 | cmp ah,184 ;PgUp |
225 | jne .nopgup |
270 | jne .nopgup |
226 | add [top],bx |
271 | ; add [top],bx |
227 | cmp [top],TOP |
272 | ; cmp [top],TOP |
228 | jl red |
273 | ; jl red |
229 | mov [top],TOP |
274 | ; mov [top],TOP |
230 | cmp cx,[top] |
275 | ; cmp cx,[top] |
- | 276 | ; je still |
|
- | 277 | ||
- | 278 | cmp byte[is_scroll_bar_needed], 0 |
|
231 | je still |
279 | je still |
- | 280 | ||
- | 281 | cmp dword[scroll_bar_data_vertical.position], AR_OFFSET*7 |
|
- | 282 | sub dword[scroll_bar_data_vertical.position], AR_OFFSET*7 |
|
- | 283 | jg @f |
|
- | 284 | mov dword[scroll_bar_data_vertical.position], 0 |
|
- | 285 | @@: |
|
- | 286 | call Set_position |
|
232 | jmp red |
287 | jmp red |
233 | .nopgup: |
288 | .nopgup: |
234 | cmp ah,178 ;arrUp |
289 | cmp ah,178 ;arrUp |
235 | jne .noarup |
290 | jne .noarup |
236 | add [top],CHARH |
291 | ; add [top],CHARH |
237 | cmp [top],TOP |
- | |
238 | jl red |
292 | |
239 | mov [top],TOP |
- | |
240 | cmp cx,[top] |
293 | cmp byte[is_scroll_bar_needed], 0 |
241 | je still |
294 | je still |
- | 295 | ||
- | 296 | cmp dword[scroll_bar_data_vertical.position], AR_OFFSET |
|
- | 297 | sub dword[scroll_bar_data_vertical.position], AR_OFFSET |
|
- | 298 | jg @f |
|
- | 299 | mov dword[scroll_bar_data_vertical.position], 0 |
|
- | 300 | @@: |
|
- | 301 | call Set_position |
|
- | 302 | ||
- | 303 | ; cmp [top],TOP |
|
- | 304 | ; jl red |
|
- | 305 | ; mov [top],TOP |
|
- | 306 | ; cmp cx,[top] |
|
- | 307 | ; je still |
|
242 | jmp red |
308 | jmp red |
243 | .noarup: |
309 | .noarup: |
244 | if RENDER eq FREE |
310 | if RENDER eq FREE |
245 | cmp ah,56 ;zoom+ |
311 | cmp ah,56 ;zoom+ |
246 | jne .noplus |
312 | jne .noplus |
Line 257... | Line 323... | ||
257 | fld [FreeFontscale] |
323 | fld [FreeFontscale] |
258 | fdiv [Zoomscale] |
324 | fdiv [Zoomscale] |
259 | jmp .zoom |
325 | jmp .zoom |
260 | .nominus: |
326 | .nominus: |
261 | end if |
327 | end if |
- | 328 | cmp ah,0xB5 ; end |
|
- | 329 | jne .pre_file_open |
|
- | 330 | .end: |
|
- | 331 | ||
- | 332 | cmp byte[is_scroll_bar_needed], 0 |
|
- | 333 | je still |
|
- | 334 | ||
- | 335 | mov dword[scroll_bar_data_vertical.position], 250 |
|
- | 336 | call Set_position |
|
- | 337 | jmp red |
|
- | 338 | .pre_file_open: |
|
262 | cmp ah,108 ; L - load |
339 | cmp ah,108 ; L - load |
263 | jne still |
340 | jne still |
264 | .file_open: |
341 | .file_open: |
265 | ;--------------------------------------------------------------------- |
342 | ;--------------------------------------------------------------------- |
266 | ;OpenDialog_start: |
343 | ;OpenDialog_start: |
Line 285... | Line 362... | ||
285 | ; jmp still |
362 | ; jmp still |
286 | ;--------------------------------------------------------------------- |
363 | ;--------------------------------------------------------------------- |
Line 287... | Line 364... | ||
287 | 364 | ||
288 | button: |
365 | button: |
- | 366 | mcall 17 ; 17 - ¯®«ãç¨âì ¨¤¥â¨ä¨ª â®à ¦ ⮩ ª®¯ª¨ |
|
- | 367 | ||
289 | mcall 17 ; 17 - ¯®«ãç¨âì ¨¤¥â¨ä¨ª â®à ¦ ⮩ ª®¯ª¨ |
368 | cmp ah, 1 ; ¥á«¨ ¦ â ª®¯ª á ®¬¥à®¬ 1, |
290 | cmp ah,2 |
369 | je .exit |
- | 370 | jmp still |
|
- | 371 | ||
- | 372 | .exit: |
|
- | 373 | mcall -1 ; ¨ ç¥ ª®¥æ ¯à®£à ¬¬ë |
|
- | 374 | ||
- | 375 | ||
- | 376 | ;--------------------------------------------------------------------- |
|
- | 377 | ;--- MOUSE EVENT PROCESSING ---------------------------------------- |
|
- | 378 | ;--------------------------------------------------------------------- |
|
291 | je key.help |
379 | mouse: |
- | 380 | mcall 37,7 |
|
- | 381 | test eax, eax |
|
- | 382 | je .menu_bar_1;.mouse |
|
- | 383 | jmp still |
|
- | 384 | ||
- | 385 | ||
- | 386 | .menu_bar_1: |
|
- | 387 | call .set_mouse_flag |
|
- | 388 | @@: |
|
- | 389 | push dword menu_data_1 ;mouse event for Menu 1 |
|
- | 390 | call [menu_bar_mouse] |
|
- | 391 | cmp [menu_data_1.click],dword 1 |
|
- | 392 | jne .menu_bar_2 |
|
- | 393 | cmp [menu_data_1.cursor_out],dword 0 |
|
- | 394 | jne .analyse_out_menu_1 |
|
- | 395 | jmp .menu_bar_1 |
|
- | 396 | .menu_bar_2: |
|
- | 397 | push dword menu_data_2 |
|
- | 398 | call [menu_bar_mouse] |
|
- | 399 | cmp [menu_data_2.click],dword 1 |
|
- | 400 | jne .menu_bar_3 |
|
- | 401 | cmp [menu_data_2.cursor_out],dword 0 |
|
- | 402 | jne .analyse_out_menu_2 |
|
- | 403 | jmp .menu_bar_1 |
|
- | 404 | .menu_bar_3: |
|
- | 405 | push dword menu_data_3 |
|
- | 406 | call [menu_bar_mouse] |
|
292 | cmp ah,3 |
407 | cmp [menu_data_3.click],dword 1 |
- | 408 | jne .scroll_bar |
|
- | 409 | cmp [menu_data_3.cursor_out],dword 0 |
|
- | 410 | jne .analyse_out_menu_3 |
|
- | 411 | jmp .menu_bar_1 |
|
- | 412 | ||
293 | je key.color |
413 | .set_mouse_flag: |
294 | cmp ah,4 |
414 | xor eax,eax |
- | 415 | inc eax |
|
- | 416 | mov [menu_data_1.get_mouse_flag],eax |
|
- | 417 | mov [menu_data_2.get_mouse_flag],eax |
|
295 | je key.alignment |
418 | mov [menu_data_3.get_mouse_flag],eax |
- | 419 | ret |
|
- | 420 | ||
- | 421 | .analyse_out_menu_1: |
|
296 | cmp ah,5 |
422 | cmp [menu_data_1.cursor_out],dword 1 |
- | 423 | je key.file_open |
|
- | 424 | cmp [menu_data_1.cursor_out],dword 2 |
|
297 | je key.file_open |
425 | je button.exit |
- | 426 | jmp red |
|
- | 427 | ||
- | 428 | .analyse_out_menu_2: |
|
- | 429 | cmp [menu_data_2.cursor_out],dword 1 |
|
- | 430 | je key.zplus |
|
- | 431 | cmp [menu_data_2.cursor_out],dword 2 |
|
- | 432 | je key.zminus |
|
298 | cmp ah,6 |
433 | cmp [menu_data_2.cursor_out],dword 3 |
299 | je key.incp |
434 | je key.incp |
300 | cmp ah,7 |
435 | cmp [menu_data_2.cursor_out],dword 4 |
301 | je key.decp |
- | |
302 | if RENDER eq FREE |
436 | je key.decp |
303 | cmp ah,8 |
437 | cmp [menu_data_2.cursor_out],dword 5 |
304 | je key.zminus |
438 | je key.alignment |
305 | cmp ah,9 |
439 | cmp [menu_data_2.cursor_out],dword 6 |
306 | je key.zplus |
- | |
307 | end if |
- | |
308 | cmp ah, 1 ; ¥á«¨ ¦ â ª®¯ª á ®¬¥à®¬ 1, |
440 | je key.color |
Line 309... | Line 441... | ||
309 | jne .noexit ; ¢¥àãâìáï |
441 | jmp red |
310 | 442 | ||
311 | .exit: |
- | |
312 | mcall -1 ; ¨ ç¥ ª®¥æ ¯à®£à ¬¬ë |
443 | .analyse_out_menu_3: |
313 | .noexit: |
444 | cmp [menu_data_3.cursor_out],dword 1 |
- | 445 | je key.help |
|
314 | cmp ah,20 |
446 | jmp red |
315 | jne still |
- | |
316 | mcall 37,1 |
447 | |
317 | and eax,0xffff |
448 | .scroll_bar: |
- | 449 | cmp [is_scroll_bar_needed], 0 |
|
318 | cmp eax,[HClick] |
450 | je still |
- | 451 | .vertical: |
|
319 | je still |
452 | mov eax,[scroll_bar_data_vertical.max_area] |
- | 453 | cmp eax,[scroll_bar_data_vertical.cur_area] |
|
- | 454 | jbe still |
|
- | 455 | ; mouse event for Vertical ScrollBar |
|
- | 456 | ||
- | 457 | push dword scroll_bar_data_vertical |
|
320 | mov [HClick],eax |
458 | call [scrollbar_ver_mouse] |
- | 459 | ||
321 | sub eax,25 |
460 | call Set_position |
322 | mul [HDoc] |
461 | |
323 | mov ebx,dword[prcinfo+46] |
462 | mov eax,scroll_bar_data_vertical.redraw |
324 | sub ebx,25 |
463 | xor ebx,ebx |
325 | div ebx |
464 | cmp [eax],ebx |
326 | dpd eax |
465 | je @f |
- | 466 | mov [eax],ebx |
|
- | 467 | jmp red |
|
327 | mov [top],TOP |
468 | @@: |
- | 469 | cmp [scroll_bar_data_vertical.delta2],0 |
|
328 | sub [top],ax |
470 | jne still |
329 | dps 'B' |
471 | .other: |
330 | jmp red;still |
472 | jmp still |
331 | ;--------------------------------------------------------------------- |
473 | ;--------------------------------------------------------------------- |
Line 332... | Line 474... | ||
332 | ;--- ---------------------------------- |
474 | ;--- ---------------------------------- |
Line -... | Line 475... | ||
- | 475 | ;--------------------------------------------------------------------- |
|
- | 476 | ||
333 | ;--------------------------------------------------------------------- |
477 | draw_window: |
- | 478 | ||
334 | 479 | mcall 12, 1 |
|
Line 335... | Line -... | ||
335 | draw_window: |
- | |
336 | - | ||
337 | mcall 12, 1 ; äãªæ¨ï 12: á®®¡é¨âì ®¡ ®âà¨á®¢ª¥ ®ª |
480 | |
338 | ; 1 - ç¨ ¥¬ à¨á®¢ âì |
481 | ; mcall 0, <10,WINW>, <100,WINH>, WIN_COLOR,0x805080D0, 0x005080D0 |
339 | 482 | ; mcall 4, <8,8>, 0x10DDEEFF, title, titlesize-title |
|
340 | mcall 0, <10,WINW>, <100,WINH>, WIN_COLOR,0x805080D0, 0x005080D0 |
483 | mcall 0, <10,WINW>, <100,WINH>, WIN_COLOR,0x80000000, window_title |
341 | mcall 4, <8,8>, 0x10DDEEFF, title, titlesize-title |
484 | |
Line 359... | Line 502... | ||
359 | .chg: |
502 | .chg: |
360 | mov [wSave],ebx |
503 | mov [wSave],ebx |
361 | or [mode],RTF_TOEOF |
504 | or [mode],RTF_TOEOF |
362 | and [HDoc],0 |
505 | and [HDoc],0 |
363 | and [line_count],0 |
506 | and [line_count],0 |
364 | mov [HClick],-100 |
507 | ; mov [HClick],-100 |
365 | .nochg: |
508 | .nochg: |
Line -... | Line 509... | ||
- | 509 | ||
- | 510 | ;--------------------------------------------- |
|
- | 511 | mov eax, dword[prcinfo+0x3E] |
|
- | 512 | sub eax, scroll_width_size |
|
- | 513 | mov word[scroll_bar_data_vertical.start_x], ax |
|
- | 514 | ||
- | 515 | mov eax, dword[prcinfo+0x42] |
|
- | 516 | sub eax, 17 |
|
- | 517 | mov word[scroll_bar_data_vertical.size_y], ax |
|
- | 518 | ||
- | 519 | mov ebx, dword[prcinfo+0x3E] |
|
- | 520 | mcall 38, , 65536*18+18, 0x8b8b89 |
|
- | 521 | inc ebx |
|
- | 522 | mcall 13, , 65536*0+18, 0xe9e9e2 |
|
- | 523 | ;--------------------------------------------- |
|
- | 524 | ; draw for Menu 1 |
|
- | 525 | push dword menu_data_1 |
|
- | 526 | call [menu_bar_draw] |
|
- | 527 | ; draw for Menu 2 |
|
- | 528 | push dword menu_data_2 |
|
- | 529 | call [menu_bar_draw] |
|
- | 530 | ; draw for Menu 3 |
|
- | 531 | push dword menu_data_3 |
|
- | 532 | call [menu_bar_draw] |
|
Line 366... | Line 533... | ||
366 | 533 | ;--------------------------------------------- |
|
367 | - | ||
368 | mcall 13,<5,dword[prcinfo+42]>,<21,21>,0x8000459a |
- | |
369 | 534 | ||
370 | mcall 8,7*65536+39,23*65536+16,5,0x459a ;load |
- | |
371 | mcall 8,46*65536+57,23*65536+16,4,0x459a ;align |
- | |
372 | mcall 8,103*65536+44,23*65536+16,3,0x459a ;color |
- | |
373 | mcall 8,147*65536+37,23*65536+16,2,0x459a ;help |
- | |
374 | - | ||
375 | mcall 8,184*65536+44,23*65536+16,7,0x459a ;prev |
- | |
376 | mcall 8,229*65536+46,23*65536+16,6,0x459a ;next |
- | |
377 | - | ||
378 | if RENDER eq FREE |
- | |
379 | mcall 8,276*65536+44,23*65536+16,9,0x459a ;zoom+ |
- | |
380 | mcall 8,320*65536+44,23*65536+16,8,0x459a ;zoom- |
- | |
381 | end if |
- | |
Line 382... | Line -... | ||
382 | - | ||
383 | - | ||
384 | - | ||
385 | - | ||
386 | ; sub ebx,60 |
- | |
387 | ; shl ebx,16 |
- | |
388 | ; mov bx,12 |
- | |
389 | ; mov ecx,5 shl 16+12 |
- | |
390 | ; mov esi,0xb810e7 |
- | |
391 | ; mov edx,2 |
- | |
392 | ; BTN_SPACE equ 14 shl 16 |
- | |
393 | ; mcall 8 ;2 |
- | |
394 | ; sub ebx,BTN_SPACE |
- | |
395 | ; inc edx |
- | |
396 | ; mcall 8,,,,0x459a ;3 |
- | |
397 | ; sub ebx,BTN_SPACE |
- | |
398 | ; inc edx |
- | |
399 | ; mcall ,,,,0x107a30 ;4 |
- | |
400 | ; sub ebx,BTN_SPACE |
- | |
401 | ; inc edx |
- | |
402 | ; mcall ,,,,0xcc0000 ;5 |
- | |
403 | ; sub ebx,BTN_SPACE |
- | |
404 | ; inc edx |
- | |
405 | ; mcall ,,,,0x575f8c ;6 |
- | |
406 | ; sub ebx,BTN_SPACE |
- | |
407 | ; inc edx |
- | |
408 | ; mcall ,,,,0x575f8c ;7 |
- | |
409 | ; if RENDER eq FREE |
- | |
410 | ; sub ebx,BTN_SPACE |
- | |
411 | ; inc edx |
- | |
412 | ; mcall ,,,,0x6a73d0 ;8 |
- | |
413 | ; sub ebx,BTN_SPACE |
- | |
414 | ; inc edx |
- | |
415 | ; mcall ,,,,0xd048c8 ;9 |
- | |
416 | ; end if |
- | |
417 | ;text |
- | |
418 | ; shr ecx,16 |
- | |
419 | ; mov bx,cx |
- | |
420 | ; add ebx,3 shl 16+3 |
- | |
421 | mcall 4,10*65536+27,0x10ddeeff,btn_text,btn_end-btn_text |
- | |
422 | 535 | sub dword[prcinfo+42],2*LMARGIN+scroll_width_size |
|
423 | sub dword[prcinfo+42],LMARGIN |
536 | sub dword[prcinfo+46],CHARH+25 |
424 | sub dword[prcinfo+46],CHARH |
537 | |
425 | if GUTTER eq 1 |
538 | if GUTTER eq 1 |
426 | mov ebx,LMARGIN shl 16+20 |
539 | mov ebx,LMARGIN shl 16+20 |
Line 433... | Line 546... | ||
433 | mcall ,,0xff0000 |
546 | mcall ,,0xff0000 |
434 | pop ecx |
547 | pop ecx |
435 | add ebx,50 shl 16 |
548 | add ebx,50 shl 16 |
436 | loop .loop1 |
549 | loop .loop1 |
437 | end if |
550 | end if |
438 | mov ebx,dword[prcinfo+42] |
- | |
439 | shl ebx,16 |
- | |
440 | add ebx,2 shl 16+13 |
- | |
441 | mov ecx,dword[prcinfo+46] |
- | |
442 | add ecx,40 shl 16-35 |
- | |
443 | mov edx,20+1 shl 29 |
- | |
444 | mcall 8 |
- | |
445 | mov ecx,[HClick] |
- | |
446 | shl ecx,16 |
- | |
447 | add ecx,6-3 shl 16 + 7 |
- | |
448 | mcall 13,,,0xe26830 |
- | |
449 | if MODE eq RTF |
551 | if MODE eq RTF |
450 | test [mode],RTF_OPENING |
552 | test [mode],RTF_OPENING |
451 | jne .ex |
553 | jne .ex |
452 | and [mode],not (RTF_BOTTOM);+RTF_TOEOF) |
554 | and [mode],not (RTF_BOTTOM);+RTF_TOEOF) |
453 | mov [colorptr],colortbl |
555 | mov [colorptr],colortbl |
Line 463... | Line 565... | ||
463 | mov ax,[top] |
565 | mov ax,[top] |
464 | mov word[Free+6],10 |
566 | mov word[Free+6],10 |
465 | mov word[Free+4],ax |
567 | mov word[Free+4],ax |
466 | mov esi,I_END |
568 | mov esi,I_END |
467 | call RtfParse |
569 | call RtfParse |
468 | dpd eax |
570 | ; dpd eax |
469 | dps 'Lines=' |
571 | ; dps 'Lines=' |
470 | mov eax,[line_count] |
572 | mov eax,[line_count] |
471 | dpd eax |
573 | ; dpd eax |
472 | newline |
574 | ; newline |
473 | ; movzx eax,word[Free+4] |
575 | ; movzx eax,word[Free+4] |
474 | ; dpd eax |
576 | ; dpd eax |
475 | mov eax,dword[prcinfo+42] |
577 | mov eax,dword[prcinfo+42] |
476 | mov edx,WIN_COLOR |
578 | mov edx,WIN_COLOR |
477 | call draw_progress |
579 | call draw_progress |
478 | if BENCH eq 1 |
580 | if BENCH eq 1 |
479 | mcall 26,9 |
581 | mcall 26,9 |
480 | sub eax,[bench] |
582 | sub eax,[bench] |
481 | dps <13,10,'Bench='> |
583 | ; dps <13,10,'Bench='> |
482 | dpd eax |
584 | ; dpd eax |
483 | end if |
585 | end if |
484 | else |
586 | else |
485 | mov [char],0 |
587 | mov [char],0 |
486 | mov ebx,10 shl 16+TOP |
588 | mov ebx,10 shl 16+TOP |
487 | mov ecx,16 |
589 | mov ecx,16 |
Line 507... | Line 609... | ||
507 | and ebx,0x0000ffff |
609 | and ebx,0x0000ffff |
508 | add ebx,10 shl 16 |
610 | add ebx,10 shl 16 |
509 | loop .l0 |
611 | loop .l0 |
510 | end if |
612 | end if |
511 | .ex: |
613 | .ex: |
- | 614 | call Set_position |
|
- | 615 | ;--------------------------------------------- |
|
- | 616 | cmp [is_scroll_bar_needed], 0 |
|
- | 617 | je @f |
|
- | 618 | xor eax,eax |
|
- | 619 | inc eax |
|
512 | mcall 12, 2 ; äãªæ¨ï 12: á®®¡é¨âì ®¡ ®âà¨á®¢ª¥ ®ª |
620 | mov [scroll_bar_data_vertical.all_redraw],eax |
- | 621 | ; draw for Vertical ScrollBar |
|
- | 622 | push dword scroll_bar_data_vertical |
|
- | 623 | call [scrollbar_ver_draw] |
|
- | 624 | ; reset all_redraw flag |
|
- | 625 | xor eax,eax |
|
513 | ; 2, § ª®ç¨«¨ à¨á®¢ âì |
626 | mov [scroll_bar_data_vertical.all_redraw],eax |
- | 627 | @@: |
|
- | 628 | ;--------------------------------------------- |
|
- | 629 | mcall 12, 2 |
|
- | 630 | ret |
|
- | 631 | ||
- | 632 | ;--------------------------------------------------------------------- |
|
- | 633 | Set_position: |
|
- | 634 | ||
- | 635 | mov eax, dword[prcinfo+46] |
|
- | 636 | cmp eax, [HDoc] |
|
- | 637 | mov byte[is_scroll_bar_needed], 0 |
|
- | 638 | jnl .quit |
|
- | 639 | mov byte[is_scroll_bar_needed], 1 |
|
- | 640 | ||
- | 641 | mov eax, [scroll_bar_data_vertical.max_area] |
|
- | 642 | mul dword[prcinfo+46] |
|
- | 643 | div dword[HDoc] |
|
- | 644 | cmp eax, [scroll_bar_data_vertical.max_area] |
|
- | 645 | mov dword[scroll_bar_data_vertical.cur_area],eax |
|
- | 646 | jng @f |
|
- | 647 | mov eax, [scroll_bar_data_vertical.max_area] |
|
- | 648 | mov dword[scroll_bar_data_vertical.cur_area], eax |
|
- | 649 | @@: |
|
- | 650 | mov eax, [HDoc] |
|
- | 651 | cmp eax, dword[prcinfo+46] |
|
- | 652 | sub eax, dword[prcinfo+46] |
|
514 | ret ; ¢ë室¨¬ ¨§ ¯à®æ¥¤ãàë |
653 | add eax, 100 ; height of clear area under text when you are at the end of document |
- | 654 | jg @f |
|
- | 655 | mov eax, 0 |
|
- | 656 | @@: |
|
- | 657 | mul [scroll_bar_data_vertical.position] |
|
- | 658 | mov ebx, [scroll_bar_data_vertical.max_area] |
|
- | 659 | sub ebx, [scroll_bar_data_vertical.cur_area] |
|
- | 660 | div ebx |
|
Line -... | Line 661... | ||
- | 661 | ||
- | 662 | mov dword[top], TOP |
|
- | 663 | sub dword[top], eax |
|
- | 664 | ||
- | 665 | .quit: |
|
- | 666 | ret |
|
515 | 667 | ;--------------------------------------------------------------------- |
|
516 | if GUTTER eq 1 |
668 | if GUTTER eq 1 |
517 | arrow db 0x19 |
669 | arrow db 0x19 |
518 | end if |
670 | end if |
519 | ;--------------------------------------------------------------------- |
671 | ;--------------------------------------------------------------------- |
520 | ;--- ---------------------------------------------- |
672 | ;--- ---------------------------------------------- |
Line 521... | Line 673... | ||
521 | ;--------------------------------------------------------------------- |
673 | ;--------------------------------------------------------------------- |
522 | 674 | ||
Line 523... | Line -... | ||
523 | ; ¨â¥àä¥©á ¯à®£à ¬¬ë ¬®£®ï§ëçë© |
- | |
524 | ; ë ¬®¦¥â¥ § ¤ âì ï§ëª ¢ MACROS.INC (lang fix ï§ëª) |
675 | ; ¨â¥àä¥©á ¯à®£à ¬¬ë ¬®£®ï§ëçë© |
525 | - | ||
526 | title: |
- | |
527 | db 'RTF Reader v1. ( ):' |
676 | ; ë ¬®¦¥â¥ § ¤ âì ï§ëª ¢ MACROS.INC (lang fix ï§ëª) |
528 | titlesize: |
- | |
529 | btn_text: |
677 | |
530 | db 'Load Aligment Color Help < >' |
- | |
531 | if RENDER eq FREE |
- | |
532 | db ' Zoom+ Zoom- ' |
678 | window_title: db 'RtfRead v1.033',0 |
533 | end if |
679 | buf_cmd_lin rb 0 |
Line 534... | Line 680... | ||
534 | btn_end: |
680 | is_scroll_bar_needed db 0 |
535 | ;--------------------------------------------------------------------- |
681 | ;--------------------------------------------------------------------- |
Line -... | Line 682... | ||
- | 682 | l_libs_start: |
|
- | 683 | ||
- | 684 | library01 l_libs system_dir_ProcLib+9, cur_dir_path, library_path, system_dir_ProcLib, \ |
|
536 | l_libs_start: |
685 | err_message_found_lib2, head_f_l, ProcLib_import, err_message_import2, head_f_i |
537 | 686 | ||
538 | library01 l_libs system_dir_ProcLib+9, cur_dir_path, library_path, system_dir_ProcLib, \ |
687 | library02 l_libs system_dir_Boxlib+9, cur_dir_path, buf_cmd_lin, system_dir_Boxlib, \ |
- | 688 | err_message_found_lib1, head_f_l, Box_lib_import, err_message_import1, head_f_i |
|
Line 539... | Line 689... | ||
539 | err_message_found_lib2, head_f_l, ProcLib_import, err_message_import2, head_f_i |
689 | |
540 | 690 | end_l_libs: |
|
Line -... | Line 691... | ||
- | 691 | ;--------------------------------------------------------------------- |
|
541 | end_l_libs: |
692 | system_dir_ProcLib db '/sys/lib/proc_lib.obj',0 |
Line -... | Line 693... | ||
- | 693 | system_dir_Boxlib db '/sys/lib/box_lib.obj',0 |
|
542 | ;--------------------------------------------------------------------- |
694 | |
Line 543... | Line 695... | ||
543 | system_dir_ProcLib db '/sys/lib/proc_lib.obj',0 |
695 | head_f_i: |
544 | 696 | head_f_l db 'error',0 |
|
545 | head_f_i: |
697 | |
Line 604... | Line 756... | ||
604 | dd 0 |
756 | dd 0 |
605 | dd 0 |
757 | dd 0 |
606 | .size dd 1 |
758 | .size dd 1 |
607 | dd I_END |
759 | dd I_END |
608 | .name: |
760 | .name: |
609 | ; db '//' |
761 | |
610 | ; db ' /HD/1/RTF/texts/FASM.TXT',0 |
- | |
611 | ; db '/HD/1/RTF/TEST2.RTF',0 |
- | |
612 | ; db '/HD/1/RTF/texts/index_ru.RTF',0 |
762 | ; db '/HD/1/RTF/texts/index_ru.RTF',0 |
613 | ; db '/HD/1/RTF/texts/stas.RTF',0 |
- | |
614 | ; db '/HD/1/RTF/texts/zed.RTF',0 |
- | |
615 | ; db '/HD/1/RTF/PRACT.RTF',0 |
- | |
616 | ; db '/HD/1/RTF/SETUP2.RTF',0 |
- | |
617 | ; db '/HD/1/RTF/texts/TC_RU.RTF',0 |
- | |
618 | ; db '/HD/1/RTF/texts/WORD.RTF',0 |
- | |
619 | ; db '/HD/1/RTF/texts/WORD97.RTF',0 |
- | |
620 | ; db '/HD/1/RTF/texts/MASTAPP.RTF',0 |
- | |
621 | ; db '/HD/1/RTF/texts/1c_tor77.RTF',0 |
- | |
622 | ; db '/HD/1/RTF/texts/RELATION.RTF',0 |
- | |
623 | ; db '/HD/1/RTF/texts/PLANETS.RTF',0 |
- | |
624 | ; db '/HD/1/RTF/texts/LOTRRUS.RTF',0 |
- | |
625 | ; db '/HD/1/RTF/texts/RULEBOOK.RTF',0 |
- | |
626 | ; db '/HD/1/RTF/texts/RULEBK2.RTF',0 |
- | |
627 | ; db '/HD/1/RTF/texts/GLEB.RTF',0 |
- | |
628 | ; db '/HD/1/RTF/texts/DWG13_14.RTF',0 |
- | |
629 | ; db '/HD/1/RTF/texts/LK.RTF',0 |
- | |
Line 630... | Line -... | ||
630 | - | ||
631 | ; db '/HD/1/RTF/texts/JUSTIFY.RTF',0 |
763 | |
632 | rb 256-($-.name) |
764 | rb 256-($-.name) |
633 | ;--------------------------------------------------------------------- |
765 | ;--------------------------------------------------------------------- |
634 | ;blind db ? |
766 | ;blind db ? |
635 | if RENDER eq PIX |
767 | if RENDER eq PIX |
Line 679... | Line 811... | ||
679 | ct_end: |
811 | ct_end: |
680 | fname_size dd ? |
812 | fname_size dd ? |
681 | max_block dd ? |
813 | max_block dd ? |
682 | cur_block dd ? |
814 | cur_block dd ? |
683 | HDoc dd ? |
815 | HDoc dd ? |
684 | HClick dd ? |
816 | ;HClick dd ? |
685 | top dw ? |
817 | top dw ? |
686 | line_count dd ? |
818 | line_count dd ? |
687 | par_count dd ? |
819 | par_count dd ? |
688 | char db ? |
820 | char db ? |
689 | pitch db ? |
821 | pitch db ? |
Line 698... | Line 830... | ||
698 | 830 | ||
699 | listptr dd ? |
831 | listptr dd ? |
700 | szKeyword rb 31 |
832 | szKeyword rb 31 |
701 | szParameter rb 21 |
833 | szParameter rb 21 |
- | 834 | block_end dd ? |
|
- | 835 | ||
- | 836 | ;--------------------------------------------------------------------- |
|
- | 837 | align 4 |
|
- | 838 | Box_lib_import: |
|
- | 839 | ||
- | 840 | menu_bar_draw dd aMenu_bar_draw |
|
- | 841 | menu_bar_mouse dd aMenu_bar_mouse |
|
- | 842 | ||
- | 843 | scrollbar_ver_draw dd aScrollbar_ver_draw |
|
- | 844 | scrollbar_ver_mouse dd aScrollbar_ver_mouse |
|
- | 845 | ||
- | 846 | dd 0 |
|
- | 847 | dd 0 |
|
- | 848 | ||
- | 849 | aMenu_bar_draw db 'menu_bar_draw',0 |
|
- | 850 | aMenu_bar_mouse db 'menu_bar_mouse',0 |
|
- | 851 | ;aVersion_menu_bar db 'version_menu_bar',0 |
|
- | 852 | ||
- | 853 | aScrollbar_ver_draw db 'scrollbar_v_draw',0 |
|
- | 854 | aScrollbar_ver_mouse db 'scrollbar_v_mouse',0 |
|
- | 855 | ;--------------------------------------------------------------------- |
|
- | 856 | align 4 |
|
- | 857 | menu_data_1: |
|
- | 858 | .type: dd 0 ;+0 |
|
- | 859 | .x: |
|
- | 860 | .size_x dw 40 ;+4 |
|
- | 861 | .start_x dw 2 ;+6 |
|
- | 862 | .y: |
|
- | 863 | .size_y dw 15 ;+8 |
|
- | 864 | .start_y dw 2 ;+10 |
|
- | 865 | .text_pointer: dd menu_text_area ;0 ;+12 |
|
- | 866 | .pos_pointer: dd menu_text_area.1 ;0 ;+16 |
|
- | 867 | .text_end dd menu_text_area.end ;0 ;+20 |
|
- | 868 | .mouse_pos dd 0 ;+24 |
|
- | 869 | .mouse_keys dd 0 ;+28 |
|
- | 870 | .x1: |
|
- | 871 | .size_x1 dw 40 ;+32 |
|
- | 872 | .start_x1 dw 2 ;+34 |
|
- | 873 | .y1: |
|
- | 874 | .size_y1 dw 100 ;+36 |
|
- | 875 | .start_y1 dw 18 ;+38 |
|
- | 876 | .bckg_col dd 0xeeeeee ;+40 |
|
- | 877 | .frnt_col dd 0xff ;+44 |
|
- | 878 | .menu_col dd 0xffffff ;+48 |
|
- | 879 | .select dd 0 ;+52 |
|
- | 880 | .out_select dd 0 ;+56 |
|
- | 881 | .buf_adress dd 0 ;+60 |
|
- | 882 | .procinfo dd 0 ;+64 |
|
- | 883 | .click dd 0 ;+68 |
|
- | 884 | .cursor dd 0 ;+72 |
|
- | 885 | .cursor_old dd 0 ;+76 |
|
- | 886 | .interval dd 16 ;+80 |
|
- | 887 | .cursor_max dd 0 ;+84 |
|
- | 888 | .extended_key dd 0 ;+88 |
|
- | 889 | .menu_sel_col dd 0x00cc00 ;+92 |
|
- | 890 | .bckg_text_col dd 0 ;+96 |
|
- | 891 | .frnt_text_col dd 0xffffff ;+100 |
|
- | 892 | .mouse_keys_old dd 0 ;+104 |
|
- | 893 | .font_height dd 8 ;+108 |
|
- | 894 | .cursor_out dd 0 ;+112 |
|
- | 895 | .get_mouse_flag dd 0 ;+116 |
|
- | 896 | ||
- | 897 | menu_text_area: |
|
- | 898 | db 'File',0 |
|
- | 899 | .1: |
|
- | 900 | db 'Open',0 |
|
- | 901 | db 'Exit',0 |
|
- | 902 | .end: |
|
- | 903 | db 0 |
|
- | 904 | ;--------------------------------------------------------------------- |
|
- | 905 | align 4 |
|
- | 906 | menu_data_2: |
|
- | 907 | .type: dd 0 ;+0 |
|
- | 908 | .x: |
|
- | 909 | .size_x dw 40 ;+4 |
|
- | 910 | .start_x dw 43 ;+6 |
|
- | 911 | .y: |
|
- | 912 | .size_y dw 15 ;+8 |
|
- | 913 | .start_y dw 2 ;+10 |
|
- | 914 | .text_pointer: dd menu_text_area_2 ;0 ;+12 |
|
- | 915 | .pos_pointer: dd menu_text_area_2.1 ;0 ;+16 |
|
- | 916 | .text_end dd menu_text_area_2.end ;0 ;+20 |
|
- | 917 | .mouse_pos dd 0 ;+24 |
|
- | 918 | .mouse_keys dd 0 ;+28 |
|
- | 919 | .x1: |
|
- | 920 | .size_x1 dw 50 ;+32 |
|
- | 921 | .start_x1 dw 43 ;+34 |
|
- | 922 | .y1: |
|
- | 923 | .size_y1 dw 100 ;+36 |
|
- | 924 | .start_y1 dw 18 ;+38 |
|
- | 925 | .bckg_col dd 0xeeeeee ;+40 |
|
- | 926 | .frnt_col dd 0xff ;+44 |
|
- | 927 | .menu_col dd 0xffffff ;+48 |
|
- | 928 | .select dd 0 ;+52 |
|
- | 929 | .out_select dd 0 ;+56 |
|
- | 930 | .buf_adress dd 0 ;+60 |
|
- | 931 | .procinfo dd 0 ;+64 |
|
- | 932 | .click dd 0 ;+68 |
|
- | 933 | .cursor dd 0 ;+72 |
|
- | 934 | .cursor_old dd 0 ;+76 |
|
- | 935 | .interval dd 16 ;+80 |
|
- | 936 | .cursor_max dd 0 ;+84 |
|
- | 937 | .extended_key dd 0 ;+88 |
|
- | 938 | .menu_sel_col dd 0x00cc00 ;+92 |
|
- | 939 | .bckg_text_col dd 0 ; +96 |
|
- | 940 | .frnt_text_col dd 0xffffff ;+100 |
|
- | 941 | .mouse_keys_old dd 0 ;+104 |
|
- | 942 | .font_height dd 8 ;+108 |
|
- | 943 | .cursor_out dd 0 ;+112 |
|
- | 944 | .get_mouse_flag dd 0 ;+116 |
|
- | 945 | ||
- | 946 | menu_text_area_2: |
|
- | 947 | db 'View',0 |
|
- | 948 | .1: |
|
- | 949 | db 'Zoom +',0 |
|
- | 950 | db 'Zoom -',0 |
|
- | 951 | db ' > >',0 |
|
- | 952 | db ' << ',0 |
|
- | 953 | db 'Align',0 |
|
- | 954 | db 'Color',0 |
|
- | 955 | .end: |
|
- | 956 | db 0 |
|
- | 957 | ;--------------------------------------------------------------------- |
|
- | 958 | align 4 |
|
- | 959 | menu_data_3: |
|
- | 960 | .type: dd 0 ;+0 |
|
- | 961 | .x: |
|
- | 962 | .size_x dw 40 ;+4 |
|
- | 963 | .start_x dw 84 ;+6 |
|
- | 964 | .y: |
|
- | 965 | .size_y dw 15 ;+8 |
|
- | 966 | .start_y dw 2 ;+10 |
|
- | 967 | .text_pointer: dd menu_text_area_3 ;0 ;+12 |
|
- | 968 | .pos_pointer: dd menu_text_area_3.1 ;0 ;+16 |
|
- | 969 | .text_end dd menu_text_area_3.end ;0 ;+20 |
|
- | 970 | .mouse_pos dd 0 ;+24 |
|
- | 971 | .mouse_keys dd 0 ;+28 |
|
- | 972 | .x1: |
|
- | 973 | .size_x1 dw 40 ;+32 |
|
- | 974 | .start_x1 dw 84 ;+34 |
|
- | 975 | .y1: |
|
- | 976 | .size_y1 dw 100 ;+36 |
|
- | 977 | .start_y1 dw 18 ;+38 |
|
- | 978 | .bckg_col dd 0xeeeeee ;+40 |
|
- | 979 | .frnt_col dd 0xff ;+44 |
|
- | 980 | .menu_col dd 0xffffff ;+48 |
|
- | 981 | .select dd 0 ;+52 |
|
- | 982 | .out_select dd 0 ;+56 |
|
- | 983 | .buf_adress dd 0 ;+60 |
|
- | 984 | .procinfo dd 0 ;+64 |
|
- | 985 | .click dd 0 ;+68 |
|
- | 986 | .cursor dd 0 ;+72 |
|
- | 987 | .cursor_old dd 0 ;+76 |
|
- | 988 | .interval dd 16 ;+80 |
|
- | 989 | .cursor_max dd 0 ;+84 |
|
- | 990 | .extended_key dd 0 ;+88 |
|
- | 991 | .menu_sel_col dd 0x00cc00 ;+92 |
|
- | 992 | .bckg_text_col dd 0 ; +96 |
|
- | 993 | .frnt_text_col dd 0xffffff ;+100 |
|
- | 994 | .mouse_keys_old dd 0 ;+104 |
|
- | 995 | .font_height dd 8 ;+108 |
|
- | 996 | .cursor_out dd 0 ;+112 |
|
- | 997 | .get_mouse_flag dd 0 ;+116 |
|
- | 998 | ||
- | 999 | menu_text_area_3: |
|
- | 1000 | db 'Help',0 |
|
- | 1001 | .1: |
|
- | 1002 | db 'Home',0 |
|
- | 1003 | .end: |
|
- | 1004 | db 0 |
|
- | 1005 | ;--------------------------------------------------------------------- |
|
- | 1006 | align 4 |
|
- | 1007 | scroll_bar_data_vertical: |
|
- | 1008 | .x: |
|
- | 1009 | .size_x dw scroll_width_size;+0 |
|
- | 1010 | .start_x dw WINW-25 ;+2 |
|
- | 1011 | .y: |
|
- | 1012 | .size_y dw WINH-45 ;+4 |
|
- | 1013 | .start_y dw 19 ;+6 |
|
- | 1014 | .btn_high dd scroll_width_size ;+8 |
|
- | 1015 | .type dd 1 ;+12 |
|
- | 1016 | .max_area dd 300 ;+16 |
|
- | 1017 | .cur_area dd 50 ;+20 |
|
- | 1018 | .position dd 0 ;+24 |
|
- | 1019 | .bckg_col dd 0xAAAAAA ;+28 |
|
- | 1020 | .frnt_col dd 0xCCCCCC ;+32 |
|
- | 1021 | .line_col dd 0 ;+36 |
|
- | 1022 | .redraw dd 0 ;+40 |
|
- | 1023 | .delta dw 0 ;+44 |
|
- | 1024 | .delta2 dw 0 ;+46 |
|
- | 1025 | .run_x: |
|
- | 1026 | .r_size_x dw 0 ;+48 |
|
- | 1027 | .r_start_x dw 0 ;+50 |
|
- | 1028 | .run_y: |
|
- | 1029 | .r_size_y dw 0 ;+52 |
|
- | 1030 | .r_start_y dw 0 ;+54 |
|
- | 1031 | .m_pos dd 0 ;+56 |
|
- | 1032 | .m_pos_2 dd 0 ;+60 |
|
- | 1033 | .m_keys dd 0 ;+64 |
|
- | 1034 | .run_size dd 0 ;+68 |
|
- | 1035 | .position2 dd 0 ;+72 |
|
- | 1036 | .work_size dd 0 ;+76 |
|
- | 1037 | .all_redraw dd 0 ;+80 |
|
- | 1038 | .ar_offset dd AR_OFFSET ;+84 |
|
702 | block_end dd ? |
1039 | ;--------------------------------------------------------------------- |
Line 703... | Line 1040... | ||
703 | I_END: ; ¬¥âª ª®æ ¯à®£à ¬¬ë |
1040 | I_END: ; ¬¥âª ª®æ ¯à®£à ¬¬ë |
704 | 1041 | ||
705 | procinfo process_information |
1042 | procinfo process_information |