1,4 → 1,4 |
; SYSTEM HAEDER: |
; SYSTEM HEADER: |
use32 |
org 0x0 |
db 'MENUET01' ; identifier |
9,12 → 9,12 |
dd 0xeff0 ;0x4fffff ;0x3ff000;0xeff0 ; esp |
dd I_PARAM ; parameters |
dd 0 ; reserved |
include 'ascl.inc' |
include 'lang.inc' |
include 'ascl.inc' |
include 'macros.inc' ; useful stuff |
include 'dialogs1.inc' |
include 'scroll.inc' |
;include 'debug.inc' |
include 'debug.inc' |
purge mov ; SPEED |
;****************************************************************************** |
; INITIALIZING |
25,6 → 25,38 |
cmp [I_PARAM],byte 0 |
jz noparams |
|
;//Willow |
cmp byte[I_PARAM],'*' |
jne .noipc |
; convert size from decimal representation to dword |
mov esi, I_PARAM+1 |
xor edx, edx |
xor eax, eax |
@@: |
lodsb |
test al, al |
jz @f |
lea edx, [edx*4+edx] |
lea edx, [edx*2+eax] |
jmp @b |
@@: |
add edx,20 |
mcall 60,1,0x10000-16 |
mov dword[0x10000+-16+4],8 |
mcall 40,1000000b |
mcall 23,200 |
; dpd eax |
cmp eax,7 |
jne exit_now |
mov esi,0x10000-16 |
mov byte[esi],1 |
call mask_events |
mov eax,[esi+12] |
inc eax |
call file_found |
jmp do_load_file.restorecursor |
.noipc: |
;//Willow |
; parameters are at I_PARAM |
mov esi,I_PARAM |
mov edi,filename |
413,13 → 445,20 |
int 0x40 |
|
|
|
if lang eq ru |
putlabel 190,120,'®åà ¨âì ¤®ªã¬¥â?',cl_White |
|
drawlbut 170,140,30,15,' ',49,[sc.work_button],cl_White |
drawlbut 230,140,30,15,'¥â',48,[sc.work_button],cl_White |
drawlbut 290,140,45,15,'⬥ ',47,[sc.work_button],cl_White |
else |
putlabel 190,120,'Save the document?',cl_White |
|
drawlbut 170,140,30,15,'Yes',49,[sc.work_button],cl_White |
drawlbut 230,140,30,15,'No',48,[sc.work_button],cl_White |
drawlbut 290,140,45,15,'Cancel',47,[sc.work_button],cl_White |
end if |
|
mov [exit_wnd_on],1 |
;---------------- |
|
2537,7 → 2576,11 |
|
cmp [modified],1 |
jne no_mod |
if lang eq ru |
putlabel 270,386,'
',[sc.work_button_text] |
else |
putlabel 270,386,'MODIFIED',[sc.work_button_text] |
end if |
no_mod: |
popa |
|
2575,9 → 2618,13 |
mov edx,cl_White |
int 0x40 |
|
|
if lang eq ru |
drawlbut 375,110,50,15,'®¨áª',50,[sc.work_button],[sc.work_button_text] |
drawlbut 375,130,50,15,'⬥ ',94,[sc.work_button],[sc.work_button_text] |
else |
drawlbut 375,110,50,15,'Search',50,[sc.work_button],[sc.work_button_text] |
drawlbut 375,130,50,15,'Cancel',94,[sc.work_button],[sc.work_button_text] |
end if |
|
call read_string |
|
2618,9 → 2665,12 |
mov edx,cl_White |
int 0x40 |
|
if lang eq ru |
putlabel 195,120,'âப ¥ ©¤¥ !',cl_White |
else |
putlabel 195,120,'String not found!',cl_White |
end if |
|
putlabel 195,120,'âப ¥ ©¤¥ !',cl_White |
|
drawlbut 235,140,30,15,'ª',94,[sc.work_button],cl_White |
|
ret |
3501,13 → 3551,20 |
mov edx,cl_White |
int 0x40 |
|
|
if lang eq ru |
putlabel 190,120,'®åà ¨âì ¤®ªã¬¥â?',cl_White |
|
drawlbut 170,140,30,15,' ',46,[sc.work_button],cl_White |
drawlbut 230,140,30,15,'¥â',45,[sc.work_button],cl_White |
drawlbut 290,140,45,15,'⬥ ',47,[sc.work_button],cl_White |
else |
putlabel 190,120,'Save document?',cl_White |
|
drawlbut 170,140,30,15,'Yes',46,[sc.work_button],cl_White |
drawlbut 230,140,30,15,'No',45,[sc.work_button],cl_White |
drawlbut 290,140,45,15,'Cancel',47,[sc.work_button],cl_White |
end if |
|
mov [exit_wnd_on],1 |
jmp still |
;------------- |
3666,10 → 3723,17 |
mov edx,0x00aaaaaa |
int 0x40 |
|
if lang eq ru |
drawlbut 5,22,70,15,' ©«',97,[sc.work_button],[sc.work_button_text] |
drawlbut 75,22,70,15,'®¤',98,[sc.work_button],[sc.work_button_text] |
drawlbut 145,22,70,15,'¥ªáâ',96,[sc.work_button],[sc.work_button_text] |
drawlbut 431,22,70,15,'¯à ¢ª ',99,[sc.work_button],[sc.work_button_text] |
else |
drawlbut 5,22,70,15,'File',97,[sc.work_button],[sc.work_button_text] |
drawlbut 75,22,70,15,'Code',98,[sc.work_button],[sc.work_button_text] |
drawlbut 145,22,70,15,'Text',96,[sc.work_button],[sc.work_button_text] |
drawlbut 431,22,70,15,'Help',99,[sc.work_button],[sc.work_button_text] |
end if |
|
ret |
|
3688,6 → 3752,7 |
;int 0x40 |
mov [menu_is_on],1 |
|
if lang eq ru |
drawlbut 5,38,70,15,'®¢®¥ ®ª®',100,[sc.grab_button],[sc.grab_button_text] |
drawlbut 5,53,70,15,'®¢ë©',101,[sc.grab_button],[sc.grab_button_text] |
drawlbut 5,68,70,15,'®åà ¨âì',2,[sc.grab_button],[sc.grab_button_text] |
3694,15 → 3759,30 |
drawlbut 5,83,70,15,'®åà. ª ª',102,[sc.grab_button],[sc.grab_button_text] |
drawlbut 5,98,70,15,'âªàëâì',103,[sc.grab_button],[sc.grab_button_text] |
drawlbut 5,113,70,15,'ë室',104,[sc.grab_button],[sc.grab_button_text] |
else |
drawlbut 5,38,70,15,'New window',100,[sc.grab_button],[sc.grab_button_text] |
drawlbut 5,53,70,15,'New',101,[sc.grab_button],[sc.grab_button_text] |
drawlbut 5,68,70,15,'Save',2,[sc.grab_button],[sc.grab_button_text] |
drawlbut 5,83,70,15,'Save as',102,[sc.grab_button],[sc.grab_button_text] |
drawlbut 5,98,70,15,'Open',103,[sc.grab_button],[sc.grab_button_text] |
drawlbut 5,113,70,15,'Exit',104,[sc.grab_button],[sc.grab_button_text] |
end if |
jmp still |
|
draw_win_menu_code: |
call clear_screen |
call drawwindow |
if lang eq ru |
drawlbut 75,38,70,15,'®¬¯¨«.',10000,[sc.grab_button],[sc.grab_button_text] |
drawlbut 75,53,70,15,' ¯ãáâ¨âì',10001,[sc.grab_button],[sc.grab_button_text] |
drawlbut 75,68,70,15,'®áª ®â«.',10002,[sc.grab_button],[sc.grab_button_text] |
drawlbut 75,83,70,15,'SysFunc',10003,[sc.grab_button],[sc.grab_button_text] |
else |
drawlbut 75,38,70,15,'Compile',10000,[sc.grab_button],[sc.grab_button_text] |
drawlbut 75,53,70,15,'Run',10001,[sc.grab_button],[sc.grab_button_text] |
drawlbut 75,68,70,15,'Debug board',10002,[sc.grab_button],[sc.grab_button_text] |
drawlbut 75,83,70,15,'SysFunc',10003,[sc.grab_button],[sc.grab_button_text] |
end if |
mov [menu_is_on],1 |
jmp still |
|
3709,9 → 3789,15 |
draw_win_menu_text: |
call clear_screen |
call drawwindow |
if lang eq ru |
drawlbut 145,38,70,15,'GoTo Line#',95,[sc.grab_button],[sc.grab_button_text] |
drawlbut 145,53,70,15,' ©â¨',92,[sc.grab_button],[sc.grab_button_text] |
drawlbut 145,68,70,15,' ©â¨ ¤ «¥¥',50,[sc.grab_button],[sc.grab_button_text] |
else |
drawlbut 145,38,70,15,'GoTo Line#',95,[sc.grab_button],[sc.grab_button_text] |
drawlbut 145,53,70,15,'Find',92,[sc.grab_button],[sc.grab_button_text] |
drawlbut 145,68,70,15,'Find next',50,[sc.grab_button],[sc.grab_button_text] |
end if |
mov [menu_is_on],1 |
jmp still |
|
3724,9 → 3810,15 |
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
if lang eq ru |
openerrtext db '訡ª ®âªàëâ¨ï ä ©« ¨«¨ ®âªàë⨥ ®â¬¥¥®!',0 |
saveerrtext db '訡ª á®åà ¥¨ï ä ©« ¨«¨ á®åà ¥¨¥ ®â¬¥¥®!',0 |
newfileerror db '¥¢®§¬®¦® á®å¤ âì ®¢ë© ä ©«',0 |
newfileerror db '¥¢®§¬®¦® ᮧ¤ âì ®¢ë© ä ©«',0 |
else |
openerrtext db 'Error while opening file or opening canceled!',0 |
saveerrtext db 'Error while saving file or saving canceled!',0 |
newfileerror db 'Cannot create new file',0 |
end if |
; ******************** |
; ****** DATA ****** |
; ******************** |