Path: utzoo!attcan!uunet!lll-winken!lll-tis!ames!ncar!oddjob!uxc!uxc.cso.uiuc.edu!uxe.cso.uiuc.edu!mcdonald From: mcdonald@uxe.cso.uiuc.edu Newsgroups: comp.sys.mac Subject: Re: Microsoft cuts corners, actuall Message-ID: <46100203@uxe.cso.uiuc.edu> Date: 22 Aug 88 14:58:00 GMT References: <9250@cs.tcd.ie> Lines: 34 Nf-ID: #R:cs.tcd.ie:9250:uxe.cso.uiuc.edu:46100203:000:1904 Nf-From: uxe.cso.uiuc.edu!mcdonald Aug 22 09:58:00 1988 >We bought a MicroSoft Fortran compiler some time ago ($400-500) for the >(gasp - wait for it) IBM PC (no, really, I use Mac's now). We were working >on a graphics project in Alsys Ada and wanted to write an interface to >code developed in MS-Fortran. We never did - after months of working on it >and going nowhere fast, we shelved it, and got in touch with MS technical >support to see if they could help us. A very brief reply told us that the >memory model used by MS on the PC "makes assumptions about the relationship >between the styack segement register and the data segment register, it always >assumes they are the same, SS=DS". (For those unfamiliar with the PC, all >EXEcutable files deal with four segements of memory - stack, data, code and >extra, using different ones at different times if the requirements for any >climb above 64K). >Now, if that isn't cutting corners, what is? Everybody else uses all four >segements (or at least the main three) - that's what they are there for, >but good old MS follow their usual line in plain old fashioned bloody >mindedness in what seems to be a concerted effort to ensure that their >stuff is incompatible with everything else (apart from their own stuff). This is worthless drivel. If you wish to have a small memory model program on the 80x86, and to support recursion using a stack, it is essentially NECESSARY to have SS==DS. Almost all compilers do assume this. All C compilers do, at least all I know of. The Microsoft fortran compiler is simply a different front end for their C compiler. There are products that don't assume DS==SS, but they either don't support recursion or are intrinsically large model. Microsoft's compiler products for the PC are excellent - don't flame them about those. Besides - you think Microsoft is interested in helping Apple in any way? Why should they, considering Apple's attitude toward them?