Subversion Repositories Kolibri OS

Rev

Rev 122 | Rev 242 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 122 Rev 178
Line 1... Line 1...
1
;-----------------------------------------------------------------------------
1
;-----------------------------------------------------------------------------
2
; project name:      TINYPAD
2
; project name:      TINYPAD
3
; compiler:          flat assembler 1.64
3
; compiler:          flat assembler 1.67.1
4
; memory to compile: 3.0/11.5 MBytes (without/with size optimizations)
4
; memory to compile: 2.0/7.0 MBytes (without/with size optimizations)
5
; version:           4.0
5
; version:           4.0.3
6
; last update:       2006-04-13 (Apr 13, 2006)
6
; last update:       2006-08-28 (Aug 28, 2006)
-
 
7
; minimal kernel:    revision #138 (svn://kolibrios.org/kernel)
7
;-----------------------------------------------------------------------------
8
;-----------------------------------------------------------------------------
8
; originally by:     Ville Michael Turjanmaa >> villemt@aton.co.jyu.fi
9
; originally by:     Ville Michael Turjanmaa >> villemt@aton.co.jyu.fi
9
; maintained by:     Ivan Poddubny           >> ivan-yar@bk.ru
10
; maintained by:     Ivan Poddubny           >> ivan-yar@bk.ru
10
;                    Mike Semenyako          >> mike.dld@gmail.com
11
;                    Mike Semenyako          >> mike.dld@gmail.com
11
;-----------------------------------------------------------------------------
12
;-----------------------------------------------------------------------------
12
; TODO:
13
; TODO:
13
;   optimize drawing (reduce flickering);
14
;   - optimize drawing (reduce flickering)
14
;   optimize memory usage (allocate only needed amount, not static 3 Mbytes);
15
;   - optimize memory usage (allocate only needed amount, not static 3 Mbytes)
15
;   add block selection ability, undo action;
16
;   - add block selection ability, undo action, goto position
16
;   working with multiple files (add tabs);
17
;   - working with multiple files (add tabs)
-
 
18
;   - improve window drawing with small dimensions
17
;   other bugfixes and speed/size optimizations
19
;   - other bugfixes and speed/size optimizations
18
;
20
;
19
; HISTORY:
21
; HISTORY:
-
 
22
; 4.0.3 (mike.dld)
-
 
23
;   bug-fixes:
-
 
24
;     - 1-char selection if pressing  out of real line length
-
 
25
;     - fault in `writepos`, added call to function 9
-
 
26
;     - main menu items weren't highlighted if popup opened and cursor
-
 
27
;       isn't in menu item's area
-
 
28
;     - statusbar and textboxes drawing fixes (wrong colors)
-
 
29
;     - perform no redraw while pressing Shift, Ctrl, Alt keys
-
 
30
;     - data length from DOCPAK in string representation (fix by diamond)
-
 
31
;   changes:
-
 
32
;     - function 70 instead of 58 for files loading/saving
-
 
33
;     - clientarea-relative drawing (less code)
-
 
34
;     - every line's dword is now splitted into 2 words;
-
 
35
;       low word - line block length, so max line length is 65535 now
-
 
36
;       high word - various flags. for now, only 2 of 16 bits are used:
-
 
37
;         if bit #0 is set, line was modified since file open
-
 
38
;         if bit #1 is set, line was saved after last modification
-
 
39
;       high word could also be further used for code collapsing and different
-
 
40
;         line marking features (breakpoints, errors, bookmarks, etc.)
-
 
41
;   new features:
-
 
42
;     - line markers for modified and saved lines
-
 
43
;     - status messages for various actions
20
; 4.0.2 (mike.dld)
44
; 4.0.2 (mike.dld)
21
;   bug-fixes:
45
;   bug-fixes:
22
;     - program terminates if started with parameters (fine for DOCPAK)
46
;     - program terminates if started with parameters (fine for DOCPAK)
23
; 4.0.1 (mike.dld)
47
; 4.0.1 (mike.dld)
24
;   bug-fixes:
48
;   bug-fixes:
Line 66... Line 90...
66
;   all line feed formats are supported: WIN(CRLF),*NIX(LF),MAC(CR);
90
;   all line feed formats are supported: WIN(CRLF),*NIX(LF),MAC(CR);
67
;   etc.
91
;   etc.
68
; 3.77 (mike.dld)
92
; 3.77 (mike.dld)
69
;   changed save_string to collapse SPACEs into TABs;
93
;   changed save_string to collapse SPACEs into TABs;
70
;   rewrote drawfile from scratch (speed++)
94
;   rewrote drawfile from scratch (speed++)
71
;     through some drawing improvements still needed
95
;     through some drawing improvements  needed
72
;     (some checkups to reduce flickering);
96
;     (some checkups to reduce flickering);
73
;   writepos (size--);
97
;   writepos (size--);
74
;   fixed drawing window while height < 100px, and for non-asm files;
98
;   fixed drawing window while height < 100px, and for non-asm files;
75
;   several small fixes; speed/size optimizations
99
;   several small fixes; speed/size optimizations
76
; 3.76 (mike.dld)
100
; 3.76 (mike.dld)
Line 108... Line 132...
108
;   load position    0x010000 +
132
;   load position    0x010000 +
109
;   edit area        0x080000 +
133
;   edit area        0x080000 +
110
;   copy/paste area  0x2f0000 +
134
;   copy/paste area  0x2f0000 +
111
;-----------------------------------------------------------------------------
135
;-----------------------------------------------------------------------------
Line -... Line 136...
-
 
136
 
112
 
137
include 'lang.inc'
-
 
138
include 'macros.inc' ; useful stuff
113
include 'macros.inc' ; useful stuff
139
;include 'proc32.inc'
114
include 'tinypad.inc'
140
include 'tinypad.inc'
Line 115... Line 141...
115
purge mov,add,sub            ;  SPEED
141
;purge mov,add,sub            ;  SPEED
Line 116... Line 142...
116
 
142
 
Line 124... Line 150...
124
SCRLW     = 16            ; scrollbar widht/height (pixels)
150
SCRLW     = 16            ; scrollbar widht/height (pixels)
125
ATABW     = 8             ; tab width (chars)
151
ATABW     = 8             ; tab width (chars)
126
LINEH     = 10            ; line height (pixels)
152
LINEH     = 10            ; line height (pixels)
127
PATHL     = 255           ; maximum path length (chars) !!! don't change !!!
153
PATHL     = 255           ; maximum path length (chars) !!! don't change !!!
128
AMINS     = 8             ; minimal scroll thumb size (pixels)
154
AMINS     = 8             ; minimal scroll thumb size (pixels)
-
 
155
LCHGW     = 2             ; changed/saved marker width
Line 129... Line 156...
129
 
156
 
Line 130... Line 157...
130
STATH     = 14            ; status bar height
157
STATH     = 14            ; status bar height
131
 
158
 
Line 146... Line 173...
146
  RGB(128,128,128) ; RGB(144,144,144) ; RGB(160,160,160) ; comments
173
  RGB(128,128,128) ; RGB(144,144,144) ; RGB(160,160,160) ; comments
147
  RGB( 48, 48,240) ; RGB( 48, 48,240) ; RGB(255,  0,  0) ; symbols
174
  RGB( 48, 48,240) ; RGB( 48, 48,240) ; RGB(255,  0,  0) ; symbols
148
  RGB(255,255,255) ; RGB(224,224,224) ; RGB(255,255,255) ; background
175
  RGB(255,255,255) ; RGB(224,224,224) ; RGB(255,255,255) ; background
149
  RGB(255,255,255) ; RGB(255,255,255) ; RGB(255,255,255) ; selection text
176
  RGB(255,255,255) ; RGB(255,255,255) ; RGB(255,255,255) ; selection text
150
  RGB( 10, 36,106) ; RGB(  0,  0,128) ; RGB(  0, 64,128) ; selection background
177
  RGB( 10, 36,106) ; RGB(  0,  0,128) ; RGB(  0, 64,128) ; selection background
-
 
178
  RGB(  0,255,  0) ; modified line marker
-
 
179
  RGB(255,255,  0) ; saved line marker
Line 151... Line 180...
151
 
180
 
Line 152... Line 181...
152
ins_mode db 1
181
ins_mode db 1
Line 163... Line 192...
163
section @CODE ;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
192
section @CODE ;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
164
;-----------------------------------------------------------------------------
193
;-----------------------------------------------------------------------------
Line 165... Line 194...
165
 
194
 
Line -... Line 195...
-
 
195
;       fninit
-
 
196
 
-
 
197
;        stdcall ini.get_int,finfo_ini,ini_sec_window,ini_window_left,50
-
 
198
;        mov     [mainwnd_pos.x],eax
-
 
199
;        stdcall ini.get_int,finfo_ini,ini_sec_window,ini_window_top,50
-
 
200
;        mov     [mainwnd_pos.y],eax
-
 
201
;        stdcall ini.get_int,finfo_ini,ini_sec_window,ini_window_right,350
-
 
202
;        sub     eax,[mainwnd_pos.x]
-
 
203
;        mov     [mainwnd_pos.w],eax
-
 
204
;        stdcall ini.get_int,finfo_ini,ini_sec_window,ini_window_bottom,450
-
 
205
;        sub     eax,[mainwnd_pos.y]
166
;       fninit
206
;        mov     [mainwnd_pos.h],eax
167
 
207
 
168
        cld
208
        cld
169
        mov     edi,@UDATA
209
        mov     edi,@UDATA
170
        mov     ecx,@PARAMS-@UDATA
210
        mov     ecx,@PARAMS-@UDATA
Line -... Line 211...
-
 
211
        mov     al,0
-
 
212
        rep     stosb
171
        mov     al,0
213
 
172
        rep     stosb
214
	inc	[do_not_draw]
173
 
215
 
174
        mov     [left_ofs],40+1
216
        mov     [left_ofs],40+1
Line 175... Line -...
175
        mov     [f_info+4],0
-
 
176
        mov     [f_info+12],AREA_TEMP
-
 
177
        mov     [f_info+16],AREA_EDIT-AREA_TEMP
-
 
178
 
-
 
179
;        mov     esi,s_example
-
 
180
;        mov     edi,s_fname
217
        mov     [f_info+4],0
181
;        mov     ecx,s_example.size
218
        mov     [f_info+12],AREA_TEMP
182
;        mov     [s_fname.size],ecx
219
        mov     [f_info+16],AREA_EDIT-AREA_TEMP
183
;        rep     movsb
220
 
184
        mov     esi,s_example
221
        mov     esi,s_example
Line 198... Line 235...
198
 
235
 
Line 199... Line 236...
199
;// Willow's code to support DOCPAK [
236
;// Willow's code to support DOCPAK [
200
 
237
 
-
 
238
        cmp     byte[@PARAMS],'*'
201
        cmp     byte[@PARAMS],'*'
239
        jne     .noipc
-
 
240
 
202
        jne     .noipc
241
;// diamond [ (convert size from decimal representation to dword)
203
; convert size from decimal representation to dword
242
;--     mov     edx,dword[@PARAMS+1]
204
        mov     esi, @PARAMS+1
243
        mov     esi,@PARAMS+1
205
        xor     edx, edx
-
 
206
        xor     eax, eax
244
        xor     edx,edx
207
@@:
245
        xor     eax,eax
208
        lodsb
246
    @@: lodsb
209
        test    al, al
247
        test    al,al
210
        jz      @f
248
        jz      @f
211
        lea     edx, [edx*4+edx]
249
        lea     edx,[edx*4+edx]
212
        lea     edx, [edx*2+eax]
250
        lea     edx,[edx*2+eax-'0']
-
 
251
        jmp     @b
-
 
252
    @@:
213
        jmp     @b
253
;// diamond ]
214
@@:
254
 
215
        add     edx,20
255
        add     edx,20
216
        mcall   60,1,AREA_TEMP-16 ; 0x10000-16
256
        mcall   60,1,AREA_TEMP-16 ; 0x10000-16
217
        mov     dword[AREA_TEMP-16+4],8 ; [0x10000-16+4],8
257
        mov     dword[AREA_TEMP-16+4],8 ; [0x10000-16+4],8
Line 223... Line 263...
223
        mov     byte[esi],1
263
        mov     byte[esi],1
224
        mov     eax,[esi+12]
264
        mov     eax,[esi+12]
225
        inc     eax
265
        inc     eax
226
        call    load_file.file_found
266
        call    load_file.file_found
227
        jmp     @f
267
        jmp     @f
228
;       call    file_found  ; çàãðóçêà ôàéëà
-
 
229
;       jmp     do_load_file.restorecursor ; îòîáðàæåíèå
-
 
230
  .noipc:
268
  .noipc:
Line 231... Line 269...
231
 
269
 
Line 232... Line 270...
232
;// Willow's code to support DOCPAK ]
270
;// Willow's code to support DOCPAK ]
Line 248... Line 286...
248
        call    btn.load_file;do_load_file
286
        call    btn.load_file;do_load_file
249
        jnc     @f
287
        jnc     @f
250
        call    new_file
288
        call    new_file
Line 251... Line 289...
251
 
289
 
252
    @@:
290
    @@:
253
        call    drawwindow
291
	dec	[do_not_draw]
254
        mcall   66,1,1
292
        mcall   66,1,1
-
 
293
        mcall   40,00100111b
-
 
294
red:
-
 
295
	call    drawwindow
Line 255... Line 296...
255
        mcall   40,00100111b
296
	call	check_inv_all.skip_check
Line 256... Line 297...
256
 
297
 
257
;-----------------------------------------------------------------------------
298
;-----------------------------------------------------------------------------
Line 273... Line 314...
273
        jz      mouse
314
        jz      mouse
Line 274... Line 315...
274
 
315
 
Line 275... Line 316...
275
        jmp     still.skip_write
316
        jmp     still.skip_write
276
 
-
 
277
;-----------------------------------------------------------------------------
-
 
278
func red ;///// window redraw ////////////////////////////////////////////////
-
 
279
;-----------------------------------------------------------------------------
-
 
280
        call    drawwindow
-
 
281
        call    check_inv_all.skip_check
-
 
282
        jmp     still
-
 
283
endf
-
 
284
 
317
 
285
;-----------------------------------------------------------------------------
318
;-----------------------------------------------------------------------------
286
func start_fasm ;/////////////////////////////////////////////////////////////
319
func start_fasm ;/////////////////////////////////////////////////////////////
287
;-----------------------------------------------------------------------------
320
;-----------------------------------------------------------------------------
288
; BL = run after compile
321
; BL = run after compile
Line 360... Line 393...
360
 .run:
393
 .run:
361
        cmp     bl,0 ; run outfile ?
394
        cmp     bl,0 ; run outfile ?
362
        je      @f
395
        je      @f
363
        mov     dword[edi-1],',run'
396
        mov     dword[edi-1],',run'
364
        mov     byte[edi+3],0
397
        mov     byte[edi+3],0
-
 
398
    @@:
365
    @@: mcall   19,fasm_filename,fasm_parameters
399
        mov     ebx, fasm_start
-
 
400
start_ret:
-
 
401
        mov     eax, 70
-
 
402
        int     0x40
366
        ret
403
        ret
367
endf
404
endf
Line 368... Line 405...
368
 
405
 
369
;-----------------------------------------------------------------------------
406
;-----------------------------------------------------------------------------
370
func open_debug_board ;///////////////////////////////////////////////////////
407
func open_debug_board ;///////////////////////////////////////////////////////
371
;-----------------------------------------------------------------------------
408
;-----------------------------------------------------------------------------
372
        mcall   19,debug_filename,0
409
        mov     ebx, board_start
373
        ret
410
        jmp     start_ret
Line 374... Line 411...
374
endf
411
endf
375
 
412
 
376
;-----------------------------------------------------------------------------
413
;-----------------------------------------------------------------------------
377
func open_sysfuncs_txt ;//////////////////////////////////////////////////////
414
func open_sysfuncs_txt ;//////////////////////////////////////////////////////
-
 
415
;-----------------------------------------------------------------------------
378
;-----------------------------------------------------------------------------
416
        mov     ebx, docpak_start
379
        mcall   19,docpak_filename,sysfuncs_param
417
        call    start_ret
-
 
418
        cmp     eax,0xfffffff0
380
        cmp     eax,0xfffffff0
419
        jb      @f
-
 
420
        mov     ebx, tinypad_start
381
        jb      @f
421
        mov     dword [ebx+8], sysfuncs_filename
382
        mcall   19,tinypad_filename,sysfuncs_filename
422
        call    start_ret
Line 383... Line 423...
383
    @@: ret
423
    @@: ret
384
endf
424
endf
385
 
425
 
386
;-----------------------------------------------------------------------------
426
;-----------------------------------------------------------------------------
387
func layout  ;///// change keyboard layout ///////////////////////////////////
427
;func layout  ;///// change keyboard layout ///////////////////////////////////
388
;-----------------------------------------------------------------------------
428
;-----------------------------------------------------------------------------
389
        mcall   19,setup,param_setup
429
;        mcall   19,setup,param_setup
-
 
430
;        mcall   5,eax
-
 
431
;;       call    activate_me
-
 
432
;;       ret
-
 
433
;;endf
-
 
434
 
-
 
435
;;func activate_me
-
 
436
;        mcall   9,p_info,-1
-
 
437
;        inc     eax
-
 
438
;        inc     eax
-
 
439
;        mov     ecx,eax
-
 
440
;        mov     edi,[p_info.PID]
-
 
441
;        mov     ebx,p_info
-
 
442
;    @@: dec     ecx
-
 
443
;        jz      @f    ; counter=0 => not found? => return
-
 
444
;        mcall   9
-
 
445
;        cmp     edi,[p_info.PID]
-
 
446
;        jne     @b
390
        mcall   5,eax
447
;        mcall   18,3
Line 391... Line -...
391
;       call    activate_me
-
 
392
;       ret
-
 
393
;endf
-
 
394
 
-
 
395
;func activate_me
-
 
396
        mcall   9,p_info,-1
-
 
397
        inc     eax
-
 
398
        inc     eax
-
 
399
        mov     ecx,eax
-
 
400
        mov     edi,[p_info.PID]
-
 
401
        mov     ebx,p_info
-
 
402
    @@: dec     ecx
-
 
403
        jz      @f    ; counter=0 => not found? => return
-
 
404
        mcall   9
-
 
405
        cmp     edi,[p_info.PID]
-
 
406
        jne     @b
-
 
407
        mcall   18,3
-
 
408
        mcall   5,eax
448
;        mcall   5,eax
409
    @@: ret
449
;    @@: ret
410
endf
450
;endf
411
 
451
 
412
func set_opt
452
func set_opt
Line 451... Line 491...
451
 
491
 
Line 452... Line 492...
452
;-----------------------------------------------------------------------------
492
;-----------------------------------------------------------------------------
453
 
493
 
454
include 'tp-draw.asm'
-
 
455
include 'tp-key.asm'
494
include 'tp-draw.asm'
456
;include 'tp-key2.asm'
495
include 'tp-key.asm'
457
include 'tp-butto.asm'
496
include 'tp-butto.asm'
458
include 'tp-mouse.asm'
497
include 'tp-mouse.asm'
459
include 'tp-files.asm'
498
include 'tp-files.asm'
460
include 'tp-commo.asm'
-
 
461
include 'tp-dialo.asm'
499
include 'tp-commo.asm'
462
;include 'tp-find.asm'
500
include 'tp-dialo.asm'
Line -... Line 501...
-
 
501
include 'tp-popup.asm'
-
 
502
include 'tp-tbox.asm'
463
include 'tp-popup.asm'
503
 
464
include 'tp-tbox.asm'
504
;include 'lib-ini.asm'
465
 
505
 
Line 466... Line 506...
466
;-----------------------------------------------------------------------------
506
;-----------------------------------------------------------------------------
Line 591... Line 631...
591
  times $04 db -$00,-$01
631
  times $04 db -$00,-$01
592
  times $08 db -$00
632
  times $08 db -$00
Line 593... Line 633...
593
 
633
 
Line -... Line 634...
-
 
634
;error_beep      db 0xA0,0x30,0
-
 
635
 
594
;error_beep      db 0xA0,0x30,0
636
s_status dd 0
595
 
637
 
Line 596... Line 638...
596
sz s_example,'EXAMPLE.ASM'
638
sz s_example,'EXAMPLE.ASM'
Line -... Line 639...
-
 
639
sz s_still  ,'still'
-
 
640
 
-
 
641
;sz param_setup,'LANG',0 ; parameter for SETUP
-
 
642
 
597
sz s_still  ,'still'
643
fasm_start:
-
 
644
        dd      7
-
 
645
        dd      0
-
 
646
        dd      fasm_parameters
-
 
647
        dd      0
-
 
648
        dd      0
-
 
649
        db      '/RD/1/FASM',0
-
 
650
board_start:
-
 
651
        dd      7
598
 
652
        dd      0
-
 
653
        dd      0
-
 
654
        dd      0
-
 
655
        dd      0
-
 
656
        db      '/RD/1/BOARD',0
-
 
657
tinypad_start:
-
 
658
        dd      7
599
;sz param_setup,'LANG',0 ; parameter for SETUP
659
        dd      0
-
 
660
        dd      ?
-
 
661
        dd      0
-
 
662
        dd      0
-
 
663
        db      '/RD/1/TINYPAD',0
-
 
664
docpak_start:
-
 
665
        dd      7
600
 
666
        dd      0
-
 
667
        dd      sysfuncs_param
601
sz fasm_filename   ,'FASM       '
668
        dd      0
Line 602... Line 669...
602
sz debug_filename  ,'BOARD      '
669
        dd      0
Line 603... Line 670...
603
sz tinypad_filename,'TINYPAD    '
670
        db      '/RD/1/DOCPAK',0
604
sz docpak_filename ,'DOCPAK     '
671
 
605
;sz setup           ,'SETUP      ' ; to change keyboard layout
672
;sz setup           ,'SETUP      ' ; to change keyboard layout
Line 606... Line 673...
606
 
673
 
Line 607... Line 674...
607
sz sysfuncs_param,'g',0
674
sz sysfuncs_param,'g',0
608
 
675
 
609
lsz sysfuncs_filename,\
676
lsz sysfuncs_filename,\
610
  ru,<'SYSFUNCR.TXT',0>,\
677
  ru,<'SYSFUNCR.TXT',0>,\
Line 663... Line 730...
663
 
730
 
664
popup_res popup_file,\
731
popup_res popup_file,\
665
  ru,'®¢ë©'           ,'Ctrl+N',key.ctrl_n      ,\
732
  ru,'®¢ë©'           ,'Ctrl+N'      ,key.ctrl_n      ,\
666
  ru,'Žâªàëâì...'      ,'Ctrl+O',key.ctrl_o      ,\
733
  ru,'Žâªàëâì...'      ,'Ctrl+O'      ,key.ctrl_o      ,\
667
  ru,'‘®åà ­¨âì'       ,'Ctrl+S',key.ctrl_s      ,\
734
  ru,'‘®åà ­¨âì'       ,'Ctrl+S'      ,key.ctrl_s      ,\
668
  ru,'‘®åà ­¨âì ª ª...',''      ,key.shift_ctrl_s,\
735
  ru,'‘®åà ­¨âì ª ª...','Ctrl+Shift+S',key.shift_ctrl_s,\
669
  ru,'-'               ,''      ,0               ,\
736
  ru,'-'               ,''            ,0               ,\
670
  ru,'‚ë室'           ,'Alt+X' ,key.alt_x       ,\
737
  ru,'‚ë室'           ,'Alt+X'       ,key.alt_x       ,\
671
\
738
\
672
  en,'New'       ,'Ctrl+N',key.ctrl_n      ,\
739
  en,'New'       ,'Ctrl+N'      ,key.ctrl_n      ,\
673
  en,'Open...'   ,'Ctrl+O',key.ctrl_o      ,\
740
  en,'Open...'   ,'Ctrl+O'      ,key.ctrl_o      ,\
674
  en,'Save'      ,'Ctrl+S',key.ctrl_s      ,\
741
  en,'Save'      ,'Ctrl+S'      ,key.ctrl_s      ,\
675
  en,'Save as...',''      ,key.shift_ctrl_s,\
742
  en,'Save as...','Ctrl+Shift+S',key.shift_ctrl_s,\
676
  en,'-'         ,''      ,0               ,\
743
  en,'-'         ,''            ,0               ,\
Line 677... Line 744...
677
  en,'Exit'      ,'Alt+X' ,key.alt_x
744
  en,'Exit'      ,'Alt+X'       ,key.alt_x
678
 
745
 
679
popup_res popup_edit,\
746
popup_res popup_edit,\
680
  ru,'‚ë१ âì'    ,'Ctrl+X',key.ctrl_x,\
747
  ru,'‚ë१ âì'    ,'Ctrl+X',key.ctrl_x,\
681
  ru,'Š®¯¨à®¢ âì'  ,'Ctrl+C',key.ctrl_c,\
748
  ru,'Š®¯¨à®¢ âì'  ,'Ctrl+C',key.ctrl_c,\
682
  ru,'‚áâ ¢¨âì'    ,'Ctrl+V',key.ctrl_v,\
749
  ru,'‚áâ ¢¨âì'    ,'Ctrl+V',key.ctrl_v,\
683
  ru,'“¤ «¨âì'     ,''      ,key.del   ,\
750
  ru,'“¤ «¨âì'     ,''      ,key.del   ,\
-
 
751
  ru,'-'           ,''      ,0         ,\
-
 
752
  ru,'‚뤥«¨âì ¢áñ','Ctrl+A',key.ctrl_a,\
684
  ru,'-'           ,''      ,0         ,\
753
\;  ru,'-'           ,''      ,0         ,\
685
  ru,'‚뤥«¨âì ¢áñ','Ctrl+A',key.ctrl_a,\
754
\;  ru,'‚¥à⨪ «ì­®¥ ¢ë¤¥«¥­¨¥','Alt+Ins',0         ,\
686
\
755
\
687
  en,'Cut'       ,'Ctrl+X',key.ctrl_x,\
756
  en,'Cut'       ,'Ctrl+X',key.ctrl_x,\
688
  en,'Copy'      ,'Ctrl+C',key.ctrl_c,\
757
  en,'Copy'      ,'Ctrl+C',key.ctrl_c,\
689
  en,'Paste'     ,'Ctrl+V',key.ctrl_v,\
758
  en,'Paste'     ,'Ctrl+V',key.ctrl_v,\
690
  en,'Delete'    ,''      ,key.del   ,\
759
  en,'Delete'    ,''      ,key.del   ,\
-
 
760
  en,'-'         ,''      ,0         ,\
-
 
761
  en,'Select all','Ctrl+A',key.ctrl_a;,\
Line 691... Line 762...
691
  en,'-'         ,''      ,0         ,\
762
;  en,'-'         ,''      ,0         ,\
692
  en,'Select all','Ctrl+A',key.ctrl_a
763
;  en,'Vertical selection','Alt+Ins',0
693
 
764
 
694
popup_res popup_search,\
765
popup_res popup_search,\
Line 761... Line 832...
761
db ':'
832
db ':'
762
lsz s_2cancel,\
833
lsz s_2cancel,\
763
  ru,'Žâ¬¥­ ',\
834
  ru,'Žâ¬¥­ ',\
764
  en,'Cancel'
835
  en,'Cancel'
Line -... Line 836...
-
 
836
 
-
 
837
lsz s_enter_filename,\
-
 
838
  ru,<'‚¢¥¤¨â¥ ¨¬ï ä ©« ',0>,\
-
 
839
  en,<'Enter filename',0>
-
 
840
 
-
 
841
lsz s_enter_text_to_find,\
-
 
842
  ru,<'‚¢¥¤¨â¥ ⥪áâ ¤«ï ¯®¨áª ',0>,\
-
 
843
  en,<'Enter text to find',0>
-
 
844
 
-
 
845
lsz s_enter_text_to_replace,\
-
 
846
  ru,<'‚¢¥¤¨â¥ ⥪áâ ¤«ï § ¬¥­ë',0>,\
-
 
847
  en,<'Enter text to replace',0>
-
 
848
 
-
 
849
lsz s_text_not_found,\
-
 
850
  ru,<'„®á⨣­ãâ ª®­¥æ ä ©« , ⥪áâ ­¥ ­ ©¤¥­',0>,\
-
 
851
  en,<'Reached end of file, text not found',0>
-
 
852
 
-
 
853
lszc s_fs_error,b,\
-
 
854
  ru,<'Ž¯¥à æ¨ï § ¢¥à襭  ãᯥ譮 (0)',0>,\
-
 
855
  ru,<'',0>,\
-
 
856
  ru,<'”ã­ªæ¨ï ­¥ ¯®¤¤¥à¦¨¢ ¥âáï ¤«ï ¤ ­­®© ä ©«®¢®© á¨á⥬ë (2)',0>,\
-
 
857
  ru,<'¥¨§¢¥áâ­ ï ä ©«®¢ ï á¨á⥬  (3)',0>,\
-
 
858
  ru,<'',0>,\
-
 
859
  ru,<'¥¢®§¬®¦­® ®âªàëâì ä ©« (5)',0>,\
-
 
860
  ru,<'Ž¯¥à æ¨ï § ¢¥à襭  ãᯥ譮 (6)',0>,\
-
 
861
  ru,<'€¤à¥á ­ å®¤¨âáï §  £à ­¨æ ¬¨ ¯ ¬ï⨠¯à®£à ¬¬ë (7)',0>,\
-
 
862
  ru,<'  ¤¨áª¥ ­¥â ᢮¡®¤­®£® ¬¥áâ  (8)',0>,\
-
 
863
  ru,<'’ ¡«¨æ  FAT ã­¨ç⮦¥­  (9)',0>,\
-
 
864
  ru,<'„®áâ㯠§ ¯à¥éñ­ (10)',0>,\
-
 
865
  ru,<'Žè¨¡ª  ãáâனá⢠ (11)',0>,\
-
 
866
\
-
 
867
  en,<'Operation executed successfully (0)',0>,\
-
 
868
  en,<'',0>,\
-
 
869
  en,<'Function is not supported for the given filesystem (2)',0>,\
-
 
870
  en,<'Unknown filesystem (3)',0>,\
-
 
871
  en,<'',0>,\
-
 
872
  en,<'Unable to open file (5)',0>,\
-
 
873
  en,<'Operation executed successfully (6)',0>,\
-
 
874
  en,<'Pointer lies outside of application memory (7)',0>,\
-
 
875
  en,<'Disk is full (8)',0>,\
-
 
876
  en,<'FAT table is destroyed (9)',0>,\
-
 
877
  en,<'Access denied (10)',0>,\
-
 
878
  en,<'Device error (11)',0>
765
 
879
 
766
sz symbols_ex,';?.%"',"'"
880
sz symbols_ex,';?.%"',"'"
Line -... Line 881...
-
 
881
sz symbols   ,'#&*\:/<>|{}()[]=+-, '
-
 
882
 
-
 
883
ini_sec_window    db 'Window',0
-
 
884
ini_window_top    db 'Top',0
-
 
885
ini_window_left   db 'Left',0
-
 
886
ini_window_right  db 'Right',0
-
 
887
ini_window_bottom db 'Bottom',0
-
 
888
 
-
 
889
finfo_ini dd ?,?,?,AREA_TEMP,AREA_EDIT-AREA_TEMP
767
sz symbols   ,'#&*\:/<>|{}()[]=+-, '
890
          db '/rd/1/tinypad.ini',0
Line 768... Line 891...
768
 
891
 
Line 769... Line 892...
769
TINYPAD_END:     ; end of file
892
TINYPAD_END:     ; end of file
770
 
893
 
771
self_path rb PATHL
894
self_path rb PATHL
Line -... Line 895...
-
 
895
 
-
 
896
;-----------------------------------------------------------------------------
772
 
897
section @UDATA ;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
773
;-----------------------------------------------------------------------------
898
;-----------------------------------------------------------------------------
Line 774... Line 899...
774
section @UDATA ;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
899
 
775
;-----------------------------------------------------------------------------
900
f_info70 rd 7
Line 796... Line 921...
796
left_col      dd ?    ; leftmost visible char on line
921
left_col      dd ?    ; leftmost visible char on line
797
vscrl_top     dd ?
922
vscrl_top     dd ?
798
vscrl_size    dd ?
923
vscrl_size    dd ?
799
hscrl_top     dd ?
924
hscrl_top     dd ?
800
hscrl_size    dd ?
925
hscrl_size    dd ?
801
skinh         dd ?    ; skin height
926
;skinh         dd ?    ; skin height
802
__rc          dd ?,?,?,?
927
__rc          dd ?,?,?,?
803
;filelen       dd ?    ; file size (on save) ???
928
;filelen       dd ?    ; file size (on save) ???
804
filesize      dd ?    ; file size (on load) ???
929
filesize      dd ?    ; file size (on load) ???
805
ya            dd ?    ; for read_string
930
ya            dd ?    ; for read_string
806
;copy_start    dd ?    ; first line for copying (Ctrl+S)
931
;copy_start    dd ?    ; first line for copying (Ctrl+S)