[comp.sys.mac.programmer] THINK C + System 7.0 woes

jtn@potomac.ads.com (John T. Nelson) (06/10/91)

Well I finally installed System 7.0 on my Mac IIcx and applied the
THINK C patches for THINK 4.0.5.  So far no problem.  Excpet reading
the documentation for the updater I see that THINK is only 90%
compatible with System 7.0 and the 10% that isn't compatible is....
AARRRGGGG...  virtual memory!  THINK C generates 32-bit clean apps but
THINK C and its debugger apparently cannot run with virtual memory
turned on (what they mean by "cannot run" or "doesn't work with" is
kindof vague really).

This isn't good!  A project I'm working on REQUIRES that virtual
memory be turned on while the app is running.  Now how am I expected
to debug a program which wants to see a full 13 megabyte address
space?  I can't so I'm hosed.  Does ANYBODY have any workarounds?  Is
Symantic going to make THINK C compatible with VM and when can we
expect an upgrade?

Right now I'm thinking of switching over to MPW C.  I have deadlines
and I can't afford to just sit around waiting for Symantic to think
about it.

MPW works when virtual memory is turned on doesn't it?  Would a port
from THINK C to MPW C be difficult as in, can I just compile THINK C
.c files without modification and expect it all to work under MPW?  I
know MPW isn't the elegant sportster that THINK C is, but presumably
it works and that's what I need.

Thank you all in advance for your replies....


=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
ORGANIZATION:  BLETCH (Bletcherous League of Evil Twisted Computer Hackers)
UUCP:          kzin!speaker@mimsy.umd.edu  INTERNET:   jtn@potomac.ads.com
SPOKEN:        Dark Hacker                 PHONE:      (703) 243-1611
FAVORITE MAGAZINE:   Midnight Engineer

"that's right... he's evil... EVVVIILLLL!"

The Mythos of Dark Hacker:

"Controlled by the sinister and shadowy "suits" Dark Hacker now employs
the tools of computer science to free himself from the suit's will.
By day he is a lackey... but at night when the city sleeps he
becomes.... DARK HACKER!"
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

ksand@Apple.COM (Kent Sandvik, 120dB or more) (06/10/91)

In article <1991Jun9.184457.19172@potomac.ads.com> jtn@potomac.ads.com (John T. Nelson) writes:

>MPW works when virtual memory is turned on doesn't it?  Would a port
>from THINK C to MPW C be difficult as in, can I just compile THINK C
>.c files without modification and expect it all to work under MPW?  I
>know MPW isn't the elegant sportster that THINK C is, but presumably
>it works and that's what I need.

Yes, MPW 3.2 works with virtual memory and 32-bit mode. For the moment
you need to change header file names and other small annoying names 
when you move code from Think to MPW. Check latest Developer Services
CD called "Lord of the Files" - Steve Falkenberg, DTS, published
a newsreader called NewsWatcher with source, where the source 
could be compiled in either environment.

[I have some notes stored about the needed changes between Think C
and MPW, so send me an email if you want those].

Kent Sandvik
-- 
Kent Sandvik, DTS Rock Lobster
Disclaimer: I am not working with Public Relations.

phils@chaos.cs.brandeis.edu (Phil Shapiro) (06/11/91)

In article <1991Jun9.184457.19172@potomac.ads.com> jtn@potomac.ads.com
(John T. Nelson) writes:

   Well I finally installed System 7.0 on my Mac IIcx and applied the
   THINK C patches for THINK 4.0.5.  So far no problem.  Excpet
   reading the documentation for the updater I see that THINK is only
   90% compatible with System 7.0 and the 10% that isn't compatible
   is....  AARRRGGGG...  virtual memory!  THINK C generates 32-bit
   clean apps but THINK C and its debugger apparently cannot run with
   virtual memory turned on (what they mean by "cannot run" or
   "doesn't work with" is kindof vague really).

To be precise: THINK C should work fine under VM.  The THINK C
Debugger, however, will fail miserably.  This is because Apple's VM
uses a different stack format for exception handling than was used
before.

   This isn't good!  A project I'm working on REQUIRES that virtual
   memory be turned on while the app is running.  Now how am I
   expected to debug a program which wants to see a full 13 megabyte
   address space?  I can't so I'm hosed.  Does ANYBODY have any
   workarounds?

You can use Virtual.  The Virual VM scheme uses the same format for
exception stack frames that was used before, so it's compatible with
Think C v4.0 (and Think Pascal v3.0, FYI).

   Is Symantic going to make THINK C compatible with VM and when can
   we expect an upgrade?

That's Symantec.  Yes, the next major release of THINK C will be fully
System 7 compatible.  At this point, no announcements have been made.
When this release is announced, registered users will receive direct
mailings, and I'll post the press release to c.s.m.announce.

	-phil
--
   Phil Shapiro                           Technical Support Analyst
   Language Products Group                     Symantec Corporation
		Internet: phils@chaos.cs.brandeis.edu