{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: TRACE867)}}
====== TRACE867 ======
(George Source)
**Macros used:** [[george:macro:BRUSEN|BRUSEN]], [[george:macro:COMERR|COMERR]], [[george:macro:CPHOOK|CPHOOK]], [[george:macro:DOSPMON|DOSPMON]], [[george:macro:DOTPMON|DOTPMON]], [[george:macro:DOUPMON|DOUPMON]], [[george:macro:ENDCOM|ENDCOM]], [[george:macro:HUNT2|HUNT2]], [[george:macro:MARKAXES|MARKAXES]], [[george:macro:MENDAREA|MENDAREA]], [[george:macro:MHUNTW|MHUNTW]], [[george:macro:PARANUMB|PARANUMB]], [[george:macro:SEG|SEG]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:TANAMONST|TANAMONST]], [[george:macro:TESTHKN|TESTHKN]], [[george:macro:TRACE|TRACE]]
22FL #LIS K0TRACE>K0COMMAND>K0ALLGEO
22R2 ... SEG TRACE,867,SECTION CENT,,G400
234B ...[
23*Q ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982
23M6 ...[
23YG # THIS CHAPTER IMPLEMENTS THE TRACE AND FULLTRACE COMMANDS.
24D6 # IF A TRACE COMMAND IS GIVEN,PROVIDING NO PREVIOUS
24XQ # FULLTRACE COMMAND HAS BEEN GIVEN,IT ADJUSTS THE MASK OF
25CB # THE CATEGORY BITS CORRESPONDING TO THE PARAMETERS OF THE
25X2 # COMMAND TO INCLUDE RELEVANT BITS SET IN THE INSTALLATION
26BL # PARAMETER MINTRACE AND
26W= # EXCLUDE RELEVANT BITS UNSET IN WORD CMFMSK IN THE SECOND
27*W # CPB/CALAS BLOCK,IF THIS BLOCK EXISTS.IT THEN STORES THE
27TG # NEW MASK IN WORD AMFMSK IN THE ACTIVITY BLOCK AND IN WORD
28*6 # CMFMSK IN THE FIRST CPB/CALAS BLOCK.
28SQ # IF A FULLTRACE COMMAND IS GIVEN,A BIT IS SET IN WORD
29#B # CLONG1 IN THE ACTIVITY BLOCK AND ALL RELEVANT CATEGORY
29S2 # BITS ARE SET IN WORD AMFMSK IN THE SAME BLOCK.
2=?L # ONCE A FULLTRACE COMMAND HAS BEEN GIVEN,ANY SUBSEQUENT
2=R= # TRACE COMMAND IS IGNORED.
2=T8 ...#UNS G400
2=X6 ...(
2=^4 ...# THIS CHAPTER IS FOR G3PLUS-IH MK2
2?32 ...#
2?4Y ...# IN HOOKED CONTEXT WITH NO PARAMS
2?6W ...# THIS COMMAND SWITCHES THE PRIVILAGE MONITORING STATUS
2?8S ...)
2?=W SEGENTRY K1TRACE,SENTRY1
2?QG SEGENTRY K2TRACE,SENTRY2
2#=6 #SKI JNL1<1$1
2#PQ QMASK #02121777
2*9B #SKI JNL1
2*P2 QMASK #02023777
2B8L SENTRY2 [ENTRY FROM FULLTRACE COMMAND
2BN= LDN 7 1
2C7W SRC 7 4
2CMG LDX 6 7
2D76 ANDX 6 CLONG1(2) [TEST IF PREVIOUS FULLTRACE COMMAND
2DLQ BNZ 6 N1 [ISSUED.IF SO,BRANCH TO ENDCOM.
2F6B ORS 7 CLONG1(2) [SET BIT 3 IN CLONG1 IN THE ACTIVITY
2FL2 [BLOCK TO FLAG FULLTRACE
2G5L LDX 7 QMASK(1)
2GK= ORS 7 AMFMSK(2) [SET ALL OUTPUT CATEGORY BITS IN AMFMSK
2H4W [IN THE ACTIVITY BLOCK
2HJG LDX 3 2
2J46 N3 HUNT2 1,CPB,CALAS,3 [SET POINTER TO NEXT CPB/CALAS BLOCK
2JHQ ORS 7 CMFMSK(1) [SET ALL OUTPUT CATEGORY BITS IN CMFMSK
2K3B [IN THIS CPB/CALAS BLOCK
2KH2 #SKI K6TRACE>999-999
2L2L (
2LG= TRACE CMFMSK(1),FULLTRAC
2L^W TRACE 1,FTLEVEL
2MFG )
2M^6 LDEX 4 CPBCPLEV(1)
2NDQ LDX 3 1
2NYB BNZ 4 N3 [TEST IF NO FURTHER CPB/CALAS BLOCKS
2PD2 #SKI K6TRACE>999-999
2PXL (
2QC= TRACE CLONG1(2),FLTRACE1
2QWW TRACE AMFMSK(2),FLTRACE2
2RBG )
2RW6 BRN N1
2S*Q SENTRY1
2SBK ...#UNS G400
2SCD ...(
2SD? ... TESTHKN XDSK1 [J IF NOT IN A HOOK
2SF6 ... LDN 4 0
2SF^ ... PARANUMB 5,4
2SGS ... BNZ 5 XDSK1 [J IF PARAMS PRESENT
2SHM ... DOTPMON XDSK3 [J IF PRIV MONITORING SET
2SJG ... DOSPMON [SET PRIV MONITORING STATUS
2SK* ... BRN XDSK2
2SL8 ...XDSK3 DOUPMON [ UNSET PRIV MONITORING STATUS
2SM3 ...XDSK2 MHUNTW 3,CPB,CALAS
2SMW ... CPHOOK 3 [ SAVE HOOK BITS AT THIS CP LEVEL
2SNP ... BRN N1
2SPJ ...XDSK4 COMERR JCONTINC,JDIR [NOT ALLOWED IN NO-USER CONTEXT
2SQC ...XDSK1
2SR= ... BRUSEN XDSK4 [ ERROR IN NO-USER NOT HOOKED CONTEXT
2SS5 ...)
2STB LDX 7 CLONG1(2)
2T*2 SLL 7 3
2TSL BPZ 7 N4 [TEST IF FULLTRACE COMMAND HAS BEEN
2W#= [ISSUED EARLIER.IF NOT,ANALYSE PARAMETERS
2WRW [OF COMMAND USING TANAMONST:OTHERWISE
2X?G [MARK PAMAMETERS ACCESSED AND BRANCH TO
2XR6 [ENDCOM
2Y=Q MARKAXES
2YQB BRN N1
2^=2 N4 TANAMONST N1 [ANALYSE PARAMETERS.IF ERRONEOUS,WRITE
2^PL [APPROPRIATE ERROR MESSAGE AND BRANCH TO
329= [ENDCOM.IF VALID,PUT MASK OF OUTPUT
32NW [CATEGORY BITS IN ACOMMUNE1 IN THE
338G [ACTIVITY BLOCK
33N6 LDX 7 IMINTRACE [LOAD INSTALLATION PARAMETER MINTRACE
347Q #SKI K6TRACE>999-999
34MB (
3572 TRACE ACOMMUNE1(2),TRUEMASK
35LL TRACE 7,MINTRACE
366= )
36KW ORS 7 ACOMMUNE1(2) [SET IN MASK CORRESPONDING BITS SET IN
375G [MINTRACE AT PRESENT UNSET IN MASK
37K6 MHUNTW 3,CPB,CALAS [SET POINTER TO FIRST CPB/CALAS BLOCK
384Q # TEST IF TOP COMMAND PROCESSOR LEVEL > EXT+10.
38JB # THIS WORD CONTAINS EITHER ZERO OR TOP BREAKIN LEVEL
3942 LDEX 7 EXT+10(2)
39HL TXL 7 CPLEV(2)
3=3= BCC N2
3=GW HUNT2 1,CPB,CALAS,3 [SET POINTER TO SECOND CPB/CALAS BLOCK
3?2G LDX 7 CMFMSK(1) [LOAD WORD CMFMSK OF 2ND CPB/CALAS BLOCK
3?G6 #SKI K6TRACE>999-999
3?^Q TRACE 7,TRMASK3
3#FB ANDS 7 ACOMMUNE1(2) [UNSET IN MASK CORRESPONDING BITS UNSET
3#^2 [IN CMFMSK AT PRESENT SET IN MASK
3*DL N2 LDX 7 ACOMMUNE1(2) [LOAD THE ADJUSTED MASK
3*Y= STO 7 AMFMSK(2) [STORE IT IN WORD AMFMSK OF THE ACTIVITY
3BCW [BLOCK
3BXG STO 7 CMFMSK(3) [STORE IT IN WORD CMFMSK OF THE FIRST
3CC6 [CPB/CALAS BLOCK
3CWQ #SKI K6TRACE>999-999
3DBB (
3DW2 TRACE AMFMSK(2),TRMASK1
3F*L TRACE CMFMSK(3),TRMASK2
3FT= )
3G#W N1 ENDCOM
3GSG MENDAREA 40,GAPTRACE
3H#6 #END
^^^^ ...06137311000200000000