*DECK MALET20 
          IDENT  MALET20
          LCC    OVERLAY(2,0,C000000) 
*CALL,VERS
          COMMENT OVERLAY FOR MALET  "VERS" 
          TITLE  MALET20 - MAIN COMPILER OVERLAY
*CALL ASSYTAG 
          TITLE 
          ENTRY  COMPILE
*CALL MALMAC
* 
*         OVERLAY SUBROUTINE ENTRY TABLE
* 
*                - MUST LOAD AT FRONT OF OVERLAY
* 
          USE    /ENTRY20/
 ENTRIES  SET    1
*CALL MALNK20 
          USE    *
* 
*         SUBROUTINES IN LOWER LEVEL OVERLAYS 
* 
          EXT    CRACK
          EXT    CVTDEC 
          EXT    CVTINT 
          EXT    CVTDIS 
          EXT    CVTHXB 
          EXT    LOADOVL
          EXT    PRINT
          EXT    CNTLINE
          EXT    CNTMAX 
          EXT    SVREG
          EXT    MSG
          EXT    POST 
          EXT    WRSFILE
* 
*         DATA AREAS IN MALET00 
* 
          EXT    VERSION
          EXT    FCMSE
          EXT    CRKBUF 
          EXT    MODULE 
          EXT    MSOURCE
          EXT    PCRK 
          EXT    PDATAL 
          EXT    PFORMAT
          EXT    PLINE
          EXT    PSOURCE
          EXT    FORMAT 
          EXT    DATA 
          EXT    CODE 
          EXT    SOURCE 
          EXT    CLINE
          EXT    LCODE
          EXT    LSOURCE
          EXT    LHEADER
          EXT    LINES
          EXT    LLINES 
          EXT    XRBUF
          EXT    LXRBUF 
          EXT    PXRBUF 
          EXT    XRFLAG 
          EXT    MSG1 
          EXT    MSG2 
          EXT    MSG3 
          EXT    MSG4 
          EXT    MSG5 
          EXT    MSG6 
          EXT    MSG7 
          EXT    MSG8 
          EXT    MSG9 
          EXT    MSG10
          EXT    MSG12
          EXT    MSG13
          EXT    MSG14
          EXT    MSG15
          EXT    MSG16
          EXT    MSG18
          EXT    MSG19
          EXT    MSG20
          EXT    MSG22
          EXT    MSG23
          EXT    MSG24
          EXT    MSG25
          EXT    MSG26
* 
*         FLAGS FOR EXECUTIVE (IN MALET00)
* 
          EXT    FERR 
          EXT    FCERR
          EXT    FEND 
          EXT    FCHK 
          EXT    FSTOP
          EXT    FLST 
* 
*         GLOBAL DATA ITEMS 
* 
          ENTRY  DABT 
          ENTRY  DAT
          ENTRY  DBIT 
          ENTRY  DCHAIN 
          ENTRY  DCHAR
          ENTRY  DC 
          ENTRY  DCODED 
          ENTRY  DCYCLE 
          ENTRY  DE1
          ENTRY  DE6
          ENTRY  DE8
          ENTRY  DFAST
          ENTRY  DFOR 
          ENTRY  DFROM
          ENTRY  DFWD 
          ENTRY  DGAP 
          ENTRY  DGAPS
          ENTRY  DHALF
          ENTRY  DHOLD
          ENTRY  DIMAGE 
          ENTRY  DIRG 
          ENTRY  DLEFT
          ENTRY  DLONG
          ENTRY  DMEMORY
          ENTRY  DMINUS 
          ENTRY  DOF
          ENTRY  DOFFSET
          ENTRY  DPARITY
          ENTRY  DPFC6
          ENTRY  DPFC8
          ENTRY  DPLUS
          ENTRY  DPORT
          ENTRY  DPULSES
          ENTRY  DRDRAM 
          ENTRY  DREV 
          ENTRY  DSECTOR
          ENTRY  DSTART 
          ENTRY  DSTROBE
          ENTRY  DTHP 
          ENTRY  DTO
          ENTRY  DTSSP
          ENTRY  DTYPEA 
          ENTRY  DTYPEB 
          ENTRY  DUSEC
          ENTRY  DWIDTH 
          ENTRY  DWORD
          ENTRY  DWORDS 
          ENTRY  DWRRAM 
* 
* 
*         SUBROUTINE ENTRY POINTS 
* 
          ENTRY  CABSPPU
          ENTRY  CADD 
          ENTRY  CLOAD
          ENTRY  CLOADC 
          ENTRY  COM10
          ENTRY  COM30
          ENTRY  COM31
          ENTRY  CPSN 
          ENTRY  CSTOREB
          ENTRY  FIND 
          ENTRY  FINDOCT
* 
*         DATA ENTRY POINTS 
* 
          ENTRY  BUF1 
          ENTRY  BUF2 
          ENTRY  BUF3 
          ENTRY  BUF4 
          ENTRY  BUF5 
          ENTRY  BUF6 
          ENTRY  TBUF3
          ENTRY  REG1 
          ENTRY  REG2 
          ENTRY  REG3 
          ENTRY  REG4 
          ENTRY  PA 
          ENTRY  P0 
          ENTRY  P0OFF                                                   MAL008K
          ENTRY  P1 
          ENTRY  POVL 
          ENTRY  KEY2 
          ENTRY  YREG 
* 
* 
 CMSE     EQU    0                 DEFINE ON-LINE COMPILER
*CALL MALCD1
 COMPILX  DATA   0
 DIR10A   MX6    0
          SA6    FCHK        CLEAR CHECKPOINT FLAG
          SA6    FSTOP       CLEAR STOP FLAG
          SA6    FLIST
          SA6    FSOURCE
          MX6    5
          MX5    6
          SA1    FLST 
 DIR10B   BX3    X5*X1       GET OPTION FROM FLST 
          LX3    6
          LX1    6
          ZR     X3,DIR10E   IF END OF OPTIONS
          SX2    X3-1RF 
          NZ     X2,DIR10C   IF NOT LO=F
          SA6    FLIST       TURN ON LIST OPTION
          SA6    FSOURCE     TURN ON SOURCE 
 DIR10C   SX2    X3-1RL 
          NZ     X2,DIR10D   IF NOT LO=L
          SA6    FLIST       TURN ON LIST OPTION
 DIR10D   SX2    X3-1RS 
          NZ     X2,DIR10B   IF NOT LO=S
          SA6    FSOURCE     TURN ON SOURCE OPTION
          EQ     DIR10B 
  
 DIR10E   SA1    CRKBUF+1    READ SECOND WORD FROM CRKBUF 
          ZR     X1,DIR10F   IF NO PARAMETERS 
          SX6    A1 
          SA6    PCRK 
          SA1    DIRB 
          RJ     FIND        SEARCH KEYWORD TABLE FOR LIST OR SOURCE
          SB7    MSG10       ERROR MSG IN CASE OF ERROR 
          NG     B2,DIR10G   ERROR IF NOT FOUND 
          MX6    5
          SA6    B2          SET FLAG THAT WAS FOUND
          ZR     X3,DIR10F   IF END OF PARAMETER STRING 
          SA1    DIRB 
          RJ     FIND 
          NG     B2,DIR10G   ERROR IF NOT FOUND 
          MX6    5
          SA6    B2          SET FLAG THAT WAS FOUND
          NZ     X3,DIR10G   ERROR IF ANOTHER PARAMETER 
 DIR10F   RJ     COMPILE
          EQ     COMPILX
  
 DIR10G   SB2    B7 
          SA2    MODULE 
          MX5    36 
          BX6    X5*X2
          SA6    B7+3 
          RJ     MSG
          RJ     POST        SEND ERROR MSG TO USER 
          EQ     COMPILX
 DIRB     VFD    36/0,6/KEY6,18/0   KEYWORD FOR LIST AND SOURCE OPTIONS 
*CALL MALCMP
          END    COMPILE
