home *** CD-ROM | disk | FTP | other *** search
/ vsiftp.vmssoftware.com / VSIPUBLIC@vsiftp.vmssoftware.com.tar / FREEWARE / FREEWARE40.ZIP / tmesis / ssint_v4_ann.txt < prev    next >
Text File  |  1996-08-21  |  4KB  |  1 lines

  1. ?From:    SMTP%"system@lokidev.attmail.com" 20-AUG-1996 17:38:19.66To:    everhart@star.zko.dec.comCC:    Subj:    inventiveness???    Hi Glenn,FThe closing paragraphs of your letter which you said you had forwardedEto Dave Schmidt said that I showed unusual ability and inventiveness.DWell, I've spent the day exercising that unusual inventiveness again with SSINT.EI realized that what I sent you could only be used to intercept thoseEservices which were not 64 bit or did not get 64 bit enhanced.  UsingCthe homed argument approach and then, invoking the original serviceEroutine via the CALLG meant that the original routine would be calledEwith 32 bit sign-extended argument values, at least for the first sizFwhich is what happens when you specify HOMED_ARGS=TRUE.  Not to worry!EI, essentially, rolled my own argument homing macro which can be usedEwith the EVAX_CALLG_64 built-in.  THis is the better approach becauseEcalling the original routine is done with a full 64 bits in registersCR16 through R21 and the remaining args (stacked) are already 64 bitready.  DThis is easily accomplished with a macro I built that I have called:E$SETUP_CALLG_64 to parallel Digital's 64 bit macros of similar namingCconvention.  The macro simply subtracts <argcnt+1>*8 from the stackCpointer and then uses the EVAX_STQ built-in to move all of the args!to this stack space, for example:        EVAX_SUBQ SP,#<NARGS+1>*8,SP    EVAX_LDAQ Rx,(SP)    EVAX_STQ  0(AP),(Rx)+    EVAX_STQ  4(AP),(Rx)+    EVAX_STQ  8(AP),(Rx)+    ..."    EVAX_STQ  <<NARGS+1>*8>(AP),(Rx)+    EVAX_LDAQ Rx,(SP)9You then call the routine via EVAX_CALLG_64 (Rx),ROUTINE.1It works great for either 32 ot 64 bit addresses!EI also took care of the linker error LINK-W-MULTFR by playing anotherDoverlaying psect game and specifying the global label LIB$INITIALIZEEwhich the linker automatically then make the first entry in the imageDtransfer vector.  Carefully overlaying this atop of the SSINT$DOINITDroutine makes it the first entry in the transfer vector and the realEDOINIT routine is the second entry.  This doesn't affect anything be-Ecause the execlet loader only looks at the first transfer vector slotEand invokes the address it finds there as the initialization routine!EI had a little free time today so it was play time.  I've been soooooDbusy that all the 64 bit stuff I've done was basically the "robotic"Cthings that needed to be changed according to the "64 bit UpgradingEGuide".  I really needed to get in there and play with 64 bits to geta good grasp of it all. EAnyway, the latest SSINT is on its way (V1.3%6.233.) MFTU encoded ZIPCas always.  I hope it's not too late to get this version on the SIG3tapes.  Don't stop the presses on my accord though.VAXman-EFor without are dogs, and sorcerers, and whoremongers, and murderers,Eand idolaters, and whosoever loveth and maketh a lie.  - Revelation -5================== RFC 822 Headers =================='Return-Path: system@lokidev.attmail.comAReceived: by galaxy.zko.dec.com (UCX V4.0-10B, OpenVMS V6.2 VAX);     Tue, 20 Aug 1996 17:38:12 -0400YReceived: from mdau.md.mt.np.els-gms.att.net by mail11.digital.com (8.7.5/UNX 1.2/1.0/WV)3    id RAA26565; Tue, 20 Aug 1996 17:17:06 -0400 (EDT)%Date: Tue, 20 Aug 1996 16:34:29 -0500BFrom: system@lokidev.attmail.com ("Brian Schenkenberger, VAXman-")<Received: from lokidev by attmail; Tue Aug 20 21:15 GMT 1996+Received: from alpha by oadec (OADEC V3.0);'           Tue Aug 20 16:34:29 EDT 1996Subject: inventiveness???To: everhart@star.zko.dec.com>X-VMS-Mail-To: OA%"attmail!internet!star.zko.dec.com!everhart"Mime-Version: 1.0*Content-Type: Text/Plain; charset=us-asciiContent-Transfer-Encoding: 7bit6Message-ID: <ATT-OADEC-3.0-00-system-EC12B601009A723D>