[comp.sys.mac.programmer] TML Pascal library problem + fix.

earleh@eleazar.dartmouth.edu (Earle R. Horton) (04/28/89)

There is a bug in the library, TMLPasLib.o, which comes shipped
with TML Pascal II v3.0.2.  The library contains glue for the 
old style signal routines from MPW 2.0.2, and does not contain
the glue for the MPW 3.0 routines in RunTime.o.  I will tell the
people at TML about this if I ever get around to mailing in that
registration card.

dumpobj -n {tmlplibraries}tmlpaslib.o | grep IEsig
  492 IEsigpause
  501 IEsigrelease
  506 IEsighold
  507 IEsigset

# See what I mean?  The library does not need these routines,
# because they are obsolete.  Rather, it should contain IEsignal
# and IEraise to agree with the Interface file, Signals.p.

cat sigglue.a
;;
;; This file fixes an apparent bug in the library TMLPasLib.o.
;; This library shipped with my copy of TML Pascal II v3.0.2.
;; The library calls the old style routines declared in Signal.p 
;; from MPW Pascal 2.0.2.  It should call the new routines
;; since it comes bundled with version 3.0 of RunTime.o from MPW,
;; and also comes with a new style interface file.
;;
	case on
IEsignal proc export
	import signal
	jmp	signal		;; Call the real C routine.
	endp
IEraise proc export
	import raise
	jmp raise		;; Yeah!
	endp
	end

cat sigglue.a.o.hqx	# This is just in case you don't have an assembler.

(This file must be converted with BinHex 4.0)

:#h0TCfGXG@8ZB5j[!%p#5L"08&-J!*!&GJ#3"(l1!3!!!33!!"X!!3K*4A0TCfj
KE!40B@PZ"R0TCfjKE!!&#!!"!!))#!!-!*!%6[S!!!F!N!3%#4!!#!!$!!)%!!!
8!!3(589bB@PcC39bB@PcC38)!!3!!JJ)!!`!N!41qJ!!"`#3"!3*%!!)!!8!!J)
!@E3!!!:

#Note: The MPW Tool "lib" may be used to install these routines in
#your copy of {TMLPLibraries}TMLPasLib.o.

lib {TMLPLibraries}TMLPasLib.o sigglue.a.o -o {TMLPLibraries}tmp.o
rename {TMLPLibraries}tmp.o {TMLPLibraries}TMLPasLib.o
Earle R. Horton

Graduate Student.  Programmer.  God to my cats.