The MASM Forum Archive 2004 to 2012

General Forums => The Campus => Topic started by: n00b! on August 13, 2008, 12:39:47 PM

Title: MASM or TASM?
Post by: n00b! on August 13, 2008, 12:39:47 PM
Simple reconstruction of post: What are the advantages of MASM compared to TASM and backwards?
Title: Re: MASM or TASM?
Post by: PBrennick on August 13, 2008, 07:25:05 PM
TASM is no longer in development or supported. Also, there is a mountain of example type code out there for MASM. TASM? Also, if you want to ask questions, you will mostly get MASM type answers - for the most part.

There is nothing wrong, as far as I know, with TASM, but you should stick with the front-runner.

-- Paul


Title: Re: MASM or TASM?
Post by: n00b! on August 14, 2008, 12:30:32 PM
Simple reconstruction of post:
Title: Re: MASM or TASM?
Post by: PBrennick on August 14, 2008, 02:12:06 PM
Okay, I changed it to the repository link. That link was given to me by an old friend who left. I guess I always hoped he would come back as I miss him. Oh well, life goes on. Anyway, have you tried the new GeneSys Editor. It can be downloaded from http://pbrennick.freehosting.net/ (http://pbrennick.freehosting.net/).

It will be up at the repository soon.

-- Paul
Title: Re: MASM or TASM?
Post by: hutch-- on August 14, 2008, 10:18:03 PM
noob,

TASM was a good assembler in its time but as Borland ran out of puff it was no longer maintained and got left behind. Once Microsoft produced their 32 bit version back in the 90s MASM just went past it. Bogdan Ontanu is an expert on TASM and I think he was using it up until he started writing Solar_Asm and when he has the time to finish it, it will e a far better tool than TASM.
Title: Re: MASM or TASM?
Post by: n00b! on August 16, 2008, 02:13:44 AM
Simple reconstruction of post: What are the differences between the TASM Versions?

The documentation says TASM would know @@, @b and @f, but it doesn't look like.

Additionally I can't use the same name for labels in different procs
Title: Re: MASM or TASM?
Post by: Vortex on August 16, 2008, 09:04:35 AM
Hi n00b!,

You should have a look at LzAsm, a Tasm compatible assembler :

QuoteLazy Assembler (freeware) Version 0.56 (6 AUG 2007) by Stepan Polovnikov

LZASM is an x86 assembler for DOS and Windows that handles the TASM (Turbo Assembler) IDEAL mode and produces OMF OBJ files.
Support MMX, SSE, SSE2, SSE3 (PNI), SSE4 (MNI), 3DNow!Pro instructions.

http://lzasm.hotbox.ru/
Title: Re: MASM or TASM?
Post by: PBrennick on August 17, 2008, 01:10:46 AM
n00b,
It would be unusual for you to expect ANY assembler to allow two labels in the same procedure to have the same name. MASM has that special case involving "@@:" but other than that, it forces the same rule, also.

-- Paul
Title: Re: MASM or TASM?
Post by: Cobra on August 17, 2008, 05:58:27 AM
Quote from: n00b! on August 16, 2008, 02:13:44 AM
I read that in Tasm there is no @@ and so no @f + @b.
Also that you cannot have double names like

fo1 proc
jmp @f
@@:
fo1 endp

fo2 proc
jmp @f
@@:      ;<--- cannot have the name "@@" because in fo1 there is already "@@"     In Masm this would work...
fo2 endp


Is this correct? I mean, does this really not work?
If so it would be a big deficit in Tasm :0

The version of TASM that I have (5.3) and the previous 5.0 does support the @@ as well as all the high level things like .IF .ELSE .ENDIF and the like. It just doesn't natively support newer processor instructions. IMO, MASM is a better choice because it does get updated and the newest versions supports up to SSE4 instructions.
Title: Re: MASM or TASM?
Post by: n00b! on August 19, 2008, 11:58:48 AM
QuoteIt would be unusual for you to expect ANY assembler to allow two labels in the same procedure to have the same name.
?
What do you mean? Do you think I'm that stupid that I cannot think logical?

Where did I said that I want to have 2 Labes with the same Name in 1 Proc?

The first Label is in fo1, the second in fo2.
In Masm that would be possible, in Tasm you have to get a different Name even through the fact they're in different Procs.

PS: Masm produces smaller and faster Executables, too.

Edit: It's neither in Tasm 5.0 nor in Tasm 5.3 possible.
It's some kind of working with a patched Tasm 5.3 (I don't know whose Patch this is) but only in Masm Mode.
Title: Re: MASM or TASM?
Post by: BogdanOntanu on August 19, 2008, 12:34:43 PM
Quote
Edit: It's neither in Tasm 5.0 nor in Tasm 5.3 possible.

You are  wrong. It is very possible to use 2 labels with the same name in two different PROC's in both TASM 5.0 and TASM 5.3.
However you do have to know TASM in order to do this.

Hence at your reduced level of expertise it is better for you to start and then to keep on working with MASM and MASM32 package.
MASM32 is more tolerant to newbies than TASM is.

Besides this is a MASM forum.

Title: Re: MASM or TASM?
Post by: jj2007 on August 19, 2008, 01:15:14 PM
Quote from: n00b! on August 19, 2008, 11:58:48 AM
What do you mean? Do you think I'm that stupid that I cannot think logical?
Worse!
Quote from: BogdanOntanu on August 19, 2008, 12:34:43 PM
You are  wrong. It is very possible to use 2 labels with the same name in two different PROC's in both TASM 5.0 and TASM 5.3.
However you do have to know TASM in order to do this.

Hence at your reduced level of expertise bla bla bla
As you can see, it can be done. Bogdan knows how, but he won't tell you - this is true genius :8)
My advice: Tasm is very old, and you would be stuck with very few code examples. In contrast, Masm has an overwhelming codebase, to start with the Iczelion tutorials, the Masm32 examples, and an excellent library. The "support" is sometimes a bit, ehm, top down, but if you put forward concrete code examples, preferably after having searched \masm32\examples for solutions, somebody will help you. There is no risk in staying with Masm, so just go ahead. Welcome again :thumbu
Title: Re: MASM or TASM?
Post by: PBrennick on August 19, 2008, 02:12:51 PM
nOOb,

I do not know how to reply. I was just making a statement worth knowing. I feel you need to go to a TASM forum for TASM questions and come back here for answers to questions about MASM.

I certainly was NOT trying to offend you. On another note, Bogdan has been a TASM user for years, so you can believe anything he says as being correct. Most of us have played with TASM on and off but will not be able to give you the good advice you deserve.

Calm down.
-- Paul
Title: Re: MASM or TASM?
Post by: BogdanOntanu on August 19, 2008, 02:26:58 PM
Quote
As you can see, it can be done. Bogdan knows how, but he won't tell you - this is true genius Cool

Nope you are wrong on one item here: I am not a "true" genius.

I have simply read the TASM manuals and the solution was right in there. There is nothing special about it, just an TASM specific issue. My "not telling" is also nothing special.... I just thought that the OP could have found the solution very easy IF he was really interested by the issue.

Yes I do admit that I do know how to read ... but that is about all that I know... otherwise I am pretty dumb and stupid.
Title: Re: MASM or TASM?
Post by: GregL on August 19, 2008, 05:34:35 PM
n00b!,

If you are really interested in TASM, try it out. TASM 5.3 is included in Turbo C++ Explorer (http://tx.codegear.com/cpp). It's free.

Title: Re: MASM or TASM?
Post by: n00b! on August 19, 2008, 07:51:20 PM
Simple reconstruction of post: Why is TASM 5.3 from Inprise and not Borland?
Title: Re: MASM or TASM?
Post by: GregL on August 19, 2008, 08:05:42 PM
QuoteBut why is 5.3 from Inprise and not Borland?

At one point Borland changed it's name to Inprise. It's now Borland again but I believe they have sold their development tools.

Title: Re: MASM or TASM?
Post by: PBrennick on August 19, 2008, 09:04:48 PM
 :8)
Title: Re: MASM or TASM?
Post by: Cobra on August 20, 2008, 06:49:41 AM
Quote from: Greg on August 19, 2008, 08:05:42 PM
QuoteBut why is 5.3 from Inprise and not Borland?

At one point Borland changed it's name to Inprise. It's now Borland again but I believe they have sold their development tools.

Borland didn't sell their developement tools. They spun off another company called CodeGear and dumped all the developement tools there. The main division (Borland ) doesn't compete in the developement tools field.
Title: Re: MASM or TASM?
Post by: n00b! on August 20, 2008, 12:13:26 PM
Simple reconstruction of post: What TASM Manuals are you talking about?
I only know the Tasm.HLP File in the BIN folder [268 KB (274.644 Bytes)]
Title: Re: MASM or TASM?
Post by: hutch-- on August 20, 2008, 12:15:07 PM
noob,

The TASM manuals you get when you BOUGHT TASM.  :bg
Title: Re: MASM or TASM?
Post by: n00b! on August 20, 2008, 01:26:05 PM
How do you know that I did not do it? :P
Title: Re: MASM or TASM?
Post by: PBrennick on August 20, 2008, 03:02:32 PM
Before the name was changed to ml.exe it used to be masm.exe and the prominent releases were masm 5.0 and masm 5.1

-- Paul
Title: Re: MASM or TASM?
Post by: hutch-- on August 20, 2008, 04:39:14 PM
 :bg

> How do you know that I did not do it?

I don't but if you did you would own the manuals made of PAPER.
Title: Re: MASM or TASM?
Post by: n00b! on August 20, 2008, 05:07:24 PM
Simple reconstruction of post: Made of paper? Argh, damn it!
Title: Re: MASM or TASM?
Post by: GregL on August 20, 2008, 08:24:53 PM
n00b!,

This is the closest thing to a TASM manual that I know of, Paradigm bought TASM 5 and called it Paradigm Assembler. It's pretty much identical to TASM 5.

The manual can be downloaded from the LZASM (http://lzasm.hotbox.ru/) site.

The link is labeled 'Download Paradigm Assembler User's Guide (TASM 5.0 clone) (945 Kb)'.



Title: Re: MASM or TASM?
Post by: Cobra on August 21, 2008, 01:11:04 AM
Here's a direct link to the 5.0 users guide in PDF format.

http://www.phatcode.net/res/308/files/pasmug.pdf
Title: Re: MASM or TASM?
Post by: n00b! on August 21, 2008, 04:52:19 PM
Simple reconstruction of post: Does it contain the most infos about TASM which the TASM manuals have too?
Title: Re: MASM or TASM?
Post by: Mark_Larson on August 22, 2008, 08:33:36 PM
Quote from: hutch-- on August 20, 2008, 12:15:07 PM
noob,

The TASM manuals you get when you BOUGHT TASM.  :bg

I still have MY tasm manuals.  I'm anal like that.  of course they are in bad shape  :bg

the whole BIOS was done in tasm.  After I re-wrote the memory test using MASM 6.15 and sse2 ( you couldn't use SSE2 with tasm, no support).  I added the masm 6.15 to the make file, and tried to get other people to use it.  In my opinion despite MASM being done by the evil empire, it is the best assembler out there, bar none.  The macro support in MASM is much better than other assembles.  If you are worried about licensing, then use JWasm or POasm.
Title: Re: MASM or TASM?
Post by: jj2007 on August 22, 2008, 08:44:34 PM
Quote from: Mark_Larson on August 22, 2008, 08:33:36 PM
The macro support in MASM is much better than other assembles.  If you are worried about licensing, then use JWasm or POasm.

Masm's macro support is indeed top. You can write a high level language like Basic simply using macros (i.e. it may look like Basic but it is Assembler). But JWasm (http://www.japheth.de/JWasm.html) is a serious alternative: It's syntax is 100% Masm compatible, and even my most horribly complex macros run nowadays smoothly on JWasm.
Title: Re: MASM or TASM?
Post by: TASMUser on September 17, 2008, 09:18:48 AM
I prefer TASM for years because:
- I started ASM programming with it
- it generates more effective code with instructions like "add ebx,7" or "setflag dword ptr [var],880000h"
- it has support for OOP ("struct method")
- it doesn't know the pseudo instruction "invoke"
- it has a shorter commandline syntax
- it has some source code abbreviations which MASM doesn't know
- produces very sophisticated list files

Disadvantages:
- sometimes buggy
- to use macros with their full functionality the strange  IDEAL-mode must be activated
- creates OMF-object files only

---

To use local variables you can add the statement "locals".
By default all variables in procedures starting with "@@" will be declared as local.
"locals a" ensures that all variables starting with "a" will be declared as local.
Title: Re: MASM or TASM?
Post by: hutch-- on September 17, 2008, 09:50:19 AM
 :bg

Hi TASMUser,

Welcome on board. here are a few comparisons for you.

ML and LINK produce smaller exe files.

* - it doesn't know the pseudo instruction "invoke"

Yes but it does know an ambiguous usage of CALL to do much the same with PROCDESC prototypes.

MASM can handle much larger include files and has no problems with structures and unions.

MASM has a much more powerful macro system.
Title: Re: MASM or TASM?
Post by: dacid on September 17, 2008, 08:21:27 PM
i started with tasm some years ago... but i quickly switch for masm...  tasm is no longer in development or supported and in a couple of years you will need to develop 64 bit applications.
Title: Re: MASM or TASM?
Post by: Rainstorm on September 20, 2008, 10:52:01 PM
dacid wrote..
Quotein a couple of years you will need to develop 64 bit applications..
A couple of years is a long time in computing time...and what if 128 bit or something starts looming on the horizon by then ? :lol
am thinking of maybe skipping the 64 bit phase (still learning 32 bit), anyhow masm doesn't support 64-bit. - if the 128-bit style is completely different again from the 64-bit, then maybe skipping 64 bit coding would be a good thing for me. - but if it retains aspects of the 64-bit style & picks up from there.. then, skipping 64bit wouldn't work out so good.
Title: Re: MASM or TASM?
Post by: dacid on September 29, 2008, 03:19:43 PM
Its not the same... 64bits are REALLY needed at this time, they come to increasing, among other things, the maximum number of addressable memory from 4GB to 16EB (Exabytes, about 17 billion GBs). I think "16EB" will be enought for a while (a little more than 640k ;)

I really see the "really need" of 128 bits very far away while 64bits will become more and more comun/necessary.

Of course there is a version of MASM for 64bits ...

http://msdn.microsoft.com/en-us/library/hb5z4sxd.aspx

And it can be obtained for free (please read and obey EULA) in the Windows Server 2003 DDK and the Windows Server 2003 R2 Platform SDK.
Title: Re: MASM or TASM?
Post by: Mark Jones on September 30, 2008, 03:17:07 AM
That said, just a word that 64-bit... much like the transition from 16-bit to 32-bit, this "switch" is not a trivial change. Many things have changed, so it is more-or-less it's own animal.

As far as the popularity of 64-bit code and PC's, I would say that they are slow to enter the market and currently only fill a niche at best. (Don't misunderstand me, properly written 64-bit code is amazing to see, but any application is going to need a 32-bit version right now anyways, which kind-of defeats the purpose of writing in 64-bit assembler.) And 64-bit code has the nasty side-effect of requiring typically 4x the RAM to run in, simply because the extra DWORDS all over the place needed to represent all the pointers, data, registers etc. For instance, right after installation, WinXP typically uses about 175MB of ram, compared to XP64's 475MB. (That's just starting bare-bones windows -- no programs open at all.)
Title: Re: MASM or TASM?
Post by: Vortex on September 30, 2008, 07:39:04 AM
Beside ml64.exe SolAsm,GoAsm and PoAsm are supporting 64-bit coding.
Title: Re: MASM or TASM?
Post by: jdoe on September 30, 2008, 09:40:52 AM
Quote from: Mark Jones on September 30, 2008, 03:17:07 AM
As far as the popularity of 64-bit code and PC's, I would say that they are slow to enter the market and currently only fill a niche at best.

When Microsoft will do 64 bit only OS, it won't be slow anymore. And that time is coming... maybe after Windows 7.

:bdg

Title: Re: MASM or TASM?
Post by: PBrennick on September 30, 2008, 03:35:19 PM
At this point and for some time to come there will be no '64bit only OS.' MS would be committing suicide to do anything like that. 32bit has many, many years left and no serious developer will overlook that fact. Why would they develop software that would lessen its market-ability. Dual-development increases costs that cannot be recovered so most developers will stick to 32bits for the time being. Keep in mind that there is still a very large market that still uses DOS driven software because of the security advantage. They did not even blink when windows 95/98 appeared on the horizon and they STILL have no desire to change.

-- Paul
Title: Re: MASM or TASM?
Post by: Mark Jones on September 30, 2008, 03:40:49 PM
64-bit OS's should eventually be mainstream, I agree. Eventually. But unfortunately it might not be such a nice (and fast) transition as it was from 8-bit to 16-bit, then 16-bit to 32-bit -- 32-bit may be around for several decades or more, perhaps a century, requiring two versions of every program to be created for compatibility reasons during this time. If there was a 64-bit emulator for 32-bit kernels, then that would be perfect, since everyone could just switch to writing 64-bit code now. However this is not likely or impossible.

There are definite benefits to 64-bit addressing. It is also unfortunately, much more wasteful in terms of overhead.
Title: Re: MASM or TASM?
Post by: jdoe on September 30, 2008, 04:13:26 PM

Paul,

Like it or not, that's what Microsoft is hoping. On Windows Server, it's closer than you think.
There is plenty of links like that.


http://windowsvistablog.com/blogs/windowsvista/archive/2007/05/18/on-64-bit-and-windows-client.aspx

http://blog.tmcnet.com/blog/tom-keating/microsoft/microsoft-ocs-2007-r2-next-release-to-be-64-bit-only.asp

http://www.techweb.com/wire/software/showArticle.jhtml?articleID=174400732

http://blogs.zdnet.com/Bott/?p=506


Title: Re: MASM or TASM?
Post by: dacid on October 01, 2008, 08:18:44 PM
"Windows Server 2008 will be the last 32-bit operating system."

And as far as i know, microsoft plans include only two more 32bits "Client" releases: Windows 7 (2010) and other in 2014-2015 ... after that all Windows will be developed in 64bits versions only.

You know how the market is ... if i have 64bit version of my program and you dont  :tdown In computer world you need to be up to date or you will die quickly!  :boohoo:

Next Photoshop will get 64-bit boost--on Windows only
http://news.cnet.com/8301-13580_3-9909725-39.html

And so on...
Title: Re: MASM or TASM?
Post by: jj2007 on October 01, 2008, 09:55:54 PM
Quote from: dacid on October 01, 2008, 08:18:44 PM
You know how the market is ... if i have 64bit version of my program and you dont  :tdown In computer world you need to be up to date or you will die quickly!  :boohoo:
Scary :8)
Just bought some furniture. The vendors were extremely confused, the management had just changed the software, a brand new accounting system. I saw the screen: plain DOS. So much to markets. Ever looked over the shoulder of your travel agent?
Title: Re: MASM or TASM?
Post by: japheth on October 01, 2008, 10:30:22 PM
Quote from: dacid on October 01, 2008, 08:18:44 PM
You know how the market is ... if i have 64bit version of my program and you dont  :tdown In computer world you need to be up to date or you will die quickly!  :boohoo:
And so on...

Absolutely true ... or, at least, that's what MS and Intel want you to believe. Since they invest so much money in their propaganda, there must be some victims at last ... congrats!