[comp.sys.ibm.pc] Turbo C 2.0 advice wanted...

soxy@vax5.CCS.CORNELL.EDU (10/20/88)

I am very seriously thinking of purchasing TC 2.0, and I am a bit confused 
about the differences between the expensive package and the cheaper one.

I know the expensive one has a standalone debugger and TASM...  I am interested
in programming as a hobby, not a proffesional career.  I want to use inline
Assembler, and am willing to buy the expensive version if I need to...  Is
there any reason to, is what I am asking...

Thanks for any insight on this matter...

-Chris
 -----

tony@brillig.umd.edu (Tony Feldmesser) (10/21/88)

In article <17144@vax5.CCS.CORNELL.EDU> soxy@vax5.ccs.cornell.edu Chris Eykamp
writes:
>I am very seriously thinking of purchasing TC 2.0, and I am a bit confused 
>about the differences between the expensive package and the cheaper one.
>I know the expensive one has a standalone debugger and TASM.  I am interested
>in programming as a hobby, not a proffesional career.  I want to use inline
>Assembler, and am willing to buy the expensive version if I need to...  Is
>there any reason to, is what I am asking...

  If you plan on doing any inline assembly, you need the expensive
(professional) package.  Whenever the compiler encounters an 'asm' keyword in
a C source file, it generates .asm file rather then an object or executable
(like the -S option to tcc).  It then invokes 'TASM' passing it the .asm
file it just generated.  If you own MASM already, you could rename it to
TASM, but I'm not sure if the command line options are the same.

  There is also a new 'function' _EMIT_, which allows you to insert a
sequence of bytes directly into the .obj file, but I don't think you want to
deal with generating 80x86 instructions by hand.

  For what its worth, I upgraded to the professional package.  I don't think
it's hit the shelves yet, but when it does, I doubt it will be for $250.
I'd guess more like $150 - $200.  I think its worth it--you get some great
programming tools.  The new environment compiles faster then the old one,
and has the built-in debugger.  TCC shows similar improvments.  TASM is an
excellent assembler.  Even if you only program as a hobby, you'll want to
get into assembly sooner or later :).  TD, the free-standing debugger, is
the best I've seen when it comes to source-level debuggers.  It allows
multiple windows viewing source/mixed/assembly code, cpu/co-processor
registers, stack traces, and has some powerful watch and conditional
breakpoint abilities.  It really has to be seen in action to be appreciated!
If you do plan on doing even a little inline assembly, you'll want the
debugger for its ability to view/modify the CPU registers; something the
integrated environment doesn't allow (not directly at least; you can reference
the pseudo-registers '_AX', etc).  Overall, like I said, it *IS* worth it.

					Tony


Disclaimer: "Me work for Borland?  Naaaaa!  I am but a humble student, and
these are but my humble opinions."

-------------------------------------------------------------------------------
Tony Feldmesser                        | tony@brillig.umd.edu
University of Maryland at College Park | ...!mimsy!tony
Department of Computer Science         | (301) 454-8114
-------------------------------------------------------------------------------

Joaquim.Homrighausen@f20.n135.z1.uucp (Joaquim Homrighausen) (10/21/88)

 > I know the expensive one has a standalone debugger and
 > TASM...  I am interested in programming as a hobby, not a
 > proffesional career.  I want to use inline Assembler, and
 > am willing to buy the expensive version if I need to...  Is
 > there any reason to, is what I am asking...

You can use either MASM (Microsoft's Macro Assembler) or TASM 
(Borland's Turbo Assembler). They perform with almost equal 
speed and have the same functions and support for high-level 
languages. TASM has got a Turbo Pascal mode etc, but when it 
comes to programming in Assembler, you'll need to know enough so 
I don't consider the "TP mode" of great help. If you need 
in-line assembler (or external assembly for that matter), I 
would recommend buying TASM if you're buying TC 2.0 anyway, 
easier with support from one company than having to call another 
one as well in the event something is screwed up.

uunet!gould!umbio!medsoft!20!Joaquim.Homrighausen


: 135/20

--  
Joaquim Homrighausen - via FidoNet node 1:135/3
Medical Software Exchange BBS (305) 325-8709
UUCP: ...uunet!gould!umbio!medsoft!20!Joaquim.Homrighausen

psrc@poseidon.ATT.COM (Paul S. R. Chisholm) (10/24/88)

<"He seemed like such a nice man . . . and then he turned out to be a writer!">

In article <17144@vax5.CCS.CORNELL.EDU>, soxy@vax5.CCS.CORNELL.EDU writes:
> I am very seriously thinking of purchasing TC 2.0, and I am a bit confused 
> about the differences between the expensive package and the cheaper one.
> 
> I know the expensive one has a standalone debugger and TASM...  I am
> interested in programming as a hobby, not a professional career.  I
> want to use inline Assembler, and am willing to buy the expensive
> version if I need to...

I've described the differences between the integrated and standalone
debuggers in a different posting.  Now for the difference between
standalone and assisted inline assembler, I guess.

One of the new features of Turbo C 2.0 is the ability to include inline
*machine* (not assembler) language, ala Turbo Pascal.  (This is
described on page 103 of the TC 2.0 Reference Manual.)  If you're into
hand assembling routines, and (in effect) patching the hex codes into
your program, then go for it.

Inline *assembler* language has been supported from the beginning (TC
1.0).  This is done nice and flexibly.  You can even have functions,
variables, and (I think) labels in your inline code.  Turbo C computes
stack offsets for local variables.  *But* there are two limitations.
First, you can only do this from the command line compiler (TCC, not
TC, the integrated environment).  Second, TCC will look for an
assembler (in TC 2.0, either TASM or MASM, or one named with a flag;
see page 455 of the TC 2.0 Reference Manual).

So, if you've already got MASM (and CodeView), you may not want TASM
and Turbo Debugger.  But if you want to include inline assembler and
you don't have an assembler already, Turbo C 2.0 Professional may be a
good deal.  That's only $99.95 with your serial number for either Turbo
Pascal or Turbo C.  (TP, TC, *and* TASM/TD are $149.95.)  To upgrade,
call 1-800-543-7543 and have your serial number and credit card number
ready.  (Sorry, all I've got is the 800 number.)

Paul S. R. Chisholm, psrc@poseidon.att.com (formerly psc@lznv.att.com)
AT&T Bell Laboratories, att!poseidon!psrc, AT&T Mail !psrchisholm
I'm not speaking for the company, I'm just speaking my mind.