Rev 1418 | Rev 1437 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1418 | Rev 1436 | ||
---|---|---|---|
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 | ; |
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 20 |
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 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 |
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 =55 |
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 |
29 | RTF_NO1STLINE equ 4 |
29 | RTF_NO1STLINE equ 4 |
30 | RTF_OPENING equ 8 |
30 | RTF_OPENING equ 8 |
31 | RTF_HELP equ 16 |
31 | RTF_HELP equ 16 |
32 | RTF_VALID equ 32 |
32 | RTF_VALID equ 32 |
33 | RTF_BLIND equ 64 |
33 | RTF_BLIND equ 64 |
34 | RTF_TOEOF equ 128 |
34 | RTF_TOEOF equ 128 |
35 | RTF_BOTTOM equ 256 |
35 | RTF_BOTTOM equ 256 |
36 | STEPBYSTEP equ 10 |
36 | STEPBYSTEP equ 10 |
37 | DEBUG_BLOCK equ 10 |
37 | DEBUG_BLOCK equ 10 |
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 |
42 | 42 | ||
43 | use32 ; ¢ª«îç¨âì 32-¡¨âë© à¥¦¨¬ áᥬ¡«¥à |
43 | use32 ; ¢ª«îç¨âì 32-¡¨âë© à¥¦¨¬ áᥬ¡«¥à |
44 | org 0x0 ; ¤à¥á æ¨ï á ã«ï |
44 | org 0x0 ; ¤à¥á æ¨ï á ã«ï |
45 | 45 | ||
46 | db 'MENUET01' ; 8-¡ ©âë© ¨¤¥â¨ä¨ª â®à MenuetOS |
46 | db 'MENUET01' ; 8-¡ ©âë© ¨¤¥â¨ä¨ª â®à MenuetOS |
47 | dd 0x01 ; ¢¥àá¨ï § £®«®¢ª (¢á¥£¤ 1) |
47 | dd 0x01 ; ¢¥àá¨ï § £®«®¢ª (¢á¥£¤ 1) |
48 | dd START ; ¤à¥á ¯¥à¢®© ª®¬ ¤ë |
48 | dd START ; ¤à¥á ¯¥à¢®© ª®¬ ¤ë |
49 | dd I_END0 ; à §¬¥à ¯à®£à ¬¬ë |
49 | dd I_END0 ; à §¬¥à ¯à®£à ¬¬ë |
50 | dd esp_end ; ª®«¨ç¥á⢮ ¯ ¬ï⨠|
50 | dd esp_end ; ª®«¨ç¥á⢮ ¯ ¬ï⨠|
51 | dd sys_mem ; ¤à¥á ¢¥àè¨ë áâíª |
51 | dd sys_mem ; ¤à¥á ¢¥àè¨ë áâíª |
52 | dd fname_buf ; ¤à¥á ¡ãä¥à ¤«ï ¯ à ¬¥â஢ (¥ ¨á¯®«ì§ã¥âáï) |
52 | dd fname_buf ; ¤à¥á ¡ãä¥à ¤«ï ¯ à ¬¥â஢ (¥ ¨á¯®«ì§ã¥âáï) |
53 | dd 0x0 ; § १¥à¢¨à®¢ ® |
53 | dd 0x0 ; § १¥à¢¨à®¢ ® |
54 | 54 | ||
55 | include '..\..\..\MACROS.INC' ; ¬ ªà®áë ®¡«¥£ç îâ ¦¨§ì áᥬ¡«¥à騪®¢! |
55 | include '..\..\..\MACROS.INC' ; ¬ ªà®áë ®¡«¥£ç îâ ¦¨§ì áᥬ¡«¥à騪®¢! |
56 | include '..\..\..\develop\libraries\box_lib\load_lib.mac' |
56 | include '..\..\..\develop\libraries\box_lib\load_lib.mac' |
57 | include '..\..\..\develop\libraries\box_lib\asm\trunk\opendial.mac' |
57 | include '..\..\..\develop\libraries\box_lib\asm\trunk\opendial.mac' |
58 | 58 | ||
59 | ;include 'MACROS.INC' |
59 | ;include 'MACROS.INC' |
60 | ;include 'load_lib.mac' |
60 | ;include 'load_lib.mac' |
61 | ;include 'opendial.mac' |
61 | ;include 'opendial.mac' |
62 | 62 | ||
63 | include 'debug.inc' |
63 | include 'debug.inc' |
64 | 64 | ||
65 | use_OpenDialog |
65 | use_OpenDialog |
66 | if ~ RENDER eq PIX |
66 | if ~ RENDER eq PIX |
67 | TOP=TOP+4 |
67 | TOP=TOP+4 |
68 | include 'bgifont.inc' |
68 | include 'bgifont.inc' |
69 | end if |
69 | end if |
70 | include 'rtf_lite.inc' |
70 | include 'rtf_lite.inc' |
71 | include 'ascl.inc' |
71 | include 'ascl.inc' |
72 | ;--------------------------------------------------------------------- |
72 | ;--------------------------------------------------------------------- |
73 | ;--- ---------------------------------------------- |
73 | ;--- ---------------------------------------------- |
74 | ;--------------------------------------------------------------------- |
74 | ;--------------------------------------------------------------------- |
75 | help_file: |
75 | help_file: |
76 | file 'reader.rtf' |
76 | file 'reader.rtf' |
77 | help_end: |
77 | help_end: |
78 | 78 | ||
79 | START: |
79 | START: |
80 | mcall 68, 11 |
80 | mcall 68, 11 |
81 | ;OpenDialog initialisation |
81 | ;OpenDialog initialisation |
82 | init_OpenDialog OpenDialog_data |
82 | init_OpenDialog OpenDialog_data |
83 | 83 | ||
84 | mov [pitch],2 |
84 | mov [pitch],2 |
85 | if ~ RENDER eq PIX |
85 | if ~ RENDER eq PIX |
86 | mov edx,FONT_NAME |
86 | mov edx,FONT_NAME |
87 | mov edi,save_limit |
87 | mov edi,save_limit |
88 | BGIfont_Prepare |
88 | BGIfont_Prepare |
89 | end if |
89 | end if |
90 | start2: |
90 | start2: |
91 | cmp byte[fname_buf],0 |
91 | cmp byte[fname_buf],0 |
92 | je load_file;top_red |
92 | je load_file;top_red |
93 | jmp noactivate |
93 | jmp noactivate |
94 | prep_load: |
94 | prep_load: |
95 | ; mcall 18,3,dword[prcinfo+30] |
95 | ; mcall 18,3,dword[prcinfo+30] |
96 | noactivate: |
96 | noactivate: |
97 | ; and ebp,not RTF_OPENING |
97 | ; and ebp,not RTF_OPENING |
98 | ; and ebp,not RTF_HELP |
98 | ; and ebp,not RTF_HELP |
99 | 99 | ||
100 | ; and [mode],not RTF_OPENING |
100 | ; and [mode],not RTF_OPENING |
101 | and [mode],not (RTF_HELP+RTF_OPENING) |
101 | and [mode],not (RTF_HELP+RTF_OPENING) |
102 | mov ecx,16 |
102 | mov ecx,16 |
103 | mov edi,fileinfo.name |
103 | mov edi,fileinfo.name |
104 | mov esi,fname_buf |
104 | mov esi,fname_buf |
105 | rep movsd |
105 | rep movsd |
106 | load_file: |
106 | load_file: |
107 | mov eax, 70 |
107 | mov eax, 70 |
108 | and [fileattr+32], 0 |
108 | and [fileattr+32], 0 |
109 | mov ebx, attrinfo |
109 | mov ebx, attrinfo |
110 | mcall |
110 | mcall |
111 | mov ebx, [fileattr+32] |
111 | mov ebx, [fileattr+32] |
112 | test eax, eax |
112 | test eax, eax |
113 | jz .sizok |
113 | jz .sizok |
114 | mov dword [fileinfo.name], N_A |
114 | mov dword [fileinfo.name], N_A |
115 | .sizok: |
115 | .sizok: |
116 | and [wSave],0 |
116 | and [wSave],0 |
117 | mov [HClick],-100 |
117 | mov [HClick],-100 |
118 | mov eax,ebx |
118 | mov eax,ebx |
119 | and eax,RTFSIZE-1 |
119 | and eax,RTFSIZE-1 |
120 | add eax,I_END |
120 | add eax,I_END |
121 | mov [tail],eax |
121 | mov [tail],eax |
122 | shr ebx,16 |
122 | shr ebx,16 |
123 | ; dpd ebx |
123 | ; dpd ebx |
124 | mov [max_block],ebx |
124 | mov [max_block],ebx |
125 | xor eax,eax |
125 | xor eax,eax |
126 | mov ecx,256 |
126 | mov ecx,256 |
127 | mov edi,fileinfo.name |
127 | mov edi,fileinfo.name |
128 | repne scasb |
128 | repne scasb |
129 | sub edi,fileinfo.name+1 |
129 | sub edi,fileinfo.name+1 |
130 | mov [fname_size],edi |
130 | mov [fname_size],edi |
131 | top_red: |
131 | top_red: |
132 | mov [top],TOP |
132 | mov [top],TOP |
133 | red: ; ¯¥à¥à¨á®¢ âì ®ª® |
133 | red: ; ¯¥à¥à¨á®¢ âì ®ª® |
134 | 134 | ||
135 | call draw_window ; ¢ë§ë¢ ¥¬ ¯à®æ¥¤ãàã ®âà¨á®¢ª¨ ®ª |
135 | call draw_window ; ¢ë§ë¢ ¥¬ ¯à®æ¥¤ãàã ®âà¨á®¢ª¨ ®ª |
136 | 136 | ||
137 | ;--------------------------------------------------------------------- |
137 | ;--------------------------------------------------------------------- |
138 | ;--- ---------------------------------------- |
138 | ;--- ---------------------------------------- |
139 | ;--------------------------------------------------------------------- |
139 | ;--------------------------------------------------------------------- |
140 | 140 | ||
141 | still: |
141 | still: |
142 | mcall 10 ; äãªæ¨ï 10 - ¦¤ âì ᮡëâ¨ï |
142 | mcall 10 ; äãªæ¨ï 10 - ¦¤ âì ᮡëâ¨ï |
143 | 143 | ||
144 | cmp eax,1 ; ¯¥à¥à¨á®¢ âì ®ª® ? |
144 | cmp eax,1 ; ¯¥à¥à¨á®¢ âì ®ª® ? |
145 | je red ; ¥á«¨ ¤ - ¬¥âªã red |
145 | je red ; ¥á«¨ ¤ - ¬¥âªã red |
146 | cmp eax,3 ; ¦ â ª®¯ª ? |
146 | cmp eax,3 ; ¦ â ª®¯ª ? |
147 | je button ; ¥á«¨ ¤ - button |
147 | je button ; ¥á«¨ ¤ - button |
148 | 148 | ||
149 | ;--------------------------------------------------------------------- |
149 | ;--------------------------------------------------------------------- |
150 | 150 | ||
151 | 151 | ||
152 | key: ; ¦ â ª« ¢¨è ª« ¢¨ âãॠ|
152 | key: ; ¦ â ª« ¢¨è ª« ¢¨ âãॠ|
153 | mcall 2 ; äãªæ¨ï 2 - áç¨â âì ª®¤ ᨬ¢®« (¢ ah) |
153 | mcall 2 ; äãªæ¨ï 2 - áç¨â âì ª®¤ ᨬ¢®« (¢ ah) |
154 | cmp ah,104 ; HELP |
154 | cmp ah,104 ; HELP |
155 | jne .nohelp |
155 | jne .nohelp |
156 | .help: |
156 | .help: |
157 | xor [mode],RTF_HELP |
157 | xor [mode],RTF_HELP |
158 | test [mode],RTF_HELP |
158 | test [mode],RTF_HELP |
159 | jz load_file |
159 | jz load_file |
160 | mov ecx,help_end-help_file |
160 | mov ecx,help_end-help_file |
161 | mov [block_end],ecx |
161 | mov [block_end],ecx |
162 | add [block_end],I_END |
162 | add [block_end],I_END |
163 | mov [tail],ecx |
163 | mov [tail],ecx |
164 | add [tail],I_END |
164 | add [tail],I_END |
165 | mov esi,help_file |
165 | mov esi,help_file |
166 | mov edi,I_END |
166 | mov edi,I_END |
167 | rep movsb |
167 | rep movsb |
168 | ; or [mode],RTF_HELP |
168 | ; or [mode],RTF_HELP |
169 | xor eax,eax |
169 | xor eax,eax |
170 | mov [max_block],eax |
170 | mov [max_block],eax |
171 | jmp top_red |
171 | jmp top_red |
172 | .nohelp: |
172 | .nohelp: |
173 | ; test [mode],RTF_HELP |
173 | ; test [mode],RTF_HELP |
174 | ; jz .nohelp2 |
174 | ; jz .nohelp2 |
175 | ; and [mode],not RTF_HELP |
175 | ; and [mode],not RTF_HELP |
176 | ; cmp dword[fileinfo.name],N_A |
176 | ; cmp dword[fileinfo.name],N_A |
177 | ; je still |
177 | ; je still |
178 | ; jmp prep_load |
178 | ; jmp prep_load |
179 | .nohelp2: |
179 | .nohelp2: |
180 | cmp ah,114 ; R - redraw |
180 | cmp ah,114 ; R - redraw |
181 | je red |
181 | je red |
182 | cmp ah,99 ; C - color |
182 | cmp ah,99 ; C - color |
183 | jne .nocolor |
183 | jne .nocolor |
184 | .color: |
184 | .color: |
185 | xor [mode],RTF_COLORLESS |
185 | xor [mode],RTF_COLORLESS |
186 | jmp red |
186 | jmp red |
187 | .nocolor: |
187 | .nocolor: |
188 | cmp ah,97 ; A - alignment |
188 | cmp ah,97 ; A - alignment |
189 | jne .noalign |
189 | jne .noalign |
190 | .alignment: |
190 | .alignment: |
191 | xor [mode],RTF_ALIGNLESS |
191 | xor [mode],RTF_ALIGNLESS |
192 | jmp red |
192 | jmp red |
193 | .noalign: |
193 | .noalign: |
194 | cmp ah,44 ; < - pitch dec |
194 | cmp ah,44 ; < - pitch dec |
195 | jne .nopd |
195 | jne .nopd |
196 | .decp: |
196 | .decp: |
197 | dec [pitch] |
197 | dec [pitch] |
198 | jmp red |
198 | jmp red |
199 | .nopd: |
199 | .nopd: |
200 | cmp ah,46 ; < - pitch inc |
200 | cmp ah,46 ; < - pitch inc |
201 | jne .nopi |
201 | jne .nopi |
202 | .incp: |
202 | .incp: |
203 | inc [pitch] |
203 | inc [pitch] |
204 | jmp red |
204 | jmp red |
205 | .nopi: |
205 | .nopi: |
206 | cmp ah,180 ; Home |
206 | cmp ah,180 ; Home |
207 | je top_red |
207 | je top_red |
208 | mov ebx,dword[prcinfo+46] |
208 | mov ebx,dword[prcinfo+46] |
209 | sub ebx,TOP+15 |
209 | sub ebx,TOP+15 |
210 | cmp ah,183 ;PgDn |
210 | cmp ah,183 ;PgDn |
211 | jne .nopgdn |
211 | jne .nopgdn |
212 | sub [top],bx |
212 | sub [top],bx |
213 | jmp red |
213 | jmp red |
214 | .nopgdn: |
214 | .nopgdn: |
215 | cmp ah,177 ;arrDn |
215 | cmp ah,177 ;arrDn |
216 | jne .noardn |
216 | jne .noardn |
217 | sub [top],CHARH |
217 | sub [top],CHARH |
218 | jmp red |
218 | jmp red |
219 | .noardn: |
219 | .noardn: |
220 | mov cx,[top] |
220 | mov cx,[top] |
221 | cmp ah,184 ;PgUp |
221 | cmp ah,184 ;PgUp |
222 | jne .nopgup |
222 | jne .nopgup |
223 | add [top],bx |
223 | add [top],bx |
224 | cmp [top],TOP |
224 | cmp [top],TOP |
225 | jl red |
225 | jl red |
226 | mov [top],TOP |
226 | mov [top],TOP |
227 | cmp cx,[top] |
227 | cmp cx,[top] |
228 | je still |
228 | je still |
229 | jmp red |
229 | jmp red |
230 | .nopgup: |
230 | .nopgup: |
231 | cmp ah,178 ;arrUp |
231 | cmp ah,178 ;arrUp |
232 | jne .noarup |
232 | jne .noarup |
233 | add [top],CHARH |
233 | add [top],CHARH |
234 | cmp [top],TOP |
234 | cmp [top],TOP |
235 | jl red |
235 | jl red |
236 | mov [top],TOP |
236 | mov [top],TOP |
237 | cmp cx,[top] |
237 | cmp cx,[top] |
238 | je still |
238 | je still |
239 | jmp red |
239 | jmp red |
240 | .noarup: |
240 | .noarup: |
241 | if RENDER eq FREE |
241 | if RENDER eq FREE |
242 | cmp ah,56 ;zoom+ |
242 | cmp ah,56 ;zoom+ |
243 | jne .noplus |
243 | jne .noplus |
244 | .zplus: |
244 | .zplus: |
245 | fld [FreeFontscale] |
245 | fld [FreeFontscale] |
246 | fmul [Zoomscale] |
246 | fmul [Zoomscale] |
247 | .zoom: |
247 | .zoom: |
248 | fstp [FreeFontscale] |
248 | fstp [FreeFontscale] |
249 | jmp red |
249 | jmp red |
250 | .noplus: |
250 | .noplus: |
251 | cmp ah,54 ;zoom- |
251 | cmp ah,54 ;zoom- |
252 | jne .nominus |
252 | jne .nominus |
253 | .zminus: |
253 | .zminus: |
254 | fld [FreeFontscale] |
254 | fld [FreeFontscale] |
255 | fdiv [Zoomscale] |
255 | fdiv [Zoomscale] |
256 | jmp .zoom |
256 | jmp .zoom |
257 | .nominus: |
257 | .nominus: |
258 | end if |
258 | end if |
259 | cmp ah,108 ; L - load |
259 | cmp ah,108 ; L - load |
260 | jne stilld |
260 | jne stilld |
261 | .file_open: |
261 | .file_open: |
262 | ;--------------------------------------------------------------------- |
262 | ;--------------------------------------------------------------------- |
263 | ;OpenDialog_start: |
263 | ;OpenDialog_start: |
264 | call get_filter_data |
- | |
265 | ; copy_path open_dialog_name,path,library_path,0 |
264 | ; copy_path open_dialog_name,path,library_path,0 |
266 | 265 | ||
267 | start_OpenDialog OpenDialog_data |
266 | start_OpenDialog OpenDialog_data |
268 | 267 | ||
269 | cmp [OpenDialog_data.status],2 ; OpenDialog does not start |
268 | cmp [OpenDialog_data.status],2 ; OpenDialog does not start |
270 | je .sysxtree ; some kind of alternative, instead OpenDialog |
269 | je .sysxtree ; some kind of alternative, instead OpenDialog |
271 | cmp [OpenDialog_data.status],1 |
270 | cmp [OpenDialog_data.status],1 |
272 | ; jne still ; OpenDialog user say cancel |
- | |
273 | ; copy path |
- | |
274 | ; call draw_window |
- | |
275 | je prep_load |
271 | je prep_load |
276 | - | ||
277 | ;.copy_dir_path: |
272 | jmp still |
278 | ; mov esi,fname_buf |
- | |
279 | ; mov edi,temp_dir_pach |
- | |
280 | ; call copy_dir_path |
- | |
281 | - | ||
282 | jmp still ; OpenDialog user selected the target file |
- | |
283 | ; [OpenDialog_data.openfile_pach] pointer of area the target file |
- | |
284 | - | ||
285 | ;--------------------------------------------------------------------- |
273 | ;--------------------------------------------------------------------- |
286 | .sysxtree: |
274 | .sysxtree: |
287 | or [mode],RTF_OPENING |
275 | or [mode],RTF_OPENING |
288 | opendialog draw_window, prep_load, st_1, fname_buf |
276 | opendialog draw_window, prep_load, st_1, fname_buf |
289 | st_1: |
277 | st_1: |
290 | and [mode],not RTF_OPENING |
278 | and [mode],not RTF_OPENING |
291 | jmp still;red |
279 | jmp still;red |
292 | stilld: |
280 | stilld: |
293 | jmp still |
281 | jmp still |
294 | ;--------------------------------------------------------------------- |
282 | ;--------------------------------------------------------------------- |
295 | get_filter_data: |
283 | get_filter_data: |
296 | mov edi,[OpenDialog_data.com_area] |
284 | mov edi,[OpenDialog_data.com_area] |
297 | test edi,edi |
285 | test edi,edi |
298 | jnz @f |
286 | jnz @f |
299 | add esp,4 |
287 | add esp,4 |
300 | jmp still |
288 | jmp still |
301 | @@: |
289 | @@: |
302 | add edi,4096+4 |
290 | add edi,4096+4 |
303 | mov esi,Filter |
291 | mov esi,Filter |
304 | mov ecx,[esi] |
292 | mov ecx,[esi] |
305 | inc ecx |
293 | inc ecx |
306 | cld |
294 | cld |
307 | rep movsb |
295 | rep movsb |
308 | mov edi,[OpenDialog_data.com_area] |
296 | mov edi,[OpenDialog_data.com_area] |
309 | mov [edi+4096],dword 1 |
297 | mov [edi+4096],dword 1 |
310 | ret |
298 | ret |
311 | ;--------------------------------------------------------------------- |
299 | ;--------------------------------------------------------------------- |
312 | 300 | ||
313 | button: |
301 | button: |
314 | mcall 17 ; 17 - ¯®«ãç¨âì ¨¤¥â¨ä¨ª â®à ¦ ⮩ ª®¯ª¨ |
302 | mcall 17 ; 17 - ¯®«ãç¨âì ¨¤¥â¨ä¨ª â®à ¦ ⮩ ª®¯ª¨ |
315 | cmp ah,2 |
303 | cmp ah,2 |
316 | je key.help |
304 | je key.help |
317 | cmp ah,3 |
305 | cmp ah,3 |
318 | je key.color |
306 | je key.color |
319 | cmp ah,4 |
307 | cmp ah,4 |
320 | je key.alignment |
308 | je key.alignment |
321 | cmp ah,5 |
309 | cmp ah,5 |
322 | je key.file_open |
310 | je key.file_open |
323 | cmp ah,6 |
311 | cmp ah,6 |
324 | je key.incp |
312 | je key.incp |
325 | cmp ah,7 |
313 | cmp ah,7 |
326 | je key.decp |
314 | je key.decp |
327 | if RENDER eq FREE |
315 | if RENDER eq FREE |
328 | cmp ah,8 |
316 | cmp ah,8 |
329 | je key.zminus |
317 | je key.zminus |
330 | cmp ah,9 |
318 | cmp ah,9 |
331 | je key.zplus |
319 | je key.zplus |
332 | end if |
320 | end if |
333 | cmp ah, 1 ; ¥á«¨ ¦ â ª®¯ª á ®¬¥à®¬ 1, |
321 | cmp ah, 1 ; ¥á«¨ ¦ â ª®¯ª á ®¬¥à®¬ 1, |
334 | jne .noexit ; ¢¥àãâìáï |
322 | jne .noexit ; ¢¥àãâìáï |
335 | 323 | ||
336 | .exit: |
324 | .exit: |
337 | mcall -1 ; ¨ ç¥ ª®¥æ ¯à®£à ¬¬ë |
325 | mcall -1 ; ¨ ç¥ ª®¥æ ¯à®£à ¬¬ë |
338 | .noexit: |
326 | .noexit: |
339 | cmp ah,20 |
327 | cmp ah,20 |
340 | jne still |
328 | jne still |
341 | mcall 37,1 |
329 | mcall 37,1 |
342 | and eax,0xffff |
330 | and eax,0xffff |
343 | cmp eax,[HClick] |
331 | cmp eax,[HClick] |
344 | je still |
332 | je still |
345 | mov [HClick],eax |
333 | mov [HClick],eax |
346 | sub eax,25 |
334 | sub eax,25 |
347 | mul [HDoc] |
335 | mul [HDoc] |
348 | mov ebx,dword[prcinfo+46] |
336 | mov ebx,dword[prcinfo+46] |
349 | sub ebx,25 |
337 | sub ebx,25 |
350 | div ebx |
338 | div ebx |
351 | dpd eax |
339 | dpd eax |
352 | mov [top],TOP |
340 | mov [top],TOP |
353 | sub [top],ax |
341 | sub [top],ax |
354 | dps 'B' |
342 | dps 'B' |
355 | jmp red;still |
343 | jmp red;still |
356 | ;--------------------------------------------------------------------- |
344 | ;--------------------------------------------------------------------- |
357 | ;--- ---------------------------------- |
345 | ;--- ---------------------------------- |
358 | ;--------------------------------------------------------------------- |
346 | ;--------------------------------------------------------------------- |
359 | 347 | ||
360 | draw_window: |
348 | draw_window: |
361 | 349 | ||
362 | mcall 12, 1 ; äãªæ¨ï 12: á®®¡é¨âì ®¡ ®âà¨á®¢ª¥ ®ª |
350 | mcall 12, 1 ; äãªæ¨ï 12: á®®¡é¨âì ®¡ ®âà¨á®¢ª¥ ®ª |
363 | ; 1 - ç¨ ¥¬ à¨á®¢ âì |
351 | ; 1 - ç¨ ¥¬ à¨á®¢ âì |
364 | 352 | ||
365 | mcall 0, <10,WINW>, <100,WINH>, WIN_COLOR,0x805080D0, 0x005080D0 |
353 | mcall 0, <10,WINW>, <100,WINH>, WIN_COLOR,0x805080D0, 0x005080D0 |
366 | mcall 4, <8,8>, 0x10DDEEFF, title, titlesize-title |
354 | mcall 4, <8,8>, 0x10DDEEFF, title, titlesize-title |
367 | mov esi,ecx |
355 | mov esi,ecx |
368 | mcall 47,0x30000,isymImplemented,<114,8> |
356 | mcall 47,0x30000,isymImplemented,<114,8> |
369 | add edx,36 shl 16 |
357 | add edx,36 shl 16 |
370 | mcall ,,isymMax |
358 | mcall ,,isymMax |
371 | add edx,40 shl 16 |
359 | add edx,40 shl 16 |
372 | mov esi,0x104e00e7;0x10f27840 |
360 | mov esi,0x104e00e7;0x10f27840 |
373 | cmp dword[fileinfo.name],N_A |
361 | cmp dword[fileinfo.name],N_A |
374 | jne .noNA |
362 | jne .noNA |
375 | mov esi,0x10ff0000 |
363 | mov esi,0x10ff0000 |
376 | .noNA: |
364 | .noNA: |
377 | mcall 4,edx,esi,fileinfo.name,[fname_size] |
365 | mcall 4,edx,esi,fileinfo.name,[fname_size] |
378 | mov edi,prcinfo |
366 | mov edi,prcinfo |
379 | mcall 9,edi,-1 |
367 | mcall 9,edi,-1 |
380 | and [mode],not RTF_TOEOF |
368 | and [mode],not RTF_TOEOF |
381 | mov ebx,[edi+42] |
369 | mov ebx,[edi+42] |
382 | cmp ebx,[wSave] |
370 | cmp ebx,[wSave] |
383 | je .nochg |
371 | je .nochg |
384 | .chg: |
372 | .chg: |
385 | mov [wSave],ebx |
373 | mov [wSave],ebx |
386 | or [mode],RTF_TOEOF |
374 | or [mode],RTF_TOEOF |
387 | and [HDoc],0 |
375 | and [HDoc],0 |
388 | and [line_count],0 |
376 | and [line_count],0 |
389 | mov [HClick],-100 |
377 | mov [HClick],-100 |
390 | .nochg: |
378 | .nochg: |
391 | 379 | ||
392 | 380 | ||
393 | mcall 13,<5,dword[prcinfo+42]>,<21,21>,0x8000459a |
381 | mcall 13,<5,dword[prcinfo+42]>,<21,21>,0x8000459a |
394 | 382 | ||
395 | mcall 8,7*65536+39,23*65536+16,5,0x459a ;load |
383 | mcall 8,7*65536+39,23*65536+16,5,0x459a ;load |
396 | mcall 8,46*65536+57,23*65536+16,4,0x459a ;align |
384 | mcall 8,46*65536+57,23*65536+16,4,0x459a ;align |
397 | mcall 8,103*65536+44,23*65536+16,3,0x459a ;color |
385 | mcall 8,103*65536+44,23*65536+16,3,0x459a ;color |
398 | mcall 8,147*65536+37,23*65536+16,2,0x459a ;help |
386 | mcall 8,147*65536+37,23*65536+16,2,0x459a ;help |
399 | 387 | ||
400 | mcall 8,184*65536+44,23*65536+16,7,0x459a ;prev |
388 | mcall 8,184*65536+44,23*65536+16,7,0x459a ;prev |
401 | mcall 8,229*65536+46,23*65536+16,6,0x459a ;next |
389 | mcall 8,229*65536+46,23*65536+16,6,0x459a ;next |
402 | 390 | ||
403 | if RENDER eq FREE |
391 | if RENDER eq FREE |
404 | mcall 8,276*65536+44,23*65536+16,9,0x459a ;zoom+ |
392 | mcall 8,276*65536+44,23*65536+16,9,0x459a ;zoom+ |
405 | mcall 8,320*65536+44,23*65536+16,8,0x459a ;zoom- |
393 | mcall 8,320*65536+44,23*65536+16,8,0x459a ;zoom- |
406 | end if |
394 | end if |
407 | 395 | ||
408 | 396 | ||
409 | 397 | ||
410 | 398 | ||
411 | ; sub ebx,60 |
399 | ; sub ebx,60 |
412 | ; shl ebx,16 |
400 | ; shl ebx,16 |
413 | ; mov bx,12 |
401 | ; mov bx,12 |
414 | ; mov ecx,5 shl 16+12 |
402 | ; mov ecx,5 shl 16+12 |
415 | ; mov esi,0xb810e7 |
403 | ; mov esi,0xb810e7 |
416 | ; mov edx,2 |
404 | ; mov edx,2 |
417 | ; BTN_SPACE equ 14 shl 16 |
405 | ; BTN_SPACE equ 14 shl 16 |
418 | ; mcall 8 ;2 |
406 | ; mcall 8 ;2 |
419 | ; sub ebx,BTN_SPACE |
407 | ; sub ebx,BTN_SPACE |
420 | ; inc edx |
408 | ; inc edx |
421 | ; mcall 8,,,,0x459a ;3 |
409 | ; mcall 8,,,,0x459a ;3 |
422 | ; sub ebx,BTN_SPACE |
410 | ; sub ebx,BTN_SPACE |
423 | ; inc edx |
411 | ; inc edx |
424 | ; mcall ,,,,0x107a30 ;4 |
412 | ; mcall ,,,,0x107a30 ;4 |
425 | ; sub ebx,BTN_SPACE |
413 | ; sub ebx,BTN_SPACE |
426 | ; inc edx |
414 | ; inc edx |
427 | ; mcall ,,,,0xcc0000 ;5 |
415 | ; mcall ,,,,0xcc0000 ;5 |
428 | ; sub ebx,BTN_SPACE |
416 | ; sub ebx,BTN_SPACE |
429 | ; inc edx |
417 | ; inc edx |
430 | ; mcall ,,,,0x575f8c ;6 |
418 | ; mcall ,,,,0x575f8c ;6 |
431 | ; sub ebx,BTN_SPACE |
419 | ; sub ebx,BTN_SPACE |
432 | ; inc edx |
420 | ; inc edx |
433 | ; mcall ,,,,0x575f8c ;7 |
421 | ; mcall ,,,,0x575f8c ;7 |
434 | ; if RENDER eq FREE |
422 | ; if RENDER eq FREE |
435 | ; sub ebx,BTN_SPACE |
423 | ; sub ebx,BTN_SPACE |
436 | ; inc edx |
424 | ; inc edx |
437 | ; mcall ,,,,0x6a73d0 ;8 |
425 | ; mcall ,,,,0x6a73d0 ;8 |
438 | ; sub ebx,BTN_SPACE |
426 | ; sub ebx,BTN_SPACE |
439 | ; inc edx |
427 | ; inc edx |
440 | ; mcall ,,,,0xd048c8 ;9 |
428 | ; mcall ,,,,0xd048c8 ;9 |
441 | ; end if |
429 | ; end if |
442 | ;text |
430 | ;text |
443 | ; shr ecx,16 |
431 | ; shr ecx,16 |
444 | ; mov bx,cx |
432 | ; mov bx,cx |
445 | ; add ebx,3 shl 16+3 |
433 | ; add ebx,3 shl 16+3 |
446 | mcall 4,10*65536+27,0x10ddeeff,btn_text,btn_end-btn_text |
434 | mcall 4,10*65536+27,0x10ddeeff,btn_text,btn_end-btn_text |
447 | 435 | ||
448 | sub dword[prcinfo+42],LMARGIN |
436 | sub dword[prcinfo+42],LMARGIN |
449 | sub dword[prcinfo+46],CHARH |
437 | sub dword[prcinfo+46],CHARH |
450 | if GUTTER eq 1 |
438 | if GUTTER eq 1 |
451 | mov ebx,LMARGIN shl 16+20 |
439 | mov ebx,LMARGIN shl 16+20 |
452 | mov ecx,20 |
440 | mov ecx,20 |
453 | mov eax,4 |
441 | mov eax,4 |
454 | mov edx,arrow |
442 | mov edx,arrow |
455 | mov esi,1 |
443 | mov esi,1 |
456 | .loop1: |
444 | .loop1: |
457 | push ecx |
445 | push ecx |
458 | mcall ,,0xff0000 |
446 | mcall ,,0xff0000 |
459 | pop ecx |
447 | pop ecx |
460 | add ebx,50 shl 16 |
448 | add ebx,50 shl 16 |
461 | loop .loop1 |
449 | loop .loop1 |
462 | end if |
450 | end if |
463 | mov ebx,dword[prcinfo+42] |
451 | mov ebx,dword[prcinfo+42] |
464 | shl ebx,16 |
452 | shl ebx,16 |
465 | add ebx,2 shl 16+13 |
453 | add ebx,2 shl 16+13 |
466 | mov ecx,dword[prcinfo+46] |
454 | mov ecx,dword[prcinfo+46] |
467 | add ecx,40 shl 16-35 |
455 | add ecx,40 shl 16-35 |
468 | mov edx,20+1 shl 29 |
456 | mov edx,20+1 shl 29 |
469 | mcall 8 |
457 | mcall 8 |
470 | mov ecx,[HClick] |
458 | mov ecx,[HClick] |
471 | shl ecx,16 |
459 | shl ecx,16 |
472 | add ecx,6-3 shl 16 + 7 |
460 | add ecx,6-3 shl 16 + 7 |
473 | mcall 13,,,0xe26830 |
461 | mcall 13,,,0xe26830 |
474 | if MODE eq RTF |
462 | if MODE eq RTF |
475 | test [mode],RTF_OPENING |
463 | test [mode],RTF_OPENING |
476 | jne .ex |
464 | jne .ex |
477 | and [mode],not (RTF_BOTTOM);+RTF_TOEOF) |
465 | and [mode],not (RTF_BOTTOM);+RTF_TOEOF) |
478 | mov [colorptr],colortbl |
466 | mov [colorptr],colortbl |
479 | mov eax,DEFCOLOR |
467 | mov eax,DEFCOLOR |
480 | mov edi,colortbl |
468 | mov edi,colortbl |
481 | mov ecx,16 |
469 | mov ecx,16 |
482 | rep stosd |
470 | rep stosd |
483 | xor eax,eax |
471 | xor eax,eax |
484 | mov [cGroup],eax |
472 | mov [cGroup],eax |
485 | mov edi,Chp |
473 | mov edi,Chp |
486 | mov ecx,SIZE_save |
474 | mov ecx,SIZE_save |
487 | rep stosb |
475 | rep stosb |
488 | mov ax,[top] |
476 | mov ax,[top] |
489 | mov word[Free+6],10 |
477 | mov word[Free+6],10 |
490 | mov word[Free+4],ax |
478 | mov word[Free+4],ax |
491 | mov esi,I_END |
479 | mov esi,I_END |
492 | call RtfParse |
480 | call RtfParse |
493 | dpd eax |
481 | dpd eax |
494 | dps 'Lines=' |
482 | dps 'Lines=' |
495 | mov eax,[line_count] |
483 | mov eax,[line_count] |
496 | dpd eax |
484 | dpd eax |
497 | newline |
485 | newline |
498 | ; movzx eax,word[Free+4] |
486 | ; movzx eax,word[Free+4] |
499 | ; dpd eax |
487 | ; dpd eax |
500 | mov eax,dword[prcinfo+42] |
488 | mov eax,dword[prcinfo+42] |
501 | mov edx,WIN_COLOR |
489 | mov edx,WIN_COLOR |
502 | call draw_progress |
490 | call draw_progress |
503 | if BENCH eq 1 |
491 | if BENCH eq 1 |
504 | mcall 26,9 |
492 | mcall 26,9 |
505 | sub eax,[bench] |
493 | sub eax,[bench] |
506 | dps <13,10,'Bench='> |
494 | dps <13,10,'Bench='> |
507 | dpd eax |
495 | dpd eax |
508 | end if |
496 | end if |
509 | else |
497 | else |
510 | mov [char],0 |
498 | mov [char],0 |
511 | mov ebx,10 shl 16+TOP |
499 | mov ebx,10 shl 16+TOP |
512 | mov ecx,16 |
500 | mov ecx,16 |
513 | .l0: |
501 | .l0: |
514 | push ecx |
502 | push ecx |
515 | mov ecx,16 |
503 | mov ecx,16 |
516 | .l1: |
504 | .l1: |
517 | push ecx |
505 | push ecx |
518 | if RENDER eq BGI |
506 | if RENDER eq BGI |
519 | mov edx,char |
507 | mov edx,char |
520 | mov ecx,0x48000000 |
508 | mov ecx,0x48000000 |
521 | mov esi,1 |
509 | mov esi,1 |
522 | BGIfont_Outtext |
510 | BGIfont_Outtext |
523 | else |
511 | else |
524 | mcall 4,,0x10000000,char,1 |
512 | mcall 4,,0x10000000,char,1 |
525 | end if |
513 | end if |
526 | pop ecx |
514 | pop ecx |
527 | inc [char] |
515 | inc [char] |
528 | add ebx,(CHARW+3) shl 16 |
516 | add ebx,(CHARW+3) shl 16 |
529 | loop .l1 |
517 | loop .l1 |
530 | pop ecx |
518 | pop ecx |
531 | add ebx,CHARH+2 |
519 | add ebx,CHARH+2 |
532 | and ebx,0x0000ffff |
520 | and ebx,0x0000ffff |
533 | add ebx,10 shl 16 |
521 | add ebx,10 shl 16 |
534 | loop .l0 |
522 | loop .l0 |
535 | end if |
523 | end if |
536 | .ex: |
524 | .ex: |
537 | mcall 12, 2 ; äãªæ¨ï 12: á®®¡é¨âì ®¡ ®âà¨á®¢ª¥ ®ª |
525 | mcall 12, 2 ; äãªæ¨ï 12: á®®¡é¨âì ®¡ ®âà¨á®¢ª¥ ®ª |
538 | ; 2, § ª®ç¨«¨ à¨á®¢ âì |
526 | ; 2, § ª®ç¨«¨ à¨á®¢ âì |
539 | ret ; ¢ë室¨¬ ¨§ ¯à®æ¥¤ãàë |
527 | ret ; ¢ë室¨¬ ¨§ ¯à®æ¥¤ãàë |
540 | 528 | ||
541 | if GUTTER eq 1 |
529 | if GUTTER eq 1 |
542 | arrow db 0x19 |
530 | arrow db 0x19 |
543 | end if |
531 | end if |
544 | ;--------------------------------------------------------------------- |
532 | ;--------------------------------------------------------------------- |
545 | ;--- ---------------------------------------------- |
533 | ;--- ---------------------------------------------- |
546 | ;--------------------------------------------------------------------- |
534 | ;--------------------------------------------------------------------- |
547 | 535 | ||
548 | ; ¨â¥àä¥©á ¯à®£à ¬¬ë ¬®£®ï§ëçë© |
536 | ; ¨â¥àä¥©á ¯à®£à ¬¬ë ¬®£®ï§ëçë© |
549 | ; ë ¬®¦¥â¥ § ¤ âì ï§ëª ¢ MACROS.INC (lang fix ï§ëª) |
537 | ; ë ¬®¦¥â¥ § ¤ âì ï§ëª ¢ MACROS.INC (lang fix ï§ëª) |
550 | 538 | ||
551 | title: |
539 | title: |
552 | db 'RTF Reader v1. ( ):' |
540 | db 'RTF Reader v1. ( ):' |
553 | titlesize: |
541 | titlesize: |
554 | btn_text: |
542 | btn_text: |
555 | db 'Load Aligment Color Help < >' |
543 | db 'Load Aligment Color Help < >' |
556 | if RENDER eq FREE |
544 | if RENDER eq FREE |
557 | db ' Zoom+ Zoom- ' |
545 | db ' Zoom+ Zoom- ' |
558 | end if |
546 | end if |
559 | btn_end: |
547 | btn_end: |
560 | ;--------------------------------------------------------------------- |
548 | ;--------------------------------------------------------------------- |
561 | OpenDialog_data: |
549 | OpenDialog_data: |
562 | .type dd 0 |
550 | .type dd 0 |
563 | .procinfo dd procinfo ;+4 |
551 | .procinfo dd procinfo ;+4 |
564 | .com_area_name dd communication_area_name ;+8 |
552 | .com_area_name dd communication_area_name ;+8 |
565 | .com_area dd 0 ;+12 |
553 | .com_area dd 0 ;+12 |
566 | .opendir_pach dd temp_dir_pach ;+16 |
554 | .opendir_pach dd temp_dir_pach ;+16 |
567 | .dir_default_pach dd communication_area_default_pach ;+20 |
555 | .dir_default_pach dd communication_area_default_pach ;+20 |
568 | .start_path dd open_dialog_path ;+24 |
556 | .start_path dd open_dialog_path ;+24 |
569 | .draw_window dd draw_window ;+28 |
557 | .draw_window dd draw_window ;+28 |
570 | .status dd 0 ;+32 |
558 | .status dd 0 ;+32 |
571 | .openfile_pach dd fname_buf ;+36 |
559 | .openfile_pach dd fname_buf ;+36 |
- | 560 | .filename_area dd 0 ;+40 |
|
- | 561 | .filter_area dd Filter |
|
572 | 562 | ||
573 | communication_area_name: |
563 | communication_area_name: |
574 | db 'FFFFFFFF_open_dialog',0 |
564 | db 'FFFFFFFF_open_dialog',0 |
575 | open_dialog_path: |
565 | open_dialog_path: |
576 | db '/sys/File Managers/opendial',0 |
566 | db '/sys/File Managers/opendial',0 |
577 | communication_area_default_pach: |
567 | communication_area_default_pach: |
578 | db '/rd/1',0 |
568 | db '/rd/1',0 |
579 | 569 | ||
580 | Filter: |
570 | Filter: |
581 | dd Filter.end - Filter |
571 | dd Filter.end - Filter |
- | 572 | .1: |
|
582 | db 'RTF',0 |
573 | db 'RTF',0 |
583 | .end: |
574 | .end: |
584 | db 0 |
575 | db 0 |
585 | ;--------------------------------------------------------------------- |
576 | ;--------------------------------------------------------------------- |
586 | attrinfo: |
577 | attrinfo: |
587 | dd 5 |
578 | dd 5 |
588 | dd 0 |
579 | dd 0 |
589 | dd 0 |
580 | dd 0 |
590 | dd 0 |
581 | dd 0 |
591 | dd fileattr |
582 | dd fileattr |
592 | db 0 |
583 | db 0 |
593 | dd fileinfo.name |
584 | dd fileinfo.name |
594 | 585 | ||
595 | fileinfo: |
586 | fileinfo: |
596 | dd 0 |
587 | dd 0 |
597 | .block: |
588 | .block: |
598 | dd 0 |
589 | dd 0 |
599 | dd 0 |
590 | dd 0 |
600 | .size dd 1 |
591 | .size dd 1 |
601 | dd I_END |
592 | dd I_END |
602 | .name: |
593 | .name: |
603 | ; db '//' |
594 | ; db '//' |
604 | ; db ' /HD/1/RTF/texts/FASM.TXT',0 |
595 | ; db ' /HD/1/RTF/texts/FASM.TXT',0 |
605 | ; db '/HD/1/RTF/TEST2.RTF',0 |
596 | ; db '/HD/1/RTF/TEST2.RTF',0 |
606 | ; db '/HD/1/RTF/texts/index_ru.RTF',0 |
597 | ; db '/HD/1/RTF/texts/index_ru.RTF',0 |
607 | ; db '/HD/1/RTF/texts/stas.RTF',0 |
598 | ; db '/HD/1/RTF/texts/stas.RTF',0 |
608 | ; db '/HD/1/RTF/texts/zed.RTF',0 |
599 | ; db '/HD/1/RTF/texts/zed.RTF',0 |
609 | ; db '/HD/1/RTF/PRACT.RTF',0 |
600 | ; db '/HD/1/RTF/PRACT.RTF',0 |
610 | ; db '/HD/1/RTF/SETUP2.RTF',0 |
601 | ; db '/HD/1/RTF/SETUP2.RTF',0 |
611 | ; db '/HD/1/RTF/texts/TC_RU.RTF',0 |
602 | ; db '/HD/1/RTF/texts/TC_RU.RTF',0 |
612 | ; db '/HD/1/RTF/texts/WORD.RTF',0 |
603 | ; db '/HD/1/RTF/texts/WORD.RTF',0 |
613 | ; db '/HD/1/RTF/texts/WORD97.RTF',0 |
604 | ; db '/HD/1/RTF/texts/WORD97.RTF',0 |
614 | ; db '/HD/1/RTF/texts/MASTAPP.RTF',0 |
605 | ; db '/HD/1/RTF/texts/MASTAPP.RTF',0 |
615 | ; db '/HD/1/RTF/texts/1c_tor77.RTF',0 |
606 | ; db '/HD/1/RTF/texts/1c_tor77.RTF',0 |
616 | ; db '/HD/1/RTF/texts/RELATION.RTF',0 |
607 | ; db '/HD/1/RTF/texts/RELATION.RTF',0 |
617 | ; db '/HD/1/RTF/texts/PLANETS.RTF',0 |
608 | ; db '/HD/1/RTF/texts/PLANETS.RTF',0 |
618 | ; db '/HD/1/RTF/texts/LOTRRUS.RTF',0 |
609 | ; db '/HD/1/RTF/texts/LOTRRUS.RTF',0 |
619 | ; db '/HD/1/RTF/texts/RULEBOOK.RTF',0 |
610 | ; db '/HD/1/RTF/texts/RULEBOOK.RTF',0 |
620 | ; db '/HD/1/RTF/texts/RULEBK2.RTF',0 |
611 | ; db '/HD/1/RTF/texts/RULEBK2.RTF',0 |
621 | ; db '/HD/1/RTF/texts/GLEB.RTF',0 |
612 | ; db '/HD/1/RTF/texts/GLEB.RTF',0 |
622 | ; db '/HD/1/RTF/texts/DWG13_14.RTF',0 |
613 | ; db '/HD/1/RTF/texts/DWG13_14.RTF',0 |
623 | ; db '/HD/1/RTF/texts/LK.RTF',0 |
614 | ; db '/HD/1/RTF/texts/LK.RTF',0 |
624 | 615 | ||
625 | ; db '/HD/1/RTF/texts/JUSTIFY.RTF',0 |
616 | ; db '/HD/1/RTF/texts/JUSTIFY.RTF',0 |
626 | rb 256-($-.name) |
617 | rb 256-($-.name) |
627 | ;--------------------------------------------------------------------- |
618 | ;--------------------------------------------------------------------- |
628 | ;blind db ? |
619 | ;blind db ? |
629 | if RENDER eq PIX |
620 | if RENDER eq PIX |
630 | ; rd 2 |
621 | ; rd 2 |
631 | Free rd 9 |
622 | Free rd 9 |
632 | else |
623 | else |
633 | if RENDER eq BGI |
624 | if RENDER eq BGI |
634 | FreeFontscale dd 0.07 |
625 | FreeFontscale dd 0.07 |
635 | else |
626 | else |
636 | Zoomscale dd 1.15 |
627 | Zoomscale dd 1.15 |
637 | FreeFontscale dd 0.04 |
628 | FreeFontscale dd 0.04 |
638 | end if |
629 | end if |
639 | Free BGIfree FONT_NAME,0,0,1.0,1.0,char,1,0x44000000,0 |
630 | Free BGIfree FONT_NAME,0,0,1.0,1.0,char,1,0x44000000,0 |
640 | end if |
631 | end if |
641 | I_END0: |
632 | I_END0: |
642 | fname_buf: |
633 | fname_buf: |
643 | rb 1024+16 |
634 | rb 1024+16 |
644 | fileattr rd 40/4 |
635 | fileattr rd 40/4 |
645 | if BENCH eq 1 |
636 | if BENCH eq 1 |
646 | bench dd ? |
637 | bench dd ? |
647 | end if |
638 | end if |
648 | tail dd ? |
639 | tail dd ? |
649 | cGroup dd ? |
640 | cGroup dd ? |
650 | Chp: |
641 | Chp: |
651 | CHP |
642 | CHP |
652 | Pap: |
643 | Pap: |
653 | PAP |
644 | PAP |
654 | Sep: |
645 | Sep: |
655 | SEP |
646 | SEP |
656 | Dop: |
647 | Dop: |
657 | DOP |
648 | DOP |
658 | rds db ? |
649 | rds db ? |
659 | ris db ? |
650 | ris db ? |
660 | cbBin dd ? |
651 | cbBin dd ? |
661 | lParam dd ? |
652 | lParam dd ? |
662 | fSkipDestIfUnk db ? |
653 | fSkipDestIfUnk db ? |
663 | mode dd ? |
654 | mode dd ? |
664 | curheight dw ? |
655 | curheight dw ? |
665 | maxheight dw ? |
656 | maxheight dw ? |
666 | RetroBlock dd ? |
657 | RetroBlock dd ? |
667 | RetroSave: |
658 | RetroSave: |
668 | SAVE |
659 | SAVE |
669 | prcinfo rb 1024 |
660 | prcinfo rb 1024 |
670 | RetroPtr dd ? |
661 | RetroPtr dd ? |
671 | colorptr dd ? |
662 | colorptr dd ? |
672 | colortbl rd 16 |
663 | colortbl rd 16 |
673 | ct_end: |
664 | ct_end: |
674 | fname_size dd ? |
665 | fname_size dd ? |
675 | max_block dd ? |
666 | max_block dd ? |
676 | cur_block dd ? |
667 | cur_block dd ? |
677 | HDoc dd ? |
668 | HDoc dd ? |
678 | HClick dd ? |
669 | HClick dd ? |
679 | top dw ? |
670 | top dw ? |
680 | line_count dd ? |
671 | line_count dd ? |
681 | par_count dd ? |
672 | par_count dd ? |
682 | char db ? |
673 | char db ? |
683 | pitch db ? |
674 | pitch db ? |
684 | wSave dd ? |
675 | wSave dd ? |
685 | RetroXY dd ? |
676 | RetroXY dd ? |
686 | RetroGroup dd ? |
677 | RetroGroup dd ? |
687 | 678 | ||
688 | save_stack: |
679 | save_stack: |
689 | rb RTFSTACKSIZE |
680 | rb RTFSTACKSIZE |
690 | save_limit: |
681 | save_limit: |
691 | rb BGIFONTSIZE |
682 | rb BGIFONTSIZE |
692 | 683 | ||
693 | listptr dd ? |
684 | listptr dd ? |
694 | szKeyword rb 31 |
685 | szKeyword rb 31 |
695 | szParameter rb 21 |
686 | szParameter rb 21 |
696 | block_end dd ? |
687 | block_end dd ? |
697 | I_END: ; ¬¥âª ª®æ ¯à®£à ¬¬ë |
688 | I_END: ; ¬¥âª ª®æ ¯à®£à ¬¬ë |
698 | 689 | ||
699 | procinfo process_information |
690 | procinfo process_information |
700 | rb RTFSIZE |
691 | rb RTFSIZE |
701 | esp1: |
692 | esp1: |
702 | rb ESPSIZE |
693 | rb ESPSIZE |
703 | sys_mem: |
694 | sys_mem: |
704 | rb ESPSIZE |
695 | rb ESPSIZE |
705 | ;--------------------------------------------------------------------- |
696 | ;--------------------------------------------------------------------- |
706 | temp_dir_pach: |
697 | temp_dir_pach: |
707 | rb 4096 |
698 | rb 4096 |
708 | ;--------------------------------------------------------------------- |
699 | ;--------------------------------------------------------------------- |
709 | esp_end:>13,10,'Bench='>21,21>5,dword[prcinfo+42]>114,8>8,8>100,WINH>10,WINW>>> |
700 | esp_end:>13,10,'Bench='>21,21>5,dword[prcinfo+42]>114,8>8,8>100,WINH>10,WINW>>> |