eastick@me.utoronto.ca (Doug Eastick) (08/13/90)
This is posted for my brother who is responsible for the Mac port of his company's product. Any responses can be directed to eastick@uncamult.bitnet, or I can forward them to him. His letter is mostly bitching and complaining, but if anyone can help him, I'm sure he'd appreciate it. --Doug ======== Begin letter number One ====== Date: Sun, 12 Aug 90 01:23:00 EDT Three days ago, the subject of this letter meant nothing to me. Today, it means I have to call my boss tomorrow and mention that I'll have nothing to show in Houston - and we have this plane ticket already... I finally got everything compiled OK (more or less), but each module became a "code segment". To reference a routine in another code segment, the Mac checks its jump table and jumps to it, loading the segment if it isn't in memory yet. Well, apparently we have more than 4096 entries in this table. So, I try to mind-meld segments into larger segments (cutting down the jump table entries). No problem, but now we have >32K jumps within a segment (fucking 16 bit processors). Man, there's just gotta be a way to increase the jump table entries... This is really bugging me. Our tech support girl is in Houston for two months and Kevin has been on vacation so Brain and I have been doing all the tech support for three weeks. Thus, I've spent many a late night on the Mac (I haven't watched this much Letterman in years). Needless to say, I've been a little grouchy lately, too. Well, now I'll try only melding a few segments. One last try. This means compiling all the source again... I wonder what is on Much Music tonight... ===== Begin letter number TWO ===== Date: Sun, 12 Aug 90 19:34:00 EDT Subject: What? It was the symbol table? It looks like the problem was that the jump table was being used up by the symbol table. I'm not entirely sure, and it's a little late now. So I cancelled the flight and the hotel, and tomorrow I call Apple in Houston. Tough luck, guys... I called Craig (my really cool boss) and broke the news to him today. He said it's too bad I don't drink - tonight would be a good night for a bender. So now I start talking on BIX and find out what the scoop is on other compilers (the Apple on is buggy) and maybe check out the scoop on AU/X - the Macintosh version of UNIX. Oh, to program in 32 bit again... ===== End letters =====
oster@well.sf.ca.us (David Phillip Oster) (08/15/90)
My programs are often 3-4 meg of source. The 4096 entries in the jump table limit has never bitten me. I write in C, and group my routines logically by file, and declare as many routines as possible static example: static int FuncOfnoInterestOutsidethisFile(){} this is good style, it means I KNOW this function is not called outside this file, and it takes 0 entries in the jump table. In pascal, nesting procedures gives the same good effect. -- -- David Phillip Oster - Note new signature. Old one has gone Bye Bye. -- oster@well.sf.ca.us = {backbone}!well!oster