Tinypad - Run in debugger by F10 key. Fasm - support debug parameter in command mode added

git-svn-id: svn://kolibrios.org@4274 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
tserj 2013-11-21 16:10:45 +00:00
parent 1842871f8f
commit 005bd6ea09
8 changed files with 1898 additions and 1864 deletions

View File

@ -131,6 +131,10 @@ NoOutDebugInfo:
cmp [esi], dword ',run' cmp [esi], dword ',run'
jne @f jne @f
mov [_run_outfile],1 mov [_run_outfile],1
@@:
cmp [esi], dword ',dbg'
jne @f
mov [_run_outfile],2
@@: @@:
mov [_mode],CONSOLE_MODE mov [_mode],CONSOLE_MODE
jmp start jmp start
@ -662,6 +666,12 @@ display_bytes_count:
mov edx,outfile mov edx,outfile
call make_fullpaths call make_fullpaths
xor ecx,ecx xor ecx,ecx
cmp [_run_outfile],2 ; param is ',dbg'
jne run
mcall 70,file_info_debug
jmp @f
run:
mcall 70,file_info_start mcall 70,file_info_start
@@: @@:
jmp exit_program jmp exit_program

View File

@ -33,7 +33,7 @@
; cannot simply be copied and put under another distribution licence ; cannot simply be copied and put under another distribution licence
; (including the GNU Public Licence). ; (including the GNU Public Licence).
VERSION_STRING equ "1.71.13" VERSION_STRING equ "1.71.14"
VERSION_MAJOR = 1 VERSION_MAJOR = 1
VERSION_MINOR = 71 VERSION_MINOR = 71

View File

@ -18,6 +18,7 @@ define mm.Search.FindNext key.f3
define mm.Search.Replace key.ctrl_h define mm.Search.Replace key.ctrl_h
define mm.Run.Run key.f9 define mm.Run.Run key.f9
define mm.Run.Debug key.f10
define mm.Run.Compile key.ctrl_f9 define mm.Run.Compile key.ctrl_f9
define mm.Run.DbgBoard open_debug_board define mm.Run.DbgBoard open_debug_board
define mm.Run.SysFuncs open_sysfuncs_txt define mm.Run.SysFuncs open_sysfuncs_txt

View File

@ -58,13 +58,13 @@ popup_res mm.File,\
et,'-' ,'' , ,\ et,'-' ,'' , ,\
et,'Välju' ,'Alt+X' ,Exit,\ et,'Välju' ,'Alt+X' ,Exit,\
\ \
sp,'Nuevo' ,'Ctrl+N' ,New ,\ sp,'Nuevo' ,'Ctrl+N' ,New ,\
sp,'Abrir...' ,'Ctrl+O' ,Open ,\ sp,'Abrir...' ,'Ctrl+O' ,Open ,\
sp,'Guardar' ,'Ctrl+S' ,Save ,\ sp,'Guardar' ,'Ctrl+S' ,Save ,\
sp,'Guardar como...','Ctrl+Shift+S',SaveAs,\ sp,'Guardar como...','Ctrl+Shift+S',SaveAs,\
sp,'-' ,'' , ,\ sp,'-' ,'' , ,\
sp,'Cerrar' ,'Ctrl+F4' ,Close ,\ sp,'Cerrar' ,'Ctrl+F4' ,Close ,\
sp,'-' ,'' , ,\ sp,'-' ,'' , ,\
sp,'Salir' ,'Alt+X' ,Exit sp,'Salir' ,'Alt+X' ,Exit
popup_res mm.Edit,\ popup_res mm.Edit,\
@ -89,11 +89,11 @@ popup_res mm.Edit,\
et,'-' ,'' , ,\ et,'-' ,'' , ,\
et,'Vali kõik' ,'Ctrl+A',SelAll,\ et,'Vali kõik' ,'Ctrl+A',SelAll,\
\ \
sp,'Cortar' ,'Ctrl+X',Cut ,\ sp,'Cortar' ,'Ctrl+X',Cut ,\
sp,'Copiar' ,'Ctrl+C',Copy ,\ sp,'Copiar' ,'Ctrl+C',Copy ,\
sp,'Pegar' ,'Ctrl+V',Insert,\ sp,'Pegar' ,'Ctrl+V',Insert,\
sp,'Eliminar' ,'' ,Delete,\ sp,'Eliminar' ,'' ,Delete,\
sp,'-' ,'' , ,\ sp,'-' ,'' , ,\
sp,'Seleccionar todo','Ctrl+A',SelAll sp,'Seleccionar todo','Ctrl+A',SelAll
popup_res mm.Search,\ popup_res mm.Search,\
@ -116,34 +116,38 @@ popup_res mm.Search,\
et,'Asenda...' ,'Ctrl+H',Replace ,\ et,'Asenda...' ,'Ctrl+H',Replace ,\
\ \
sp,'Posición...','Ctrl+G',Position,\ sp,'Posición...','Ctrl+G',Position,\
sp,'-' ,'' , ,\ sp,'-' ,'' , ,\
sp,'Buscar...' ,'Ctrl+F',Find ,\ sp,'Buscar...' ,'Ctrl+F',Find ,\
sp,'Buscar siguiente' ,'F3' ,FindNext,\ sp,'Buscar siguiente' ,'F3' ,FindNext,\
sp,'Reemplazar...' ,'Ctrl+H',Replace sp,'Reemplazar...' ,'Ctrl+H',Replace
popup_res mm.Run,\ popup_res mm.Run,\
ru,'‡ ¯ãáâ¨âì' ,'F9' ,Run ,\ ru,'‡ ¯ãáâ¨âì' ,'F9' ,Run ,\
ru,'‡ ¯ãáâ¨âì ¢ ¤¥¡ ££¥à¥','F10',Debug ,\
ru,'Š®¬¯¨«¨à®¢ âì' ,'Ctrl+F9',Compile ,\ ru,'Š®¬¯¨«¨à®¢ âì' ,'Ctrl+F9',Compile ,\
ru,'-' ,'' , ,\ ru,'-' ,'' , ,\
ru,'„®áª  ®â« ¤ª¨' ,'' ,DbgBoard,\ ru,'„®áª  ®â« ¤ª¨' ,'' ,DbgBoard,\
ru,'‘¨á⥬­ë¥ ä㭪樨','' ,SysFuncs,\ ru,'‘¨á⥬­ë¥ ä㭪樨','' ,SysFuncs,\
\ \
en,'Run' ,'F9' ,Run ,\ en,'Run' ,'F9' ,Run ,\
en,'Run in debugger' ,'F10' ,Debug ,\
en,'Compile' ,'Ctrl+F9',Compile ,\ en,'Compile' ,'Ctrl+F9',Compile ,\
en,'-' ,'' , ,\ en,'-' ,'' , ,\
en,'Debug board' ,'' ,DbgBoard,\ en,'Debug board' ,'' ,DbgBoard,\
en,'System functions' ,'' ,SysFuncs,\ en,'System functions' ,'' ,SysFuncs,\
\ \
et,'Käivita' ,'F9' ,Run ,\ et,'Käivita' ,'F9' ,Run ,\
et,'Käivita aastal siluri' ,'F10' ,Debug ,\
et,'Kompileeri' ,'Ctrl+F9',Compile ,\ et,'Kompileeri' ,'Ctrl+F9',Compile ,\
et,'-' ,'' , ,\ et,'-' ,'' , ,\
et,'Silumis paneel' ,'' ,DbgBoard,\ et,'Silumis paneel' ,'' ,DbgBoard,\
et,'Süsteemi funktsioonid' ,'' ,SysFuncs,\ et,'Süsteemi funktsioonid' ,'' ,SysFuncs,\
\ \
sp,'Ejecutar' ,'F9' ,Run ,\ sp,'Ejecutar' ,'F9' ,Run ,\
sp,'Ejecutar en el depurador' ,'F10' ,Debug ,\
sp,'Compilar' ,'Ctrl+F9',Compile ,\ sp,'Compilar' ,'Ctrl+F9',Compile ,\
sp,'-' ,'' , ,\ sp,'-' ,'' , ,\
sp,'Depuración' ,'' ,DbgBoard,\ sp,'Depuración' ,'' ,DbgBoard,\
sp,'Funciones del sistema' ,'' ,SysFuncs sp,'Funciones del sistema' ,'' ,SysFuncs
popup_res mm.Encoding,\ popup_res mm.Encoding,\
@ -187,14 +191,14 @@ popup_res mm.Options,\
et,'-' ,'', ,\ et,'-' ,'', ,\
et,'Rea numbrid' ,'',LineNumbers ,\ et,'Rea numbrid' ,'',LineNumbers ,\
\ \
sp,'Apariencia...' ,'',Appearance ,\ sp,'Apariencia...' ,'',Appearance ,\
sp,'-' ,'', ,\ sp,'-' ,'', ,\
sp,'Selección segura' ,'',SecureSel ,\ sp,'Selección segura' ,'',SecureSel ,\
sp,'Paréntesis automáticos' ,'',AutoBrackets,\ sp,'Paréntesis automáticos' ,'',AutoBrackets,\
sp,'Identación automática' ,'',AutoIndents ,\ sp,'Identación automática' ,'',AutoIndents ,\
sp,'Tabulación inteligente' ,'',SmartTabs ,\ sp,'Tabulación inteligente' ,'',SmartTabs ,\
sp,'Llenado óptimo al guardar','',OptimalFill ,\ sp,'Llenado óptimo al guardar','',OptimalFill ,\
sp,'-' ,'', ,\ sp,'-' ,'', ,\
sp,'Números en líneas' ,'',LineNumbers sp,'Números en líneas' ,'',LineNumbers
lsz s_defname,\ lsz s_defname,\

View File

@ -62,6 +62,7 @@ accel_table_main dd \
0x0000001C,key.return ,\ ; Return 0x0000001C,key.return ,\ ; Return
0x0000003D,key.f3 ,\ ; F3 0x0000003D,key.f3 ,\ ; F3
0x00000043,key.f9 ,\ ; F9 0x00000043,key.f9 ,\ ; F9
0x00000044,key.f10 ,\ ; F10
0x00000147,key.home ,\ ; Home 0x00000147,key.home ,\ ; Home
0x00000148,key.up ,\ ; Up 0x00000148,key.up ,\ ; Up
0x00000149,key.pgup ,\ ; PageUp 0x00000149,key.pgup ,\ ; PageUp

View File

@ -1,171 +1,175 @@
HISTORY: HISTORY:
4.0.6 (26/09/2010, Marat Zakiyanov aka Mario79, aka Mario) 4.0.7 (21/11/2013, Sergey Tyrnov aka tserj)
new features: new feature:
- Select file path with OpenDialog for Load and Save. - Run in debugger by F10
4.0.5 (Rus, mike.dld) 4.0.6 (26/09/2010, Marat Zakiyanov aka Mario79, aka Mario)
bug-fixes: new features:
- new tab is created when opening a file from Tinypad's home folder - Select file path with OpenDialog for Load and Save.
(was opening in current tab if there was a new file, even modified)
- show "save file" dialog for new files or files from Tinypad's home folder 4.0.5 (Rus, mike.dld)
- line is redrawn after lining up a single char and then deleting it bug-fixes:
(pressing Del twice) [#1] - new tab is created when opening a file from Tinypad's home folder
- update tab/window title and highlighting mode after file save (was opening in current tab if there was a new file, even modified)
- allocate 1024 bytes in case file not found (avoid crash) - show "save file" dialog for new files or files from Tinypad's home folder
changes: - line is redrawn after lining up a single char and then deleting it
- max line length changed back to 4GB, each line overhead is 6 bytes now (pressing Del twice) [#1]
- settings are stored in INI file (using libini), allowing binary to be compressed - update tab/window title and highlighting mode after file save
new features: - allocate 1024 bytes in case file not found (avoid crash)
- prompt to save modified file before closing (+fixes) changes:
- button to close current tab (+fixes) - max line length changed back to 4GB, each line overhead is 6 bytes now
- mouse scroll wheel support - settings are stored in INI file (using libini), allowing binary to be compressed
- numpad support new features:
- prompt to save modified file before closing (+fixes)
4.0.4 (mike.dld) - button to close current tab (+fixes)
bug-fixes: - mouse scroll wheel support
- statusbar contained hint after dialog operation cancelled - numpad support
- small drawing fix for gutter and line saved/modified markers
(incorrect calculations) 4.0.4 (mike.dld)
- incorrect lines marking on Ctrl+V bug-fixes:
- put filename of current tab into open/save dialog (noticed by Maxxxx32) - statusbar contained hint after dialog operation cancelled
changes: - small drawing fix for gutter and line saved/modified markers
- editor and other modifications to ease parts placement changing, (incorrect calculations)
including changes in look - incorrect lines marking on Ctrl+V
- modified/saved colors now match those in MSVS - put filename of current tab into open/save dialog (noticed by Maxxxx32)
- function 70 for *all* file operations (including diamond's fixes) changes:
- use memory manager instead of statically allocated region - editor and other modifications to ease parts placement changing,
- case-insensitive filenames input, to be able to open/save files with including changes in look
non-latin chars in name (russian etc.) - modified/saved colors now match those in MSVS
- reduced flickering (changes checker) - function 70 for *all* file operations (including diamond's fixes)
- overall code cleanup - use memory manager instead of statically allocated region
new features: - case-insensitive filenames input, to be able to open/save files with
- recode tables between CP866, CP1251 and KOI8-R (suggested by Victor) non-latin chars in name (russian etc.)
- tabbed interface, ability to open several files in one app instance - reduced flickering (changes checker)
(thanks IRC guys for ideas and testing) - overall code cleanup
- make any tab default to compile it disregarding currently active tab new features:
- configuration dialog (colors, tabs positioning) - recode tables between CP866, CP1251 and KOI8-R (suggested by Victor)
- tabbed interface, ability to open several files in one app instance
4.0.3 (mike.dld) (thanks IRC guys for ideas and testing)
bug-fixes: - make any tab default to compile it disregarding currently active tab
- 1-char selection if pressing <BS> out of real line length - configuration dialog (colors, tabs positioning)
- fault in `writepos`, added call to function 9
- main menu items weren't highlighted if popup opened and cursor 4.0.3 (mike.dld)
isn't in main menu item's area bug-fixes:
- statusbar and textboxes drawing fixes (wrong colors) - 1-char selection if pressing <BS> out of real line length
- perform no redraw while pressing Shift, Ctrl, Alt keys - fault in `writepos`, added call to function 9
- data length from DOCPAK in string representation (fixed by diamond) - main menu items weren't highlighted if popup opened and cursor
- compare file extension case-insensitively (fixed by diamond) isn't in main menu item's area
changes: - statusbar and textboxes drawing fixes (wrong colors)
- function 70 instead of 58 for files loading/saving - perform no redraw while pressing Shift, Ctrl, Alt keys
- clientarea-relative drawing (less code) - data length from DOCPAK in string representation (fixed by diamond)
- every line's dword is now splitted into 2 words; - compare file extension case-insensitively (fixed by diamond)
low word - line block length, so max line length is 64KB now changes:
high word - various flags. for now, only 2 of 16 bits are used: - function 70 instead of 58 for files loading/saving
if bit #0 is set, line was modified since file open - clientarea-relative drawing (less code)
if bit #1 is set, line was saved after last modification - every line's dword is now splitted into 2 words;
high word could also be further used for code collapsing and different low word - line block length, so max line length is 64KB now
line marking features (breakpoints, errors, bookmarks, etc.) high word - various flags. for now, only 2 of 16 bits are used:
new features: if bit #0 is set, line was modified since file open
- line markers for modified and saved lines if bit #1 is set, line was saved after last modification
- status messages for various actions high word could also be further used for code collapsing and different
line marking features (breakpoints, errors, bookmarks, etc.)
4.0.2 (mike.dld) new features:
bug-fixes: - line markers for modified and saved lines
- program terminates if started with parameters (fine for DOCPAK) - status messages for various actions
4.0.1 (mike.dld) 4.0.2 (mike.dld)
bug-fixes: bug-fixes:
- unable to run program after exiting from main menu (Alt+X) - program terminates if started with parameters (fine for DOCPAK)
new features:
- integration with DOCPAK 4.0.1 (mike.dld)
bug-fixes:
4.0 (mike.dld) - unable to run program after exiting from main menu (Alt+X)
bug-fixes: new features:
- main menu popups' "on show" was called only for first shown popup - integration with DOCPAK
- clear selection on left/right arrow keys
new features: 4.0 (mike.dld)
- "replace" dialog (w/o "skip", "replace all") bug-fixes:
- line numbers display - main menu popups' "on show" was called only for first shown popup
- options (except "appearance" and "smart tabulation") - clear selection on left/right arrow keys
- options saving (colors, window position, "Options" popup triggers) new features:
- "replace" dialog (w/o "skip", "replace all")
4.0 beta 2 (mike.dld) - line numbers display
bug-fixes: - options (except "appearance" and "smart tabulation")
- unable to start if /rd/1/example.asm is missing (from Halyavin) - options saving (colors, window position, "Options" popup triggers)
- clicking on menu items draws main window in popup (from Rohan)
- passed parameters aren't taken into account (from Mario79) 4.0 beta 2 (mike.dld)
- background isn't erased if text lines < screen lines after bug-fixes:
selection deletion (from Rohan) - unable to start if /rd/1/example.asm is missing (from Halyavin)
- clicking on menu items draws main window in popup (from Rohan)
4.0 beta 1 (mike.dld) - passed parameters aren't taken into account (from Mario79)
menu bar and popup menu; - background isn't erased if text lines < screen lines after
removed buttons from the top and input fields from the bottom since selection deletion (from Rohan)
now they're accesible through main/popup menu;
improved keyboard handling (using 66th function); 4.0 beta 1 (mike.dld)
support for almost all FASMW keyboard shourtcuts; menu bar and popup menu;
added text selection ability, standard selection operations removed buttons from the top and input fields from the bottom since
(copy,cut,paste); now they're accesible through main/popup menu;
new integrated dialogs (open, save, find) improved keyboard handling (using 66th function);
fix to collapse SPACEs into TABs only for *.asm and *.inc files support for almost all FASMW keyboard shourtcuts;
added text selection ability, standard selection operations
3.78a (mike.dld) (copy,cut,paste);
fixed termination while typing in x positions higher than (line_length+10); new integrated dialogs (open, save, find)
improved drawing on small heights fix to collapse SPACEs into TABs only for *.asm and *.inc files
don't draw window while its height = 0 (Kolibri "minimize" support)
3.78a (mike.dld)
3.78 (mike.dld) fixed termination while typing in x positions higher than (line_length+10);
now lines may be of ANY length; improved drawing on small heights
optimized memory usage (less memory for internal file representation) don't draw window while its height = 0 (Kolibri "minimize" support)
after loading file, it's internal size equals to its real size
plus 14 bytes for each line (4 bytes for line length 3.78 (mike.dld)
and 10 spaced to the end - to reduce data relocations count); now lines may be of ANY length;
completely rewritten keyboard handling; optimized memory usage (less memory for internal file representation)
added horizontal scrollbar; after loading file, it's internal size equals to its real size
all line feed formats are supported: WIN(CRLF),*NIX(LF),MAC(CR); plus 14 bytes for each line (4 bytes for line length
etc. and 10 spaced to the end - to reduce data relocations count);
completely rewritten keyboard handling;
3.77 (mike.dld) added horizontal scrollbar;
changed save_string to collapse SPACEs into TABs; all line feed formats are supported: WIN(CRLF),*NIX(LF),MAC(CR);
rewrote drawfile from scratch (speed++) etc.
through some drawing improvements needed
(some checkups to reduce flickering); 3.77 (mike.dld)
writepos (size--); changed save_string to collapse SPACEs into TABs;
fixed drawing window while height < 100px, and for non-asm files; rewrote drawfile from scratch (speed++)
several small fixes; speed/size optimizations through some drawing improvements needed
(some checkups to reduce flickering);
3.76 (mike.dld) writepos (size--);
changed loadfile/loadhdfile to expand TABs into SPACEs; fixed drawing window while height < 100px, and for non-asm files;
changed TAB,ENTER,DELETE,BSPACE keys behaviour (rewritten from scratch); several small fixes; speed/size optimizations
vertical scrollbar;
extra window resizing capabilities (added a couple of constants); 3.76 (mike.dld)
completely new text cursor management & moving text cursor with mouse; changed loadfile/loadhdfile to expand TABs into SPACEs;
improved search function, moving cursor to beginning of text found; changed TAB,ENTER,DELETE,BSPACE keys behaviour (rewritten from scratch);
adjustable max line width (change LINE_WIDTH & recompile) // (obsolet) vertical scrollbar;
extra window resizing capabilities (added a couple of constants);
3.75a completely new text cursor management & moving text cursor with mouse;
fixed converting char to upper case in read_string improved search function, moving cursor to beginning of text found;
adjustable max line width (change LINE_WIDTH & recompile) // (obsolet)
3.75
rewrote save_file from scratch; bugfix in loadfile; 3.75a
fixed converting char to upper case in read_string
3.74
optimisation 3.75
rewrote save_file from scratch; bugfix in loadfile;
3.73
completly new load_file function 3.74
optimisation
3.72
speed++ 3.73
completly new load_file function
3.71
error beep 3.72
speed++
3.6,3.7:
many bugs fixed 3.71
simple toolbar error beep
compile, run applications from TINYPAD, all fasm output is in debug board
TAB button 3.6,3.7:
auto-indent many bugs fixed
Ctrl+L - insert comment string simple toolbar
compile, run applications from TINYPAD, all fasm output is in debug board
TAB button
auto-indent
Ctrl+L - insert comment string

View File

@ -2,8 +2,8 @@
; project name: TINYPAD ; project name: TINYPAD
; compiler: flat assembler 1.67.21 ; compiler: flat assembler 1.67.21
; memory to compile: 3.0/9.0 MBytes (without/with size optimizations) ; memory to compile: 3.0/9.0 MBytes (without/with size optimizations)
; version: SVN (4.0.5) ; version: SVN (4.0.7)
; last update: 2008-07-18 (Jul 18, 2008) ; last update: 2013-11-21 (Nov 21, 2013)
; minimal kernel: revision #823 (svn://kolibrios.org/kernel/trunk) ; minimal kernel: revision #823 (svn://kolibrios.org/kernel/trunk)
;----------------------------------------------------------------------------- ;-----------------------------------------------------------------------------
; originally by: Ville Michael Turjanmaa >> villemt@aton.co.jyu.fi ; originally by: Ville Michael Turjanmaa >> villemt@aton.co.jyu.fi
@ -35,7 +35,7 @@ include 'tinypad.inc'
header '01',1,@CODE,TINYPAD_END,STATIC_MEM_END,MAIN_STACK,@PARAMS,ini_path header '01',1,@CODE,TINYPAD_END,STATIC_MEM_END,MAIN_STACK,@PARAMS,ini_path
APP_VERSION equ 'SVN (4.0.6)' APP_VERSION equ 'SVN (4.0.7)'
TRUE = 1 TRUE = 1
FALSE = 0 FALSE = 0
@ -193,9 +193,9 @@ section @CODE ;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
xor eax,eax xor eax,eax
mov [edi],al mov [edi],al
;--------------------------------------------------------------------- ;---------------------------------------------------------------------
;OpenDialog initialisation ;OpenDialog initialisation
push dword OpenDialog_data push dword OpenDialog_data
call [OpenDialog_Init] call [OpenDialog_Init]
;--------------------------------------------------------------------- ;---------------------------------------------------------------------
@ -242,8 +242,8 @@ still:
mov [OpenDialog_data.type],eax mov [OpenDialog_data.type],eax
popa popa
; invoke OpenDialog ; invoke OpenDialog
push dword OpenDialog_data push dword OpenDialog_data
call [OpenDialog_Start] call [OpenDialog_Start]
cmp [OpenDialog_data.status],1 cmp [OpenDialog_data.status],1
jne .3 jne .3
@ -257,7 +257,7 @@ still:
mov eax,edi mov eax,edi
mov [tb_opensave.length],al mov [tb_opensave.length],al
popa popa
cmp [bot_mode2],0 cmp [bot_mode2],0
je .2 je .2
call save_file call save_file
@ -293,7 +293,7 @@ copy_str_2:
xor eax,eax xor eax,eax
mov [esi],al mov [esi],al
inc esi inc esi
mov edi,edx ; edi filename_area mov edi,edx ; edi filename_area
call copy_str_1 call copy_str_1
ret ret
;----------------------------------------------------------------------------- ;-----------------------------------------------------------------------------
@ -466,7 +466,9 @@ endp
;----------------------------------------------------------------------------- ;-----------------------------------------------------------------------------
proc start_fasm ;///////////////////////////////////////////////////////////// proc start_fasm ;/////////////////////////////////////////////////////////////
;----------------------------------------------------------------------------- ;-----------------------------------------------------------------------------
; BL = run after compile ; BL = 0 - compile
; BL = 1 - run after compile
; BL = 2 - run under mtdbg after compile
;----------------------------------------------------------------------------- ;-----------------------------------------------------------------------------
; FASM infile,outfile,/path/to/files[,run] ; FASM infile,outfile,/path/to/files[,run]
;----------------------------------------------------------------------------- ;-----------------------------------------------------------------------------
@ -516,11 +518,15 @@ proc start_fasm ;/////////////////////////////////////////////////////////////
sub ecx,esi sub ecx,esi
rep movsb rep movsb
cmp bl,0 ; run outfile ? cmp bl,0 ; compile outfile ?
je @f je @f
mov dword[edi],',run' mov dword[edi],',run'
cmp bl,1 ; run outfile ?
je do_run
mov dword[edi],',dbg'
do_run:
add edi,4 add edi,4
@@: @@:
mov al,0 mov al,0
stosb stosb
@ -696,7 +702,7 @@ temp_dir_pach:
rb 4096 rb 4096
;--------------------------------------------------------------------- ;---------------------------------------------------------------------
fname_Info: fname_Info:
rb 4096 ; filename rb 4096 ; filename
;--------------------------------------------------------------------- ;---------------------------------------------------------------------
filename_area: filename_area:
rb 256 rb 256

File diff suppressed because it is too large Load Diff