RadASM 3.0 is a complete rewrite of RadASM. Some new features and many improvements.
RadASM 3.0 is in no way compatible with older versions of RadASM.
Ini files, project files, api files and addins are all incompatible.
Supported assemblers:
-------------------------------
Masm, GoAsm, Fasm and Tasm
Supported high level languages:
-------------------------------------------
VC6 C/C++, BCC 5.5 C/C++
WARNING!
Do NOT install RadASM 3.0 in the same directory as an older version of RadASM.
Get it here:
https://fbedit.svn.sourceforge.net/svnroot/fbedit/RadASM30/Release/RadASM.zip
KetilO
Quick look at it and I like it! Great job KetilO!
Found a typo.. in the new project dialog - settings on this tab will be overwritten if a template is selected
Any provisions for adding other programming languages ?
James
Quote from: jcfuller on May 31, 2010, 02:44:55 PM
Any provisions for adding other programming languages ?
James
Like for example Sol_Asm :D ;)
Quote from: BogdanOntanu on May 31, 2010, 03:58:46 PM
Quote from: jcfuller on May 31, 2010, 02:44:55 PM
Any provisions for adding other programming languages ?
James
Like for example Sol_Asm :D ;)
Or g++ or
http://basic-compiler.com/forum/index.php?board=38.0
James
Just tested it in Win2k (virtual machine) . Congratulations it works ok in general :)
Found one possible bug:
1)Apparently the [] brace completion does not work.
What I did:
a) I have typed: mov eax,hwnd
b) then typed "]" (right brace) the braces appeared but they did not include the "hwnd" keyword. The resulted code line was: mov eax,hwnd[].
c) I have tried on the left of hwnd and the same happened but this time the braces were on the left like this: mov eax, []hwnd.
AFAIK the older versions did it like this: mov eax,[hwnd]
Some other possible probllems:
1) on 800x600 resolution the toolbars layout is strange: the Go button and toolbar was on far right and the release/Debug mode combo was alone on another toolbar line. However this was no a real problem since all buttons worked as expected.
2) Could not get the debugger to work.
What I did:
a) compiled a test project in debug mode
b) placed a breakpoint
c) Run from the Debug menu.
Nothing happened. The application executed as before and the breakpoint was not triggered. Maybe it is because of Win2k.
Suggestions:
1) to add an option to clear the edit marker on the left at acertain stage in editing. For example after I make a commit on SVN and start doing edit again. Maybe Ctrl+Click on Save all files?
I like the fact thet the API is common for the target platform and programming language. This means that MASM, FASM, GOASM all use the very same API file making updates easyer :)
I guess that there is an option to have API files for Solar_OS or Linux /Unix or other cross compiliing target OS?
I hope that the limits for the number of files in the project are removed.
I will continue to test on other configurations and other features and let you know if I find other possible problems.
Again great work ;)
Bogdan
Thanks for testing.
Right now adding new programming languages is not a priority. I am working on documenting the ini / project files and make options.
Hopefully this will help you partisipate by adding more make options / templates and snipplets or even add a new programming language.
KetilO
Hi Bogdan
Bracematch:
Yes, brace match does not try to enclose any word yet.
Toolbars:
A rebar is used to hold the toolbars. You can arrange the toolbars the way you want by first unlocking them (View / Toolbar / Lock Toolbar).
Debugger:
The debugger is for Masm only. Unfortunatly some of the language ini files has the debugger turned on.
For all except Masm it shold be set as follows:
[Make]
Debug=0
Suggestion:
Why not just reopen the project?
Api files:
There can be both language dependant and project dependant api files.
Project file limit:
Sorry the limit is 256 files.
KetilO
Quote from: KetilO on June 01, 2010, 05:40:48 AM
Debugger:
The debugger is for Masm only.
I did my testing on MASM.
Quote
Suggestion:
Why not just reopen the project?
My projects are big and it takes a long time to re-open them.
Quote
Api files:
There can be both language dependant and project dependant api files.
Great. How about a "target OS" dependent API file?
IMHO there is one API file for Windows, another API file for Linux, and another API file for my Solar_OS.
It does not matter if I program in ASM or C/C++ and it does not change with every project I make.
Quote
Project file limit:
Sorry the limit is 256 files.
Ooops... my projects have 400 or more ASM files...
QuoteI hope that the limits for the number of files in the project are removed.
QuoteSorry the limit is 256 files.
I have projects over 400 files as well but never experienced this limitation. :eek
However it was very hard to add the files in one shoot freezes etc. but after there where placed in the "rap" file it worked correctly.
Hi KetilO
First of all, congratulation for your work. This release is amazing. I made a jWasm.ini and a folder to try it and they are attached. It suposes the Drive\jwasm .. etc. I made it based on masm.ini and files. There is also a 64 bits project. The 64 bits libs are from PellesC.
Keep the good work.
Kind regards,
Paulo H.
Thanks PauloH
Works well.
KetilO
RadASm 3.0, great !
RadASM 3.0 is a complete rewrite of RadASM.
A matter of curiosity: is RadAsm always coded with MASM or have you changed the language (or assembler like JWasm, Fasm ?) ?
Hi Faiseur
I am still using masm. I guess a switch to JWasm would not cause any trouble.
KetilO
Hi all
New upload.
Version 3.0.0.1 2010-06-03
--------------------------
o Added JWasm programming language. Thanks to PauloH.
o Added user defined resource names export.
o Rebuildt all addins since there is a change in RESOPT / ADDINDATA.resopt
o Updated programming language ini files. Debug=0 on all except masm.ini and jWasm.ini.
o Added support for Objects and Methods to Masm.
o Automated updating when using Tools / Check for Updates.
o Fixed some minor resource editor bugs.
o Fixed a bug when building a library. Thanks to madprgmr.
o Fixed a bug where RadASM could crash on exit.
NOTE!
If you are updating, use Tools / Check for Updates to get the zip and unzip it.
Exit RadASM and run UpdateRadASM.exe in RadASM_Update folder.
KetilO
That's awesome KetilO! :U
Do you will have a plug-in or something to auto update projects RadASM 2.x to 3.x ?
QuoteNOTE!
If you are updating, use Tools / Check for Updates to get the zip and unzip it.
Exit RadASM and run UpdateRadASM.exe in RadASM_Update folder.
For info:
If i update 3.0.0.0 to version 3.0.0.1 with UpdateRadASM, JWasm option is not accessible when i create a new project. I selected "overwrite RadAsm.ini" and "overwrite programming languages" and everything is in order.
Hi Ficko
It is easy to manaually convert a project to RadASM 3.0
Copy all your files to a new folder. You dont need .dlg, .mnu and .rap files.
RadASM 3.0 works best if you have only one .rc file. If your old project has more than one .rc
file then you can use the command window to append them into one file with: Copy *.rc myrc.rc
Then:
1. Create an empty project in the new folder.
2. Select the group in project browser where most of your files will be.
3. Use Project / Add Item / Existing Files. Multiselect is supported.
4. Drag the files in project browser to the groups where they belong.
5. Select the main .asm file (and main .rc file).
You are done.
KetilO
Hi Faiseur
Yes, new programming languages are not automatically activated.
Use Oprions / Programming Language to Activate / Deactivate programming languages.
Note that the first language in the list will be the default language.
KetilO
Masm:
I have a string in a stringtable resource with lenght ~650 chars. This string is truncated in RadAsm3 stringtable to ~470 chars.
The exe is started but does not behave as with the exe from RadAsm2. I will look into that problem to see what it is.
edit:
I have a bunch of tab dialogs that became visible from beeing false. That was the problem.
Hi minor28
The maximum string lenght in RadASM 3.0 is 511 characters.
RadASM 3.0 does not handle hidden dialogs from RadASM 2.x.
They must be changed manually for now.
KetilO
OK, then I must include the stringtable resource file. Then it works.
Thank you
Hi KetilO
Thanks for the new update
What if with the old plugins if this compatible?
And i have a other quetsion
what mean you with it?
QuoteAdded support for Objects and Methods to Masm.
And how can add VC6 C/C++ package (linker compiler etc...)
what need i all from the visualstudio folder?
For compile c/c++ with radasm without the studio
Thanks and greets,
ragdog
Hi ragdog
Objects and Methods are needed to support Biteriders ObjAsm32 package.
From VC6 you will need include and library files and everything in the bin folder.
KetilO
This addin converts RadASM 2.x projects to RadASM 3.0 projects.
WARNING!
- Copy all files in the project to a new folder before attempting to convert.
- RC files will be converted to a single file. mnu, dlg and rap files will be deleted.
NOTE!
- No attempt is made to convert the make options.
- Previously non visible dialogs must be made non visible in the new project.
- You need RadASM 3.0.0.1 or higher for the addin to work.
HOW TO INSTALL
- Copy the ConvertProject.dll to the Addins folder.
- Copy the ConvertProject.txt to the Addins/Help folder.
- Restart RadASM if it is running.
KetilO
RadASM 3.0.0.2 is uploaded.
Version 3.0.0.2 2010-06-10
--------------------------
o Implemented Make / Run With Debug.
Use Option / Environment to add the path to the debugger.
Use Option / Make Options to add the debugger exe file.
o Added Increment build to project options.
The resource file must be open and have a versioninfo.
o Added ConvertProject addin.
It converts a project from RadASM 2.x to RadASM 3.0
o Added Edit / Goto Line.
o Added RadASM help file. Not complete yet.
NOTE!
If you are updating, use Tools / Check for Updates to get the zip, unzip it and update RadASM.
KetilO
Excellente ! :U
Thank you very much!
got an error when using the unref vars addin:
It printed many unrefd stuff then gave me this error:
Module name: Unreferenced.dll (RadASM version 3.0.0.2)
Windows version 6.1
Exception code: C0000005h
EXCEPTION_ACCESS_VIOLATION
Instruction pointer: 02C911E0h
Registers:
eax=00000000h ebx=00487844h ecx=00280578h
edx=00000030h esi=00000000h edi=00000000h
ebp=0012F9A4h esp=0012F9A0h eip=02C911E0h
Segment registers:
CS=001Bh DS=0023h SS=0023h
ES=0023h FS=003Bh GS=0000hFlags: PF ZF IF
Flags: PF ZF IF
F3h SS=0023h
ES=0023h FS=003Bh GS=0000h
Stack:
03CA47EF 0012FAE8 02C917D4 00000000
00000064 003AFE80 00000111 00000000
003AFE80 0000024B 00000000 00000064
00000001 72744368 4400326C 44524F57
Hi Gunner
Unfortunatly the exception report does not give any useful information when the exception is generated in a dll.
Could you start RadASM in ollydbg and try again? Then post the result here.
KetilO
RadASM 3.0 looks really really nice ... very clean and quite well laid out!!! Nice!!! :clap: :clap: :clap:
All the little niggles of v2 are nicely wrapped up. This is going to be awesome.
+1 from me for doing away with the .dlg etc file and plain old .rc editing!!!
Quick question: how do we edit the values of "A", "B", etc? I tried hunting around for it couldn't find it though!!!
Also, may I suggest "Tahoma,8" as the font for the labels etc, as it can be "smoothed" as opposed to "MS Sans Serif".
Cheers and Regards,
Shantanu
Hi, KetilO
When I try to add an existing file to a project, RadAsm 3.0 doesn't like it! I have to shutdown RadAsm and start it again. So it accepts the new (or existing file) in to the new project. Is this a bug or am I missing something?
Thanks for this new release. As soon as I can, I will send you some templates.
Thanks,
PauloH.
PS: The external debugger in the make options menu doesn't open any box to select the debugger.
Here is a screen shot of olly
I too need a bit of hand holding on getting bcc to compile anything?
I really want MinGW g++ but bcc is ok for now; and if I get that going maybe I can figure out how to add g++
James
Hi Ketil,
Very nice ! The make options for GoLink should be just $C $M $R, GFL.txt and /entry are no longer necessary when using the header project. Hope to convert some projects on the weekend.
Hi Shantanu Gadgil
QuoteQuick question: how do we edit the values of "A", "B"
I am guessing you mean the acronymes $A $C $D $M $O and $R
None are editable.
KetilO
Hi PauloH
If the file is open you cant use add existing.
Use current open file or all open files. All open files will only add files that are not in the project.
This behaviour will be changed as it is confusing.
You select an external debugger with Options / Make Options
KetilO
Hi Gunner
It seem like the project contains non existing files.
It would be very interesting to have a look at the complete project.
KetilO
Hi jcfuller
You dont give mush information. What is the problem?
The important thing is to have Options / Environment correctly set up.
KetilO
Hi Donkey
Thanks, I hope you will be able to create more build options, tempales, sniplets and examples for GoAsm.
KetilO
Quote from: KetilO on June 12, 2010, 09:21:35 AM
Hi jcfuller
You dont give mush information. What is the problem?
The important thing is to have Options / Environment correctly set up.
KetilO
I did, so I figured there must be something I was missing. I have path,include, and lib set in the Environment options.
I don't know how Radasm uses these (set them as OS Environment var?) as it does not pass them on the commend line.
If I drop down to a command prompt and use -I and -L with the paths the sample compiles and runs fine?
What am I missing?
result from Radasm:
BCC32 /c /tW "TestWin.cpp"
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
TestWin.cpp:
Error E2209 TestWin.cpp 1: Unable to open include file 'windows.h'
Error E2141 TestWin.cpp 4: Declaration syntax error
Error E2141 TestWin.cpp 6: Declaration syntax error
Error E2141 TestWin.cpp 9: Declaration syntax error
*** 4 errors in Compile ***
Error(s) occured.
James
DUH....
Never mind (I think) RTFM!!! (Bcc & RadAsm)
I have configured everything now so the compiler linker finds everything
I'm still getting a bad build though maybe I messed with the compiler options in the bcc.ini?
BRCC32 /v /32 "TestWin.rc"
Borland Resource Compiler Version 5.40
Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
Lines: Current 0, Total 0
New File: TestWin.rc
Lines: Current 1, Total 0
New File: D:\RadAsm\Bcc\Projects\TestWin\TestWin.rc
Lines: Current 1, Total 0
Defining IDI_MAINICO
Lines: Current 2, Total 1
Compiling ICON: IDI_MAINICO
Lines: Current 0, Total 2
New File:
BCC32 /c /tW "TestWin.cpp"
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
TestWin.cpp:
Warning W8057 TestWin.cpp 52: Parameter 'hPrevInstance' is never used in function __stdcall WinMain(HINSTANCE__ *,HINSTANCE__ *,char *,int)
Warning W8057 TestWin.cpp 52: Parameter 'szCmdLine' is never used in function __stdcall WinMain(HINSTANCE__ *,HINSTANCE__ *,char *,int)
ILINK32 /aa /c /x /Gn /Tpe c0w32.obj "TestWin.obj" ,"TestWin.exe",,@D:\RadAsm\Bcc\GFL.txt,,"TestWin.res"
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
Fatal: Unable to open file 'C0W32.OBJ'
Error(s) occured.
James
Hi jcfuller
Borland uses .cfg files and does not care about include and lib environment variables.
You need to create bcc32.cfg and ilink32.cfg in the bin folder.
bcc32.cfg
-I"D:\Borland\BCC55\Include"
ilink32.cfg
Quote-L"D:\Borland\BCC55\Lib"
KetilO
Ok got that and am almost in business.
For another language I need to pass just the file name (no extension)
Is there an Acronym used in Commandline switches for just the file name . If not can we get one? I know $C for output is just the name but I need it for the command line also.
James
Is it possible to add another language or is all the info hard coded in RadAsm?
If not a little info on [Parse] and [CodeBlock] might be helpful.
James
Hi Ketil,
When I convert a project using the convert addin and add the RC files using "Project-Add Items-Existing Files" the changes I make are not always saved to the PRRA file, the same happens when I move a file to another group using drag and drop.
Also any idea when the help file for add ins will be available ? I really would like to build an addin for Help2 viewer so I can have access to the PSDK docs from V3.
Edgar
Edit> Also really miss CTRL-ALT-O to open the file at the cursor.
Hi Ketil!
A slightly improved IntelliSense would be nice too. :P
I am thinking on a implementation like :
Sensibility = 3 - Would give the char count threshold the IntelliSense to trigger.-
Keywordsfile = kkkk.txt - The list of keywords.
Keywordsexclusionfile = eeee.txt - The list of keywords should not trigger.
Like you would have exclusion of "extern" it would only trigger at "externa(l)".
The triggering on "invoke" type pre keywords are not sufficient for ONLY keyword type languages like "Pascal" "basic" ect.
Do I am asking too much? ::) :bg
Or just maybe a separate key combination for separate keyword definitions.
Like <crtl+alt+1> would show the first collection in the combo etc.
Hi jcfuller
Unfortunatly there is no general parser. Each assembler / compiler has its own parser (C/C++ languages uses the same parser).
However an addin can parse the code files and also trigger codecomplete and tooltip.
Example addin will be provided as sonn as I get the time to create it.
[CodeBlock] is the same as in RadASM 2.x
KetilO
Hi Donkey
QuoteWhen I convert a project using the convert addin and add the RC files using "Project-Add Items-Existing Files" the changes I make are not always saved to the PRRA file, the same happens when I move a file to another group using drag and drop.
Are you shure? Changes to the project file is only saved when a projrct is closed.
A help file on addins will not happend anytime soon. However sources for all addins will be included in next revision.
It should provide enough info for an experienced coder.
KetilO
Hi Ficko
Extensions to the code complete must be done in addins. Example will be provided in next revision.
KetilO
Quote from: KetilO on June 14, 2010, 12:09:41 PM
Hi Donkey
QuoteWhen I convert a project using the convert addin and add the RC files using "Project-Add Items-Existing Files" the changes I make are not always saved to the PRRA file, the same happens when I move a file to another group using drag and drop.
Are you shure? Changes to the project file is only saved when a projrct is closed.
A help file on addins will not happend anytime soon. However sources for all addins will be included in next revision.
It should provide enough info for an experienced coder.
KetilO
Hi Ketil,
Yes, quite sure however it is not easily reproducible. I have struggled to add some files and in some cases had to go back a few times before it could be done. I will zip the converted project and email it to you. I am running RA3 on a Vista box.
The source for addins should be fine, thanks.
Edgar
New revision uploaded. If you are updating, use Tools / Check for Updates.
Version 3.0.0.3 2010-06-14
--------------------------
o Added support for sol_asm.
o Added support for FreePASCAL.
o Added support for MinGW.
o Changed Make / Set Current As Main to Make / Toggle Current As Main
o Ctrl+Alt+O now opens the included file. Note that the environment setup must include
the path to the file.
o Included sources for all addins (masm).
o Fixed bug when using Option / Code Editor. The output and immediate windows did
not have its font updated.
o Fixed bug in ProjectConvert addin. The addin did not work as intended.
KetilO
Solved pretty much all of my problems, the convert utility works very well now, I do like that it merges all of the rc files, makes editing a lot easier. Also the ctrl-alt-O is back, I use it constantly and missed it in RA3.
Thanks.
KetilO,
Updated to version .3 and that unref variables bug that was blowing up RadASM is gone... Reconverted the 2.0 project and no problems!
Revision 3.0.0.4 is uploaded. If you are updating, use Tools / Check for Updates.
Version 3.0.0.4 2010-06-15
--------------------------
o The properties toolbar now works.
o Changed dialogs font to Tahoma.
o Fixed a project bug. Changes to the project was not always saved.
o Fixed bug in the tasm parser. Locals could be inherited from previous proc.
KetilO
Thanks that cool! :8)
Is there something have to be done to make the dobleclicking on tab close the window -like in the previous version- ?
Hi Ketil,
If I try to rename a file in the Project window I get the following error:
Module name: RadASM.exe (RadASM version 3.0.0.3)
Windows version 6.0 Service Pack 2
Exception code: C0000005h
EXCEPTION_ACCESS_VIOLATION
Instruction pointer: 00401010h
Registers:
eax=00000043h ebx=FFFFFFFFh ecx=00000000h
edx=00000030h esi=004C20E8h edi=0000000Ch
ebp=0012F0F4h esp=0012F0ECh eip=00401010h
Segment registers:
CS=001Bh DS=0023h SS=0023h
ES=0023h FS=003Bh Flags: PF ZF IF
Flags: PF ZF IF
F3h SS=0023h
ES=0023h FS=003Bh GS=0000h
Stack:
02FCC690 0012F640 0012F120 004079DD
0000000C 004C20E8 00000008 00000000
02FCC698 004C20E8 00000000 00000000
00000000 0012F3EC 00420C26 FFFFFFFF
Hi Ficko
It has been replaced by clicking middle mouse button.
KetilO
Thanks Donkey
Bug fixed, new upload.
KetilO
Quote from: KetilO on June 16, 2010, 06:04:34 AM
It has been replaced by clicking middle mouse button.
Damn, I have 23 mice in my house but no one has a middle button. :(
I have to get some from Norway and make some cross-breeding. :toothy
If any of yuor 23 mices has a wheel, try to click it. If not, maybe it is time to get #24.
Note that hitting F4 is an alternative.
KetilO
hi KetilO
I'm missing these feature of opening includes files by the context menu (right click on the filename/path). Are you planing to (re)add this feature?
regards, qWord
KetilO,
I'm just starting to use 3.004 with fasm. When I press the Assemble button, I get a MessageBox with:
"Error during process creation"
"fasm MyFileName.asm"
I've tried changing the [Environment], path variable
and the Assemble string in the Project Options dialog.
But nothing changes!
How is the command string constructed so that I can point to my fasm.exe file?
I really like the new look and layout!!!
farrier
Thanks qWord
It will be added.
KetilO
Hi farrier
You will get this message if the path environment variable is wrong.
Verify that it is correct and that you are changing it for fasm (3'rd pane in statusbar).
KetilO
New upload. If you are updating, use Tools / Check for Updates.
Version 3.0.0.4 2010-06-17
--------------------------
o The properties toolbar now works.
o Changed dialogs font to Tahoma.
o The second pane of the statusbar now shows current edit mode.
o Added Open Include (Ctrl+Alt+O) to edit menu.
o Added accelerators to make menu.
o Fixed a project bug. Changes to the project was not always saved.
o Fixed bug in the tasm parser. Locals could be inherited from previous proc.
o Fixed a bug where changing a filename in project browser crashed RadASM.
o Fixed a bug with Open Include.
KetilO
KetilO,
The third pane in the statusbar shows "Fasm".
When I click on "Option", "Environment" the "Path" variable value is "C:\Program Files (x86)\Fasm"
which is what I have in the fasm.ini file. This is where my fasm program is located.
Is there another place to make the change in path so that RadASM can find my fasm.exe file?
Thanks,
farrier
Weird
You cold modify fasm.ini
[Make]
Make=GoRC,fasm,GoLink,
To:
Make=GoRC,C:\Program Files (x86)\fasm\fasm.exe,GoLink,
KetilO
an other missing feature:
There was this littel feature, that shows the number of current selected characters in the status bar.
regards and many thanks for your great work
qWord
KetilO,
That worked! This is what works for me:
[Environment]
0=path,$A\..\fasm
1=include,$A\..\fasm\Include
[Make]
Debug=0
Run=0,'Cmd /k',''
Make=,$A\..\fasm\fasm.exe,,
Help=
0=Window no link,'/r "$R"',"$R.res",'"$C"',"$C.exe",'',,'',
Option/Environment
path=$A\..\fasm
include=$A\..\fasm\include
Project Options
Assemble: "$C"
Output: "$C.exe"
Hi KetilO,
great work! :U
Can you put some more "RA" icons in the resource with different shades to choose from to make the desktop more distinguishable for different versions, instances?
Hi Ketil,
Is there a limit to the number of data types I can define in a languages ini file ? I am talking about the entry [Parse]|Data=. Also is there a way to make them case sensitive like the ^ does in the keyword lists ?
Edgar
Hi Ficko
Sorry, I am not an pixel artist. All my attempts to create icons turns out ugly.
KetilO
Hi Edgar
It is limitted to the max number of characters GetPrivateProfileString can handle (32767).
However adding too many will slow down the parsing.
The recomended way is to create an api file (see the winasmType.api).
There is no way to make them case sensitive.
KetilO
Quote from: KetilO on June 21, 2010, 07:07:49 AM
Sorry, I am not an pixel artist. All my attempts to create icons turns out ugly.
Me either but may someone can give you a hand with more dexterousness. :bg
I actually just meant different "shades". Like make one green, blue etc. :wink
New upload. If you are updating, use Tools / Check for Updates.
Version 3.0.0.5 2010-06-21
--------------------------
o Nicer looking menu.
o Added ProjectZip addin.
o Fixed a property tool bug. Scrolling behaved weird when using the mouse wheel
to scroll the list.
KetilO
hi,
RadAsm crash often, when using copy&past. Mostly when passing text in code. Also it some times crash when using masm dot-operator (xyz.member).
qWord
1) UpdateRadASM.exe failed in copying some files from the 2.2.2.0 version - error: files couldn't be copied.
2) I converted a project file using the tools->convert menu. The main source file has got the extension "a32" instead of "asm". After that no source was visible in the project listing window (at the right border) so I opened it by "project->add existing" menu item. After that I tried to change the colors in the editor window, but the editor couldn't be persuaded to display syntax hilighting.
Quote from: KetilO on June 21, 2010, 07:13:18 AM
Hi Edgar
It is limitted to the max number of characters GetPrivateProfileString can handle (32767).
However adding too many will slow down the parsing.
The recomended way is to create an api file (see the winasmType.api).
There is no way to make them case sensitive.
KetilO
Strange, I created a number of types and it failed at far less than 32767 characters, must have been something to do with the type names as the length varied. I will create an API file for types in GoAsm but will try to figure out what the conditions were that caused the failure in my tests and keep you updated.
Edgar
Hi qWord
A buffer overrun bug has been fixed. Hopefully it will fix the crash problem.
KetilO
Hi TASMUser
Option / Code Editor / Code files has been added.
Ketilo
Hi Edgar
My bad. It is limitted by the size of the bufferused (260 bytes).
KetilO
New upload. If you are updating, use Tools / Check for Updates.
Version 3.0.0.5 2010-06-23
--------------------------
o Nicer looking menu.
o Added ProjectZip addin.
o Added Code files to Option / Code Editor.
o Added Multiline tabtool to Option / Code Editor.
o Fixed a property tool bug. Scrolling behaved weird when using the mouse wheel
to scroll the list.
O Fixed a project bug introduced in 3.0.0.5
o Fixed a buffer ovverrun bug. Might fix the cut / paste bug.
KetilO
New upload. If you are updating, use Tools / Check for Updates.
Version 3.0.0.5 2010-06-24
--------------------------
o Nicer looking menu.
o Added ProjectZip addin.
o Added Code files to Option / Code Editor.
o Added Multiline tabtool to Option / Code Editor.
o Fixed a property tool bug. Scrolling behaved weird when using the mouse wheel
to scroll the list.
O Fixed a project bug introduced in 3.0.0.5
o Fixed a buffer ovverrun bug. Might fix the cut / paste bug.
o Fixed several register preservation bugs.
KetilO
At trying compilation gives out error:
Module name: RadASM30 (RadASM version 3.0.0.5)
Windows XP Service Pack 2
Exception code: C0000005h
EXCEPTION_ACCESS_VIOLATION
Instruction pointer: 00401033h
Registers:
eax=0012F3FCh ebx=00000000h ecx=00000000h
edx=00000011h esi=00004324h edi=0012F3FCh
ebp=0012F3E0h esp=0012F3D8h eip=00401033h
Segment registers:
CS=001Bh DS=0023h SS=0023h
ES=0023h FS=003Bh GS=0000h
Flags: CF AF SF IF
Flags: CF AF SF IF
F0023h
ES=0023h FS=003Bh GS=0000h
Stack:
00004324 00000011 0012F604 00415B5B
0012F3FC 00004324 00000012 0012FD08
00000000 77D3CB6B 004663A9 00070384
001CA3E8 0000001B 00000000 0012F50C
Hi S_Alex
Update again, there was a bug.
KetilO
New upload. If you are updating, use Tools / Check for Updates.
Version 3.0.0.5 2010-06-28
--------------------------
o Added $C (main codefile), $R (main resourcefile) and $P (project file) to tools menu
command parser.
o Fixed bug where projects did not work on win95,98 and me.
KetilO
If you write more or equal to 285 consecutive letters and press F1 key the bug happens.(I think is the buffer for the routine get_word).
Sorry, this happens in 2.2.0 version and not 3.0, really sorry.
This error happens in qeditor too.
regards.
;------
mineiro [<o>]
Hi KetilO
Can you add in the tabs a close button ?
i mean this as by firefox
Hi ragdog
Sorry, too much work. You can just click on the close button for the mdi child.
KetilO
New upload. If you are updating, use Tools / Check for Updates.
Version 3.0.0.6 2010-07-02
--------------------------
o Added support for FreeBASIC.
o Fixed bugs.
KetilO
hi,
Sometimes crash occurs, when using undo/redo (ctrl+z / ctrl+y)
qWord
It freezes on ")DOT" as well if you type accidentally "(something)."
Like the new icon... :U :wink
Bug.
Not correct include path:
ml /c /coff /Cp "4ek_Pint.asm"
Microsoft (R) Macro Assembler Version 6.14.8444
Copyright (C) Microsoft Corp 1981-1997. All rights reserved.
Assembling: 4ek_Pint.asm
C:\RadASM30\..\masm32\Include\masm32rt.inc(38) : fatal error A1000: cannot open file : \masm32\include\windows.inc
Error(s) occured.
in 3.0.0.5 all OK!
Hi qWord
Do you get an error report or does RadASM just close?
KetilO
Hi Ficko
Will be fixed in next upload.
KetilO
Hi S_Alex
No problems here. Is your project on the same drive as RadASM and masm32.
I noticed that in masm32rt.inc paths are absolute, thats not good as it will override environment setting.
KetilO
New upload. If you are updating, use Tools / Check for Updates.
Version 3.0.0.6 2010-07-05
--------------------------
o Added support for FreeBASIC.
o Added AIM_OUTPUTDBLCLK addin message.
o Toolwindows now gets an active caktion when they get focus.
o Fixed bugs.
KetilO
Quote from: KetilO on July 05, 2010, 12:04:22 PMDo you get an error report or does RadASM just close?
it crash immediately. Currently I'm not able to reproduce these crashes - if so i will post an example.
I've also found an other bug: When writing the following line, radasm also crash without error report:
fSlv yCenter = abs(yMin) * mmpuy + 0
When adding an dot to the zero it crash. (the result should look like this:
... mmpuy + 0.1 )
In your currently release an Debugwindow is opened with the message: esi =
yMin*mmpuy+0An other littleness: The code-completion-window (function list) is allways to small on first usage of RadAsm.
qWord
Yep, ")." causes the debug window to pop up instead of the freez. - Slight improvement :bg -
New upload. Forgot to remove some debugging.
KetilO
Just a typo report for 3.0.0.6
'Edit->Block->Indent to Taps'
Shouldn't it be? :
'Edit->Block->Indent to Tabs'
Another typo is:
under make->assamble modules
should be:
assemble modules
Thanks
Typos fixed, new upload.
KetilO
Hi all
Here are two masm projects to play with.
1. FlatCombo. Shows a way to create a flat ComboBox.
2. Property. Shows a way to create a ResEd like property tool window. Uses the flat combobox.
KetilO
Hi Ketil,
Is there a AIM_DEBUGGETWIN message in RA3 ? It would allow vkim debug to work without any modification as far as I know. VKim and the Goasm version is about the most important debugging tool for me.
Edgar
<EDIT>
Ignore this request, I replaced the message with this:
invoke FindWindowA,OFFSET szRad30WinClass,0
or eax,eax
jnz >.NOTFOUND
mov [hRadAsm],eax
invoke GetWindowThreadProcessId,eax,offset pid
invoke OpenProcess,PROCESS_VM_READ,0,[pid]
mov [hProcess],eax
invoke SendMessageA,[hRadAsm],AIM_GETHANDLES,0,0
invoke ReadProcessMemory,[hProcess],eax,offset handlebuffer,SIZEOF ADDINHANDLES,offset cbread
invoke CloseHandle,[hProcess]
mov eax,[handlebuffer.hOutput]
mov [hwnd],eax
I've attached the GoAsm version
Ketil,
When I try to open an .asm file using "open as hex" from the file menu, I get an exception error.
I am running it on Win7 64Bit
Here is the exception info:
Module name: RadASM.exe (RadASM version 3.0.0.6)
Windows version 6.1
Exception code: C0000005h
EXCEPTION_ACCESS_VIOLATION
Instruction pointer: 0042994Ah
Registers:
eax=00000000h ebx=07969408h ecx=00000000h
edx=00000001h esi=07969434h edi=004C2FA0h
ebp=0018F450h esp=0018F44Ch eip=0042994Ah
Segment registers:
CS=0023h DS=002Bh SS=002Bh
ES=002Bh FS=0053h GS=002Bh
Flags: PF ZF IF
Stack:
00000000 0018F4DC 0042B5D0 00000001
00000000 0042AF0C 00000000 00000000
0018F584 03FA7338 77894157 03FA7338
00000000 00000292 00000003 03FA7358
Thanks rags
The bug has been found and fixed, but I will not be able to make a new release until I am back from my vacation.
KetilO
Using Edit->Block->comment on selected text uses ";" regardless of programming language.
James
A short list of annoyances I have found with RadASM 3:
1) I could not for the life of me figure out how to get an RC file to compile if the project didn't originally have one.
2) Using [] is different than in RadASM 2, now instead of bracing the entire word when you press ] it just appends [] to the end
3) Clicking the status bar to toggle the output window was very convenient, I miss it.
4) F1 Help options should have the facility to add a wildcard with the keyword (ie $K) to the command line
5) Empty Undo Buffer is missing from the edit menu
6) The code completion window should autosize to the longest entry
Don't get me wrong, there are a lot more things I like about V3 than dislike, for example the resources are handled much better, or multiple Make options in a single project (great for GoAsm with Unicode and x64 easily switchable)
Edgar
Hi James
The bug has been fixed in 3.0.0.7
KetilO
Hi Edgar
1. Open resource file. From Make menu select Toggle Current As Main File
2. I will look into it.
3. Added in 3007
4. I will look into it.
5. Added in 3007
6. I will look into it.
KetilO
New upload. If you are updating, use Tools / Check for Updates.
Version 3.0.0.7 2010-08-23
--------------------------
0 Added double click on a tab to close it.
o Added AIM_PROJECTCLOSE, AIM_PROJECTCLOSED, AIM_PROJECTOPEN and AIM_PROJECTOPENED addin messages.
o Added hidden option to disable SEH handling. Section [Win], NoSEH=1
Uesful when debugging addins.
o Added click on statusbar to shopw / hide output window.
o Added Empty Undo Buffer to Edit menu.
o Fixed bug with Comment / Uncomment. Did not work as it should for languages other than assembly.
KetilO
hi,
some more bugs (masm-project):
- structures in structures theems not to be recognize (code-completion)
- the IDE crash when switching from an list file, which was added to the project, to an *.asm or *.inc file. The same applies for the resource editor (*.rc).
qWord
Does RasAsm3 add to the environment variable or replace it before calling the compiler?
If it replaces is there a way to include the current environment setting also as in:
Path = C:\pathtocompiler;%PATH%
James
Hi qWord
Quote
- structures in structures theems not to be recognize (code-completion)
Works here. Example please.
Quote
- the IDE crash when switching from an list file, which was added to the project, to an *.asm or *.inc file. The same applies for the resource editor (*.rc).
Works here. Example please.
KetilO
Hi James
RadASM 3 should add to existing environment (not tested yet).
KetilO
Quote from: KetilO on September 01, 2010, 08:57:21 AM
Hi qWord
Quote
- structures in structures theems not to be recognize (code-completion)
Works here. Example please.
Quote
- the IDE crash when switching from an list file, which was added to the project, to an *.asm or *.inc file. The same applies for the resource editor (*.rc).
Works here. Example please.
KetilO
ok, sorry - both failures come from my side.
I've include an backup-file of my code in the project with old structure definitions, that were used for code completion. The crashes are produced by self written (http://www.masm32.com/board/index.php?topic=12938.msg115177#msg115177) plugin :red
regards qWord
Ketilo
As can be expected Radasm version 3 is pretty sweet.
I have finally be able to go for a test drive and run into
one problem. I have a Viewsonic 19" monitor and when
i look at ther menu items in version 3 the bootom of the
particular menu font is clipped off by a tiny amount.
It seems I had this same trouble in Version 2 but I fixed it.
I suppose it is just a font problem and I can keep working
at it. I fired up version 2 and the menus are perfect . There
is even whitespace between each menu item.
My eyesight is not what it used to be so I need fairly large
fonts to see clearly.
Anyway if I explained this enough for you to understand
maybee you have a suggestion to fix the fonts being cut off
at the bottom.
Thanks very much for your hard work Ketilo!
John
Hi Ketil,
In RadASM 3 the resource editor does not understand named resources. An example is available in the following thread:
http://www.masm32.com/board/index.php?topic=11012.msg81143#msg81143
Edgar
Hi cookj
I will have a look at it.
KetilO
Hi Edgar
Use Option / Resource Editor / Resource types and add RT_HTML
I am pretty shure it will work.
KetilO
New upload. If you are updating, use Tools / Check for Updates.
Version 3.0.0.7b 2010-09-13
---------------------------
o Fixed dialogs where labels was too small to show all text.
o Fixed a menu bug if a large menu font was used.
KetilO
Quote from: KetilO on September 13, 2010, 06:41:40 AM
Hi Edgar
Use Option / Resource Editor / Resource types and add RT_HTML
I am pretty shure it will work.
KetilO
Hi Ketil,
Works, thanks.
Quote from: KetilO on September 13, 2010, 09:53:00 AM
New upload. If you are updating, use Tools / Check for Updates.
Version 3.0.0.7b 2010-09-13
---------------------------
o Fixed dialogs where labels was too small to show all text.
o Fixed a menu bug if a large menu font was used.
KetilO
KetilO,
I am not seeing the 3.0.0.7b in the update window?
James
KetilO,
I have been using RadAsm3 successfully with several languages.
Is it possible to add support for "::" in a Function or Sub listing as in:
Function cSqlDb::GetAt(cn As long) As stdstr
......
End Function
All I get in the Properties -> code area is a list of cSqlDb
James
Hi jcfuller
Quote
I am not seeing the 3.0.0.7b in the update window?
Yes, those minor updates will not show.
Quote
Function cSqlDb::GetAt(cn As long) As stdstr
You could try to define ":" as a character
[CharTab]
2=0251222522222236;20-2F
3=1111111111122221;30-3F
KetilO
Quote from: KetilO on October 04, 2010, 11:16:18 AM
Hi jcfuller
Quote
Function cSqlDb::GetAt(cn As long) As stdstr
You could try to define ":" as a character
[CharTab]
2=0251222522222236;20-2F
3=1111111111122221;30-3F
KetilO
Worked just fine.
Thank you for a magnificent versatile ide.
James
This one is not too important just baffleing.
Color syntax:
the word integer and all forms of capitalization produce the correct color except Integer ??
James
Hi KetilO,
first thx for great IDE :U ,
second I have small error to report...
When the custom struct Point is declared like this ( btw its fasm ):
format PE console
entry cmain
include 'win32ax.inc'
include 'extra.inc'
struct Point
x dd ?
y dd ?
ends
section '.text' code readable executable
cmain:
stdcall Foo
invoke ExitProcess,0
proc Foo uses esi edi ebx
local p:Point
mov [p.x],10
mov [p.y],20
ret
endp
RadASM is working as expected , when I need to reference one element from struct Point ide popups list
with all elements and then I can choose one,so it is ok...
but when the struct is declared somewhere else like this ( in extra.inc file )
format PE console
entry cmain
include 'win32ax.inc'
include 'extra.inc'
section '.text' code readable executable
cmain:
stdcall Foo
invoke ExitProcess,0
proc Foo uses esi edi ebx
local p:Point
mov [p.x],10
mov [p.y],20
ret
endp
I have to write it manually,after p. IDE doesnt do anything,
not problem with the structs with 2 or 3 elements,
but anything more is well a problem...
thx ones more for your time to develope great ide
Dancho
Hi jcfuller
Quote
Integer
Strange, I will look into it.
KetilO
Hi dancho
Works as it should here.
Did you add the extra.inc file to your project?
KetilO
Quote from: KetilO on October 06, 2010, 10:31:35 AM
Hi dancho
Works as it should here.
Did you add the extra.inc file to your project?
KetilO
ah silly me :red,
I thought it would be enough just to add include 'extra.inc' to main asm file ,
adding to the project wasn't on my check list...
Now works ok...
sorry to trouble you with this KetilO
thx
Dancho
Hi Ketil,
Noticed something with the F3 search. Select a word using double-click and press F3. On the dialog that appears click "Find", RadASM will find the original instance of the word, press "Find" again and it gives you the "region searched" dialog. Also if you then select a different word it will continue the search for the first word each time you press the F3 key. I'm not sure if this is by design.
Ketil,
Is there any way to have functions and subs show up in the code window that have a preceeding qualifire as in:
CALLBACK FUNCTION MyCallBack()
END FUNCTION
exposed function()
End Function
exposed sub()
End Sub
James
Hi donkey
F3 does not work well if there is a selection. It can cause a search in the selection only.
I will have a look at it.
KetilO
Hi James
Add the words to the ignore list.
Example:
[Parse]
Ignore=3,private,3,public
KetilO
Hi Ketil.
I finally have had a chance to look at the new version and it looks Great!
Really like the way the resources are organized now, looks very clean.
I have found one bug though. Select several lines of text and hit delete
or backspace and the IDE just exits. No error message at all, just exits the
program. A few lines work ok but a larger block of selected text and it will
just exit.
Also noticed in RadASM.ini the section name [CustCtrl] is entered twice.
One question I have too is there a way to turn off italics on comments?
I cannot seem to find a way to do this?
Thanks again for another great version, Will
Hi WillASM
Long time, no see.
Yes, this is a known bug and the single reason why RadASM 3.0 is still beeing bugtested and not released.
It seem to happend when you insert or delete a block of text. I dont think it is related to the size of the block.
If you have found a way to reproduce the bug, maybe you could run RadASM using ollydbg. Hopefully it will give
some useful information on what is going on.
You are right, there is no easy way to turn off italics on comments. You must manually edit the inifile.
The value to change is #21. Change it to 32768
[Colors]
Colors=8388672,8388672,8388672,8388672,8388672,276824128,8388672,8388672,25165888,8388672,276824128,8388672,8388672,8388672,8388672,8388672,16777215,0,8388608,16777215,33587200,10485760,160,15777984,12644544,12632304,14737632,8421504,8388608,8421504,16777215,16777215,16777215,16777215,61680,61440,16777215,0,16777215,0,8404992,12582912,16777215,0,12644592,0,4210816,16711680
KetilO
Syntax highlighting for group #5 doesn't occur, also the keywords 'TRUE', 'FALSE', and 'NULL' are listed under both group #5 and group #10
Thanks Monolith
Highlighting for RC files was set on Group#5, it should be set on Group#10.
'TRUE', 'FALSE', and 'NULL' must be there twice, once for RC files and once for code files.
The download has been updated.
KetilO
hi, I'm have many question;)
1) where is bookmarks ? I have many-many project and I aded my project in Bookmarks
2) how can I bind to some hotkey run bat file ?
in RadAsm2x I am edit fasm.ini:
[Paths]
12=.bat
$P=D:\whereis_project_dir\fasm
and in RadAms i'm bind to hotkey:
Project Option ->
1) Run: ,0,"$P\some_project\bat1_file",12 -> bind run batch file to hotkey CTRL+D
2)Run w/debug: ,0,"$P\some_project\bat2_file",12 -> bind run batch file to hotkey CTRL+SHIFT+F5
HOW CAN I MAKE IN RadAsm 3x?
sorry to my badly English language.
PS: can you aded to make profile postcompile\precompile run batch file ? Your aded to profile run batch file, but you option = global option for ALL profile=\ This is not usable in everyday work.
Thinking strongly to this questions=)
Hi Ketil!
I am wondering that is there a special reason why "Make Options" or "Project Options" won't understand "$I" ? ::)
Like I have to do this -semi hard coded- :
"/mx /m4 /z /q /zn /kh32768 /i"$A\..\TASM_INCLUDE" "$C""
instead of
"/mx /m4 /z /q /zn /kh32768 /i"$I" "$C""
Regards,
Ficko
Hi iXdAUaD
1. I guess you mean Favourits. This is an addin made by donkey. If he can find the time I am shure he will convert it to RadASM 3.0
2. You cant. For security reasons I had to abandon the extremly flexible build options in RadASM 2.x. However you can add batch files to your project and run them by double clicking on them in project browser. If you need to edit the batch file, hold Ctrl key while double clicking.
RadASM 3.0 is a work in progress. I probably will add more build methods.
KetilO
Hi Ficko
No other reason than it has not been implemented yet.
KetilO
FINALLY!
The bug where RadASM could terminate if a block of text was inserted or deleted has been found and fixed.
Big thanks to WillASM for helping me track down this bug.
Version 3.0.0.7d 2010-10-25
---------------------------
o Fixed the bug where RadASM could terminate if a block of text was inserted or deleted.
Thanks to WillASM for helping me track down this bug.
KetilO
:cheekygreen: Thanks Ketil!
That seems to have fixed it. I have been using the editor all morning without a crash!
I guess I can start converting some old project files today, might as well, first snow fall
of the year here today.. (Too cold to go outside!).
Thanks again Ketil, WillASM
Hi iXdAUaD,
I'm looking through the new addin interface and should have the favorites addin done by the weekend.
Edgar
Hi Ketil,
I am translating your addin headers to Goasm syntax and have noticed that the ADDINPROC structure no longer exports lpOpenProject, can the lpOpenTheFile function be used in its place ? If so, what file type do I use for project files so Radasm will close the current project and open the one I pass to the function. If it does not do this is there a function that does ?
Edgar
Ketil,
I have been trying out RadASM 3.0, it's very nice. Are debuggers other than OllyDbg supported? I have been trying to setup VC 2010 Express as the debugger and I'm not having any luck. The command-line to run it on my system is "C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\VCExpress.exe" /debugexe program.exe. I have tried putting this in Make Options -> External Debugger using $C or $F.exe instead of program.exe with no luck. I tried putting "C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE" in the path and just VCExpress.exe /debugexe $C or $F.exe in Make Options -> External Debugger with no luck. I tried putting just VCExpress.exe in Make Options -> External Debugger with no luck. I am using "Run with Debug" to start the debugger, but it doesn't start. Is there a way I can make this work?
Hi Edgar
Calling lpOpenTheFile should work. As the file type you can use 0 or ID_PROJECT (6). If 0 then RadASM will check the file extention.
RadASM will close the current project and open the new project.
KetilO
Hi GregL
You could try:
"C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\VCExpress.exe /debugexe"
or
"C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\VCExpress.exe" "/debugexe"
RadASM will add the exe filename, no need to include that.
KetilO
Hi Ketil,
A bit of a strange one while updating the favorites addin for v3. Is there anything in version 3 that would affect the data attached to a menu item ? I use Set/GetMenuItemInfo to attach the address of a buffer to each favorite in the menu. This part of the program works fine in version 2 and I left it unaltered for v3 but it doesn't work. The value that is originally attached when the item is created changes by the time the menu item is selected. If you are using the MENUITEMINFO.dwItemData member for something I will find another way to attach the number but I would rather not as its such a convenient way to do it.
Well, I decided to avoid using dwItemData since I could not identify what was changing the data and without being absolutely sure it would be risky even if I could have found a way to make it work. Instead I went with a buffer that is parallel to the item IDs, it contains the pointers to the buffers that hold the file names. This seems to work well enough and is pretty quick. I had to modify quite a bit of the code to be able to accommodate the change so I will need people to bug test it:
Note that you will need the latest version of the headers to build this project:
Cleaned up the code and modified it to support the latest header files uploaded today. Also added description to the project summary though I kind of used a kludge to get it, it should be fine for uncomplicated project descriptions. I also took care of a couple of minor bugs that I found over the course of using it for a full day. There is a new upload in the post above this one.
KetilO,
Neither of those worked. Oh well.
Thanks.
Thanks Edgar
Your addin has been included in the download.
KetilO
Hi
If i open Radasm and close it without a project have i this bug
Quote
Module name: RadFavs.dll (RadASM version 3.0.0.7)
Windows version 6.1
Exception code: C0000005h
EXCEPTION_ACCESS_VIOLATION
Instruction pointer: 01851369h
Registers:
eax=FFFF63B9h ebx=00000003h ecx=018541A0h
edx=00000057h esi=00000003h edi=004B841Ch
ebp=0012E9A0h esp=0012E99Ch eip=01851369h
Segment registers:
CS=001Bh DS=0023h SS=0023h
ES=0023h FS=003Bh GS=0000h
Flags: SF IF
Stack:
FFFFFFFF 00000010 00000000 0012E9E4
018512FB 006C0497 00000000 012800B0
00000000 00000001 00000000 00000000
0012E988 0000029E 0012EB38 775162E3
Quote from: ragdog on October 30, 2010, 10:17:09 AM
Hi
If i open Radasm and close it without a project have i this bug
Hi ragdog,
The first version of radfavs I uploaded had this bug, there was only one download when I corrected it and uploaded a correction. Could you download the version in my post above and replace the Radasm\addins\radfavs.dll file with the one in that archive. It should solve your problem.
Edgar
No i have this same problem by a not opening project
you can test it open radasm without any project and close it with the X button on the Sysmenu
I use Win7
Hi ragdog,
Seems that I was checking for 0 when I should have been checking for -1, this was a problem introduced when I changed a bunch of the code for Radasm 3. This should take care of it:
Yes it works now thanks :U
Hi Ketilo
Thanks for the following fixes!
"o Fixed dialogs where labels was too small to show all text."
"o Fixed a menu bug if a large menu font was used."
I reported the problem back in September 2010 and you
fixed it promptly. I am late replying because I had to
go to the hospital the same day and spent 6 weeks in
the hospital. It is good to be out.
I have a couple more problems if you do not mind.
If I set the color scheme to Visual Studio but make the
fonts in the code editopr bold it reverts back to plain
once I exit out and load the file up again. Is this the
way it is supposed to work?
How do I copy my color scheme over from radasm 2?
I really like the way I have it set up. Are the numbers
representing the colors in Radasm 2 in the same order
as the numbers in Radasm 3?
I noticed that you do not have labels anymore in menu.ini
in Radasm 3. I am just looking for an easy way to transfer
the color scheme and if there is not then no big deal.
Thankis again for all of your hard work. I have a major
project to work on and your IDE will help me speed things
along.
John
Hello everyone,
I'm new to RadASM, I'm trying 3.0.0.7e version but can not find the toolbar creator (I tried the 2.2.2.0 and it works)?!?
Can you tell me if there is and in what menu?
Regards.
Sorry for the google translation. :red
Quote from: obj2010 on November 03, 2010, 10:20:02 PM
Hello everyone,
I'm new to RadASM, I'm trying 3.0.0.7e version but can not find the toolbar creator (I tried the 2.2.2.0 and it works)?!?
Can you tell me if there is and in what menu?
Regards.
Sorry for the google translation. :red
It looks as if the addin has been only partially translated, the menu item is never inserted since the UpdateMenu proc has been commented out. Funny that it would be included with the distribution even though it is not complete. At worst you could finish it up yourself
Uncomment UpdateMenu proc
Uncomment the AIM_MENUUPDATE message handler in AddinProc
No MASM on this laptop so I can't check this but it might work
Edgar
Hi cookj, good to have you back in one piece.
The fonts weight was not saved to ini file. It has been fixed in the new upload.
Color themes in RadASM 2 in not compatible with RadASM 3
KetilO
Hi obj2010 / donkey.
There are no menu item for the toolbar creator. Just add a .tbr file to your project.
Here is the new help file for the toolbar creator addin.
This addin creates toolbars.
How to open toolbar creator:
----------------------------
Open or add a .tbr file to your project. This will open a toolbar creator window in RadASM.
How to select a toolbar bitmap:
-------------------------------
1. Browse for the Bitmap File. Leave it blank if you are using the standard windows bitmap.
2. Type in a Bitmap Name. Use IDB_STD_SMALL_COLOR for windows standard bitmap.
3. Select the Button Size to fit the bitmap.
How to set toolbar styles:
--------------------------
1. Select the Toolbar Styles.
How to add or insert a button:
-----------------------------
1. Click Add Btn. or Ins. Btn.
2. Type in a Button Name.
3. Type in an ID. Set it to 0 if the ID is defined elsewhere in your code.
4. Select an image for your button.
5. Select Button Style (Check and / or Group).
How to add or insert a separator:
---------------------------------
1. Click Add Sep. or Ins. Sep.
2. Button Name should be a -. Set the ID to 0.
How to delete a button or separator;
------------------------------------
1. Select the item you want to delete from the list.
2. Click Delete.
How to edit Button Name or ID:
------------------------------
1. Select the button from the list or click on the toolbar button.
2. Change the name and / or the ID.
How to export the generated code:
---------------------------------
1. Click on Export and the generated code will show in RadASM's Output window.
Currently only masm syntax is supported.
How to save your toolbar:
-------------------------
1. Click on RadASM's save button.
KetilO
Hi KetilO!
Thanks for the hard work the IDE is getting better and better each day. :clap:
I just have a Q.
I like to use "Modules" so I added a new project group and called it "modules" and put in some files.
However the "Make" -> "Assemble Modules" is still blanked out - can't click it -
I did find in the "Help" this:
Quote
$M Modules. When linking, and your project has modules, a Mod.txt command file is created and added to the command line.
Can you elaborate please what this meant ?
Thanks,
Ficko
hI Ficko
The files must be modules for it to work. Select Make / Toggle Current as Module when a module file is open and selected.
KetilO
Thanks just found it too. :U
But it seems to be a little inconvenience there. :wink
If I mark the files as modules the "assemble" icon is disabled.
In the previous version I was able to compile the modules at once or as single source.
Thanks KetilO :wink
I tried to follow the steps but I ran into some problems:
1) adding a file Toolbar.tbr opens the Toolbar Creator but there is no default icon displayed
2) adding the buttons is always displayed the symbol CUT
3) I tried to load a custom bitmap but that does not appear
4) in the code created by EXPORT seem to lack the definitions of the buttons
I did some tests following the tutorial http://members.a1.net/ranmasaotome/tut3.html knowing that was created with the previous version, I made some changes but do not seem to work.
Surely I have done something wrong, but I'm new to programming and even RadASM. :red
Regards. :U
Ok KetilO,
I think I am starting to understand what you are intended to do how modules should work.
Tell me if I am wrong. :P
You have to select a "main" file and you have to select the "modules".
Then you can assemble all of the "modules" except the "main" file with "Assemble Modules" and you can assemble the "main" file with "Assemble".
It is fine but don't work very well for library projects. ::)
You often modify just one module in a library and you like to assemble just that one than build the library from the object files.
Currently I don't see you can do that.
In the previous version you was able to assemble the file in the IDE focus on.
Additionally there is maybe a bug with the "Mod.txt" generation.
I suppose the library maker try to open it before it is created fully.
I get an error in the IDE output window for:
Quote
tlib MyLib.lib /u @Mod.txt
System reported error: Bad file number
TLIB 6.2 Copyright (c) 1987-2010 Embarcadero Technologies, Inc.
opening 'Mod.txt'
Error(s) occured.
but
Quote
tlib MyLib.lib /u @Mod.txt
works fine on CMD window.
Rule number 1: Always preserve the registers required by the ABI.
I changed the way the addin got descriptions for RadAsm 3.x and used scasb to scan for commas, unfortunately I did not preserve the EDI register and that caused the delete function to fail. I did not notice it until I went to delete a favorite today. Here's the fixed addin, sorry about that, I should know better...
Edgar
Hi KetilO,
I just realized that I wrote previously only what bothers me but I didn't give you any possible solution. :red
I think this is is how it should work.:
We need a check box in project settings for something like "don't have a main" or "library project" or something simille.
By checking it would change the behavior of the IDE slightly.
1.) The "Assemble all" would be enabled and it would assemble all modules.
2.) The "Assemble" button would assemble the file in the IDE the focus is on.
3.) Incremental build would apply to every module.
I think that would be optimal. ::) :bg
Hi obj2010
Toolbar creator works as it should here.
What OS are you using?
KetilO
Thanks Edgar
The download has been updated.
Version 3.0.0.7g 2010-11-08
---------------------------
o Updated donkey's Favourites addin.
o RadASM should now handle library projects with modules only (no main file).
KetilO
Thanks Ficko
Your suggestion is good exept there is no need for a checkbox. A project without a mainfile indicates this case.
Assemble: Assembles current open module file.
Assemble Modules: Assembles all module files, one by one.
Link: Links all module .obj files into a library
Build: Assembles current open module file and links all module .obj files into a library.
The download has been updated.
Version 3.0.0.7g 2010-11-08
---------------------------
o Updated donkey's Favourites addin.
o RadASM should now handle library projects with modules only (no main file).
KetilO
Ketil,
I just updated to "g" and the assemble icon is grayed.
The assemble menu item is active and works (F5) just no active assemble toolbar icon.
James
Hi jcfuller
Works here.
What programming language?
Do you have a project open?
KetilO
Ketil,
The ones with no asm icon do not have a link option.
The ones that do have a link step are fine.
James
(http://www.jcfuller.com/radasm_02.jpg)
Thanks KetilO!
Works like a charm. :U
Only the "Increment build" seems to be ignored.
I guess it not implemented jet!? ::)
Hi KetilO,
Any plans about HLA support?
Thanks jcfuller
New upload.
KetilO
Hi TmX
No immediate plans to add hla support
KetilO
Hi Ketl,
I have a couple of questions for addins.
1) Is the array of labels and their pointers found in the properties window available or is the data still stores as it was in V2 (string [a number of tabs] data)
2) What are the parameters for ADDINDATA.pHtmlHelpProc and can I insert a new address to inject my own code there ?
Edgar
Hi Edgar
1) Simular but not the same. The linked list item consist of a PROPERTIES structure followed by one or more ZStrings.
GetWindowLong ADDINHANDLES.hProperty,0 returns a pointer to a RAPROPERTY structure. RAPROPERTY.lpmem
is the pointer to the linked list.
Note however that it is not recomended to access the list directly. If possible use the PRM_* messages you can send to
the properties window.
2) Here is the part in RadASM 3 that handles help files.
DoHelp proc lpszHelpFile:DWORD,lpszWord:DWORD
LOCAL hhaklink:HH_AKLINK
LOCAL hHHwin:HWND
LOCAL buffer[MAX_PATH]:BYTE
mov eax,lpszHelpFile
.if byte ptr [eax]
.if dword ptr [eax]=='ptth'
;URL
invoke ShellExecute,ha.hWnd,addr szIniOpen,lpszHelpFile,NULL,NULL,SW_SHOWNORMAL;SW_SHOWDEFAULT
.else
invoke strcpy,addr buffer,lpszHelpFile
invoke FixPath,addr buffer,addr da.szAppPath,addr szDollarA
invoke strlen,addr buffer
lea edx,buffer
mov edx,[edx+eax-4]
and edx,5F5F5FFFh
.if edx=='MHC.'
;Chm file
invoke RtlZeroMemory,addr hhaklink,sizeof HH_AKLINK
.if !ha.hHtmlOcx
invoke LoadLibrary,offset szhhctrl
mov ha.hHtmlOcx,eax
invoke GetProcAddress,ha.hHtmlOcx,offset szHtmlHelpA
mov da.pHtmlHelpProc,eax
.endif
.if ha.hHtmlOcx
mov hhaklink.cbStruct,SizeOf HH_AKLINK
mov hhaklink.fReserved,FALSE
mov eax,lpszWord
mov hhaklink.pszKeywords,eax
mov hhaklink.pszUrl,NULL
mov hhaklink.pszMsgText,NULL
mov hhaklink.pszMsgTitle,NULL
mov hhaklink.pszWindow,NULL
mov hhaklink.fIndexOnFail,TRUE
push 0
push HH_DISPLAY_TOPIC
lea eax,buffer
push eax
push 0
Call [da.pHtmlHelpProc]
mov hHHwin,eax
lea eax,hhaklink
push eax
push HH_KEYWORD_LOOKUP
lea eax,buffer
push eax
push 0
Call [da.pHtmlHelpProc]
.endif
.elseif edx=='PLH.'
;Hlp file
invoke WinHelp,ha.hWnd,addr buffer,HELP_KEY,lpszWord
.else
;Other
invoke ShellExecute,ha.hWnd,addr szIniOpen,addr buffer,NULL,NULL,SW_SHOWNORMAL
.endif
.endif
.endif
ret
DoHelp endp
KetilO
KetilO,
Any plans on supporting the MSVC debugger?
VC Syntax is
Visual Studio: devenv.exe /debugexe program.exe arg1 arg2
VC Express Edition: VCExpress.exe /debugexe program.exe arg1 arg2
WinDbg would probably work as it is, as the syntax is WinDbg.exe program.exe arg1 arg2, the same as OllyDbg.
KetilO,
I did some more fiddling around with it and VCExpress works fine if you leave out the /debugexe option. Like so: VCExpress.exe program.exe
Ok, "officially" started using version 3 :bg
Not sure if it is a feature, but in version 2 if I typed ProcName proc and hit return, Rad would fill in ProcName endp for me and also fill in a ret for me, in version 3, that doesn't seem to be the case? It doesn't type in ret anymore......
Also, you switched to what, dialog units not in the resource editor? grrr :toothy
All in all it is great so far! Found a few bug in the resource editor, when they are reproduced, I will post them here....
I have found a bug in ResEd.
1. Place an UDC (User Defined Control) in the dialog.
2. Go to the properties grid.
3. Press Ctrl+Z
It GPFs.
Tested in Windows 7.
Hi KetilO,
I have one small bug to report, ( asm is fasm ) ...
when some structure ( like PIXELFORMATDESCRIPTOR ) is defined like this :
proc SetupPFD
local pfd:PIXELFORMATDESCRIPTOR
ret
endp
I can normally reference structure elements from popup list,
but when is defined like this :
proc SetupPFD
locals
pfd PIXELFORMATDESCRIPTOR ?
endl
ret
endp
only empty list is present...
thx...
Dancho
to continue on my last post,
if some structure ( like WNDCLASSEX ) is defined like this in '.data' section :
section '.data' data readable writeable
wcx WNDCLASSEX sizeof.WNDCLASSEX,CS_HREDRAW+CS_VREDRAW,WinProc,0,0,0,0,0,0,0,className,0
then I cant reference structure elements in '.code' section :
section '.code' code readable executable
invoke LoadIcon,0,IDI_APPLICATION
mov [wcx.hIcon],eax ; have to enter wcx.hIcon manually
both section are in same ( main ) file...
thx
Dancho
Hi dancho,
If you put the initialization in braces it should work, not sure what assembler you're using but if its possible try this:
wcx WNDCLASSEX <sizeof.WNDCLASSEX,CS_HREDRAW+CS_VREDRAW,WinProc,0,0,0,0,0,0,0,className,0>
hey donkey,
assembler is fasm,
this is not problem with assembler syntax,structure is init properly,
just small bug with ide ( not referencing structure elements )...
anyway thx for your effort...
Dancho
Hi Ketil,
I have uploaded some templates for GoAsm here:
http://www.masm32.com/board/index.php?topic=15533.msg127485#msg127485
Edgar
Hi Ketil,
I have been adding new build types to GoAsm.ini and find that the drop down combo box that they are selected from is a bit limiting. Is it possible to have it expanded to ensure that the longest entry name will be visible ? The same applies to the drop down on the toolbar.
These are the build types I am proposing:
[Make]
Debug=0
Run=0,'Cmd /k',''
Make=GoRC,GoAsm,GoLink,lib
Help=
0=Win32 ANSI Release,'/r "$R"',"$R.res",'/c /x86 "$C"',"$C.obj",'$C $M $R',"$C.exe",'',
1=Win32 Unicode Release,'/r "$R"',"$R.res",'/c /x86 /d UNICODE "$C"',"$C.obj",'$C $M $R',"$C.exe",'',
2=Win32 MSLU Release,'/r "$R"',"$R.res",'/c /d UNICODE "$C"',"$C.obj",'$C $M $R /mslu',"$C.exe",'',
3=DLL32 ANSI Release,'/r "$R"',"$R.res",'/c /x86 "$C"',"$C.obj",'$C $M $R /dll /entry DllEntryPoint',"$C.exe",'',
4=DLL32 Unicode Release,'/r "$R"',"$R.res",'/c /x86 /d UNICODE "$C"',"$C.obj",'$C $M $R /dll /entry DllEntryPoint',"$C.exe",'',
5=Console release,'/r "$R"',"$R.res",'/c /x86 "$C"',"$C.obj",'$C $M $R /console',"$C.exe",'',
6=Win32 ANSI Debug,'/r "$R"',"$R.res",'/c /x86 "$C"',"$C.obj",'$C $M $R /Debug coff',"$C.exe",'',
7=Win32 Unicode Debug,'/r "$R"',"$R.res",'/c /x86 /d UNICODE "$C"',"$C.obj",'$C $M $R /Debug coff',"$C.exe",'',
8=Win32 MSLU Debug,'/r "$R"',"$R.res",'/c /d UNICODE "$C"',"$C.obj",'$C $M $R /Debug coff /mslu',"$C.exe",'',
9=DLL32 ANSI Debug,'/r "$R"',"$R.res",'/c /x86 "$C"',"$C.obj",'$C $M $R /dll /entry DllEntryPoint /Debug dbg',"$C.exe",'',
10=DLL32 Unicode Debug,'/r "$R"',"$R.res",'/c /x86 /d UNICODE "$C"',"$C.obj",'$C $M $R /dll /entry DllEntryPoint /Debug dbg',"$C.exe",'',
11=Win32 Driver Release,'/r "$R"',"$R.res",'/c /x86 "$C"',"$C.obj",'$C $M $R /Driver /Entry DriverEntry',"$C.exe",'',
12=Win64 ANSI Release,'/r "$R"',"$R.res",'/c /x64 "$C"',"$C.obj",'$C $M $R',"$C.exe",'',
13=Win64 Unicode Release,'/r "$R"',"$R.res",'/c /x64 /d UNICODE "$C"',"$C.obj",'$C $M $R',"$C.exe",'',
14=DLL64 ANSI Release,'/r "$R"',"$R.res",'/c /x64 "$C"',"$C.obj",'$C $M $R /dll /entry DllEntryPoint',"$C.exe",'',
15=DLL64 Unicode Release,'/r "$R"',"$R.res",'/c /x64 /d UNICODE "$C"',"$C.obj",'$C $M $R /dll /entry DllEntryPoint',"$C.exe",'',
16=Win64 ANSI Debug,'/r "$R"',"$R.res",'/c /x64 "$C"',"$C.obj",'$C $M $R /Debug coff',"$C.exe",'',
17=Win64 Unicode Debug,'/r "$R"',"$R.res",'/c /x64 /d UNICODE "$C"',"$C.obj",'$C $M $R /Debug coff',"$C.exe",'',
18=DLL64 ANSI Debug,'/r "$R"',"$R.res",'/c /x64 "$C"',"$C.obj",'$C $M $R /dll /entry DllEntryPoint /Debug dbg',"$C.exe",'',
19=DLL64 Unicode Debug,'/r "$R"',"$R.res",'/c /x64 /d UNICODE "$C"',"$C.obj",'$C $M $R /dll /entry DllEntryPoint /Debug dbg',"$C.exe",'',
20=Library ANSI,'/r "$R"',"$R.res",'/c /x86 "$C"',"$C.obj",'',,'$C',"$C.lib"
21=Library Unicode,'/r "$R"',"$R.res",'/c /x86 /d UNICODE "$C"',"$C.obj",'',,'$C',"$C.lib"
Edgar
Thanks Edgar
New upload.
Version 3.0.0.7h 2010-12-09
---------------------------
o Adjusted the size of some dialogs.
o Added Donkey's goasm build options and templates.
KetilO
KetilO,
In the last entry of my post dealing with image sizes, http://www.masm32.com/board/index.php?topic=15552.0, I think that it's something you might need to help me on.
Thanks,
-Shooter
Hi Ketil,
I've been trying to get a feel for how the internal debugger works and can't seem to get it to recognize symbol data. I keep getting the following error:
QuoteNo debug info found. Use the /Zd, /Zi and /DEBUG command line options.
C:\Programming\RadASM3\Masm\Projects\TestStrLen\TestStrLen.exe
My build is as follows:
rc /v "TestDialog.rc"
Microsoft (R) Windows (R) Resource Compiler Version 5.2.3690.0
Copyright (C) Microsoft Corporation. All rights reserved.
Creating TestDialog.RES
Using codepage 1252 as default
RC: RCPP -CP 1252 -f C:\Programming\RadASM3\Masm\Projects\TestDialog\RCa02876 -g C:\Programming\RadASM3\Masm\Projects\TestDialog\RDa02876 -DRC_INVOKED -D_WIN32 -pc\:/ -E -I. -I . -I C:\Programming\RadASM3\masm\include -I C:\Programming\Headers
TestDialog.rc.
Writing DIALOG:1000, lang:0x409, size 110.
Writing MENU:10000, lang:0x409, size 128
ml /c /coff /Cp /Zi /Zd "TestDialog.asm"
Assembling: TestDialog.asm
Microsoft (R) Macro Assembler Version 10.00.30319.01
Copyright (C) Microsoft Corporation. All rights reserved.
link /SUBSYSTEM:WINDOWS /DEBUG /VERSION:4.0 /OUT:"TestDialog.exe" "TestDialog.obj" "TestDialog.res"
Microsoft (R) Incremental Linker Version 10.00.30319.01
Copyright (C) Microsoft Corporation. All rights reserved.
LINK : TestDialog.exe not found or not built by the last incremental link; performing full link
Make done.
I also tried Embedded COFF symbols however it will not recognize those either. Since you're using DbgHelp.dll it should be able to easily handle both COFF and PDB symbols. I just can't seem to get it to work.
Edgar
I tried to make a new project using RadASM 3.0.0.7g, "Project | New Project" with the following settings:
Programming Language: GoASM
Project Name: Shooter's Tab Demo
Project Description: Tab Strip Demo
Folder Creation:
Project Subfolder: Checked
Bak: Checked
Res: Checked
Mod: Checked
Inc: Checked
Files (Tab):
Code File: Checked
Header File: Checked
Resource File: Checked
Text File: Not Checked
Build (Tab):
"Window Release" (Only option available, btw, how do I add to this?)
Template (Tab):
"Win32_TemplateA.tpl"
I created a blank dialog in the .RC file. Without making changes to the code or the .RC, I attempted to compile and received this error (see attached screen shot):
"Label of this name already declared:-
?"
Is this a bug?
-Shooter
The template files for RadAsm were created by me.
Win32_TemplateA is creates a window application with an RC file for resources. There are no resources in the RC file when it is created since the window creation does not require them so an empty RC is created. It expects you to add resources i.e. an icon before you build it. If you wish to have a window application without any RC file use Win32_NoResA instead. For the Dialog, please post the project so I can look at why there was no ID assigned to the dialog.
Edgar
Edgar,
As requested, please see the attached .zip. I have made zero changes to the created file set from the template, except the .RC... it is as it was originally created by RadASM.
Note: I added the IDD_DLG1 to the raw, defaulted .RC before compiling.
-Shooter
Hi Shooter,
One of the cardinal rules in Windows is that if you insist on using spaces in file names you should enclose them in quotes. I rarely ever use spaces in project names (or files in general) so the templates don't inlcude them. Change this:
#include Shooter's Tab Demo.h
to
#include "Shooter's Tab Demo.h"
And it should work fine.
Edgar
Hi Edgar
DbgHelp.dll
---------------------------------------------------------------------------------------------------
NOTE:
The debugger needs a recent version of dbghelp.dll to work.
o Windows Vista:
- My Vista came with version 6.0.6001.18000. It works OK.
o Windows XP:
- Download and install:
http://msdl.microsoft.com/download/symbols/debuggers/dbg_x86_6.11.1.404.msi
The only thing you need is DbgHelp.dll in:
C:\Program Files\Debugging Tools for Windows (x86)\srcsrv
Copy it to RadASM root (C:\RadASM).
o Windows 2000:
- Not tested.
o Windows 9x and Me:
- Not tested.
o Windows 7
- Not tested
KetilO
Hi Ketil,
Yes, I am using the same version of DbgHelp but it wasn't in the RadAsm root folder, you probably mentioned it somewhere but I missed it as usual. However putting it in the RadAsm root folder did not change the error:
DbgHelp.dll version 6.0.6001.18000 (longhorn_rtm.080118-1840)
No debug info found. Use the /Zd, /Zi and /DEBUG command line options.
C:\Programming\RadASM3\Masm\Projects\TestDialog\TestDialog.exe
CREATE_PROCESS_DEBUG_EVENT ProcessID: 264 ThreadID: 2668
Using the latest version from the debugging tools I get the following:
DbgHelp.dll version 6.11.0001.404 (debuggers(dbg).090225-1745)
No debug info found. Use the /Zd, /Zi and /DEBUG command line options.
C:\Programming\RadASM3\Masm\Projects\TestDialog\TestDialog.exe
CREATE_PROCESS_DEBUG_EVENT ProcessID: 4492 ThreadID: 5208
I have attached a simple MASM project that gave the errors above.
Note that I ran this on Vista 32 bit.
I ran the project through a symbol viewer example I wrote and everything seems fine with the PDB:
(http://img219.imageshack.us/img219/9816/symbols.jpg)
Hi, KetilO
The the "find dialog" is invalid when open a file as hex.
(My english is very poor. :'()
Quote from: donkey on December 09, 2010, 08:23:37 PM
One of the cardinal rules in Windows is that if you insist on using spaces in file names you should enclose them in quotes. I rarely ever use spaces in project names (or files in general) so the templates don't inlcude them. Change this:
#include Shooter's Tab Demo.h
to
#include "Shooter's Tab Demo.h"
Edgar,
As I mentioned before, I hadn't changed a thing... it was all 'default', but I'll catch it next time. :green2
-Shooter
Hi Edgar
I have no idea why it does not work for you.
On XP:
DbgHelp.dll version 6.11.0001.404 (debuggers(dbg).090225-1745)
DbgHelp found 1 source files containing 55 lines and 9 symbols. 0 symbols was not found.
** Debugging started: C:\RadASM30\Masm\Projects\TestDialog\TestDialog.exe
CREATE_PROCESS_DEBUG_EVENT ProcessID: 1348 ThreadID: 2604
LOAD_DLL_DEBUG_EVENT C:\WINDOWS\system32\ntdll.dll
On Vista:
DbgHelp.dll version 6.0.6001.18000 (longhorn_rtm.080118-1840)
DbgHelp found 1 source files containing 55 lines and 9 symbols. 0 symbols was not found.
** Debugging started: C:\Downloads\TestDialog\TestDialog\TestDialog.exe
CREATE_PROCESS_DEBUG_EVENT ProcessID: 2496 ThreadID: 2704
LOAD_DLL_DEBUG_EVENT C:\Windows\system32\ntdll.dll
KetilO
Hi Ketil,
Weird, I'll have to look into it later, for the weekend I want to take a shot at getting RadHelp working with version 3, it's a good addin and should be ported.
Edgar
Hi Ketil,
I've been looking at RadHelp and have pretty much decided that a complete rewrite is probably easier than porting it. I was never comfortable with the way the data was stored so I am redoing it with an sqlite database. The only issue I had was speed of inserting data but I've got it up to around 7000 records a second from the kwl files though that's just for backward compatibility, the new one will have a fully functional database file in the distribution. The RadAsm 2.x kwl files are imported in around 1.2 seconds on my laptop, probably be faster on a desktop PC. Going with a standardized format will allow users to create and edit their own collections using readily available 3rd party tools as well as an editor in the addin. I am hoping this will greatly enhance the addin and make it easier to exchange help collections.
Anyway that's the plan, I'll be working on it this week and should hopefully have something to test soon.
Edgar
Hi all
The previous upload did not contain te new RadASM.exe, so here it is.
New upload.
Version 3.0.0.7h 2010-12-20
---------------------------
o Adjusted the size of some dialogs.
o Added Donkey's goasm build options and templates.
KetilO
Quote from: KetilO on December 20, 2010, 09:17:24 AM
New upload.
Version 3.0.0.7h 2010-12-20
Ketil,
Is there a way you could provide links to these when they become available. It makes it easier to find.
Thanks,
-Shooter
Hi shooter,
You get them through the Radasm menu:
Tools>Check for updates
Or go to the first link in the thread.
Edgar
Quote from: donkey on December 20, 2010, 03:08:01 PM
You get them through the Radasm menu:
Tools>Check for updates
Edgar
Unfortunately the letter updates are not shown.
James
KetilO, could you update your forum profile's website link to point to the new radasm website, as it is still pointing to the old www.radasm.com, i have it bookmarked of course, but for other users could be handy. ;-)
I think I may have found a bug when trying to find and replace two items. NOTE: I realize this example shows "Whole Word" selected, but it didn't seem to matter if "Whole Word" was selected or not. This has happened either way. However, if I select "All Project Files", then it works.
RadASM version 3.0.0.7h
(http://img690.imageshack.us/img690/7601/findreplaceproblem.png) (http://img690.imageshack.us/i/findreplaceproblem.png/)
Hi Shooter,
This may be related to the bug I reported some months ago where if text is selected the find doesn't work well, it is not exactly the same problem but I suspect the two have the same root cause. Here's the links to the bug report and response:
Quote from: donkey on October 08, 2010, 01:56:36 AM
Hi Ketil,
Noticed something with the F3 search. Select a word using double-click and press F3. On the dialog that appears click "Find", RadASM will find the original instance of the word, press "Find" again and it gives you the "region searched" dialog. Also if you then select a different word it will continue the search for the first word each time you press the F3 key. I'm not sure if this is by design.
Quote from: KetilO on October 19, 2010, 12:31:22 PM
Hi donkey
F3 does not work well if there is a selection. It can cause a search in the selection only.
I will have a look at it.
KetilO
It has not been fixed yet but is on the "todo" list.
Edgar
Quote from: donkey on December 21, 2010, 01:56:25 AM
It has not been fixed yet but is on the "todo" list.
Cool. I wasn't sure it had been spotted yet or not, so I figured it be best to report it just in case.
So far I really like the look and feel of RadASM 3.x and look forward to more 'bells and whistles'. :thumbu
By the way, has anyone had a chance to look at my post http://www.masm32.com/board/index.php?topic=15700.0 regarding multiple project files yet?
-Shooter
I know I should document my code with more inline comments but I find in many instances it can obscure the actual flow of the code,especially if nested deep in if/then's with a lot of jumps.
I would like to see a menu/hotkey item to hide/show all comments.
Doable?
James
Hi,
Though there is no specific hotkey for it, I added the following to [CodeBlock] in the Goasm.ini file, it allows me to collapse my comments:
12=/*,*/,,,0
I was under the impression that the cmnt=/*,*/ would do it but it doesn't seem to make them collapsible or auto-close the comment block so I added it and find it great. When I want a comment to always show I use // or ;.
Edgar
Edgar,
Great tip.
This works with my Basic code: 12='/*,'*/,,,0
but I'd still like to hide all comments as the ones I mentioned are one liners describing code.
James
My CPU hangs intermittently when launching my executable from RadASM.
I've mentioned it before in another thread thinking it was something in my code, but after several different projects and making sure the projects run from Explorer, I now believe it's a bug within RadASM.
(http://img832.imageshack.us/img832/1726/radasmhangs01.png) (http://img832.imageshack.us/i/radasmhangs01.png/)
Also, launching of help files are buggy. Currently no help file launches from the menu bar. F1 works only when the cursor is over some keywords (Win32.hlp stuff).
(http://img291.imageshack.us/img291/898/helpmenu01.png) (http://img291.imageshack.us/i/helpmenu01.png/)
(http://img207.imageshack.us/img207/6351/helpmenu02.png) (http://img207.imageshack.us/i/helpmenu02.png/)
Also, and I've mentioned it before in other threads, I can NOT get RadASM to compile in Debug mode, no matter if I change settings in Project::Project Options, Option::Make Options, or start a new project with "Window Debug" selected. The compile strings always stays the same:
Assemble:
/c /coff /Cp "$C"
Link:
/SUBSYSTEM:WINDOWS /RELEASE /VERSION:4.0 /OUT:$O $C $M $R
(My last couple of projects have been from scratch in MASM32, if it makes a difference.)
-Shooter
just a suggestion, here...
you might also post the code for one of your simpler projects that demonstrates the hang
as for the help files not launching...
look in the Masm.ini file to see if the paths are correct, then verify that the files are present
example: does the file "E:\Program Files\RadASM\Help\WIN32.HLP" exist ???
Quote from: dedndave on January 04, 2011, 05:53:49 PM
just a suggestion, here...
you might also post the code for one of your simpler projects that demonstrates the hang
as for the help files not launching...
look in the Masm.ini file to see if the paths are correct, then verify that the files are present
example: does the file "E:\Program Files\RadASM\Help\WIN32.HLP" exist ???
See attached for the latest one (so far you have to exit by pressing Alt-F4). And like I mentioned, it's intermittent.
As to the other part, yeah, the file does indeed reside where the .ini says it should.
-Shooter
Before we help, update your RadAsm to the latest version. The version shown in the image has the shorter project type combo so it can't be the newest. Go to Tools:Check for Updates, the version at source forge may say it is the same as yours but that is normally because it does not support the version letter. Just update with whatever version you find there regardless of whether it says you're up to date or not. Once you have the latest version try to repeat the problem, if it still exists then post it here.
For the help files, they are not really all distributed with RadAsm, I would assume for copyright reasons, you will have to find and install them yourself. For example Win32.hlp is a really old file that can't even normally be opened if you're running Windows Vista or 7. It used to be available from Borland but not anymore (permission denied). At any rate it's pretty much useless and you're probably better off without it. I am currently rewriting the help system for RadAsm as an addin that will solve this problem, though since it is being written from scratch with a completely new SQL based approach it is taking some time. Should be ready in a few weeks for alpha testing though.
Quote from: donkey on January 04, 2011, 06:43:38 PM
Before we help, update your RadAsm to the latest version. The version shown in the image has the shorter project type combo so it can't be the newest. Go to Tools:Check for Updates, the version at source forge may say it is the same as yours but that is normally because it does not support the version letter. Just update with whatever version you find there regardless of whether it says you're up to date or not. Once you have the latest version try to repeat the problem, if it still exists then post it here.
Done. I had 3.0.0.7h, now I have 3.0.0.7i.
Original problem with hanging still exists though. I will state that moving the project files over to my laptop (still running 3.0.0.7h), the problem does not duplicate.
Quote from: donkey on January 04, 2011, 06:43:38 PM
For the help files, they are not really all distributed with RadAsm, I would assume for copyright reasons, you will have to find and install them yourself. For example Win32.hlp is a really old file that can't even normally be opened if you're running Windows Vista or 7.
I'm running XP Pro SP3.
Quote from: donkey on January 04, 2011, 06:43:38 PM
It used to be available from Borland but not anymore (permission denied). At any rate it's pretty much useless and you're probably better off without it. I am currently rewriting the help system for RadAsm as an addin that will solve this problem, though since it is being written from scratch with a completely new SQL based approach it is taking some time. Should be ready in a few weeks for alpha testing though.
I look forward to it.
Quote from: Shooter on January 04, 2011, 07:12:16 PM
Done. I had 3.0.0.7h, now I have 3.0.0.7i.
Original problem with hanging still exists though. I will state that moving the project files over to my laptop (still running 3.0.0.7h), the problem does not duplicate.
I cannot recreate the problem here on either of my systems. Ketil will undoubtedly find it though.
QuoteI'm running XP Pro SP3.
That's not the point. Win32.hlp only covers up to Win95, which represents only a subset of the API and even then it does not cover all of that. You are better off to download and install the SDK, it is by far the most complete and reliable source. I currently have no plans to support HLP files in my help addin but may add it since it's not too much extra effort.
Quote from: donkey on January 04, 2011, 07:34:34 PM
QuoteI'm running XP Pro SP3.
That's not the point. Win32.hlp only covers up to Win95, which represents only a subset of the API and even then it does not cover all of that. You are better off to download and install the SDK, it is by far the most complete and reliable source. I currently have no plans to support HLP files in my help addin but may add it since it's not too much extra effort.
I figured it wasn't, but just thought I'd throw that in there. I have already installed the Windows SDK.
Shooter, here is another idea to try: Turn off you Anti-Virus program and see if it still happens....
Quote from: Gunner on January 04, 2011, 09:53:54 PM
Shooter, here is another idea to try: Turn off you Anti-Virus program and see if it still happens....
Welp, I opened a different project to work on, which didn't have a problem, then went back to the other project that had problems, and now it doesn't (like I said, intermittent). But if it happens again, I'll try the AV thing and see what happens.
-Shooter
Hi Ketil
If this a bug in your Project converter plugin?
I convert a radasm 2x to 3 and open the new created project file
now have i no any compile button all is disable only the Compile Resource button works
I open a Project what created with Radasm 3x and it works ::)
Or have i a Bug in my eyes? :bg
Quote from: remus2k on January 05, 2011, 02:41:03 AM
Hi Ketil
If this a bug in your Project converter plugin?
I convert a radasm 2x to 3 and open the new created project file
now have i no any compile button all is disable only the Compile Resource button works
I open a Project what created with Radasm 3x and it works ::)
Or have i a Bug in my eyes? :bg
double click your "main" asm file of your project, then click menu Make > Toggle Current as Main File
No i have found this bug
My new converted Projectfile
[Project]
Assembler=masm <<<<<<<
Path=C:\My\XXXproject
Createt with Radasm3
[Project]
Assembler=Masm <<<<<<<
Path=C:\My\XXXproject
I have change the first Char of masm to Masm
is a bug in the Projekt converter plugin
and why save it my path in the project file?
For What?
any substantial project will have a resource file
they always tend to be named rsrc.rc - lol
well - that is one reason for having seperate folders
it is better to keep things seperate - easier to find
@dedndave
I have change this path manual and open my project and it works without path
To the bug i have found this mistake
If in the old Project file *.rap
[Project]
Assembler=masm
Convert only this masm without convert to uppercase the first Char
;Programming language
invoke GetPrivateProfileString,addr szIniProject,addr szIniAssembler,addr szNULL,addr buffer,sizeof buffer,addr project2x
invoke WritePrivateProfileString,addr szIniProject,addr szIniAssembler,addr buffer,addr project3x
And i have very many time used for setting up my Radasm2x Theme
I have try copy paste it in the new Radasm.ini and it works not
Use this a new array or anything for this colors?
i don't know, Remus
i was only offering my thoughts on why projects get seperate folders
as for any bugs you may find, i am sure Ketil will pop in soon :U
Is ok DednDave
I the Project converter must a check and change to uppercase for Assemblers
Store in Radasm3.ini
[Assembler]
Assembler=Masm,GoAsm,Fasm,Tasm,Cpp,Bcc,jWasm,sol_asm,fp,MinGW,fb
This problem with this theme is very very important
and i have not fun to setting up manual ervery my theme ::)
Remus,
I'm not sure what the point of this discussion is, Gunner told you the solution to your problem. The assembler name in the prra (project) file is not case sensitive, it could be MAsM and it still wouldn't make a difference. That is because it is only used as an entry in an INI file or as the root of a file name (masm.ini), neither of which are case sensitive under Windows. If you're having problems I really doubt that its because one is masm and the other is Masm, they are equivalent as far as RadAsm is concerned.
Yes Gunner tip works
sorry my bug :bg
To the radasm2 to radasm3 theme problem
as what if this color stored as hex in the ini
why can i not use my old theme?
hi,
the 'open include'-function won't work, when the include path is follwed by an comment:
for an example in masm32rt.inc:
include \masm32\macros\macros.asm ; masm32 macro file
Also the window serving function names (code completion e.g. for invoke) is allways sized to small and must be adjusted by hand.
There seems also be problem in the block-mode (ctrl+b) whit tab's - because on picture says more than thousand words, here an screenshot :dance:
(http://img708.imageshack.us/img708/7061/radasmw.jpg)
regards, qWord
Correct
It same with call
I look in the masm.ini in radasm2 and see this
[CodeComplete]
Trig=invoke,func(,call,$invoke(
Radasm3 masm.ini
[CodeComplete]
Trig=invoke
Now have test it and paste it in the new masm.ini
Now works this call for codecomplete but not for include and includelib
ok, this only an (big) feature request:
may it possible to add an find/replace operation using regular expression?
regards, qWord
Hi Ketil
I have found some resource bugs
Is not realy a bug only Cosmetic :lol
Resouces cosmetics for Radasm and UpdateChecker plugin
Something has been wrong proportion
Your can look the difference with WinMerge
I have all Change it this cosmitic bugs and save it as
Rc and Rsrc for the other users u can update all Resource with ResTools from my .Rsrc files
My Archive Files:
- RadASM30.rc
- RadASM30.rsrc
- UpdateChecker.rc
- UpdateChecker.rsrc
And something pictures you can see this proportion bugs
Not all
Greets
And this Picture
And I have see open the UpdateChecker plugin project in radasm
and go to the updater dialog you can see If more over buttons
gives a Flicker probelm
with Update,Unzip,Download button if Over
Swf Movie
http://www.2shared.com/file/Y8jSv-jL/screen.html
Hi
If it helps, i have a static lib of PCRE 8.1 that can be used for the regular expression search. If wanted, I can post it.
Regards,
Biterider
Question about using RadASM 3.x:
Is it possible to set up in the Tools menu the ability to launch a debugger and have the current project's executable automatically open with it via a variable?
I.e. "Ollydbg.exe /currentexe" or "WinDbg.exe /currentexe" or "VCExpress.exe /currentexe"
Quote from: Shooter on January 06, 2011, 02:10:35 AM
Question about using RadASM 3.x:
Is it possible to set up in the Tools menu the ability to launch a debugger and have the current project's executable automatically open with it via a variable?
I.e. "Ollydbg.exe /currentexe" or "WinDbg.exe /currentexe" or "VCExpress.exe /currentexe"
Sure, anything is possible with Addins! :bg I wrote an addin for both 2x and 3x BETA and so has Donkey and many others...
Create an addin, and get the current project name, tack on .exe and pass that to your debugger...
Quote from: Gunner on January 06, 2011, 02:28:24 AM
Sure, anything is possible with Addins! :bg I wrote an addin for both 2x and 3x BETA and so has Donkey and many others...
Create an addin, and get the current project name, tack on .exe and pass that to your debugger...
Cool. Now I'm treading into newer waters.
Personally I rarely find a need to use an external debugger like Olly or GoBug for my own code. I have my implementation of VKim's debug macros that do most of what I would ever use one for and since I wrote the implementation and the addin for both 2.x and 3.x I can tweak it as needed. Also for the few times I actually could put a debugger to good use I have GoP (unreleased as of yet) that can give me various performance benchmarks. I tend to use a debugger to view the disassembled code more than anything else and I am working on improving that functionality in GoP so I can see the time when they are just another tool left unused.
I think that some MASM user should think about tackling VKim for RadAsm 3 using MASM, it is to this day one of the most useful debugging tools I have ever used.
in the radasm 3 dir, look in projects > masm > addins (something like that) and open one of the addin projects and modify
donkey, i thought about that... liked how the debug macros used the ouput window of 2x so i might get on that thought :-)
Quote from: Biterider on January 05, 2011, 07:14:42 PMIf it helps, i have a static lib of PCRE 8.1 that can be used for the regular expression search. If wanted, I can post it.
that would be really nice.
qWord
Hi qWord
Here (http://www.asmcommunity.net/board/index.php?topic=30276.0) is the code. An example can be found here (http://www.masm32.com/board/index.php?topic=1922.0) and the doc here (http://www.pcre.org/).
Regards,
Biterider
Hi
I missing a fuction in radasm3
I have in the Resource browser 3 dialog ,now need i by right click on a dialog
in resource browser "remove from project"
Radasm 2 have it !!
by Radasm3 must i switch to the Menübar > Resource> Remove select
Thanks
I don't know if this is a bug, or if I'm doing something wrong. I created a new MASM project with no files, and then manually added the .asm and .rc files accordingly, and finally, removed the existing paths of the .inc and .lib listed in the .asm file. It compiles, but without the .rc file.
Also, when I attempt to edit the path of an included header file listed in the .rc, RadASM's title bar flashes inactive for a brief moment, then active again, but nothing else happens (see screenshot below with red box). I checked the Make Options to ensure the RC strings are correct, and they seem to be just fine, but it's just not compiling with the resource file.
(http://img692.imageshack.us/img692/1629/resourceeditorbug01.png) (http://img692.imageshack.us/i/resourceeditorbug01.png/)
Here is the project (http://www.masm32.com/board/index.php?PHPSESSID=ca38b944efdb42d2ddfa0c72cc1052e7&action=dlattach;topic=10154.0;id=5539) I'm trying to 'import'.
Am I doing something wrong?
-Shooter
To force the RC file to compile during a build do the following
Open the RC file
Select Make:>Toggle Current as Main File
Open the main assembly file
Select Make:>Toggle Current as Main File
Quote from: donkey on January 11, 2011, 05:42:12 PM
To force the RC file to compile during a build do the following
Open the RC file
Select Make:>Toggle Current as Main File
Open the main assembly file
Select Make:>Toggle Current as Main File
Thanks.
That worked to getting it to compile, but now I receive the error,
Quotersrc.rc(1) : fatal error RC1015: cannot open include file 'include'.
that is a resource compiler error
i take it you are trying to include resource.h
Quote#include "\masm32\include\resource.h"
in a resource file, the filename must be surrounded by double quotes
Quote from: dedndave on January 11, 2011, 06:20:31 PM
that is a resource compiler error
i take it you are trying to include resource.h
Quote#include "\masm32\include\resource.h"
in a resource file, the filename must be surrounded by double quotes
That's the problem... I can't get in to edit the path that's already in the resource file.
.RC files are text files
you can open or even associate them with Notepad, if you like
i am sure RadAsm gives you some way to edit them directly
Quote from: dedndave on January 12, 2011, 12:13:33 AM
.RC files are text files
you can open or even associate them with Notepad, if you like
i am sure RadAsm gives you some way to edit them directly
Actually, I got around it by deleting the entry and re-adding it. Not sure why I couldn't get RadASM to let me edit the existing entry.
Quote from: Shooter on January 12, 2011, 02:15:59 AM
Not sure why I couldn't get RadASM to let me edit the existing entry.
Well, for starters... AFAIK, RadASM 3 is
BETA!! It is a complete rewrite so there are many bugs to be found! :toothy
Quote from: Gunner on January 12, 2011, 02:37:39 AM
Well, for starters... AFAIK, RadASM 3 is BETA!! It is a complete rewrite so there are many bugs to be found! :toothy
Hence my question, if it was a bug or misuse. :wink
Hi Shooter
Yes, there is a bug and it will be fixed.
Be aware that the resource compiler converts strings (\r=CR=0Dh, \n=LF=0Ah.\0=0=00h and so on). Avoid using \.
These will all work:
#include <resource.h>
#include "\\masm32\\include\\resource.h"
#include "/masm32/include/resource.h" (RadASM's resource editor uses this one)
You dont need to edit the rc file in text mode. Just double click on filename and type in the new name.
KetilO
Quote from: KetilO on January 12, 2011, 08:22:00 AM
Be aware that the resource compiler converts strings (\r=CR=0Dh, \n=LF=0Ah.\0=0=00h and so on). Avoid using \.
These will all work:
#include <resource.h>
#include "\\masm32\\include\\resource.h"
#include "/masm32/include/resource.h" (RadASM's resource editor uses this one)
Question about the paths when dealing with this... using the image above as an example, does the path in the image override the existing $A path setting or include it?
-Shooter
Quote from: Shooter on January 12, 2011, 11:14:45 PM
Question about the paths when dealing with this... using the image above as an example, does the path in the image override the existing $A path setting or include it?
The path is hard coded, $A is not used.
Quote from: KetilO on May 31, 2010, 12:28:11 PM
RadASM 3.0 is a complete rewrite of RadASM. Some new features and many improvements.
RadASM 3.0 is in no way compatible with older versions of RadASM.
Ini files, project files, api files and addins are all incompatible.
Supported assemblers:
-------------------------------
Masm, GoAsm, Fasm and Tasm
Supported high level languages:
-------------------------------------------
VC6 C/C++, BCC 5.5 C/C++
WARNING!
Do NOT install RadASM 3.0 in the same directory as an older version of RadASM.
Get it here:
https://fbedit.svn.sourceforge.net/svnroot/fbedit/RadASM30/Release/RadASM.zip
KetilO
radasm is the best asm ide!
I hope radasm 3.0 can create a makefile for project. :lol
Quote from: donkey on January 12, 2011, 11:35:15 PM
The path is hard coded, $A is not used.
Long pathnames including root drive are required? (I haven't tried a referenced pathname yet. i.e. "\masm32\include\resource.h")
the masm32 library is put together to use root-relative paths
not the way i would have done it - but, then, i didn't do it, either - lol
Quote from: Shooter on January 13, 2011, 04:13:11 AM
Quote from: donkey on January 12, 2011, 11:35:15 PM
The path is hard coded, $A is not used.
Long pathnames including root drive are required? (I haven't tried a referenced pathname yet. i.e. "\masm32\include\resource.h")
Quote from: Web Definitions - hard codedWhen a literal value, such as 35, is written into a program. Values that are used often in a program are frequently better represented by symbolic constants rather than hard-coded values.
Any path that Windows can understand directly can be used. "/masm32/include/resource.h" is a hardcoded path since it contains no symbolic constants or variables (like $A) and it is a perfectly valid Windows path so its fine. You're thinking of absolute paths, two different things. The path can be relative or absolute, it just has to be hardcoded.
Quote from: donkey on January 13, 2011, 05:14:57 AM
Any path that Windows can understand directly can be used. "/masm32/include/resource.h" is a hardcoded path since it contains no symbolic constants or variables (like $A) and it is a perfectly valid Windows path so its fine. You're thinking of absolute paths, two different things. The path can be relative or absolute, it just has to be hardcoded.
I guess I need to make myself more clear. The absolute path to this particular project in question is: "E:\Program Files\RadASM\Masm\Bass\Masm\basstest\". The .RC file is located in the "basstest" folder. When it comes to compiling and assembly, how does RadASM treat the path of "\masm32\include\resource.h" while it's written in the .RC file? I mean, does it know to go to "E:\Program Files\RadASM\Masm32\include\"?
It gets confusing when dealing with subfolders of projects and relative paths, but it's nice (when one understands the structure) to be able to store everything on a memory stick and use any computer to edit and compile a project... the benefit of a PE.
-Shooter
root-relative paths use the current drive
if you are running RadAsm from E:, it is likely that E: is the current drive
hi KetilO,
any progress on this errors:
http://www.masm32.com/board/index.php?topic=14100.msg130546#msg130546
qWord
Hi qWord
I will have a lookn at it as soon as I get the time.
KetilO
Hi all
New update.
Version 3.0.0.7k 2011-02-20
---------------------------
o Added support for vkim debug macros with result to RadASM's output window.
Use Tools / Check for Update to get the latest version.
You can find the lib and inc file for vkim debug macros in the RadASM_Update\Masm folder.
Copy the lib and inc folders to the Masm folder in RadASM root folder.
KetilO
Quote from: KetilO on June 03, 2010, 02:02:55 PM
Hi all
New upload.
Version 3.0.0.1 2010-06-03
--------------------------
o Added JWasm programming language. Thanks to PauloH.
o Added user defined resource names export.
o Rebuildt all addins since there is a change in RESOPT / ADDINDATA.resopt
o Updated programming language ini files. Debug=0 on all except masm.ini and jWasm.ini.
o Added support for Objects and Methods to Masm.
o Automated updating when using Tools / Check for Updates.
o Fixed some minor resource editor bugs.
o Fixed a bug when building a library. Thanks to madprgmr.
o Fixed a bug where RadASM could crash on exit.
NOTE!
If you are updating, use Tools / Check for Updates to get the zip and unzip it.
Exit RadASM and run UpdateRadASM.exe in RadASM_Update folder.
KetilO
After updated:
Your current version: RadASM version 3.0.0.7
Version at sourceforge: RadASM version 3.0.0.7k
Why version number isn't 3.0.0.7k ?
Quote from: KetilO on February 21, 2011, 07:59:58 AM
Hi all
New update.
Version 3.0.0.7k 2011-02-20
---------------------------
o Added support for vkim debug macros with result to RadASM's output window.
Now this was a feature I was waiting for! Thanks! :bg
Empty project for asemw.
I type END. After I try to insert empty lines and...
[bug]
Module name: RadASM.exe (RadASM version 3.0.0.7)
Windows XP Service Pack 3
Exception code: C0000005h
EXCEPTION_ACCESS_VIOLATION
Instruction pointer: 00437096h
Registers:
eax=004AD950h ebx=001DD260h ecx=004A7841h
edx=00000000h esi=00000000h edi=00000000h
ebp=0012F26Ch esp=0012F268h eip=00437096h
Segment registers:
CS=001Bh DS=0023h SS=0023h
ES=0023h FS=003Bh GS=0000h
Flags: PF ZF IF
Flags: PF ZF IF
F3h SS=0023h
ES=0023h FS=003Bh GS=0000h
Stack:
0048A1DC 0012F298 00437286 004767A4
004A7841 00000000 00000000 004A7841
004A7841 0012F5A0 00437681 7E369491
0012F538 00437D43 004AD950 00000000
[/bug]
Just updated RadASM, and when I check for updates again, the output is:
Quote
Your current version: RadASM version 3.0.0.7
Version at sourceforge: RadASM version 3.0.0.7k
Strange. I'm already using 3.0.0.7k, isn't it?
Some changes to the 64 bit build types for GoAsm.ini, these are critical changes in order to fix a link error when building 64 bit programs.
12=Win64 ANSI Release,'/fo rsrc.obj /Machine X64 "$R"',"rsrc.obj",'/c /x64 "$C"',"$C.obj",'$C $M $R',"$C.exe",'',
13=Win64 Unicode Release,'/fo rsrc.obj /Machine X64 "$R"',"rsrc.obj",'/c /x64 /d UNICODE "$C"',"$C.obj",'$C $M $R',"$C.exe",'',
14=DLL64 ANSI Release,'/fo rsrc.obj /Machine X64 "$R"',"rsrc.obj",'/c /x64 "$C"',"$C.obj",'$C $M $R /dll /entry DllEntryPoint',"$C.dll",'',
15=DLL64 Unicode Release,'/fo rsrc.obj /Machine X64 "$R"',"rsrc.obj",'/c /x64 /d UNICODE "$C"',"$C.obj",'$C $M $R /dll /entry DllEntryPoint',"$C.dll",'',
16=Win64 ANSI Debug,'/fo rsrc.obj /Machine X64 "$R"',"rsrc.obj",'/c /x64 "$C"',"$C.obj",'$C $M $R /Debug dbg',"$C.exe",'',
17=Win64 Unicode Debug,'/fo rsrc.obj /Machine X64 "$R"',"rsrc.obj",'/c /x64 /d UNICODE "$C"',"$C.obj",'$C $M $R /Debug dbg',"$C.exe",'',
18=DLL64 ANSI Debug,'/fo rsrc.obj /Machine X64 "$R"',"$R.res",'/c /x64 "$C"',"$C.obj",'$C $M $R /dll /entry DllEntryPoint /Debug dbg',"$C.dll",'',
19=DLL64 Unicode Debug,'/fo rsrc.obj /Machine X64 "$R"',"$R.res",'/c /x64 /d UNICODE "$C"',"$C.obj",'$C $M $R /dll /entry DllEntryPoint /Debug dbg',"$C.dll",'',
Hi Ketilo
What mak this immediate window in the output?
And can you add this Styemanger in the TreeViewWindow? not popup a new dialog
Hi ragdog
"What mak this immediate window in the output?"
It is most useful while using the internal debugger to single step your code (masm, VC6 and jWsm projects only).
However it can also be used as an integer calculator.
Try typing:
?(123+456)*2
Since the result is shown both as decimal and hexadecimal it is also a convinient dec->hex / hex->dec converter.
"And can you add this Styemanger in the TreeViewWindow? not popup a new dialog"
Sorry, too much work .
KetilO
Some time ago I posted a set of debugging macros for GoAsm that were made to work with RadAsm 3 and based on VKims excellent tools for MASM. Those macros were for 32 bit code only, I have attached a new set for 64 bit code. The macros send all output to the RadAsm output window allowing you to do some quick debugging. The following macros are supported:
Try/EndTry - No parameters. Will print exception info if one occurs between the two macros
PrintDec - (Num) - Will print a qword in decimal notation, will accept a register, memory location or immediate value
PrintHex - (Num) - Will print a qword in hex notation, will accept a register, memory location or immediate value
PrintDouble - (Num) - Will print a double precision value, will accept a register, memory location (no immediate value)
PrintFloat - (Num) - Will print a single precision value, will accept a register, memory location or immediate value
PrintString - (Label) Prints a string variable
PrintStringByAddr - (Addr) Prints a string pointed to by Addr
PrintText - ("Str") Prints an immediate quoted string
PrintError - No parameters. Prints the last error message
PrintOleError - (Erno) Prints the system defined message identified by Erno
DumpMem - (pStart, nLength) Dumps a hex representation of memory beginning at pStart for nLength bytes
DumpFPU - No parameters - Displays the contents of the FPU
DumpMMX - No parameters - Displays the contents of the MMX registers
DumpEFlags - No parameters - Displays the contents of the EFlag register
These are macros and so do not use them with invoke, for example:
PrintText("Hello")
To use them add the following to your code (change the path to match your system)
#define DBG64LIB C:\RadASM30\GoAsm\dbg\Debug64.lib
#include C:\RadASM30\GoAsm\dbg\Debug64.a
You must use the /mix switch with GoLink, set link in project options to /mix $C $M $R
source and lib are attached (you will need lib.exe if you want to build the project)
<see next post, there were 7 downloads>
Added Spy and StopSpy, missed this set mostly because I don't use them but someone might find them useful. Spy allows you to monitor a variable while single stepping through code until the matching StopSpy is reached. I would advise against including any API calls within the Spy/StopSpy block as they can take quite a long time to step through. Do not use Try/EndTry within a spy block although you can nest a spy block inside a Try/EndTry block.
EDIT: Should mention the syntax
Spy(SPY_TYPE_DWORDHEX,SomeVar)
...
StopSpy
The first parameter selects the size and radix to use, the allowable values can be found in Debug64.a. The second parameter is a label, do not use square brackets or offset, just the label name. If you are using one of the SPY_TYPE_REGxx types do not include a second parameter Spy(SPY_TYPE_REGRAX)
SPY_TYPE_FLOAT = 0
SPY_TYPE_DOUBLE = 1
SPY_TYPE_QWORD = 2
SPY_TYPE_DWORD = 3
SPY_TYPE_QWORDHEX = 4
SPY_TYPE_DWORDHEX = 5
SPY_TYPE_STRING = 6
Register types (single parameter only)
SPY_TYPE_REGRAX = 7
SPY_TYPE_REGRBX = 8
SPY_TYPE_REGRCX = 9
SPY_TYPE_REGRDX = 10
SPY_TYPE_REGRSI = 11
SPY_TYPE_REGRDI = 12
SPY_TYPE_REGRSP = 13
SPY_TYPE_REGRBP = 14
SPY_TYPE_REGR8 = 15
SPY_TYPE_REGR9 = 16
SPY_TYPE_REGR10 = 17
SPY_TYPE_REGR11 = 18
SPY_TYPE_REGR12 = 19
SPY_TYPE_REGR13 = 20
SPY_TYPE_REGR14 = 21
SPY_TYPE_REGR15 = 22
Sample output
Begin spying SomeVar
Address 000000000040112F: SomeVar = ff98
Address 0000000000401131: SomeVar = ff98
Address 0000000000401133: SomeVar = ff98
Address 0000000000401135: SomeVar = ff98
Address 000000000040113F: SomeVar = 1
Address 0000000000401141: SomeVar = 1
Address 0000000000401143: SomeVar = 1
Address 0000000000401145: SomeVar = 1
Address 0000000000401147: SomeVar = 1
Address 0000000000401149: SomeVar = 1
End spying SomeVar
New upload, there were 7 from the previous one. I will not be adding any more functions to this project but I will fix any bugs that are reported.
Well, I said I wouldn't add any more functions, famous last words. Added Disassemble:
Disassemble(pTarget,nLines) - Disassembles nLines of code beginning at pTarget
For example:
Disassemble(OFFSET KLA, 10)
Output:
----------------------------------------
Disassembling 10 lines beginning at 0000000000401114
----------------------------------------
00000000`00401114 48894c2408 mov qword ptr [rsp+8],rcx
00000000`00401119 4889542410 mov qword ptr [rsp+10h],rdx
00000000`0040111e 4c89442418 mov qword ptr [rsp+18h],r8
00000000`00401123 4c894c2420 mov qword ptr [rsp+20h],r9
00000000`00401128 55 push rbp
00000000`00401129 4889e5 mov rbp,rsp
00000000`0040112c 4881ec88000000 sub rsp,88h
00000000`00401133 c745b050000000 mov dword ptr [rbp-50h],50h
00000000`0040113a c745b403000000 mov dword ptr [rbp-4Ch],3
00000000`00401141 48c745b8fa124000 mov qword ptr [rbp-48h],offset test64+0x12fa (00000000`004012fa)
----------------------------------------
Disassembly ended, next instruction at 0000000000401149
----------------------------------------
This one uses dbgeng.dll and I can't test it except on Win7 Ultimate X64 since thats the only 64 bit OS I have. It might have the following problems:
dbgeng.dll not found
GPF when executed
No output
Failure to attach to process
No such interface
Some of the errors above will prevent the lib file from working at all since it will terminate your application when included, for that reason I left the lib in the post above, it has none of the Disassemble code. I would really appreciate it if I could get some feedback as to what OS versions it works on (obviously no 32 bit OSes). Please just PM me, no need to pollute Ketil's thread with a bunch of GoAsm X64 specific stuff.
EDIT: I have gotten rid of a few message boxes that were left over from testing and redirected their output to RadAsm. Just error messages that I needed during development but I didn't want a message box to pop up if there was a problem. Added DumpSymbols that dumps the symbol table to the output window. The library routines have been renamed with an RDBG prefix and all data labels that are used by the library are prefixed with a %. These are filtered out of the symbol dump, likewise any symbols that are in your code that begin with one of those prefixes will not be displayed. The symbols require that you do a debug build with COFF embedded symbols, the build should look something like this:
GoRC /fo rsrc.obj /Machine X64 "test64.Rc"
GoAsm /c /x64 "test64.Asm"
GoLink /mix "test64.obj" "rsrc.obj" /Debug coff
Sample output:
----------------------------------------
Dumping symbol table
----------------------------------------
0x0000000000401057 : CODE : START
0x00000000004010DD : CODE : WinMain
0x00000000004012C3 : CODE : DlgProc
0x00000000004012E6 : CODE : DlgProc.WM_COMMAND
0x000000000040131F : CODE : DlgProc.WM_DESTROY
0x000000000040133D : CODE : DlgProc.DEFPROC
0x0000000000401369 : CODE : DlgProc.EXIT
0x0000000000405878 : DATA : hInstance
0x0000000000406000 : CNST : TestConstant
----------------------------------------
There were 5 previous downloads.
<moved this to its own thread (http://www.masm32.com/board/index.php?topic=16317.msg135041#msg135041)>
KetilO,
Would it be possible to get an explanation of the [Parse] and [CodeBlock] sections of the *.ini files?
Thank You,
James
Hi KetilO
Can you update the masm32.ini for trigger call?
[CodeComplete]
Trig=invoke,call
And Can you fix the Resouces?
Like this from Remus
http://www.masm32.com/board/index.php?topic=14100.msg130556#msg130556
And in Radasm have i a trigger for includes
example Include kern.. then popup the windows with the includes
Have this not Radasm 3.x?
What if this?
Project option>> Api files (if changed,reopen project)
winraeMsg.api,winraeConst.api
What can i make with it?
The api files contain the information for syntax hilighting and hint text. You can edit them to add anything you are missing.
Hi
Can you by code complete window the widh (da.win.ccwt) bigger
howList:
invoke ShowWindow,ha.hTT,SW_HIDE
invoke GetCaretPos,addr pt
invoke ClientToScreen,ha.hEdt,addr pt
invoke ScreenToClient,ha.hWnd,addr pt
invoke GetClientRect,ha.hWnd,addr rect
mov eax,pt.y
add eax,da.win.ccht
add eax,20
.if eax>rect.bottom
mov eax,da.win.ccht
add eax,5
sub pt.y,eax
.else
add pt.y,20
mov da.win.ccwt,319 <<<<<<<<<<<<<<<<<<<<<<
.endif
invoke SetWindowPos,ha.hCC,HWND_TOP,pt.x,pt.y,da.win.ccwt,da.win.ccht,SWP_SHOWWINDOW or SWP_NOACTIVATE
Or calc from string size i 'm not sure if that's possible?
By Radasm2 works this fine
Hi Ragdog,
I agree that the initial size is an annoyance, the code complete window only remembers its size until you close RadAsm then its back to the tiny window again. This is definitely something Ketil should take a look at, perhaps save the size in RadAsm.ini [tools] or another section.
One huge annoyance for me is RadAsm changing text without asking. For example try typing this and pressing enter, or just copy and paste it into a project:
mov eax, SIZEOF INITCOMMONCONTROLSEX
Also, if you get it to stay all caps then go back and press enter at the end of the line to insert a new one, it will change the text. I have typed lines of code without thinking and then had to go back and try to edit them without RadAsm changing them to some other case. The secret is not to use copy/paste and do not press enter at the end of the line. The problem does not happen when copy/pasting multiple lines.
Hi Ketil,
A bug in api hints:
(http://img708.imageshack.us/img708/3177/annoyme.jpg)
Hi Donkey
I have not this bug in APi hints
to my Question
I have download the source of radasm and have add this for the size of code complete window
mov da.win.ccwt,319
This is a good proportion
And i have change all resource bugs like proportion of controls Radio button ,static controls...
I can upload my RadASM30.rc
And i have change my Menü
in the old Radasm style
File
New Project
Open Project
Close Project
Seperator (----------)
New File
Open File
...
..
I have very long work with Radasm2 and have used to it
And i ilove the old Project Wizard and try it to change the new WIzard to the old
Or a complete new like visual studio :bg
Can i make this with a addin?
Hi all
The size of the code complete list has ALWAYS been saved to RadASM.ini on exit.
Maybe there are some windows version problems. It works as it should on my Vista.
KetilO
Hi all, new upload.
Version 3.0.0.7l 2011-04-11
---------------------------
o Added option to turn on / off auto case convert (Option / Code Editor / Auto Case Convert).
o Fixed an MASM structure code complete bug in .if statements.
o Fixed an asemw bug where RadASM could crash on an new empty project.
KetilO
Quote from: KetilO on April 11, 2011, 10:19:16 AM
Hi all
The size of the code complete list has ALWAYS been saved to RadASM.ini on exit.
Maybe there are some windows version problems. It works as it should on my Vista.
KetilO
Hi Ketil,
Weird, I got the last update and its working now, Win7 Ult. X64. I did overwrite the RadAsm.ini file this time, but can't see anything different and when I copy the old one it it continues to work. I don't understand it but its perfect now.
Turning off "Auto Case Convert" option solves my problem with INITCOMMONCONTROLSEX nicely, thanks.
Hi Ketil,
A possible bug I noticed, not sure how long its been there but the Tab Index on controls is not working. It does not change the order of the controls in the DIALOGEX structure of the RC file, as a work around I'm editing the RC file directly for now. (Win7 Ult. X64, RA ver. 3.0.0.7l)
Edgar
Thanks for this code complete and auto case convert :U
Hi
If this a bug?
Open Radasm without auto the last opening project or file
now if the file menu grey instead of blue
http://www.imagebanana.com/view/o12huilf/xyz.png
this is same with and without my Addin
And i code a addin to add a menu entry in ther first menu
this is not added by Open Radasm without auto the last opening project or file
Start i Radasm with auto opening project works fine with my addin and this blue menu.
Hi
I have found a bug in the Project converter (convert Radasm2 to Radasm3 project file
I Convert a dll project with this tool and after sucessfully converted projectfile
if my project a exe project
[Make]
Make=0
0=Window Release,'/v "$R"',"$R.res",'/c /coff /Cp "$C"',"$C.obj",'/SUBSYSTEM:WINDOWS /RELEASE /VERSION:4.0 /OUT:$O $C $M $R',"$C.exe",'',
Now must i change manuelly the Projecttype with Project option
[Make]
Make=0
0=Dll Release,'/v "$R"',"$R.res",'/c /coff /Cp "$C"',"$C.obj",'/SUBSYSTEM:WINDOWS /RELEASE /VERSION:4.0 /DLL /DEF:$D /OUT:$O $C $M $R',"$C.dll",'',
Hi
I missing a function on CodeComplete Listboxn in Radasm 2x and 3x
Have i many entry in this listbox need i a MouseWheel function to scroll down and up
I have add to my Radasm this function
CodeCompleteProc proc hWin:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM
LOCAL rect:RECT
mov eax,uMsg
.if eax==WM_CHAR
mov eax,wParam
.if eax==VK_TAB || eax==VK_RETURN
invoke SendMessage,ha.hEdt,WM_CHAR,VK_TAB,0
jmp Ex
.elseif eax==VK_ESCAPE
invoke ShowWindow,hWin,SW_HIDE
jmp Ex
.endif
;// MOUSEWHEEL CodeComplete ListBox
.elseif eax==WM_MOUSEWHEEL
mov eax, wParam
shr eax, 16
xor ecx,ecx ;LINEUP
cmp ax,0
jge @F
inc ecx ; LINEDOWN
@@:
invoke SendMessage,hWin,WM_VSCROLL,ecx,0
...
..
Now can you whell with mouse in the Codecomplete
Hi all
New upload.
Version 3.0.0.7m 2011-04-30
---------------------------
o Fixed a menu draw bug.
o Added support for mouse wheel in code complete list (thanks ragdog).
KetilO
Addins for WINAVR.
hi KetilO,
I can't still open includes (masm) when an comment following the include path.
Not sure,but in looking in the function OpenInclude() placed in FileIO.asm:
.if byte ptr [esi]=="'"
mov ah,"'"
inc esi
.elseif byte ptr [esi]=='"'
mov ah,'"'
inc esi
.elseif byte ptr [esi]=='<'
mov ah,'>'
inc esi
.else
mov ah,0
.endif
.while ah!=byte ptr [esi] && byte ptr [esi]
mov al,[esi]
mov [edi],al
inc esi
inc edi
.endw
it could be (for masm & C):
.if byte ptr [esi]=="'"
mov ah,"'"
inc esi
.elseif byte ptr [esi]=='"'
mov ah,'"'
inc esi
.elseif byte ptr [esi]=='<'
mov ah,'>'
inc esi
.else
mov ah,0
.endif
.while ah!=byte ptr [esi] && byte ptr [esi] && byte ptr [esi]!= ';' && word ptr [esi] != "//" && word ptr [esi] != "/*"
mov al,[esi]
mov [edi],al
inc esi
inc edi
.endw
qWord
Thanks KetilO
For add this function
Why update you not all resource?
Remus has posted a Resource fix
Here is a one bug
http://www.imagebanana.com/view/47debvbx/xxx.png
And in other Dialog´s have too bugs
Resource Update
- Do not Debug
- Find...
- Make Options
- IDD_DLGMENUEDIT
- Project Options
- Goto Line
- IDD_RESPREVIEWBTN
- IDC_TABOPT
- IDD_TABOPT1
- IDD_TABOPT3
- Update Checker Dialog
Hi all
New upload.
Version 3.0.0.7m 2011-05-03
---------------------------
o Fixed bug where Open Include did not work (thanks qWord).
o Fixed dialog control sizes (thanks remus2k / ragdog)
o Fixed a menu draw bug.
o Added support for mouse wheel in code complete list (thanks ragdog).
KetilO
KetilO
Everytime any .rc tab is closed RadAsm crashs. To make it work I need to close all tabs. I think this is a bug.
System: Win7 Ultimate 64 bits.
Thanks.
Hi KetilO!
Is there a "RadASMini.rtf" for RadASM 3.0 somewhere? ::)
I like to add some more languages but can't figure out some "magic" encoding exspecially in the "[Parse]" section.
Thanks
Hello.
Resource Editor operates on "WAWE" instead of "WAVE" when creating or manipulating resources.
After fixing WAWE to WAVE in "someFile.rc", then attempt to open it with RadAsm Resource Editor,
Rad Asm will pop up "Unknown Resource. Not supported by ResEd" Error.
Look in the Radasm.ini
And Change to:
[CustType]
5=WAVE,0,'Wave (*.wav)|*.wav',
Thank you ragdog.
That worked :U
Hi Ketil
Gives a function to show and hide the debug window like this
Add Hide/View Debug Window to the Menu
--------------------------------------
WndProc
.elseif eax==IDM_VIEW_DEBUG
invoke SendMessage,ha.hTool,TLM_HIDE,0,ha.hToolDebug
invoke SendMessage,ha.hTool,TLM_GETVISIBLE,0,ha.hToolDebug
invoke SendMessage,ha.hTbrView,TB_CHECKBUTTON,IDM_VIEW_DEBUG,eax
CheckMenu
invoke SendMessage,ha.hTool,TLM_GETVISIBLE,0,ha.hToolDebug
push eax
push IDM_VIEW_DEBUG
Radasm30.rc
#define IDM_VIEW_TAB 10035
#define IDM_VIEW_DEBUG 10036 ;<<<<<<<<<<<<<<<<<< I use this ID im not sure if this already used
..
.
POPUP "&View",IDM_VIEW
BEGIN
POPUP "&Toolbar",IDM_VIEW_TOOLBAR
BEGIN
MENUITEM "&Lock Toolbars",IDM_VIEW_LOCK
MENUITEM "",10064,0x00000800
MENUITEM "&File",IDM_VIEW_TBFILE
MENUITEM "&Edit",IDM_VIEW_TBEDIT
MENUITEM "&Bookmark",IDM_VIEW_TBBOOKMARK
MENUITEM "&View",IDM_VIEW_TBVIEW
MENUITEM "&Make",IDM_VIEW_TBMAKE
MENUITEM "Build Type",IDM_VIEW_TBBUILD
END
MENUITEM "&Statusbar",IDM_VIEW_STATUSBAR
MENUITEM "&Project",IDM_VIEW_PROJECT
MENUITEM "Properties",IDM_VIEW_PROPERTIES
MENUITEM "&Output",IDM_VIEW_OUTPUT
MENUITEM "Tab Select",IDM_VIEW_TAB
MENUITEM "View Debug",IDM_VIEW_DEBUG ;<<<<<<<<<<<<<<<<<<<<<<
And other to this debug window
-------------------------------
I have change my Theme by button apply works all fine with the Text and Background color
After restart radasm have this debug window again the old Text und background color
Here is fixed
GetColors proc uses ebx
LOCAL racolor:RACOLOR
invoke GetPrivateProfileString,addr szIniColors,addr szIniColors,addr szNULL,addr tmpbuff,sizeof tmpbuff,addr da.szAssemblerIni
.if eax
xor ebx,ebx
.while ebx<sizeof RADCOLOR/4
invoke GetItemInt,addr tmpbuff,0
mov dword ptr da.radcolor[ebx*4],eax
inc ebx
.endw
.else
invoke RtlMoveMemory,addr da.radcolor,addr defcol,sizeof RADCOLOR
.endif
invoke SendMessage,ha.hOutput,REM_GETCOLOR,0,addr racolor
mov eax,da.radcolor.toolback
mov racolor.bckcol,eax
mov eax,da.radcolor.tooltext
mov racolor.txtcol,eax
;-----------------------------------------------------------------------------------------------
invoke SendMessage,ha.hREGDebug,REM_SETCOLOR,0,addr racolor
invoke SendMessage,ha.hFPUDebug,REM_SETCOLOR,0,addr racolor
invoke SendMessage,ha.hMMXDebug,REM_SETCOLOR,0,addr racolor
invoke SendMessage,ha.hWATCHDebug,REM_SETCOLOR,0,addr racolor
;-----------------------------------------------------------------------------------------------
String Bug "Region searced."
----------------------------
Radasm.inc
szRegionSearched db 'Region searced.',0
szReplaceDone db 'Region searced.',0Dh,'%d replacements done.',0
Replace to "Region searched"
Resource editor WAWE string bug."
---------------------------------
And fix this in the Radasm.ini
[CustType]
5=WAVE,0,'Wave (*.wav)|*.wav',
New Function Autorefresh currentfile in Proberties WIndow."
-----------------------------------------------------------
And to the Proberties WIndow >>Button current file
If this button activated for auto refresh
Radasm.inc
.data
AutoRefresh db 0
Radasm.asm
.elseif [esi].NMHDR.code==BN_CLICKED && eax==ha.hProperty
invoke SendMessage,ha.hProperty,PRM_GETSELBUTTON,0,0
.if eax==1
.if ha.hMdi
invoke GetWindowLong,ha.hEdt,GWL_ID
.if eax==ID_EDITCODE
.if da.fProject
invoke GetWindowLong,ha.hEdt,GWL_USERDATA
invoke SendMessage,ha.hProperty,PRM_SELOWNER,[eax].TABMEM.pid,0
mov AutoRefresh,TRUE ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
.else
invoke SendMessage,ha.hProperty,PRM_SELOWNER,ha.hMdi,0
.endif
.endif
.endif
.elseif eax==2
invoke SendMessage,ha.hProperty,PRM_SELOWNER,0,0
mov AutoRefresh,FALSE ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
.endif
.endif
TabTool.asm
TabToolActivate proc uses ebx
LOCAL tci:TC_ITEM
invoke SendMessage,ha.hTab,TCM_GETCURSEL,0,0
mov tci.imask,TCIF_PARAM
mov edx,eax
invoke SendMessage,ha.hTab,TCM_GETITEM,edx,addr tci
mov ebx,tci.lParam
mov eax,[ebx].TABMEM.hwnd
mov ha.hMdi,eax
mov eax,[ebx].TABMEM.hedt
mov ha.hEdt,eax
invoke strcpy,offset da.szFileName,addr [ebx].TABMEM.filename
mov da.fTimer,1
invoke SendMessage,ha.hFileBrowser,FBM_SETSELECTED,0,addr [ebx].TABMEM.filename
invoke GetWindowLong,ha.hEdt,GWL_ID
.if da.fProject
invoke SendMessage,ha.hProjectBrowser,RPBM_SETSELECTED,0,addr da.szFileName
.endif
invoke SendMessage,ha.hClient,WM_MDIACTIVATE,ha.hMdi,0
;---------------------------------------------------------------------
;If current file button selected autorefresh
.if AutoRefresh==TRUE
invoke SendMessage,ha.hProperty,WM_COMMAND,5,0
.endif
;----------------------------------------------------------------------
RaTools Text Color Change
(http://img269.imageshack.us/img269/7240/ratools.png)
;Draw Caption
.if [esi].TOOL.dFocus
invoke SetTextColor,hDC,0h
mov eax,COLOR_ACTIVECAPTION+1
.else
invoke SetTextColor,hDC,0FFFFFFh
mov eax,COLOR_INACTIVECAPTION+1
.endif
All New function tested and works fine :U
I know many question,idea, bugs ::)
Your can test it (compiled exe)
http://www.2shared.com/file/7DiuWoYR/RadASM_myupdate.html
Though good work for this nice IDE :U
Works almost flawlessly, except I neaded to change some configs to get masm working propertly, since the program's dir isn't on the drive root. Once i did it, it now works ok.
Another thing, program doesn't like projects on different drives whitch is bad, altrough i have some custom bat files to handle that by running it on masm drive by providing full path to source and output. So a feature like that whitch could solve it w/o drastic change in project source could be good :)
Works almost flawlessly, except I neaded to change some configs to get masm working propertly
what for settings
Settings changed in masm.ini
Quote[Environment]
0=path,\masm32\bin;$A
1=include,$A;\masm32\Include
2=lib,\masm32\Lib;$A
Have you Masm32 installed on drive C must you not change any settings
@Ketil
Is Updated
http://www.masm32.com/board/index.php?topic=14100.msg138116#msg138116
KetilO,
I have 9 items in my Option->Environment.
If I select tools->command line and then issue a SET only the first 7 appear to have been added.
James
@ragdog
I installed masm in drive D becouse I wanted to conserve some space on C. Though nearly almost all of my projects reside on D (there's a folder for it), sometimes I like to test something random or new on C, but then RadAsm folder is on D drive but is not on root of it and that's why I neaded to change those settings to as above.
@juozas
$A is Applications path from radasm
Your must change the path Menu>> Option >> Environment
Have you masm32 installed on d:
[Environment]
0=path,d:\masm32\bin;$A\..\Ollydbg
1=include,d:\masm32\Include
2=lib,$d:\masm32\Lib
Thanks Ketil for added this new function
Now what fail if this AutoRefresh
This Autorefresh for currentfile button can you found here
http://www.masm32.com/board/index.php?topic=14100.msg138116#msg138116
and Add to code editor dialog a function for change the selection bar color for Output,Debug and Immediate window
Project converter have a little bug with a Radasm2 dll project
I must manuelly change to Dll release under project options
[MakeDef]
Menu=1,1,1,1,0,0,0,0,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=7,O,$B\LINK.EXE /SUBSYSTEM:WINDOWS /DLL /DEF:$6 /LIBPATH:"$L",3,4
4=0,0,,5
5=rsrc.obj,O,$B\CVTRES.EXE,rsrc.res
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 /nologo /I"$I",2
13=7,O,$B\LINK.EXE /SUBSYSTEM:WINDOWS /DEBUG /DLL /DEF:$6 /LIBPATH:"$L",3
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
7=0,0,$E\OllyDbg,5
17=0,0,$E\OllyDbg,5
converted project
Make=0
0=Window Release,'/v "$R"',"$R.res",'/c /coff /Cp "$C"',"$C.obj",'/SUBSYSTEM:WINDOWS /RELEASE /VERSION:4.0 /OUT:$O $C $M $R',"$C.exe",'',
For WIndows projects works fine not for Dll projects and other have i not tested.
Then works fine
New Function in Radasm UpdateChecker Addin
Check auto.. for new updates by start Radasm
Thanks for clarify about things, changed as provided :) On drive D works ok.
But if project is stored on drive C, it anyway gives me error, whitch I then solve it with bath files.
Quotefatal error A1000: cannot open file : \masm32\include\windows.inc
on alot of sources it might be like this.
P.s. on my bath files i change active drive to d and then provide full paths, also add current source dir to include and lib variables (as posted somewhere) becouse there might be some includes in the source dir too.
im not sure use a correct path
d:\masm32\include\windows.inc
There seems to be a size limit on ENVIRONMENT entries as I added a rather large one and RadAsm3 threw an exception. I had to hand edit the ini file and remove it before RadAsm3 would run again.
James
Well i could change it, but this means i nead to edit the source files even those not made of mine, also a format like i posted above i see even on masm32 examples or on alot places on internet.
Hi
I found in the Addin folder TbrCreate.dll for Toolbar greate
How i can use it i can not find any menü entry in radasm to call it
Quote from: ragdog on May 08, 2011, 03:33:33 PM
Hi
I found in the Addin folder TbrCreate.dll for Toolbar greate
How i can use it i can not find any menü entry in radasm to call it
http://www.masm32.com/board/index.php?topic=14100.msg123768#msg123768
QuoteHow to open toolbar creator:
----------------------------
Open or add a .tbr file to your project. This will open a toolbar creator window in RadASM.
I have added a blank .tbr file to my project if cklick this file in the project browser popup not any dialog
a other question to Addin programming
I need a function if a Tab in the Tab Toolbar selected
I have look in the radasm sdk and i cannot find any function
Have you an idea?
Quote from: ragdog on May 08, 2011, 04:50:55 PM
QuoteHow to open toolbar creator:
----------------------------
Open or add a .tbr file to your project. This will open a toolbar creator window in RadASM.
I have added a blank .tbr file to my project if cklick this file in the project browser popup not any dialog
Works fine here, version 3.0.0.7M
Quotea other question to Addin programming
I need a function if a Tab in the Tab Toolbar selected
I have look in the radasm sdk and i cannot find any function
Have you an idea?
AIM_RASELCHANGE.
I use allready AIM_RASELCHANGE
.if uMsg==AIM_RASELCHANGE
mov ebx,lParam
.if [ebx].RASELCHANGE.fchanged
invoke MessageBox,0,0,0,MB_DEFBUTTON1
.endif
This works only with open a file from projectbrowser
but if file allready open and if select a other tab button works not
I use now this
mov eax,lpHandles
mov ebx,[eax].ADDINHANDLES.hTab
invoke SetWindowLong,ebx,GWL_WNDPROC,offset TabWndProc
mov OldTabWndProc,eax
..
,
TabWndProc proc hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM
.if uMsg==WM_LBUTTONUP
.if hAutoRefresh==TRUE
invoke SendMessage,hProperty,WM_COMMAND,5,0
.endif
.endif
invoke CallWindowProc,OldTabWndProc,hWnd,uMsg,wParam,lParam
ret
TabWndProc endp
Can i use BN_CLICKED or gives a function in radasm sdk if Tab Activated?
like TabToolActivate from radasm source
I need a function if a tab button clicked
like TabToolActivate in radasm source
I'd like to repport the bug that causes RadAsm to crash alot on my pc. When you start program via Debug -> Run and when it running you got to that menu item again, it crash with this report:
Module name: RadASM (RadASM version 3.0.0.7m)
Windows XP Service Pack 3
Exception code: C0000005h
EXCEPTION_ACCESS_VIOLATION
Instruction pointer: 0045FA92h
Registers:
eax=00000000h ebx=00000000h ecx=7C90F661h
edx=00000004h esi=0041E073h edi=0013FEB8h
ebp=0013FA08h esp=0013F9F8h eip=0045FA92h
Segment registers:
CS=001Bh DS=0023h SS=0023h
ES=0023h FS=003Bh GS=0000h
Flags: PF ZF IF
Flags: PF ZF IF
F3h SS=0023h
ES=0023h FS=003Bh GS=0000h
Stack:
0013FEB8 0041E073 00000000 00CB03AC
0013FE50 00420AC0 00000001 00000000
00000000 0013FEB8 0041E073 00000000
00000000 00000000 00000000 763A3C0C
p.s. dbghelp.dll in radasm folderis version 6.12.2.633 from latest version of debugging tools for Windows
Hi RagDog,
Well if you're using AIM_RASELCHANGE I would think you should be looking at the wParam not the lParam, it points to a TABMEM structure that gives information on the current tab:
TABMEM struct
hwnd DD ;Handle of the mdi child window.
hedt DD ;Handle of the edit window
pid DD ;Project id
filename DB MAX_PATH DUP ;Filename including full path.
ft FILETIME ;Filetime for last write.
nchange DD
fchanged DD
fupdate DD
fnonotify DD
nlastsize DD
nlastpropline DD
ends
Thanks i Try it :8)
I must subclass this tabtool window and then use your posted function correct?
mov eax,lpHandles
mov ebx,[eax].ADDINHANDLES.hTab <<<<<<<<<<<<<<<<<<
invoke SetWindowLong,ebx,GWL_WNDPROC,offset TabWndProc
mov OldTabWndProc,eax
TabWndProc proc hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM
...
...
invoke CallWindowProc,OldTabWndProc,hWnd,uMsg,wParam,lParam
ret
TabWndProc endp
Hi Ragdog,
If all you need to know is if a tab button has been pressed you can use the AIM_MDIACTIVATE message, it is sent each time an MDI child is diplayed, which happens to be each time a tab button is pressed.
AIM_DEBUGGETWIN equ WM_USER+54
EXPORT InstallAddin,AddinProc
DATA SECTION
hInstance HANDLE 0
lpHandles PTR 0
lpProcs PTR 0
lpData PTR 0
hRadASM HANDLE 0
hOutput HANDLE 0
hook HOOK <>
CODE SECTION
DllEntryPoint FRAME hInst, reason, reserved1
mov eax,[hInst]
mov [hInstance], eax
xor eax, eax
inc eax
ret
ENDF
InstallAddin FRAME hWin
invoke SendMessage, [hWin], AIM_GETHANDLES, 0, 0
mov [lpHandles], eax
invoke SendMessage, [hWin], AIM_GETPROCS, 0, 0
mov [lpProcs], eax
invoke SendMessage, [hWin], AIM_GETDATA, 0, 0
mov [lpData], eax
mov eax,[hWin]
mov [hRadASM],eax
invoke SendMessage,[hRadASM],AIM_DEBUGGETWIN,0,1
mov [hOutput],eax
mov D[hook.hook1],HOOK_MDIACTIVATE
xor eax,eax
mov [hook.hook2],eax
mov [hook.hook3],eax
mov [hook.hook4],eax
mov eax,offset hook
ret
ENDF
AddinProc FRAME hWin, uMsg, wParam, lParam
cmp D[uMsg], AIM_MDIACTIVATE
jnz >>.ExitMsgLoop
invoke SendMessage,[hOutput],EM_SETSEL ,-1,-1
invoke SendMessage,[hOutput],EM_REPLACESEL,0,offset <13,10,0>
invoke SendMessage,[hOutput],EM_REPLACESEL,0,"Tab Changed"
invoke SendMessage,[hOutput],EM_SCROLLCARET ,0,0
.ExitMsgLoop
xor eax, eax
ret
ENDF
Thanks Edgar for your help
I have a good solution found
mov eax,lpHandles
mov eax,[eax].ADDINHANDLES.hToolTab
invoke SetWindowLong,eax,GWL_WNDPROC,offset ToolTabWndProc
mov OldToolTabWndProc,eax
..
.
.
ToolTabWndProc proc hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM
.if uMsg==WM_NOTIFY
mov ebx,lParam
.if [ebx].NMHDR.code==NM_CLICK
invoke TextOutput,addr szTabChanged
.endif
.endif
invoke CallWindowProc,OldToolTabWndProc,hWnd,uMsg,wParam,lParam
ret
ToolTabWndProc endp
Hey
I think this is a bug
Hide the Output window an compile any source with build or go
Now show the output window and destroy all windows in the proberties window
By click with build or go
(http://imageshack.us/m/585/1931/bugxk.png)
I have look @ the source i cannot find it
And can any explan me this number in the projectfiles what this is?
Path=C:\Users\unknow\Desktop\DlgMain
Group=2,-1,0,1,DlgMain,-2,-1,0,Assembly,-3,-1,0,Include,-5,-1,0,Resource,-6,-1,0,Modules
F1=-2,0,1,22,22,600,400,0,DlgMain.Asm
F2=-3,0,1,22,22,600,400,0,DlgMain.Inc
F3=-5,2,4,22,22,600,400,0,DlgMain.Rc
F4=-6,0,1,0,0,877,438,0,gg.asm
Open=0,4
Api=
C4=0
B4=
M4=
I need information about it for my new Addin
Greets,
Hi Ragdog,
This much you can get from a bit of experimentation:
F2=Group,(?),Filetype,x,y,Width,Height,Line#,FileName.h
Filetypes: 1 = Code, 4 = Resource
Thanks
What for coordiantes if this
x,y,Width,Height
To show from selected file the mdichild?
and what if c4 d4 ....
A project.Ini Help would be good
Quote from: ragdog on May 11, 2011, 05:48:08 PM
Thanks
What for coordiantes if this
x,y,Width,Height
To show from selected file the mdichild?
and what if c4 d4 ....
They are the coordinates and size of the mdi child if you right click a tab and use the menu to select "Restore". For C4 and D4, try changing them and see what happens.
Hi
Radasm30.rc
IDM_EDIT_FIND "Filnd" <<<<<<<<<
This Trigger (codecomplete) works not by me with Include and includelib
I use original masm32.ini
[CodeComplete]
Trig=invoke
Inc=include
Lib=includelib
Api=winasmApi.api,winasmConst.api,winasmStruct.api,winasmMsg.api,winmasmWord.api,winasmType.api
Quote from: KetilO on June 08, 2010, 02:10:12 PM
This addin converts RadASM 2.x projects to RadASM 3.0 projects.
WARNING!
- Copy all files in the project to a new folder before attempting to convert.
- RC files will be converted to a single file. mnu, dlg and rap files will be deleted.
NOTE!
- No attempt is made to convert the make options.
- Previously non visible dialogs must be made non visible in the new project.
- You need RadASM 3.0.0.1 or higher for the addin to work.
HOW TO INSTALL
- Copy the ConvertProject.dll to the Addins folder.
- Copy the ConvertProject.txt to the Addins/Help folder.
- Restart RadASM if it is running.
KetilO
Hi I tried to convert Version-Inc to work with RadASM 3.0.0.1 with no sucsses....I got the plugin to be recognized by the the add-in manager , but I can only add it after I start RadASM, if it is in there before , RadASM crashes at start up, Strange
I changed my .def
from:
LIBRARY Version-Inc
EXPORTS
InstallDll
DllProc
GetOptions
To:
LIBRARY Version-Inc
EXPORTS
InstallAddin
AddinProc
GetOptions
obviously the procs too any ideas ?
Hmm, I can't seem to find the source to that one in any files I have... Anyways, without seeing the source for that addin it is hard to say... Donkey?
RadASM 3 does not have the same messages that RadASM 2 used, could that be the problem? There are different structures also, both those being said, just renaming the old procs to new addin proc names will not work, since the new addins use different startup code
Quote from: Gunner on July 03, 2011, 09:27:43 PM
Hmm, I can't seem to find the source to that one in any files I have... Anyways, without seeing the source for that addin it is hard to say... Donkey?
RadASM 3 does not have the same messages that RadASM 2 used, could that be the problem? There are different structures also, both those being said, just renaming the old procs to new addin proc names will not work, since the new addins use different startup code
The source is in RadASM\Masm\Projects\Addins\Addins
But here it is anyways...
Although the output .dll name is "VersionControl.dll" instead of "Version-Inc.dll" like the asm dunno why ?
What about the code you "converted" to?
When I say things are different, for instance.... In Rad 2 version of one of my addins I use:
mov eax, RAM_COMMAND or RAM_OUTPUTDBLCLK or RAM_MENUREBUILD or RAM_CLOSE
and in Rad 3 version I have to use:
mov hook.hook1, HOOK_COMMAND OR HOOK_OUTPUTDBLCLK or HOOK_MENUUPDATE or HOOK_CLOSE
Rad 2 addins the InstallDLL proc expects 2 parameters, where Rad 3 addins the InstallAddin only expects 1 parameter
Are you just changing the proc names and not the parameters?
I changed some of the parameters but I did not know about the rest ....like" InstallAddin only expects 1 parameter"
well back to the drawing board
My advice would be to open a RadASM version 2 addin and a RadASM version 3 addin and look at the differences :bg
Quote from: Gunner on July 03, 2011, 10:04:15 PM
My advice would be to open a RadASM version 2 addin and a RadASM version 3 addin and look at the differences :bg
I have done that , but not well enough I guess.... The source for the RadASM version 3 addin can be found here:
RadASM\Masm\Projects\Addins\Addins
I will take a closer look at raASCII.dll, it seems to have simple "AddIn Procedures"
Hi Gunner,
No, its not one of mine but I will look through my archives for the source. For whatever reason I believe it was written by WillAsm though I could be wrong.
Hi hfheatherfox07,
I can take a look at it if you like, can't say that I'm much of an expert on RA3 addins but I have converted a few of them (and rewritten a couple from scratch).
Edgar
Quote from: donkey on July 03, 2011, 11:27:57 PM
Hi Gunner,
Hi hfheatherfox07,
If you upload your modified addin I can take a look at it, can't say that I'm much of an expert on RA3 addins but I have converted a few of them (and rewritten a couple from scratch).
Edgar
Already deleted it .... I am not at home , and I made my self a portable MASM ( include,bin,lib, buildit.bat's) so I assembled off of that, In case I am out and on a computer and get the urge to compile something...he he he
I will give it another try tonight (I hope)
The sun woke me up at 6 in the morning shining in my face .... So I got up and compiled something ......
In any case I was doing this for a friend , I never used this add-in my self , it is always disabled in the menu in RadASM2.x ,m at the risk of looking stupid I don't know how...
I use ReSED and lovin' it
@donkey
See if this works....It loads fine but it is in active as in RadASM2.x
hi,
the code completion doesn't offer structure members, if indexing is used:
LOCAL rect[2]:RECT
...
mov rect[16].left ; <- code complete won't work here
My Sphinx С-- 0.239 b26 do not understand some resource strings, like:
FONT 8,"MS Sans Serif",400,0,204
Early RadAsm don't add this. Maybe is there any options to disable adding this ?
Hi qWord
I am using the form:
mov rect.left[16] ; <- code complete works here
KetilO
Hi Shooshpanchik_ru
Sorry, no option. I will see what I can do.
KetilO
Greetings to all here, as I am new in the forum.
My thanks-congratulations for RADasm program to you KetiIO :clap: and
also to anyone that share and forwarding knowledge free as it has to
be in any civilization.
Statement: Please excuse my ignorance as i am just a begginer.
I have some assembly experience from Amiga and enough in Delphi.
Now, time comes to get involved with Assembly and C programming
for good [as i am into post production - 3D production with their limited
SDKs] but mostly because i always have the dream to build a game.
Bug or just me ? : I was trying to include a few languages to RADasm.
Masm and C++ are ready. But with Borland i have some issues.
I got this (http://i40.tinypic.com/24d3k7n.jpg) after trying to build. In the OUTPUT, i can't see the filename of
the file that can't opened by ILINK32.EXE.
This is my directory structure, .EXE files & versions, .CFG files
and the PATHS in the RADasm Enviroment for BCC.INI.
directories:
RADasm = G:\_InProg\RADasm\
Languages & Tools = G:\_InProg\_APP\
directory:
Borland C++ Builder = G:\_InProg\_APP\bc++\
configFiles:
G:\_InProg\_APP\bc++\bin\bcc32.cfg = -IG:\_InProg\_APP\bc++\Include
G:\_InProg\_APP\bc++\bin\ilink32.cfg = -LG:\_InProg\_APP\bc++\Lib
exeFiles:
BRCC32 Version = 50.4.227.0
BCC32 Version = 5.5
ILINK32 Version = 5.0.1.1
LIB Not found instead there is the TLIB
TLIB Version = 4.5
enviroment:
path : $A\..\_APP\bc++\Bin;$A\..\_APP\ollydbg
Include : $A\..\_APP\bc++\Include
Lib : $A\..\_APP\bc++\Lib
Hellenic in dialog Caption:
Not visible. I have already set Greek as the Language.
Just one suggestion:
Some more Templates & Projects for starters like me, it will be nice. :U
Also, i want to send to you a resource of mine. It's just an idea, that
[if you like it] may give more visual ability in some important areas of
RADasm UI. Shall i pm this to you?
Thank you.
Hi ADHS
Sorry for the late reply.
If I remember correctly Borland needs a ilink32.cfg file in the bin directory.
ilink32.cfg
-L"C:\Borland\BCC55\Lib"
KetilO
RadASM 3.0 Version 3.0.0.8 has been uploaded. Use update checker to get the zip file.
Whats New
-------------
Version 3.0.0.8 2011-12-23
--------------------------
o Improved build options so that linkers not producing windows executeable code still can
have the Run button enabled.
This is useful when assembling / linking microcontroller projects and running it in a
simulator.
The reason for this update is for RadASM to better support a 8051 / 8052 simulator I am creating.
If 8051 / 8052 programming using Assemw is of interest to you, then check out the 8051 / 8052 Simulator post in this sub forum.
KetilO
Hi KetilO
Thanks for the update
But I missing a function what i have post you
By Radasm2 have i a autocomplete function for include and lib files but not in Radasm3
Can you add this feature?
Greets,
Hi
Can Radasm 3 not Codecomplete for Include and Includelib?
I have look in to source
To get the Profile string "Inc" , "Lib" from Masm32.ini contain this source
[CodeComplete]
Trig=invoke
Inc=include
Lib=includelib
Api=winasmApi.api,winasmConst.api,winasmStruct.api,winasmMsg.api,winmasmWord.api,winasmType.api
Assembler.asm
invoke GetPrivateProfileString,addr szIniCodeComplete,addr szIniInc,NULL,addr da.szCCInc,sizeof da.szCCInc,addr da.szAssemblerIni
invoke GetPrivateProfileString,addr szIniCodeComplete,addr szIniLib,NULL,addr da.szCCLib,sizeof da.szCCLib,addr da.szAssemblerIni
But more not
Must i make a .api file for all Includes and Libs?
Greets,
Hi @all
I have long wait for this function AutoComplete for Include and Includelib like Radasm 2.
And i know not why Ketil not add this function?°? ::)
Open the Masm32.ini and remove this lines
[CodeComplete]
Trig=invoke
Inc=include <<<<<<<<<<
Lib=includelib <<<<<<<<<<
Api=winasmApi.api,winasmConst.api,winasmStruct.api,winasmMsg.api,winmasmWord.api,winasmType.api
Copy Inc_lib_CC.dll in the Addin folder
This addin serach on the Masm32\Include and Masm32\lib folder for all Include and libs
If you write in your source Include or Includelib popup the Autocomplete Window
Ps:Works only for Masm32
I think Ketil can this better to support for all languages :bg
Hi
A Theme bug in the last version
I change the color for CodeComplete and works fine but it read not by restart radasm.
same for selections bar and selections bar pen.
And here a bugfix
GetColors proc uses ebx
LOCAL racolor:RACOLOR
LOCAL cccol:CC_COLOR
LOCAL ttcol:TT_COLOR
invoke GetPrivateProfileString,addr szIniColors,addr szIniColors,addr szNULL,addr tmpbuff,sizeof tmpbuff,addr da.szAssemblerIni
.if eax
xor ebx,ebx
.while ebx<sizeof RADCOLOR/4
invoke GetItemInt,addr tmpbuff,0
mov dword ptr da.radcolor[ebx*4],eax
inc ebx
.endw
.else
invoke RtlMoveMemory,addr da.radcolor,addr defcol,sizeof RADCOLOR
.endif
invoke SendMessage,ha.hOutput,REM_GETCOLOR,0,addr racolor
mov eax,da.radcolor.toolback
mov racolor.bckcol,eax
mov eax,da.radcolor.tooltext
mov racolor.txtcol,eax
invoke SendMessage,ha.hOutput,REM_SETCOLOR,0,addr racolor
invoke SendMessage,ha.hImmediate,REM_SETCOLOR,0,addr racolor
invoke SendMessage,ha.hREGDebug,REM_SETCOLOR,0,addr racolor
invoke SendMessage,ha.hFPUDebug,REM_SETCOLOR,0,addr racolor
invoke SendMessage,ha.hMMXDebug,REM_SETCOLOR,0,addr racolor
invoke SendMessage,ha.hWATCHDebug,REM_SETCOLOR,0,addr racolor
;Set tool colors
invoke SendMessage,ha.hFileBrowser,FBM_SETBACKCOLOR,0,da.radcolor.toolback
invoke SendMessage,ha.hFileBrowser,FBM_SETTEXTCOLOR,0,da.radcolor.tooltext
invoke SendMessage,ha.hProjectBrowser,RPBM_SETBACKCOLOR,0,da.radcolor.toolback
invoke SendMessage,ha.hProjectBrowser,RPBM_SETTEXTCOLOR,0,da.radcolor.tooltext
invoke SendMessage,ha.hProperty,PRM_SETBACKCOLOR,0,da.radcolor.toolback
invoke SendMessage,ha.hProperty,PRM_SETTEXTCOLOR,0,da.radcolor.tooltext
;Code complete
mov eax,da.radcolor.ccback
mov cccol.back,eax
mov eax,da.radcolor.cctext
mov cccol.text,eax
invoke SendMessage,ha.hCC,CCM_SETCOLOR,0,addr cccol
mov eax,da.radcolor.ttback
mov ttcol.back,eax
mov eax,da.radcolor.tttext
mov ttcol.text,eax
mov eax,da.radcolor.ttapi
mov ttcol.api,eax
mov eax,da.radcolor.ttsel
mov ttcol.hilite,eax
invoke SendMessage,ha.hTT,TTM_SETCOLOR,0,addr ttcol
ret
GetColors endp
Please fix it
Can you Fix the Static Control in the Rebar?
(http://i40.tinypic.com/x0wkcg.jpg)
I have try to found self a solution without any result
And a other Redraw bug
Have i the output window hidden and i compile with Go
Clear all Properties windows and Tab Buttons and after compile if all again normal
Can you see in my screen shot
http://s7.directupload.net/images/120128/687fo4f6.jpg
Thanks ragdog
Quote
Can you Fix the Static Control in the Rebar?
No. It's needed.
KetilO
New upload.
Version 3.0.0.8 2012-01-30
--------------------------
o Fixed bug where code complete list and tooltip did not get its colors set. Thanks ragdog.
o Fixed a paint bug when output was shown during build.
KetilO
Thanks KetilO :U
QuoteCan you Fix the Static Control in the Rebar?
No. It's needed.
Can you this not make Transparent?
Quoteo Fixed bug where code complete list and tooltip did not get its colors set. Thanks ragdog.
o Fixed a paint bug when output was shown during build.
Works fine :U
Have you try my AutoComplete for Include and Includelib Addin
Is this ok?
No. It is used as a container for the build combo.
KetilO
Hi Ketil,
I also have an issue with code complete, its been around for a while but I never got around to reporting it. When I am typing an API that requires an offset to a function (for example a callback) when I type the function name the hint text changes to the parameters for the callback function and not the api. For example
invoke DialogBoxParam,[hInstance],IDD_MAINDLG,0,OFFSET DlgProc,0
When I am typing that line once I type OFFSET DlgProc the hint text will change to "DlgProc,hwnd,uMsg,wParam,lParam" instead of "DialogBoxParam,hInstance,lpTemplateName,HwndParent,lpDilaogFunc,dwInitParam"
Not really urgent, more of an annoyance than a problem.
Edgar
Hi
Can you add a function to Theme the radasm menu in the code editor color?
invoke MakeBitMap,19,0FFCEBEh,0FFFFFFh ;<<<<<<<<<<<
invoke CreateSolidBrush,0F5BE9Fh <<<<<<<<<
mov hBrMnu,eax
invoke FillRect,mDC,addr rect,hBrMnu
...
invoke CreatePen,PS_SOLID,1,0F5BE9Fh <<<<<<<<<
invoke SelectObject,mDC,eax
(http://www.uploadup.com/di-SCC6.png)
Hi Ketil
Gives a editor for winasmApi.api or other api files?
Or make your all manually?
Resource editor bug?
Select a control ,push to same time del and move the mouse
now can no select a other control.
I have tested by converting two radasm 2 projects.
Clicking the "Run" button causes "An exception has occured" but not the "Go" button. There is no exception.
The first string in my string table has ID = 0. This is not accepted. Had to do a workaround.
Hi Ketil,
Any chance of including RT_HTML as a resource type ? Right now I am using it in a couple of applications and RadAsm 3 keeps deleting the line from the RC file, a bit annoying that it does it without any warning. The syntax for an RT_HTML resource is
navfail.htm RT_HTML DISCARDABLE "navfail.htm"
RT_HTML equ 23
I use a string ID (name) in order to comply with the res:// protocol (http://msdn.microsoft.com/en-us/library/aa767740%28v=vs.85%29.aspx) of IE (though MSDN says numeric ones are allowed I could never get them to work)
Edgar
Hi Edgar
You can add it yourself. Use Option / Resouce Editor. Select the Resource types tab
Name: RT_HTML
Value: 23
Files: Html (*.htm)|*.htm
Editor: Optional, Your html editor.
Restart RadASM
KetilO
Perfect, Thanks Ketil