Rev 2087 | Rev 4817 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2087 | Rev 2088 | ||
---|---|---|---|
1 | use32 |
1 | use32 |
2 | org 0x0 |
2 | org 0x0 |
3 | db 'MENUET01' |
3 | db 'MENUET01' |
4 | dd 0x01,start,i_end,e_end,e_end,0,0 |
4 | dd 0x01,start,i_end,e_end,e_end,0,0 |
- | 5 | ||
- | 6 | include '../../../proc32.inc' |
|
5 | 7 | include '../../../macros.inc' |
|
6 | 8 | ||
7 | BUTTON_SIDE equ 16 ; button are squares |
9 | BUTTON_SIDE equ 16 ; button are squares |
8 | BUTTON_SPACE equ 19 ; space between cols and rows |
10 | BUTTON_SPACE equ 19 ; space between cols and rows |
- | 11 | BUTTON_ID_SHIFT equ 2 ; button_id = character + BUTTON_ID_SHIFT |
|
- | 12 | TABLE_BEGIN_X equ 2 |
|
- | 13 | TABLE_BEGIN_Y equ 2 |
|
- | 14 | ||
- | 15 | FOCUS_SQUARE_COLOR equ 0x000080FF |
|
9 | - | ||
10 | - | ||
- | 16 | PAGE_SWITCHER_BLINK_COLOR equ 0x00808080 |
|
11 | start: |
17 | |
12 | call get_skin_height |
18 | |
13 | - | ||
14 | still: |
- | |
15 | mov eax, 10 |
19 | start: |
16 | int 0x40 |
- | |
17 | 20 | still: |
|
18 | dec eax |
21 | mcall 10 |
19 | jnz @f |
- | |
20 | call redraw |
22 | dec eax |
21 | @@: dec eax |
- | |
22 | jnz @f |
- | |
23 | call key |
- | |
24 | @@: dec eax |
- | |
25 | jnz @f |
- | |
26 | call button |
- | |
27 | @@: jmp still |
- | |
28 | 23 | jz redraw |
|
29 | 24 | dec eax |
|
30 | get_skin_height: |
25 | jz key |
- | 26 | ||
- | 27 | button: |
|
- | 28 | mcall 17 |
|
- | 29 | shr eax, 8 |
|
- | 30 | ||
- | 31 | cmp eax, 1 |
|
- | 32 | je quit |
|
- | 33 | cmp ax, 0xFFAA ; page switcher |
|
31 | 34 | je .switch_page ; any button with a character |
|
- | 35 | .change_focus: |
|
- | 36 | mov bl, [symbol_focused] |
|
- | 37 | mov [symbol_unfocused], bl |
|
- | 38 | sub ax, BUTTON_ID_SHIFT ; get the corresponding character |
|
- | 39 | mov [symbol_focused], al |
|
- | 40 | stdcall draw_table, 0 |
|
- | 41 | call draw_codes |
|
- | 42 | jmp still |
|
- | 43 | .switch_page: |
|
- | 44 | movzx bx, [symbol_start] |
|
- | 45 | add bx, BUTTON_ID_SHIFT |
|
32 | mov eax, 48 |
46 | mov cx, 128 ; half of page |
- | 47 | mov edx, 0x80000000 |
|
- | 48 | mov dx, bx |
|
- | 49 | @@: mcall 8 |
|
- | 50 | inc edx |
|
- | 51 | dec cx |
|
- | 52 | jnz @b |
|
- | 53 | ||
- | 54 | @@: add [symbol_start], 128 ; change page |
|
- | 55 | add [symbol_focused], 128 |
|
33 | mov ebx, 4 |
56 | stdcall draw_table, 1 ; 1 means redraw the whole table |
34 | int 0x40 |
57 | call draw_codes |
35 | 58 | stdcall draw_page_switcher, 1 ; 1 means dark color, for blinking |
|
- | 59 | mcall 5, 10 |
|
36 | mov [skin_height], eax |
60 | stdcall draw_page_switcher, 0 ; 0 means usual light color |
37 | ret |
- | |
38 | 61 | jmp still |
|
39 | 62 | ||
40 | redraw: |
63 | redraw: |
41 | mov eax, 12 |
64 | mcall 9, proc_info, -1 |
- | 65 | mcall 48, 3, sys_colors, 40 |
|
42 | mov ebx, 1 |
66 | |
- | 67 | mcall 12, 1 |
|
43 | int 0x40 |
68 | |
- | 69 | mcall 48, 4 ; get skin height |
|
44 | 70 | mov ecx, 300*0x10000+184 |
|
45 | mov eax, 0 |
71 | add ecx, eax |
46 | mov ebx, 300*0x10000+317 |
72 | mov edx, 0x34000000 |
47 | mov ecx, 300*0x10000+184 |
73 | or edx, [sys_colors.work] |
48 | add ecx, [skin_height] |
- | |
49 | mov edx, 0x33F0F0F0 ; skinned, resizeable |
- | |
50 | mov esi, 0x80808080 ; title color |
- | |
51 | mov edi, window_title |
- | |
52 | int 0x40 |
- | |
- | 74 | mov esi, 0x80000000 |
|
- | 75 | or esi, [sys_colors.grab_text] |
|
- | 76 | mcall 0, <300,315>, , , , window_title |
|
53 | 77 | test [proc_info.wnd_state], 0x04 |
|
54 | call draw_table |
78 | jnz @f |
55 | call draw_codes |
79 | |
56 | call draw_page_switcher |
80 | stdcall draw_table, 1 |
57 | - | ||
58 | mov eax, 12 |
- | |
59 | mov ebx, 2 |
- | |
60 | int 0x40 |
81 | call draw_codes |
61 | ret |
82 | stdcall draw_page_switcher, 0 |
62 | - | ||
63 | - | ||
64 | key: |
- | |
65 | mov eax, 2 |
- | |
66 | int 0x40 |
- | |
67 | ret |
83 | |
68 | - | ||
69 | button: |
84 | @@: |
70 | mov eax, 17 |
85 | mcall 12, 2 |
71 | int 0x40 |
- | |
72 | cmp eax, 1 |
86 | jmp still |
73 | jnz @f |
87 | |
74 | ret |
88 | key: |
75 | @@: shr eax, 8 |
89 | mcall 2 |
76 | cmp eax, 1 |
- | |
77 | jz quit |
90 | cmp ah, 0x09 ; TAB key |
78 | cmp ax, 0xFFAA |
- | |
79 | jnz .change_focus |
- | |
80 | xor bx, bx |
91 | je button.switch_page |
81 | mov bl, [symbol_start] |
92 | |
- | 93 | cmp ah, 0xB0 ; left |
|
- | 94 | jne @f |
|
- | 95 | mov bl, [symbol_focused] |
|
- | 96 | mov [symbol_unfocused], bl |
|
- | 97 | dec bl |
|
82 | add bx, 2 |
98 | and bl, 0x0f |
- | 99 | and [symbol_focused], 0xf0 |
|
83 | mov cx, bx |
100 | or [symbol_focused], bl |
84 | add cx, 128 |
101 | stdcall draw_table, 0 |
85 | @@: mov eax, 8 |
- | |
86 | mov edx, 0x80000000 |
- | |
87 | add dx, bx |
- | |
88 | int 0x40 |
- | |
89 | cmp bx, cx |
102 | call draw_codes |
90 | jz @f |
- | |
91 | inc bx |
- | |
92 | jmp @b |
- | |
93 | 103 | jmp still |
|
- | 104 | ||
94 | @@: add [symbol_start], 128 ; change page |
105 | @@: cmp ah, 0xB1 ; down |
95 | add [symbol_focused], 128 |
106 | jne @f |
96 | call draw_table |
107 | mov bl, [symbol_focused] |
97 | call draw_codes |
108 | mov [symbol_unfocused], bl |
98 | mov [redraw_flag], 1 ; for page_switcher this means visual blink (color changing) |
109 | add bl, 16 |
99 | call draw_page_switcher |
110 | and bl, 0x70 |
100 | mov eax, 5 |
111 | and [symbol_focused], 0x8f |
101 | mov ebx, 10 |
112 | or [symbol_focused], bl |
- | 113 | stdcall draw_table, 0 |
|
- | 114 | call draw_codes |
|
- | 115 | jmp still |
|
- | 116 | ||
- | 117 | @@: cmp ah, 0xB2 ; up |
|
- | 118 | jne @f |
|
- | 119 | mov bl, [symbol_focused] |
|
- | 120 | mov [symbol_unfocused], bl |
|
- | 121 | sub bl, 16 |
|
- | 122 | and bl, 0x70 |
|
102 | int 0x40 |
123 | and [symbol_focused], 0x8f |
- | 124 | or [symbol_focused], bl |
|
- | 125 | stdcall draw_table, 0 |
|
103 | mov [redraw_flag], 0 |
126 | call draw_codes |
- | 127 | jmp still |
|
- | 128 | ||
- | 129 | @@: cmp ah, 0xB3 ; righ |
|
- | 130 | jne @f |
|
104 | call draw_page_switcher |
131 | mov bl, [symbol_focused] |
105 | ret |
132 | mov [symbol_unfocused], bl |
106 | 133 | inc bl |
|
107 | .change_focus: |
134 | and bl, 0x0f |
108 | mov bl, [symbol_focused] |
135 | and [symbol_focused], 0xf0 |
109 | mov [symbol_unfocused], bl |
136 | or [symbol_focused], bl |
110 | shl eax, 8 |
137 | stdcall draw_table, 0 |
111 | sub ah, 2 |
138 | call draw_codes |
112 | mov [symbol_focused], ah |
139 | jmp still |
113 | mov [redraw_flag], 1 ; for table this means redraw only focused and unfocused buttons |
140 | jne @f |
114 | call draw_table |
141 | |
115 | call draw_codes |
142 | @@: |
116 | mov [redraw_flag], 0 |
143 | jmp still |
117 | ret |
144 | |
118 | 145 | ||
119 | 146 | ||
120 | draw_table: |
147 | proc draw_table _full_redraw |
121 | 148 | ||
122 | mov al, [symbol_start] |
149 | mov al, [symbol_start] |
123 | mov [symbol_current], al |
150 | mov [symbol_current], al |
124 | 151 | ||
125 | .next_button: |
152 | .next_button: |
126 | push [button_x] |
- | |
127 | pop [button_cur_x] |
- | |
128 | push [button_y] |
- | |
129 | pop [button_cur_y] |
- | |
- | 153 | ||
130 | 154 | xor edi, edi ; character focus flag |
|
131 | mov al, [symbol_current] |
- | |
132 | mov [button_cur_id], al |
- | |
133 | - | ||
134 | mov [is_active], 0 |
- | |
135 | 155 | mov al, [symbol_current] |
|
136 | mov al, [symbol_focused] |
- | |
137 | cmp [symbol_current], al |
156 | cmp al, [symbol_focused] |
138 | jnz @f |
157 | jne @f |
139 | mov byte[is_active], 1 |
158 | inc edi |
140 | @@: cmp [redraw_flag], 1 |
159 | @@: cmp [_full_redraw], 1 |
141 | jnz .draw ; if redraw_flag is zero, we should redraw the whole table |
160 | je .draw |
142 | mov al, [symbol_focused] |
- | |
143 | cmp [symbol_current], al |
161 | cmp al, [symbol_focused] |
144 | jz .draw |
162 | je .draw |
145 | mov al, [symbol_unfocused] |
- | |
146 | cmp [symbol_current], al |
163 | cmp al, [symbol_unfocused] ; previously focused, should redraw to clear focus |
147 | jz .draw |
164 | je .draw |
148 | jmp .skip ; skip button if it isn't (un)focused |
165 | jmp .skip ; skip button if it isn't (un)focused |
149 | 166 | ||
150 | .draw: |
167 | .draw: |
151 | call draw_button |
168 | call draw_button |
152 | .skip: |
169 | .skip: |
153 | mov al, [symbol_start] |
170 | mov bl, [symbol_start] |
154 | add al, 127 ; end of current page |
171 | add bl, 127 ; end of current page |
155 | cmp [symbol_current], al ; the last on page? |
172 | cmp [symbol_current], bl ; the last on page? |
156 | jb @f |
173 | jne @f |
157 | mov [button_x], 2 |
174 | mov [button_x], TABLE_BEGIN_X |
158 | mov [button_y], 2 |
175 | mov [button_y], TABLE_BEGIN_Y |
159 | ret |
176 | ret |
160 | @@: inc [symbol_current] |
177 | @@: inc [symbol_current] |
161 | add [button_x], BUTTON_SPACE |
178 | add [button_x], BUTTON_SPACE |
162 | cmp [button_x], 306 ; the last in row? |
179 | cmp [button_x], 306 ; the last in row? |
163 | jae @f |
- | |
164 | jmp .next_button |
180 | jne .next_button |
165 | @@: add [button_y], BUTTON_SPACE ; next row |
181 | add [button_y], BUTTON_SPACE ; next row |
166 | mov [button_x], 2 |
182 | mov [button_x], TABLE_BEGIN_X |
167 | jmp .next_button |
183 | jmp .next_button |
168 | - | ||
169 | - | ||
170 | ret |
184 | ret |
- | 185 | endp |
|
171 | 186 | ||
172 | - | ||
173 | draw_button: |
187 | |
174 | mov eax, 8 |
188 | proc draw_button |
175 | mov ebx, [button_cur_x] |
189 | mov ebx, [button_x] |
176 | shl ebx, 16 |
190 | shl ebx, 16 |
177 | add ebx, BUTTON_SIDE |
191 | mov bx, BUTTON_SIDE |
178 | mov ecx, [button_cur_y] |
192 | mov ecx, [button_y] |
179 | shl ecx, 16 |
193 | shl ecx, 16 |
180 | add ecx, BUTTON_SIDE |
194 | mov cx, BUTTON_SIDE |
181 | mov edx, 0x80000000 |
195 | mov edx, 0x80000000 |
182 | add dl, [button_cur_id] |
196 | mov dl, [symbol_current] |
183 | add edx, 2 |
197 | add edx, BUTTON_ID_SHIFT |
184 | mov eax, 8 |
- | |
185 | int 0x40 |
198 | mcall 8, , , |
186 | - | ||
187 | or edx, 0x20000000 |
- | |
188 | add edx, 0x80000000 |
- | |
189 | mov esi, 0x00F0F0F0 ; button color |
- | |
190 | int 0x40 |
- | |
191 | - | ||
192 | cmp byte[is_active], 1 |
- | |
193 | jz @f |
- | |
194 | .symbol: |
- | |
195 | mov eax, 4 |
- | |
196 | mov ebx, [button_cur_x] |
- | |
197 | add ebx, 6 |
- | |
198 | shl ebx, 16 |
- | |
199 | add ebx, [button_cur_y] |
- | |
200 | add ebx, 5 |
199 | and edx, 0x7FFFFFFF |
201 | xor ecx, ecx |
- | |
202 | mov edx, symbol_current |
- | |
203 | mov esi, 1 |
- | |
204 | int 0x40 |
- | |
205 | ret |
- | |
206 | @@: ; draw a blue square (selection), 8 lines |
- | |
207 | mov eax, 38 |
- | |
208 | mov ebx, [button_cur_x] |
- | |
209 | shl ebx, 16 |
- | |
210 | add ebx, [button_cur_x] |
- | |
211 | add ebx, BUTTON_SIDE-1 |
- | |
212 | mov ecx, [button_cur_y] |
- | |
213 | shl ecx, 16 |
- | |
214 | add ecx, [button_cur_y] |
- | |
215 | mov edx, 0x000080FF ; square color |
- | |
216 | int 0x40 |
- | |
217 | - | ||
218 | mov ebx, [button_cur_x] |
- | |
219 | shl ebx, 16 |
- | |
220 | add ebx, [button_cur_x] |
- | |
221 | mov ecx, [button_cur_y] |
- | |
222 | shl ecx, 16 |
- | |
223 | add ecx, [button_cur_y] |
- | |
224 | add ecx, BUTTON_SIDE-1 |
200 | or edx, 0x20000000 |
225 | int 0x40 |
- | |
226 | - | ||
227 | mov ebx, [button_cur_x] |
201 | mcall , , , , [sys_colors.work_button] |
228 | inc ebx |
- | |
229 | shl ebx, 16 |
202 | |
230 | add ebx, [button_cur_x] |
203 | test edi, edi ; is focused? |
231 | inc ebx |
- | |
232 | add ebx, BUTTON_SIDE-1 |
- | |
233 | mov ecx, [button_cur_y] |
204 | jz .symbol ; draw only character, not selection square |
234 | inc ecx |
- | |
235 | shl ecx, 16 |
- | |
236 | add ecx, [button_cur_y] |
- | |
237 | inc ecx |
205 | .focus_frame: ; draw a blue square (selection), 8 segments |
238 | int 0x40 |
206 | mov esi, [button_x] |
239 | - | ||
240 | mov ebx, [button_cur_x] |
207 | mov edi, [button_y] |
241 | inc ebx |
208 | |
242 | shl ebx, 16 |
209 | mov bx, si |
243 | add ebx, [button_cur_x] |
210 | shl ebx, 16 |
- | 211 | mov bx, si |
|
- | 212 | add bx, BUTTON_SIDE |
|
244 | inc ebx |
213 | mov cx, di |
- | 214 | shl ecx, 16 |
|
- | 215 | mov cx, di |
|
245 | mov ecx, [button_cur_y] |
216 | mcall 38, , , FOCUS_SQUARE_COLOR |
246 | inc ecx |
217 | add ecx, 0x00010001 |
247 | shl ecx, 16 |
218 | mcall |
248 | add ecx, [button_cur_y] |
219 | add ecx, (BUTTON_SIDE-2)*0x10000+(BUTTON_SIDE-2) |
249 | inc ecx |
- | |
250 | add ecx, BUTTON_SIDE-2 |
220 | mcall |
251 | int 0x40 |
- | |
252 | - | ||
253 | mov ebx, [button_cur_x] |
221 | add ecx, 0x00010001 |
254 | add ebx, BUTTON_SIDE-1 |
222 | mcall |
255 | shl ebx, 16 |
223 | |
- | 224 | mov bx, si |
|
- | 225 | shl ebx, 16 |
|
- | 226 | mov bx, si |
|
256 | add ebx, [button_cur_x] |
227 | mov cx, di |
- | 228 | shl ecx, 16 |
|
- | 229 | mov cx, di |
|
- | 230 | add ecx, 2*0x10000+(BUTTON_SIDE-2) |
|
257 | add ebx, BUTTON_SIDE-1 |
231 | mcall 38, , , |
258 | mov ecx, [button_cur_y] |
232 | add ebx, 0x00010001 |
259 | inc ecx |
- | |
260 | shl ecx, 16 |
233 | mcall |
261 | add ecx, [button_cur_y] |
- | |
262 | add ecx, BUTTON_SIDE-1 |
- | |
263 | int 0x40 |
- | |
264 | - | ||
265 | mov ebx, [button_cur_x] |
- | |
266 | inc ebx |
- | |
267 | shl ebx, 16 |
- | |
268 | add ebx, [button_cur_x] |
- | |
269 | add ebx, BUTTON_SIDE-2 |
- | |
270 | mov ecx, [button_cur_y] |
- | |
271 | add ecx, BUTTON_SIDE-1 |
234 | add ebx, (BUTTON_SIDE-2)*0x10000+(BUTTON_SIDE-2) |
272 | shl ecx, 16 |
- | |
273 | add ecx, [button_cur_y] |
235 | mcall |
274 | add ecx, BUTTON_SIDE-1 |
- | |
275 | int 0x40 |
- | |
276 | - | ||
277 | mov ebx, [button_cur_x] |
- | |
278 | add ebx, BUTTON_SIDE |
- | |
279 | shl ebx, 16 |
- | |
280 | add ebx, [button_cur_x] |
- | |
281 | add ebx, BUTTON_SIDE |
- | |
282 | mov ecx, [button_cur_y] |
- | |
283 | shl ecx, 16 |
236 | add ebx, 0x00010001 |
284 | add ecx, [button_cur_y] |
237 | mcall |
285 | add ecx, BUTTON_SIDE-1 |
- | |
286 | int 0x40 |
- | |
287 | - | ||
288 | mov ebx, [button_cur_x] |
238 | |
289 | shl ebx, 16 |
239 | .symbol: |
290 | add ebx, [button_cur_x] |
- | |
291 | add ebx, BUTTON_SIDE |
- | |
- | 240 | mov ebx, [button_x] |
|
292 | mov ecx, [button_cur_y] |
241 | add ebx, 6 |
293 | add ecx, BUTTON_SIDE |
242 | shl ebx, 16 |
294 | shl ecx, 16 |
- | |
295 | add ecx, [button_cur_y] |
243 | add ebx, [button_y] |
296 | add ecx, BUTTON_SIDE |
- | |
297 | int 0x40 |
244 | add ebx, 5 |
298 | 245 | mcall 4, , [sys_colors.work_button_text], symbol_current, 1 |
|
299 | jmp .symbol |
246 | |
300 | 247 | ret |
|
301 | - | ||
302 | draw_page_switcher: |
- | |
303 | - | ||
304 | mov eax, 8 |
248 | endp |
305 | mov edx, 0x8000FFAA |
- | |
306 | int 0x40 |
- | |
307 | - | ||
308 | mov esi, 0x00F0F0F0 |
- | |
309 | cmp [redraw_flag], 1 |
- | |
310 | jnz @f |
249 | |
- | 250 | ||
311 | mov esi, 0x00808080 |
251 | proc draw_page_switcher _blinking |
- | 252 | ||
312 | @@: mov eax, 8 |
253 | mcall 8, , , 0x8000FFAA |
- | 254 | ||
- | 255 | mov esi, [sys_colors.work_button] |
|
313 | mov ebx, 2*0x10000+60 |
256 | cmp [_blinking], 1 ; blinking? |
- | 257 | jne @f |
|
314 | mov ecx, 157*0x10000+19 |
- | |
315 | mov edx, 0x2000FFAA |
- | |
316 | int 0x40 |
- | |
317 | - | ||
318 | cmp [symbol_start], 0 |
- | |
319 | jnz @f |
- | |
320 | mov eax, 4 |
- | |
321 | mov ebx, 11*0x10000+164 |
- | |
322 | mov ecx, 0x80000000 |
- | |
323 | mov edx, string_000_127 |
258 | mov esi, PAGE_SWITCHER_BLINK_COLOR |
324 | int 0x40 |
- | |
325 | ret |
- | |
326 | - | ||
327 | @@: mov eax, 4 |
- | |
328 | mov ebx, 11*0x10000+164 |
- | |
329 | mov ecx, 0x80000000 |
- | |
330 | mov edx, string_128_255 |
259 | @@: mcall , <2,60>, <157,19>, 0x2000FFAA |
331 | int 0x40 |
260 | |
332 | ret |
- | |
333 | - | ||
334 | 261 | mov ecx, 0x80000000 |
|
335 | draw_codes: |
- | |
336 | 262 | or ecx, [sys_colors.work_button_text] |
|
337 | mov eax, 13 |
- | |
338 | mov ebx, 80*0x10000+220 |
- | |
339 | mov ecx, 164*0x10000+9 |
- | |
340 | mov edx, 0x00F0F0F0 |
- | |
341 | int 0x40 |
- | |
342 | 263 | mov edx, string_000_127 |
|
343 | mov eax, 4 |
264 | cmp [symbol_start], 0 ; first page? |
344 | mov ebx, 80*0x10000+164 |
265 | je @f |
345 | mov ecx, 0x80000000 |
- | |
346 | mov edx, string_ASCII_CODE |
- | |
347 | int 0x40 |
266 | mov edx, string_128_255 ; ok, the second one |
348 | 267 | @@: mcall 4, <11,164>, |
|
349 | mov ebx, 180*0x10000+164 |
- | |
350 | mov ecx, 0x80000000 |
268 | ret |
- | 269 | endp |
|
351 | mov edx, string_ASCII_HEX_CODE |
270 | |
352 | int 0x40 |
271 | |
353 | 272 | proc draw_codes |
|
354 | mov eax, 47 |
273 | |
355 | mov ebx, 0x00030000 ; 3 digits, dec |
274 | mov ecx, 0x80000000 |
356 | xor ecx, ecx |
275 | or ecx, [sys_colors.work_text] |
357 | add cl, [symbol_focused] |
276 | mcall 4, <80,164>, , string_ASCII_CODE |
358 | mov edx, 152*0x10000+164 |
277 | mcall , <180,164>, , string_ASCII_HEX_CODE |
359 | xor esi, esi |
278 | movzx ecx, [symbol_focused] |
360 | int 0x40 |
279 | mov esi, 0x40000000 |
361 | 280 | or esi, [sys_colors.work_text] |
|
362 | mov ebx, 0x00020100 ; 2 digits, hex |
281 | mcall 47, 0x00030000, , <152,164>, , [sys_colors.work] |
363 | mov edx, 276*0x10000+164 |
282 | mcall , 0x00020100, , <276,164>, |
364 | int 0x40 |
283 | |
365 | 284 | ret |
|
366 | ret |
285 | endp |
367 | 286 | ||
368 | 287 | ||
369 | quit: |
288 | quit: |
370 | mov eax, -1 |
289 | mcall -1 |
371 | int 0x40 |
- | |
372 | - | ||
- | 290 | ||
373 | window_title db 'ASCIIVju v0.3 R3',0 |
291 | |
374 | 292 | szZ window_title ,'ASCIIVju v0.4' |
|
375 | string_000_127 db '000-127',0 |
293 | szZ string_000_127 ,'000-127' |
376 | string_128_255 db '128-255',0 |
294 | szZ string_128_255 ,'128-255' |
377 | string_ASCII_CODE db 'ASCII Code: ',0 |
- | |
378 | string_ASCII_HEX_CODE db 'ASCII Hex-Code: ',0 |
- | |
379 | 295 | szZ string_ASCII_CODE ,'ASCII Code: ' |
|
380 | skin_height dd 0 |
296 | szZ string_ASCII_HEX_CODE ,'ASCII Hex-Code: ' |
381 | 297 | ||
382 | button_x dd 2 |
298 | button_x dd 2 |
383 | button_y dd 2 |
299 | button_y dd 2 |
384 | 300 | ||
385 | symbol_current db 0 |
301 | symbol_current db 0 |
386 | symbol_start db 0 |
302 | symbol_start db 0 |
387 | button_cur_x dd 0 |
- | |
388 | button_cur_y dd 0 |
- | |
389 | button_cur_id db 0 |
- | |
390 | - | ||
391 | db 0,0,0 ; unused |
- | |
392 | - | ||
393 | is_active dd 0 ; is current symbol selected? |
- | |
394 | 303 | ||
395 | symbol_unfocused db 0 |
304 | symbol_unfocused db 0 |
396 | symbol_focused db 0 |
305 | symbol_focused db 0 |
397 | redraw_flag dd 0 |
- | |
398 | - | ||
399 | db 0,0,0,0 ; unused |
- | |
400 | i_end: |
306 | i_end: |
401 | - | ||
- | 307 | proc_info process_information |
|
- | 308 | sys_colors system_colors |
|
402 | rb 0x500 ;stack |
309 | rb 0x400 ;stack |
403 | e_end: |
310 | e_end:276,164>152,164>180,164>80,164>11,164>157,19>2,60>300,315> |