PTSCAN

(GIN Macro)

Defined in: MACROS JSRG4

Used in:

PTSCAN.mac.txt
 #B32    #MAC  PTSCAN                       [J.S.RAYNER.G4 ONLY  
 #BGL    MPTSCAN1
 #C2=          BZE   %D %F   
 #CFW    #STR  P,%B  
 #C^G    #SKI
 #DF6    (   
 #DYQ          LDCT  1  #600 
 #FDB      MOD ANDX  1  ASEGTAB,%E   
 #FY2          LDCH  0  BLENCH(1)
 #GCL    )   
 #GX=          LDX   1  %C   
 #HBW          SLC   1  8
 #HWG    #STR  P,%B  
 #JB6    #SKI
 #JTQ    (   
 #K*B          ANDX  0  1
 #KT2          BNZ   0  MPTSCAN1A           [OUT OF RANGE OF SEG TAB 
 #L#L    )   
 #LS=          ANDN  1  #77  
 #M?W     MOD  ADX   1  ASEGTAB,%E   
 #MRG    #STR  %M
 #N?6          STO   1  %M   
 #NQQ    #STR  Q,%A  
 #P=B    #SKIP   
 #PQ2    (   
 #Q9L          LDX   0  0(1) 
 #QP=          SRC   0  1
 #R8W          BPZ   0  MPTSCAN2 
 #RNG    )   
 #S86    #STR  E,%A  
 #SMQ    #SKIP   
 #T7B    (   
 #TM2          LDX   0  0(1) 
 #W6L          SRC   0  2
 #WL=          BPZ   0  MPTSCAN2 
 #X5W    )   
 #XKG    MPTSCAN1A   
 #Y56    #STR  S,%B  
 #YJQ    #SKIP   
 #^4B    (   
 #^J2          LDCT  0  2
 *23L    )   
 *2H=    #STR  P,%B  
 *32W    #SKIP   
 *3GG    (   
 *426          LDX   0  %C   
 *4FQ          ANDX  0  B8T13
 *4^B          SBX   0  BIT7 
 *5F2          NGX   0  0
 *5YL    )   
 *6D=          ADS   0  %C   
 *6XW          SBS   0  %D   
 *7CG    #STR  %N
 *7X6    (   
 *8BQ          BPZ   %D MPTSCAN2A
 *8WB          ADX   0  %D   
 *9B2          LDN   %D 0
 *9TL    MPTSCAN2A   
 *=*=          SRL   0  10   
 *=SW          STO   0  %I   
 *?#G          BRN      %N   
 *?S6    )   
 *#?Q    #STR  %N
 *#RB    #SKIP   
 **?2    (   
 **QL          BNG   %D %F   
 *B==          BRN      MPTSCAN1 
 *BPW    )   
 *C9G    MPTSCAN2
 *CP6          LDX   1  0(1) 
 *D8Q          ANDX  1  B0T19
 *DNB          STO   1  %H   
 *F82          ANDX  1  B0T1 
 *FML    #STR  P,%B  
 *G7=    #SKIP   
 *GLW    (   
 *H6G          LDCH  0  BLENCH(1)
 *HL6          SLL   0  10   
 *J5Q          ANDX  0  %C   
 *JKB          BNZ   0  MPTSCAN1A           [J IF OUT OF RANGE OF PAGE TABLE 
 *K52    )   
 *KJL          LDCH  1  BTABLENS(1)  
 *L4=          ADN   1  1
 *LHW          STO   1  %I   
 *M3G    #STR  %J
 *MH6          STO   1  %J   
 *N2Q    #STR  S,%B  
 *NGB    #SKIP   
 *P22    (   
 *PFL          LDCT  0  2
 *P^=          ADS   0  %C   
 *QDW          SBS   0  %D   
 *QYG    )   
 *RD6    #STR  P,%B  
 *RXQ    #SKIP   
 *SCB    (   
 *SX2          LDX   0  %C   
 *TBL          ANDX  0  B8T13
 *TW=          SLL   1  10                  [LENGTH FROM START OF AREA TO
 *W*W          SBX   0  1                   [END OF PAGE TABLE - NEGATED !   
 *WTG          SBS   0  %C                  [UPDATE VIRT ADDR & LENGTH   
 *X*6          ADS   0  %D   
 *XSQ          ADX   0  1
 *Y#B          SRL   0  10   
 *YS2    #STR  %K
 *^?L          STO   0  %K                  [PAGE NO OF START OF AREA
 *^R=          ADS   0  %H                  [ADJUST PAGE TABLE PTR   
 B2=W          SBS   0  %I                  [& COUNT OF ENTRIES  
 B2QG    )   
 B3=6          BPZ   %D MPTSCAN3 
 B3PQ    #STR  S,%B  
 B49B    #SKIP   
 B4P2    (   
 B58L          ADX   %D BIT7 
 B5N=          SLL   1  10   
 B67W          SBX   %D 1
 B6MG          BPZ   %D MPTSCAN4 
 B776    )   
 B7LQ          SRA   %D 10   
 B86B          ADS   %D %I   
 B8L2    MPTSCAN4
 B95L          LDN   %D 0
 B9K=    MPTSCAN3
 B=4W    #STR  %L
 B=JG          LDX   1  %H   
 B?46    #STR  %L
 B?HQ    (   
 B#3B          FDESC    1
 B#H2    #STR  L,%L  
 B*2L    #SKIP   
 B*G=          COUNTUP  1
 B*^W    )   
 BBFG    #NOR
  • Last modified: 17/01/2024 11:55
  • by 127.0.0.1