From:	CSBVAX::MRGATE!@KL.SRI.Com:munnari!ditmela.oz!SMART%ditmelb.OZ@seismo.CSS.GOV@SMTP 30-JUN-1987 09:15
To:	EVERHART
Subj:	Disassembly, NOTRACEBACK, dynamically loaded shareable images

Received: from seismo.CSS.GOV by KL.SRI.COM with TCP; Mon 29 Jun 87 21:38:14-PDT
Received: from munnari.UUCP by seismo.CSS.GOV (5.54/1.14) with UUCP 
	id AA02504; Tue, 30 Jun 87 00:37:41 EDT
Message-Id: <8706300437.AA02504@seismo.CSS.GOV>
Received: from ditmela (via mulga) by munnari.oz with SunIII (5.5)
	id AA03532; Tue, 30 Jun 87 13:27:53 EST
Received: from ditmelb.oz.au by ditmela.oz (3.2/SMI-3.0DEV3)
	id AA18200; Tue, 30 Jun 87 10:05:39 EST
Date: Tue, 30 Jun 87 10:05 +1000
From: Robert Smart <munnari!ditmelb.oz!SMART@seismo.CSS.GOV>
Subject: Disassembly, NOTRACEBACK, dynamically loaded shareable images
To: info-vax@KL.SRI.COM
X-Vms-To: IN%"info-vax@sri-kl.arpa"

It is quite easy to change an image linked /NOTRACEBACK to be
debuggable: 

PATCH/ABSOLUTE x.EXE and set the low order bit of location 20
(this seems to mean changing 01000028 to 01000029). Now set the
longword at 34 (which is 0) to the contents of the longword at
30. Now set the longword at 30 to be the correct start address
for the debugger: currently 7FFEDF68. Update and exit and you've
done it. 

I hoped to use this trick to debug a dynamically loaded
shareable image (a protocol handler for MAIL). Does anybody know
how to tell the debugger that a shareable image has suddenly
arrived at a particular address? I would prefer it if the
debugger would notice arriving shareable images itself, but
perhaps that is asking too much. 

Robert Smart, CSIRO Division of Information Technology, Australia
<smart@ditmela.oz.au>