News:

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

OpCode Database

Started by PBrennick, October 29, 2006, 08:21:53 PM

Previous topic - Next topic

Grincheux

It is a great work but some instructions such AAM and AAD must be completed. In fact these instructions only have one byte length, the second oprerans indicates the conversion base.

I know, these instructions are not very often used.

I continue to look at the "Cardfile". I am going to put it on my desktop, because such a tool is very uisefull.

Could you indicate the number of cycles used, and the pipeline, to know is an instruction is pairable. Attention, because some instructions such SHR eax,1 can be pairable but SHR eax,2 is not. I talking for me, but this kind of tool would be very appreciate (for me).

This softwazre could be improve in adding the processor from which we want the instruction set (AMD/INTEL) and for each (AMD or INTEL) all the CPU...

I saw you have health problems, are you Ok now. I suppose that asm is something like a drug (for me it is more), but take your time, health and famiily must be before every things.
Kenavo

Grincheux
_____________________________________________________
http://www.phrio.biz

PBrennick

Grincheux,
It is a large database so that will take time. I will do it though as I always like to help. First, I must finish the IDE. I will email you a beta copy of it in the evening around 7:00pm (GMT-5). Of the IDE, I mean.

Paul
The GeneSys Project is available from:
The Repository or My crappy website

Rockoon

Seems to me that adding instruction latencies and throughput would be a never ending battle as each processor generation seems to always change the score. Additionally you cannot trust neither Intel nor AMD technical specs on the matter and have to literally measure them for accurate figures. Agner Fog has done some extensive measurements of AMD64 instruction latencies and throughput in his new optimization guides, but his P2/P3/P4 figures are few and far between.

A more stable figure is the number and type of micro-ops (u-ups) an instructions gets decimated into by the various processors. Just tabulating which instructions fit the combined case: "1 u-op on Intel" And "2 or less u-ops on AMD" would be a major help to ASM programmers since the best performing procedures often stick to precisely these and only these instructions.

When C++ compilers can be coerced to emit rcl and rcr, I *might* consider using one.

Grincheux

For me I would prefer to know the pipeline on which the instruction can be executed. It is more important than the cycles. When I program I try to have a small code and a code that can use parallels intructions. The number of cycles comes after. Because if an instruction has 3 cycles and an other has 1 or 2 cycles, I am not sure that they are on differents pipelines. (I don't know if what I said is true... I have a doubt).

But for instructions such as SHR, SHL... SHR EAX,1 is pairable and SHR EAX,2 is not. I cannot see how you cant manage this except if you indicate a WARNING. Like this the user know that he has to get doc about.

A useful thing for rotations and shifts could be a schema.

I suggest you to have this tool included in the GeneSys editor. When I write an asm source file, generally with RADASM, it is usefull to have a syntaxic color, but an analyser would be more appreciate. This analyser would give the same infos as your tool and could generate a listing from the original file. The problem for the tool could be with macro, unless it expands it. The expansion could be indicated with a plus (+) sign.

An other thing and after I have finished. Having the affected flag could be useful.

It is easy to have ideas, it is an other thing to realize them. When we program, we have good editors never TRUE PROGRAMMING EDITORS. What is more important : To have many options for search/replace, syntax coloring... or something that will help you during programming. In RADASM (I don't like it, I love it), the only thing realy useful for a programmer is the function syntax we have after we type the CALLor INVOKE statement. That is very poor.

This afternoon, between two customers (I have a shop), I used your editor. Nothing to say about. The only problem is for assembly. I need a batch file ? I have installed the full package, read all the doc and... I don't understand.

Help !

I don't know if you will include all I said, by take a look aroud the others IDE, are they really programmings editors. I come from IBM3090, AS/400, VAX and PDP, we had big tools, in the PC world, it is not the same thing. On PC we don't have the JCL and that is a goodthing.

Bye and thank you for the interest you give to my request.

Philippe
Kenavo

Grincheux
_____________________________________________________
http://www.phrio.biz

PBrennick

Grincheux,
The EDitor/IDE has gone a long way since you got that beta copy. As you never emailed me beyond the one discussing Assembly, I thought you had lost interest so I stopped sending it to you.  At this point, you can assemble and compile. If you have loaded an asm file, it will look for an rc file with the same name and allow that to be compiled, also. The reverse is also true. If a file called rsrc.rc is loaded in, a dialog box will pop up asking the user what asm file to associate with the rc file. When either an asm or rc file (except for rsrc.rc) is loaded, a search is made for a batch file with the same name, if one is found an option to run it is added to the menu. Now I am writing the link function. Next will be Build All and then I will add a setup area where the user can choose commandline options like this:

Quote
1. A Build All entry.
2. A submenu of that menu that would be called Setup.
    a. An option to change ml.exe options ( the current default would be already
       entered and the user could change it.
    b. An option to change rc.exe options ( the current default would be already
       entered and the user could change it.
    c. An option to change link.exe options ( the current default would be already
       entered and the user could change it.


Then will come the tools section. The current Tools menu will be renamed Build and the new Tools menu will include things such as a touch function. I will put the opcode database in there, also if Vortex likes the idea. More tools will come as we continue to dream.

The first official release will come after the Link option is finished so everyone can play with it. This will happen in 2 or 3 days. It will be called a BETA release as it continues to grow away from being an editor into becoming an IDE.

I have no intention of looking at anyone elses IDE for ideas. I will do this my own way. As a result, it will not be a cookie cutter IDE that follows the C++ type IDE. It will truly be an Assembly Programmers IDE. Vortex and ZCoder have made some very positive comments and both are very excited seeing my vision take shape. I should say 'our' vision as a lot of it hinged on help from Vortex and ZCoder has allowed me to use his excellent shell which is better than Donkey's by leaps and bounds. Plus, it is not a console shell, it is WIN32!

Paul
The GeneSys Project is available from:
The Repository or My crappy website

Grincheux

You are right, sometimes when writing a program similar to the one we used, it often looks like a duplicate.

What I said, was ideas (good or bad I don't know) but this is my own experience. My first program editor was EDLIN. I will not make any remarks, you see...

The tool I am dreaming is a tool where all program are nested, that is the executes into the editor window they don't have their own. If you have gone to my small web site, in he list of my projects is an IDE too. Just for tell you that it is a subject from which I have spent a lot of time. Even if my mind, but a lot of tile too.

Do you think to an international version. In France we had, some years ago, a minister who obliged the software editors to translate their software in French. It the worst idea he has. The translation are very bad, and some word, for reals programmers, have sense in English, in French we don't know what they mean. But There are programmers who don't like english written software, so they expect a translated program. What about this ? Do you think GeneSys will be multi-lingual ?

In I-View, I have made DLL for each language : French, English and Spanish. Like this all the dialog box really are localized, because some words in French could be longer than in English and it is difficult to imagine the length of all the items. Menus and texts stings also are in the dll.

Did you think to users how have problem with eyes, not blind users, but they can see very bad. Vocals errors messages could be a good idea.

What is your philosophy ? I tooke the train while running... What exactly are your ideas ? How do you imagine GeneSys ?

The best tolol is now the software which is uptodate, or the programs which has a lot of pretties things, it is the one we maitrise.

Long time ago I used an excellent dos editor from Microsoft, it was called "M". It was programmable. You surely use it. Sometimes I would like to use it again. :boohoo:

I usually use RadAsm, I am sure that a very best program exists, but for me it is simple and I begin to know it, and for all I ask it, it is excellent, but this is my opinion.

But I am curious, and what is TRUE today can be FALSE tomorrow.

Continue what you do, continue with your forums, continue all what you do, and even if sometimes our exchanges where a bit hard (see INVOKE2), I appreciate your work, and you too. Remember the "PUSH OFFSET xxx" and "JMP xxx" replacing INVOKE and/or CALL.

Bye

Philippe
tosd.com

I have imagined my IDE as a plane board, I don't know it is the good name, but in my mind, and there only, I would have all the tools all around me. I would be able to detach a menu and put it near me. Did you see the "Next" GUI. It looks like this, and it is not because it was a French programmer that made it. Cocorico...
Kenavo

Grincheux
_____________________________________________________
http://www.phrio.biz

PBrennick

My philosophy is make it work first. By the way, English is an international language while French is not. Also, there is no simple correlation between the two because of major differences in the adjective, noun, verb and adverb layout. In English, we would never say, "Throw me down the stairs my shoes," but that is the 'literal' translation.

Paul
The GeneSys Project is available from:
The Repository or My crappy website