Rev 827 | Rev 1102 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 827 | Rev 987 | ||
---|---|---|---|
Line 30... | Line 30... | ||
30 | 30 | ||
Line 31... | Line 31... | ||
31 | include 'tinypad.inc' |
31 | include 'tinypad.inc' |
Line 32... | Line 32... | ||
32 | 32 | ||
Line 33... | Line 33... | ||
33 | ;purge mov,add,sub ; SPEED |
33 | ;purge mov,add,sub ; SPEED |
Line 34... | Line 34... | ||
34 | 34 | ||
35 | header '01',1,@CODE,TINYPAD_END,STATIC_MEM_END,MAIN_STACK,@PARAMS,self_path |
35 | header '01',1,@CODE,TINYPAD_END,STATIC_MEM_END,MAIN_STACK,@PARAMS,ini_path |
Line 42... | Line 42... | ||
42 | ;include 'debug.inc' |
42 | ;include 'debug.inc' |
43 | ;define __DEBUG__ 1 |
43 | ;define __DEBUG__ 1 |
44 | ;define __DEBUG_LEVEL__ 1 |
44 | ;define __DEBUG_LEVEL__ 1 |
45 | ;include 'debug-fdo.inc' |
45 | ;include 'debug-fdo.inc' |
Line -... | Line 46... | ||
- | 46 | ||
- | 47 | ; compiled-in options |
|
46 | 48 | ||
47 | ASEPC = '-' ; separator character (char) |
49 | ASEPC = '-' ; separator character (char) |
48 | ATOPH = 19 ; menu bar height (pixels) |
50 | ATOPH = 19 ; menu bar height (pixels) |
49 | SCRLW = 16 ; scrollbar widht/height (pixels) |
51 | SCRLW = 16 ; scrollbar widht/height (pixels) |
50 | ATABW = 8 ; tab key indent width (chars) |
52 | ATABW = 8 ; tab key indent width (chars) |
Line 54... | Line 56... | ||
54 | LCHGW = 3 ; changed/saved marker width (pixels) |
56 | LCHGW = 3 ; changed/saved marker width (pixels) |
Line 55... | Line 57... | ||
55 | 57 | ||
56 | STATH = 16 ; status bar height (pixels) |
58 | STATH = 16 ; status bar height (pixels) |
Line 57... | Line -... | ||
57 | TBARH = 18 ; tab bar height (pixels) |
- | |
58 | - | ||
59 | ;----------------------------------------------------------------------------- |
- | |
60 | section @OPTIONS ;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: |
- | |
61 | ;----------------------------------------------------------------------------- |
59 | TBARH = 18 ; tab bar height (pixels) |
62 | - | ||
63 | label color_tbl dword |
- | |
64 | .text: RGB( 0, 0, 0) |
- | |
65 | .back: RGB(255,255,255) |
- | |
66 | .text.sel: RGB(255,255,255) |
- | |
67 | .back.sel: RGB( 10, 36,106) |
- | |
68 | .symbol: RGB( 48, 48,240) |
- | |
69 | .number: RGB( 0,144, 0) |
- | |
70 | .string: RGB(176, 0, 0) |
- | |
71 | .comment: RGB(128,128,128) |
- | |
72 | .line.moded: RGB(255,238, 98) |
- | |
73 | .line.saved: RGB(108,226,108) |
- | |
74 | - | ||
75 | ins_mode db 1 |
- | |
76 | tab_pos db 2 |
- | |
77 | - | ||
78 | options db OPTS_AUTOINDENT+OPTS_OPTIMSAVE+OPTS_SMARTTAB |
- | |
79 | - | ||
80 | mainwnd_pos: |
- | |
81 | .x dd 250 |
- | |
82 | .y dd 75 |
- | |
Line 83... | Line 60... | ||
83 | .w dd 6*80+6+SCRLW+5 ;- 220 |
60 | |
84 | .h dd 402 ;- 220 |
61 | INI_SEC_PREFIX equ '' |
85 | 62 | ||
Line 86... | Line -... | ||
86 | ;----------------------------------------------------------------------------- |
- | |
87 | section @CODE ;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: |
- | |
88 | ;----------------------------------------------------------------------------- |
- | |
89 | - | ||
90 | ; fninit |
- | |
91 | - | ||
92 | ; stdcall ini.get_int,finfo_ini,ini_sec_window,ini_window_left,50 |
- | |
93 | ; mov [mainwnd_pos.x],eax |
- | |
94 | ; stdcall ini.get_int,finfo_ini,ini_sec_window,ini_window_top,50 |
- | |
95 | ; mov [mainwnd_pos.y],eax |
- | |
96 | ; stdcall ini.get_int,finfo_ini,ini_sec_window,ini_window_right,350 |
- | |
97 | ; sub eax,[mainwnd_pos.x] |
- | |
98 | ; mov [mainwnd_pos.w],eax |
- | |
99 | ; stdcall ini.get_int,finfo_ini,ini_sec_window,ini_window_bottom,450 |
63 | ;----------------------------------------------------------------------------- |
100 | ; sub eax,[mainwnd_pos.y] |
64 | section @CODE ;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: |
101 | ; mov [mainwnd_pos.h],eax |
65 | ;----------------------------------------------------------------------------- |
102 | 66 | ||
103 | cld |
67 | cld |
Line 104... | Line -... | ||
104 | mov edi,@UDATA |
- | |
105 | mov ecx,@PARAMS-@UDATA |
- | |
106 | mov al,0 |
- | |
107 | rep stosb |
68 | mov edi,@UDATA |
108 | 69 | mov ecx,@PARAMS-@UDATA |
|
109 | mov al,[tab_pos] |
70 | mov al,0 |
Line 110... | Line 71... | ||
110 | mov [tab_bar.Style],al |
71 | rep stosb |
111 | 72 | ||
112 | mcall 68,11 |
73 | mcall 68,11 |
Line -... | Line 74... | ||
- | 74 | or eax,eax |
|
- | 75 | jz key.alt_x.close |
|
- | 76 | ||
- | 77 | stdcall dll.Load,@IMPORT |
|
- | 78 | or eax,eax |
|
- | 79 | jnz key.alt_x.close |
|
- | 80 | ||
- | 81 | mov edi,ini_path |
|
- | 82 | xor al,al |
|
113 | or eax,eax |
83 | mov ecx,PATHL |
114 | jz key.alt_x.close |
84 | repne scasb |
Line 115... | Line 85... | ||
115 | 85 | mov dword[edi-1],'.ini' |
|
Line 206... | Line 176... | ||
206 | call create_tab |
176 | call create_tab |
Line 207... | Line 177... | ||
207 | 177 | ||
208 | @@: |
178 | @@: |
209 | mov [s_status],0 |
179 | mov [s_status],0 |
- | 180 | dec [do_not_draw] |
|
- | 181 | ||
- | 182 | mov al,[tabs_pos] |
|
- | 183 | mov [tab_bar.Style],al |
|
210 | dec [do_not_draw] |
184 | |
211 | mcall 66,1,1 |
185 | mcall 66,1,1 |
212 | mcall 40,00100111b |
186 | mcall 40,00100111b |
213 | red: |
187 | red: |
Line 295... | Line 269... | ||
295 | mov eax,EV_DEBUG |
269 | mov eax,EV_DEBUG |
296 | ret |
270 | ret |
297 | endp |
271 | endp |
Line 298... | Line 272... | ||
298 | 272 | ||
- | 273 | ;----------------------------------------------------------------------------- |
|
- | 274 | proc load_settings ;////////////////////////////////////////////////////////// |
|
- | 275 | ;----------------------------------------------------------------------------- |
|
- | 276 | pushad |
|
- | 277 | ||
- | 278 | invoke ini.get_int,ini_path,ini_sec_options,ini_options_tabs_pos,2 |
|
- | 279 | mov [tabs_pos],al |
|
- | 280 | invoke ini.get_int,ini_path,ini_sec_options,ini_options_secure_sel,0 |
|
- | 281 | mov [secure_sel],al |
|
- | 282 | invoke ini.get_int,ini_path,ini_sec_options,ini_options_auto_braces,0 |
|
- | 283 | mov [auto_braces],al |
|
- | 284 | invoke ini.get_int,ini_path,ini_sec_options,ini_options_auto_indent,1 |
|
- | 285 | mov [auto_indent],al |
|
- | 286 | invoke ini.get_int,ini_path,ini_sec_options,ini_options_smart_tab,1 |
|
- | 287 | mov [smart_tab],al |
|
- | 288 | invoke ini.get_int,ini_path,ini_sec_options,ini_options_optim_save,1 |
|
- | 289 | mov [optim_save],al |
|
- | 290 | invoke ini.get_int,ini_path,ini_sec_options,ini_options_line_nums,0 |
|
- | 291 | mov [line_nums],al |
|
- | 292 | ||
- | 293 | invoke ini.get_color,ini_path,ini_sec_colors,ini_colors_text,0x00000000 |
|
- | 294 | mov [color_tbl.text],eax |
|
- | 295 | invoke ini.get_color,ini_path,ini_sec_colors,ini_colors_back,0x00ffffff |
|
- | 296 | mov [color_tbl.back],eax |
|
- | 297 | invoke ini.get_color,ini_path,ini_sec_colors,ini_colors_text_sel,0x00ffffff |
|
- | 298 | mov [color_tbl.text.sel],eax |
|
- | 299 | invoke ini.get_color,ini_path,ini_sec_colors,ini_colors_back_sel,0x000a246a |
|
- | 300 | mov [color_tbl.back.sel],eax |
|
- | 301 | invoke ini.get_color,ini_path,ini_sec_colors,ini_colors_symbol,0x003030f0 |
|
- | 302 | mov [color_tbl.symbol],eax |
|
- | 303 | invoke ini.get_color,ini_path,ini_sec_colors,ini_colors_number,0x00009000 |
|
- | 304 | mov [color_tbl.number],eax |
|
- | 305 | invoke ini.get_color,ini_path,ini_sec_colors,ini_colors_string,0x00b00000 |
|
- | 306 | mov [color_tbl.string],eax |
|
- | 307 | invoke ini.get_color,ini_path,ini_sec_colors,ini_colors_comment,0x00808080 |
|
- | 308 | mov [color_tbl.comment],eax |
|
- | 309 | invoke ini.get_color,ini_path,ini_sec_colors,ini_colors_line_moded,0x00ffee62 |
|
- | 310 | mov [color_tbl.line.moded],eax |
|
- | 311 | invoke ini.get_color,ini_path,ini_sec_colors,ini_colors_line_saved,0x006ce26c |
|
- | 312 | mov [color_tbl.line.saved],eax |
|
- | 313 | ||
- | 314 | invoke ini.get_int,ini_path,ini_sec_window,ini_window_left,250 |
|
- | 315 | mov [mainwnd_pos.x],eax |
|
- | 316 | invoke ini.get_int,ini_path,ini_sec_window,ini_window_top,75 |
|
- | 317 | mov [mainwnd_pos.y],eax |
|
- | 318 | invoke ini.get_int,ini_path,ini_sec_window,ini_window_width,6*80+6+SCRLW+5 |
|
- | 319 | mov [mainwnd_pos.w],eax |
|
- | 320 | invoke ini.get_int,ini_path,ini_sec_window,ini_window_height,402 |
|
- | 321 | mov [mainwnd_pos.h],eax |
|
- | 322 | ||
- | 323 | popad |
|
- | 324 | ret |
|
- | 325 | endp |
|
- | 326 | ||
- | 327 | ;----------------------------------------------------------------------------- |
|
- | 328 | proc save_settings ;////////////////////////////////////////////////////////// |
|
- | 329 | ;----------------------------------------------------------------------------- |
|
- | 330 | pushad |
|
- | 331 | ||
- | 332 | movzx eax,[tabs_pos] |
|
- | 333 | invoke ini.set_int,ini_path,ini_sec_options,ini_options_tabs_pos,eax |
|
- | 334 | movzx eax,[secure_sel] |
|
- | 335 | invoke ini.set_int,ini_path,ini_sec_options,ini_options_secure_sel,eax |
|
- | 336 | movzx eax,[auto_braces] |
|
- | 337 | invoke ini.set_int,ini_path,ini_sec_options,ini_options_auto_braces,eax |
|
- | 338 | movzx eax,[auto_indent] |
|
- | 339 | invoke ini.set_int,ini_path,ini_sec_options,ini_options_auto_indent,eax |
|
- | 340 | movzx eax,[smart_tab] |
|
- | 341 | invoke ini.set_int,ini_path,ini_sec_options,ini_options_smart_tab,eax |
|
- | 342 | movzx eax,[optim_save] |
|
- | 343 | invoke ini.set_int,ini_path,ini_sec_options,ini_options_optim_save,eax |
|
- | 344 | movzx eax,[line_nums] |
|
- | 345 | invoke ini.set_int,ini_path,ini_sec_options,ini_options_line_nums,eax |
|
- | 346 | ||
- | 347 | invoke ini.set_color,ini_path,ini_sec_colors,ini_colors_text,[color_tbl.text] |
|
- | 348 | invoke ini.set_color,ini_path,ini_sec_colors,ini_colors_back,[color_tbl.back] |
|
- | 349 | invoke ini.set_color,ini_path,ini_sec_colors,ini_colors_text_sel,[color_tbl.text.sel] |
|
- | 350 | invoke ini.set_color,ini_path,ini_sec_colors,ini_colors_back_sel,[color_tbl.back.sel] |
|
- | 351 | invoke ini.set_color,ini_path,ini_sec_colors,ini_colors_symbol,[color_tbl.symbol] |
|
- | 352 | invoke ini.set_color,ini_path,ini_sec_colors,ini_colors_number,[color_tbl.number] |
|
- | 353 | invoke ini.set_color,ini_path,ini_sec_colors,ini_colors_string,[color_tbl.string] |
|
- | 354 | invoke ini.set_color,ini_path,ini_sec_colors,ini_colors_comment,[color_tbl.comment] |
|
- | 355 | invoke ini.set_color,ini_path,ini_sec_colors,ini_colors_line_moded,[color_tbl.line.moded] |
|
- | 356 | invoke ini.set_color,ini_path,ini_sec_colors,ini_colors_line_saved,[color_tbl.line.saved] |
|
- | 357 | ||
- | 358 | invoke ini.set_int,ini_path,ini_sec_window,ini_window_left,[mainwnd_pos.x] |
|
- | 359 | invoke ini.set_int,ini_path,ini_sec_window,ini_window_top,[mainwnd_pos.y] |
|
- | 360 | invoke ini.set_int,ini_path,ini_sec_window,ini_window_width,[mainwnd_pos.w] |
|
- | 361 | invoke ini.set_int,ini_path,ini_sec_window,ini_window_height,[mainwnd_pos.h] |
|
- | 362 | ||
- | 363 | popad |
|
- | 364 | ret |
|
- | 365 | endp |
|
- | 366 | ||
299 | ;----------------------------------------------------------------------------- |
367 | ;----------------------------------------------------------------------------- |
300 | proc start_fasm ;///////////////////////////////////////////////////////////// |
368 | proc start_fasm ;///////////////////////////////////////////////////////////// |
301 | ;----------------------------------------------------------------------------- |
369 | ;----------------------------------------------------------------------------- |
302 | ; BL = run after compile |
370 | ; BL = run after compile |
303 | ;----------------------------------------------------------------------------- |
371 | ;----------------------------------------------------------------------------- |
Line 406... | Line 474... | ||
406 | rep movsd |
474 | rep movsd |
407 | call drawwindow |
475 | call drawwindow |
408 | ret |
476 | ret |
Line 409... | Line 477... | ||
409 | 477 | ||
410 | .line_numbers: |
478 | .line_numbers: |
411 | mov al,OPTS_LINENUMS |
479 | xor [line_nums],1 |
412 | jmp .main |
480 | ret |
413 | .optimal_fill: |
481 | .optimal_fill: |
414 | mov al,OPTS_OPTIMSAVE |
482 | xor [optim_save],1 |
415 | jmp .main |
483 | ret |
416 | .auto_indents: |
484 | .auto_indents: |
417 | mov al,OPTS_AUTOINDENT |
485 | xor [auto_indent],1 |
418 | jmp .main |
486 | ret |
419 | .auto_braces: |
487 | .auto_braces: |
420 | mov al,OPTS_AUTOBRACES |
488 | xor [auto_braces],1 |
421 | jmp .main |
489 | ret |
422 | .secure_sel: |
- | |
423 | mov al,OPTS_SECURESEL |
- | |
424 | - | ||
425 | .main: |
490 | .secure_sel: |
426 | xor [options],al |
491 | xor [secure_sel],1 |
Line 427... | Line 492... | ||
427 | ret |
492 | ret |
Line 428... | Line 493... | ||
428 | 493 | ||
Line 454... | Line 519... | ||
454 | include 'data/tp-idata.inc' |
519 | include 'data/tp-idata.inc' |
Line 455... | Line 520... | ||
455 | 520 | ||
456 | ;----------------------------------------------------------------------------- |
521 | ;----------------------------------------------------------------------------- |
457 | section @IMPORT ;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: |
522 | section @IMPORT ;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: |
458 | ;----------------------------------------------------------------------------- |
- | |
459 | ;align 16 |
- | |
Line 460... | Line 523... | ||
460 | ;@IMPORT: |
523 | ;----------------------------------------------------------------------------- |
461 | 524 | ||
462 | library \ |
525 | library \ |
463 | libini,'libini.obj',\ |
526 | libini,'libini.obj',\ |
Line 464... | Line 527... | ||
464 | libio,'libio.obj',\ |
527 | libio,'libio.obj',\ |
465 | libgfx,'libgfx.obj' |
528 | libgfx,'libgfx.obj' |
466 | 529 | ||
467 | import libini, \ |
530 | import libini, \ |
468 | ini.get_str,'ini.get_str',\ |
531 | ini.get_str ,'ini.get_str',\ |
- | 532 | ini.set_str ,'ini.set_str',\ |
|
- | 533 | ini.get_int ,'ini.get_int',\ |
|
Line 469... | Line 534... | ||
469 | ini.set_str,'ini.set_str',\ |
534 | ini.set_int ,'ini.set_int',\ |
470 | ini.get_int,'ini.get_int',\ |
535 | ini.get_color,'ini.get_color',\ |
471 | ini.set_int,'ini.set_int' |
536 | ini.set_color,'ini.set_color' |
472 | 537 | ||
Line 518... | Line 583... | ||
518 | 583 | ||
519 | p_info process_information |
584 | p_info process_information |
520 | p_info2 process_information |
585 | p_info2 process_information |
Line -... | Line 586... | ||
- | 586 | sc system_colors |
|
- | 587 | ||
521 | sc system_colors |
588 | ini_path rb PATHL |
522 | 589 | ||
523 | rb 1024*4 |
590 | rb 1024*4 |
524 | MAIN_STACK: |
591 | MAIN_STACK: |