News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

RadASM 2.2.0.7 bugtest

Started by KetilO, February 24, 2006, 01:08:53 PM

Previous topic - Next topic

KetilO

Get it here:
http://www.radasm.com/Upload/RadASM2207.zip

Whats new:

o Activated code properties when no project is open.
o You no longer need to reload project after setting project options.
o SourceSafe addin now supports sub folders.
o Added descriotion and template on creating drivers (masm).
o Added full screen editing. Use Ctrl+W to toggle.
o It is now possible to select button size in toolbar creator.
o Pushing Ctrl while double clicking in file/project browser will
  open the file in RadASM instead of an external tool. This also works
  with .bat and .exe files. Files of type res, obj, dll, exe, bmp and ico
  are auto opened in RadASM's hex editor.
o Added some file delete security on build commands.
o Improved project groups tool a little.
o Fixed bug where backup did not work if project path contained dot.
o Fixed comment block hilite bug in RAEdit custom control.
o Fixed a bug in RAGrid custom control where column format string was
  lost on GM_RESETCONTENT.
o Fixed a bug in RAGrid custom control where row number was not returned
  from GM_ADDROW.
o Fixed a bug in RADTollBar addin where customizeable toolbar did not work
  on win95, 98 and me.
o Fixed bug when opening files in external tools.
o Fixed a bug in SourceSafe addin where wrong icon would be shown in project browser.
o Updated exception report e-mail address (flipcase addin).
o Fixed a tab size bug in RAEdit when tabs are expanded to space.
o Fixed an ObjAsm32 syntax hilite problem.
o Fixed a bug where creating a template failed if project path contained dot.

KetilO

drizz

Hi Ketil0, i have a bug report.

i get exception access violation when adding new dialogs to the project,
everything works fine with the 2.2.0.6 version.

here is my debug analysis:

Arg1 is NULL?
0041A356  |.>push -15                                ; /Index = GWL_USERDATA
0041A358  |.>push dword ptr [ebp+8]                  ; |hWnd = NULL
0041A35B  |.>call <jmp.&user32.GetWindowLongA>       ; \GetWindowLongA


access violation here:
0041A393  |.>mov eax,[esi+11D]

this procedure is called from:
0041EFE3  |.>push 0                                  ; /Arg2 = 00000000
0041EFE5  |.>push dword ptr [ebp-4]                  ; |Arg1 = 00000000 // ????
0041EFE8  |.>call 0041A34F                           ; \RadASM.0041A34F // Here

and i found that it has to do something with this global handle
0041CA16      FF35 E4E04400           push dword ptr [44E0E4]
in 2.2.0.6 the handle is set at the begining:
0041EBB0  |.  8945 FC                 mov [ebp-4],eax
0041EBB3  |.  A3 E4D04400             mov [44D0E4],eax


Quoteo You no longer need to reload project after setting project options.
o Added full screen editing. Use Ctrl+W to toggle.
this is great!!!  :thumbu
The truth cannot be learned ... it can only be recognized.

KetilO

Thanks drizz

New upload:

o Fixed bug reported by rizz
o Fixed a bug where switching from fullscreen mode could leave the edit window hidden.

KetilO

KetilO

Hi all

New upload:

o Fixed bug where dialogs did not work if project name / folder contained dot.

KetilO

Shantanu Gadgil

Hi Ketil, (using hutch's poasm13)

I am attaching a zip file with the problem in question.

Both the projects are using common code from the "COMMON" folder.

1. When I say "Compile Modules", although the compilation is fine, there is a message "Make error occured"

2. Also, the .obj of the module get created in the same directory as that of the module. Can it possibly be done the it gets created in the directory of the .rap file ?
Same thing happens even if I compile the module from the cmdline (with current dir as that of the .rap file)
This can be *achieved* using the outfile parameter (but will need macros for "filename", etc ???)

[attachment deleted by admin]
To ret is human, to jmp divine!

Mark Jones

Hi Ketil, question please. I created a project with 4 ASM modules. To facilitate compiling everything at once, I changed the "assemble modules" entry in the MAKE menu to "Go (&Modules)" with a command of 6,2,3,4. This does work to assemble everything, but with a catch. When any one or more of the modules are changed, running "Go (Modules)" produces an error like this:

Quote from: RadASM Output
TTszCopy.obj is newer than source.
TTszComp.obj is newer than source.
TTszLen.obj is newer than source.
C:\Masm32\Bin\ML.EXE /c /coff /Cp /nologo /I"C:\Masm32\Include" "TTrandf.asm"
Assembling: TTrandf.asm

Make error(s) occured.
Total compile time 610 ms

... the compilation stops afer any module is assembled. Then if I choose the same "Go (Modules)" menu again, the project assembles and links fully:

Quote from: RadASM Output
TTszCopy.obj is newer than source.
TTszComp.obj is newer than source.
TTszLen.obj is newer than source.
TTrandf.obj is newer than source.
C:\Masm32\Bin\ML.EXE /c /coff /Cp /nologo /I"C:\Masm32\Include" "TT.asm"
Assembling: TT.asm
C:\Masm32\Bin\LINK.EXE /SUBSYSTEM:CONSOLE /RELEASE /FORCE:MULTIPLE /VERSION:4.0 /LIBPATH:"C:\Masm32\Lib" /OUT:"TT.exe" *.obj
Executing:
"C:\MASM32\RadASM\Helios\TimersTestbed\TT.exe"

Make finished.
Total compile time 1297 ms

Is there another way to assemble and link all modules at once, or if not, could this feature be added? Thanks a lot! :U
"To deny our impulses... foolish; to revel in them, chaos." MCJ 2003.08

KetilO

Hi Mark Jones

Strange, it works as it should here.
Will you try the included project?

KetilO

[attachment deleted by admin]

Shantanu Gadgil

the issue mentioned above (the RadASM+POASM.zip) resolved.

Issue is with POASM, not RadASM!!!
MASM compiles the .asm correctly into current directory :)
To ret is human, to jmp divine!

Mark Jones

Hi Ketil, yes your modules.zip works properly! Hmmm, I will study it and report the difference. Thank you. :bg
"To deny our impulses... foolish; to revel in them, chaos." MCJ 2003.08

Mark Jones

Aaaha, found it. Silly me. :red "Asm Module" line in project options was ",O,$B\ML.EXE /c /coff /Cp /nologo /I"$I",*.asm" - missing the "*.obj" first part.

Noticed that RadASM no longer has to reload the project when options are changed. Nice! :U
"To deny our impulses... foolish; to revel in them, chaos." MCJ 2003.08

Shantanu Gadgil

Hi Ketil,
Is there any way of having different profiles of the assemblers.

That is, if I choose a profile named MASM32, then it will set the following things:
App Dir = C:\MASM32
Bin Dir = $A\Bin
Assembler EXE = ML.EXE
Assembler Option = /c /coff...
Linker EXE = LINK.EXE
Linker Options = /subsystem....
INCLUDE dirs = $A\Include
LIB dirs = $A\Lib
...
...

These are the few options I can think of right now, complete list would be quite extensive. :)

The reason I ask is because, say if I want to check my project with two assemblers (MASM and POASM), the thing I have to right now is "Options" > "Set Paths" -> App and change the various options in "Project" > "Project Options"

Is there any current method to do the same? If not how about the idea? :)
To ret is human, to jmp divine!

KetilO

Hi shantanu_gadgil

Suggested method:

Create a new assembler poasm
Then all you have to do is edit the rap file and chenge the assembler and build options.

[Project]
Assembler=masm

Chane to:

[Project]
Assembler=poasm

Also have two build sections and move to top the one you will use

[MakeDef]
Menu=1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0
1=4,O,$B\RC.EXE /v,1
2=3,O,$B\ML.EXE /c /coff /Cp /nologo /I"$I",2
3=5,O,$B\LINK.EXE /SUBSYSTEM:WINDOWS /RELEASE /VERSION:4.0 /LIBPATH:"$L" /OUT:"$5",3,4
4=0,0,,5
5=rsrc.obj,O,$B\CVTRES.EXE,rsrc.res
7=0,0,"$E\OllyDbg",5
6=*.obj,O,$B\ML.EXE /c /coff /Cp /nologo /I"$I",*.asm
11=4,O,$B\RC.EXE /v,1
12=3,O,$B\ML.EXE /c /coff /Cp /Zi /nologo /I"$I",2
13=5,O,$B\LINK.EXE /SUBSYSTEM:WINDOWS /DEBUG /VERSION:4.0 /LIBPATH:"$L" /OUT:"$5",3,4
14=0,0,,5
15=rsrc.obj,O,$B\CVTRES.EXE,rsrc.res
16=*.obj,O,$B\ML.EXE /c /coff /Cp /nologo /I"$I",*.asm
17=0,0,"$E\OllyDbg",5

Then reopen the projrct

Remember that in RadASM 2.2.0.7 you can hold the Ctrl key while opening the .rap file and you will be able to edit the file.

KetilO