egisin@watmath.waterloo.edu (Eric Gisin) (03/17/88)
Here is a short program I wrote called "db".
You can use `db some-program.ttp ""' to have TOS load and relocate
some-program, db will then enter templmon with a breakpoint instruction.
You can then disassemble the program, or start or trace it with "G".
See the comments at the top of DB.C for documentation.
The source will compile under MJC; there is a non-portable asm() in it.
table
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
begin 644 db.arc
M&@A$0BY# $ <P, &X0VVM'YCP% ,+U0T4 !"!0@R8D"T %'&|
M#9TR<@Z6$5/GS!F((% \; .'39LW;E(,+#A210*$"2 1& %"C)PR8=:P8.@0|
MX\:.']V43%!G3AD0=-"DF0,BC9LY#\.0 ?'&#(@@3*BT0%*$"92B3O.\J0/B|
M3AB'0-^ 8/-&*=.(<\+8^6DF#9LR<W8:!5J&HT>0,]\$A7AGZ$\J3Z: &+.5|
MS=(Q<L+,0>."IT\0(HZ(",L03QHZ+DKN1 BB[=N4*T&\-.NYS$R7,&6"( (#|
M1(^#8>B$V<D:!)PW1ND0I2.63.PP,WO^%-$$A!36+B;S/EB'8_#'D96++6,9|
MLV:")CD3;M/FZU(18>2<:=Y0MX@$"5B2-0M'SILSB=N<'JUZ3!@V;&R[AQ^F|
M#>T:MN'FT&YBB:%8&7"$<=%,1- 08&X$#O8&&65DAIUCPSUA7(/2@> 3'4R9|
M8<:',T5'&5+A@=C>>_&5&$6'<=1QF84%O3#00",8-08;=5 ( @]OS"&&462X|
M@(8/-RJ0HQD4.M6$$D/@V*11920@Q!)04)& 8FV@\%H,.8!I0PKH!00""30$|
M8<00.A2%7QEGW%?4473(4<<8=*0!4HTX-D1&&F8D.<*4;E0I1!5&)$ ###G8|
M,- 8:(374AU.;7&H$5WL )J9%(F(D1EO1"0"9Z5-IH*-"@S4G5$HA'?&&#.Y|
M:H=("B20&PBNCK'#0 E *JD*)LFZJP)[))F F9R=RBN@&>7ZXY<I@%!LK59B|
M2<6PZ+U$1QURN $"#-CV82RR"97&9ZW,MBK>&,^"($.TTZ)W*Y/#\IH DZZ!|
M8,0;<#2D[AEV;!%#%S/!D *VMCJ% KX\?$MK2@-0=]G"9!QLKQ&CD4'Q3"B0|
MY<89T5YZ&J464VO$CD&607')Z'6Z PA79JDI) .8J=@<Y$G(D5ME+)6;6+4I|
M2ZVVW'H++J_BIEHKN?J]AZMX1 F=0+P)O'3&4 ]%Y&M$!AGH$\)68XW1K2BH|
M8$8**+#<:Z01N3K'%CC D*FQ6T*]A=SY(B7'6V[\&[ ,7:BM]QAPY/'O'"O$|
M$*MX?P>.L-<_O08%=66,@<(,BP,L,,%/GS$'QUL7E(+!FIJYWE(K\M?&N?(J|
M#/F/#O-*L\1TH(#"8J'2$2WD)=OKU&NOK_ M'C' <#2U,5]K+]'=9F0VVKS/|
M7+-!]N'7M.JL)YTT&@A$0BY45% 8P4 &X0>VG+I(@) ,8#0 |
M )! !@!(!B28..@ # $G5@:J>(+B!0 "*(B,(#:PH D6 !" ,G &J 1PSK:|
M^ @ PD@ %$RB[*B#)8:7'&2F).C#Q)"9!(40&?22@$D0/ 8* & )D(BD+0&0|
MR-'1@YN!#*@-HA6(S4 ") +0&M1F((D@^08&(/$" 8RD"7X <!+$&S\ !M[^|
MRR;W+0 F<NF"6$ -D LA(!A0 O1"P L&?@'T3:HD<-V[#(*P P ( H0@Z $|
M0 )(;ELGN93*"IP:T@!N(#[X!3PWR(AO':'0?4&5H.XZMW,[:<);.'#<OITX|
M*9X<^+7<S!/\=O*&#H@R;M[4.8,&1)LR;=[(R=- 8 I=,*,60/BC9TR<LRP|
M>7.G_,$"00X^" ! ",-___3W7S\"0N+ /_X ,,1! 4+2 40#138#,!T9$9D |
M@ P$X @4$H0$"+T5)$-2+" 1##2!@ $"!!PV!$3,+@ -R@2 C A:A-E !|
MTMB%%X@O6@2DAQ;!$*(1K TT@#<^*A!9D@ ,0(./ CCAA1-U0/0//Y&IL&(#|
M(\($2Q!> 2 '& ,I($4C(#2 YC_JH*66$FT&<Y<$0<"# PH " "BLR$"8|
M P 3A!) G#&0#XF%"82AB)H1H9RBT=F G0#@J2< (. (0 ]-(-@#$UOJ2) (|
M/A*@@QL(XL J/V]:$F-(<H$J*JG\Z.@:-U2NVNJK5F*II2FS(A!F &->-:,2|
M7$(5;!W%ABE L@-Y\B2G,BJ@HE\!8$H "##L6612/23IFCD^(M #$ C&B&"8|
M (Q9I@3N^@.EE%12F@ 5G8X+ 0!( %.D"PA.)IFY Z"+6;T&^X"PPA?IRR\"|
MS$;VK(T : N$7P)X"ZZX +00JCXMD&J/J0C8DJH*K.J# JOV!.'./Z; :V($|
M@&" ;<;;)M7Q7=^&"X!%,M/<Z;$FHFB1R/^0;#+*$"/ <M,O_V//A1D" "#1|
M,YO2[\X:<^NQT.-&:? 2<C'MM-6Z)NPC!%.[#+.7;<(K0" :_@-+(&0,!$*;|
M:8]<,MNI13GE70+$7;4]=?/ 7]*!!,ILFTL+;G)B*CH!"0 KM[SXLZ!;\8\[|
M&$N]L8P,!$II!A.; 0)0"@!B*(!<,'MNO_(,]B(CY\8B.L@*."BAX.)H 6|
MBH 0! B #"EB4B1 KB*++;!+.L'NA F"]"M"4/WH-HX>I@>0?W_]Z%*X CX0|
MGHFP@!2+* \!($H H"A>;Y(SF/F)3<$(HO?S )H 8($VK4E%[7M?_((POS>!|
MXTWJB(S[Y <(2AU "E\+GSLJ%Y)1S:@%2]A2"Y3P#WR8Z@!:2!?+0N*J&9G@|
M521@%3Z MP#9W4\+4F"5/-RENP48#WG*8YX%K? UK.6-@^IBP@=#R(\1EO"$|
M*;R+U*Z"@!8RX(5;BF$)7?<F4?!P0A6Z6 +\-L:YB(X?I:,;Z@+5.*7@36MZ|
M"X2D>-:;#5"!;@U ( 3J=[\OZ9$T-6( $DNVQ%(5#@%L\)$!5HB E[GP539,|
MTP'=I#5<M$F/-@/$F.8( 2/"\6(- %X>V;='^PW$CZ0$)*<$&;(FA(20# "A|
M(0>"2$4RTI%7A"0@YJ@F-E'R'Y8<I6<R.:;[.4""#3@@ YO7@.'9<3"@NU*6|
M(K(ST\TJ=:AL'P-(LTE:M@F4!R0E'P=B@#=IPY, BJ:P1.>/-&X,*FQ,)IO$|
M:<J,28$1B7D3.Q*CSFENR9T8PV:;@,> >^I1!/*DX#CQIS5T0%.:SQK(OR#$|
M)V=!5)H'&0 $($$ !'! U) 00@! #! 4$$B(!!1 4HW"0 8<( $8C.<!|
;"RC !4QP@@RL@ ((. ($*R$!#5S@!B( !H |
|
end
sum 27624