info-mac@utcsrgv.UUCP (info-mac) (06/29/84)
Date: Wed, 27 Jun 84 16:37:45 pdt From: Bill Croft <uw-beaver!croft@safe> To: info-mac@sumex Subject: SUMACC bug fixes Cc: croft@SUMEX-AIM.ARPA, sumacc@sumex Here are some SUMACC bug fixes. This is an APPLE typo in the workshop; to agree with the manual, the name is "HUnlock" not "HUnLock". + diff lib/libos.c- lib/libos.c 65c65 < void HUnLock(h) Handle h; { _macc1(RN,_hunlock,N,L) } --- > void HUnlock(h) Handle h; { _macc1(RN,_hunlock,N,L) } Another APPLE workshop typo. + diff h/toolintf.h- h/toolintf.h 458c458 < short scrapFiller; --- > short scrapCount; My typo. + diff h/quickdraw.h- h/quickdraw.h 226c226 < Handle rgnSafe; --- > Handle rgnSave; Wrong trap code in hex. Also, "Polyhandle *p" should read "Polyhandle p". + diff lib/libqd.c- lib/libqd.c 62c62 < void PenNormal() { _mact1(RN,0xa89d,N,N) } --- > void PenNormal() { _mact1(RN,0xa89e,N,N) } 144,151c144,151 < void KillPoly(p) PolyHandle *p; { _mact1(RN,0xa8cd,N,L) } < void OffsetPoly(p,dh,dv) PolyHandle *p; { _mact3(RN,0xa8ce,N,L,S,S) } < void MapPoly(p,f,t) PolyHandle *p; Rect *f,*t; { _mact3(RN,0xa8fc,N,L,L,L) } < void FramePoly(p) PolyHandle *p; { _mact1(RN,0xa8c6,N,L) } < void PaintPoly(p) PolyHandle *p; { _mact1(RN,0xa8c7,N,L) } < void ErasePoly(p) PolyHandle *p; { _mact1(RN,0xa8c8,N,L) } < void InvertPoly(p) PolyHandle *p; { _mact1(RN,0xa8c9,N,L) } < void FillPoly(p,pat) PolyHandle *p; Pattern *pat; { _mact2(RN,0xa8ca,N,L,L) } --- > void KillPoly(p) PolyHandle p; { _mact1(RN,0xa8cd,N,L) } > void OffsetPoly(p,dh,dv) PolyHandle p; { _mact3(RN,0xa8ce,N,L,S,S) } > void MapPoly(p,f,t) PolyHandle p; Rect *f,*t; { _mact3(RN,0xa8fc,N,L,L,L) } > void FramePoly(p) PolyHandle p; { _mact1(RN,0xa8c6,N,L) } > void PaintPoly(p) PolyHandle p; { _mact1(RN,0xa8c7,N,L) } > void ErasePoly(p) PolyHandle p; { _mact1(RN,0xa8c8,N,L) } > void InvertPoly(p) PolyHandle p; { _mact1(RN,0xa8c9,N,L) } > void FillPoly(p,pat) PolyHandle p; Pattern *pat; { _mact2(RN,0xa8ca,N,L,L) } The array of ostype strings "t" should be a char *, instead of an int. + diff lib/libpack.c- lib/libpack.c 31c31 < void SFGetFile(p,pr,fil,nt,t,dlg,rep) Point *p; char *pr; ProcPtr fil,dlg; SFReply *rep; { _macc7(RN,_sfgetfil,N,SS,PS,L,S,L,L,L) } --- > void SFGetFile(p,pr,fil,nt,t,dlg,rep) Point *p; char *pr,*t; ProcPtr fil,dlg; SFReply *rep; { _macc7(RN,_sfgetfil,N,SS,PS,L,S,L,L,L) } 33c33 < void SFPGetFile(p,pr,ff,nt,t,dlg,rep,dlgid,fp) Point *p; char *pr; ProcPtr ff,dlg,fp; SFReply *rep; { _macc9(RN,_sfpgetfi,N,SS,PS,L,S,L,L,L,S,L) } --- > void SFPGetFile(p,pr,ff,nt,t,dlg,rep,dlgid,fp) Point *p; char *pr,*t; ProcPtr ff,dlg,fp; SFReply *rep; { _macc9(RN,_sfpgetfi,N,SS,PS,L,S,L,L,L,S,L) } Since handle master pointers can be "negative", use another bit to indicate "isapstr". + diff lib/mactrap.s- lib/mactrap.s 81,82c88,89 < bgts .L3 | if C string < negl d1 | if Pascal string, just negate pointer --- > bclr #24,d1 | test and clear > beqs .L3 | if C string + diff lib/strconv.s- lib/strconv.s 80c80 < | If Mactrap is passed a negative string pointer, it assumes the --- > | If Mactrap is passed a pointer with bit 24 set, it assumes the 87c87 < negl d0 --- > bset #24,d0 Thanks to Mike Schuster at CALTECH and Dan Winkler at Harvard!