Path: utzoo!mnetor!uunet!lll-winken!lll-tis!ames!pasteur!ucbvax!ucsd!sdcsvax!ucsdhub!hp-sdd!hplabs!hpda!hpcupt1!hpcuhb!hpindda!tribby From: tribby@hpindda.HP.COM (David Tribby) Newsgroups: comp.sys.apple Subject: Re: A warning to IIgs developers Message-ID: <6230007@hpindda.HP.COM> Date: 2 May 88 17:39:27 GMT References: <8804301556.AA12116@crash.cts.com> Organization: HP Technical Networks, Cupertino, Calif. Lines: 42 / sector@pro-exchange.cts.COM (Roby Sherman) / writes... > I've done extensive work with TML Pascal and TML BASIC for the past several > months, and I'll tell you this.. For simple operations, the programs are very > nice. For highly complex operations, the languages are trash. It appears that > ORCA seems to be the only alternative.. Roby...could you provide more details: What do you mean by "simple operations" and "complex operations"? What specifically have the languages done to make you call them "trash"? When you say ORCA, do you mean the assembler or other languages? By sharing bugs and workarounds, we can help each other avoid known problems. I've written several programs with TML Pascal, and have run across these bothersome problems... - The example programs did not set the "begin on a page boundary" bit when allocating bank 0 memory for toolsets. When I copied that code into my own programs, they would sometimes crash mysteriously...going into infinite loops, executing BRK, etc...depending upon where the memory was allocated. Setting the bit in the options mask fixed the problem. - Their library startup code does not set the "begin on a page boundary" bit when allocating bank 0 mamory for SANE. This causes mysterious crashes sometimes during REAL number operations. My workaround was to shut down SANE, allocate a new page of memory (page aligned), and restart SANE. - I accidently made an ARRAY OF INTEGERS to be PACKED. Although this should not have made a difference, the compiler decided to give me 1-byte integers in the range -128..127. After I removed the PACKED the program worked. - READLN does not recognize as a terminator when reading from the normal text screen. WRITE (or was it READ?) cannot handle strings longer than 127 characters. My workaround was to directly call the Text tools. There were other problems that don't come to mind right now. I understand most of them should be fixed in the "new" version of the compiler, originally scheduled to be shipped March 28. Has anyone received the new code? --Dave Tribby - - - - - ARPA: tribby%hpda@hplabs.HP.COM UUCP: hplabs!hpda!tribby