[Coco] getenv bug in cgfx explanation
Gene Heskett
gene.heskett at verizon.net
Sat Dec 12 19:17:08 EST 2009
On Saturday 12 December 2009, Willard Goosey wrote:
>On Sat, Dec 12, 2009 at 10:45:06AM -0500, Gene Heskett wrote:
>> Thank you very much Willard. For those who would like a copy of his
>> original email, I've placed it in the 3rdparty tree of the nitros9
>> link on my web page, commented such that it should compile, as
>> cgfx7-fix.c.
>
>You could grab the rest of the cgfx7 source from rtsi. I posted the
>entire "getenv.c" file since we don't seem to have diff.
>
>I was simply not in the mode to try to recompile the entire library.
>I just knew it wouldn't work for some reason. And then I would have
>had to shoot my CoCo. :-(
>
>> As for your comment re there being 3 copies of the mouse in there, I
>> would suspect they are all identical,
>
>Nope, Point rdump -a at the library. Sweet's source has three files
>which all get turned into ROF modules named "mouse" :-(. One holds
>shadow(), one is _gs_mous() (and other fucntions) and the third is
>mousexy(). The "lb" library splitter I found uses fopen(), which
>clobbers already existing files. (The one time I'm in favor of OS-9's
>"noclobber" design...)
>
>The source files shadow.a, mouse.a, and mousexy.a are all "psect
>mouse". ;-)
>
>Here's the relevant bits from rdump...
>
>Module name: mouse
>TyLa/RvAt: 00/00
>Asm valid: Yes
>Create date: Sep 23, 1990 11:19
>Edition/ROF: 0/0
> Section Init Uninit
> Code: 0057
> DP: 00 00
> Data: 0000 0000
> Stack: 0000
>Entry point: 0000
>
>1 global symbol defined:
> Shadow 0000 (04) to code
>
>
>Module name: mouse
>TyLa/RvAt: 00/00
>Asm valid: Yes
>Create date: Sep 23, 1990 11:20
>Edition/ROF: 0/0
> Section Init Uninit
> Code: 0040
> DP: 00 00
> Data: 0000 0000
> Stack: 0000
>Entry point: 0000
>
>3 global symbols defined:
> _ss_msig 0022 (04) to code
> _gs_mous 002d (04) to code
> _ss_mous 0000 (04) to code
>
>
>Module name: mouse
>TyLa/RvAt: 00/00
>Asm valid: Yes
>Create date: Sep 23, 1990 11:21
>Edition/ROF: 0/0
> Section Init Uninit
> Code: 0047
> DP: 00 00
> Data: 0000 0000
> Stack: 0028
>Entry point: 0000
>
>1 global symbol defined:
> MouseXY 0000 (04) to code
>
I sit corrected. :-) Won't be the first time either. ;-)
>
>I really don't know if the linker needs to be changed, but I might
>take a stab at making "lb" not clobber files if the library has
>multiple objects with the same psect name.
>
>Willard
>
--
Cheers, Gene
"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
The NRA is offering FREE Associate memberships to anyone who wants them.
<https://www.nrahq.org/nrabonus/accept-membership.asp>
Humility is the first of the virtues -- for other people.
-- Oliver Wendell Holmes
More information about the Coco
mailing list