home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / pdp11 / k11er3.mac < prev    next >
Text File  |  2020-01-01  |  4KB  |  133 lines

  1.     .title    rmser3    overlay 3 of 3 for rms error text
  2.     .psect
  3.  
  4.  
  5.  
  6.     .macro    save    list
  7.     .if b , <list>
  8.     .ift
  9.      save    <r0,r1,r2,r3,r4,r5>
  10.     .iff
  11.     .irp    x,<list>
  12.      mov    x,-(sp)
  13.         .endr
  14.     .endc
  15.     .endm    save
  16.  
  17.  
  18.     .macro    unsave    list
  19.     .if b , <list>
  20.     .ift
  21.     unsave    <r5,r4,r3,r2,r1,r0>
  22.     .iff
  23.     .irp    x,<list>
  24.      mov    (sp)+,x
  25.         .endr
  26.     .endc
  27.     .endm    unsave
  28.  
  29.  
  30.  
  31. rmser3::save    <r0,r1,r2>        ; be nice to our caller
  32.     mov    4(r5)    ,r1        ; return buffer address
  33.     mov    r1    ,r2        ; save buffer address
  34.     clrb    (r1)+            ; make first char .asciz
  35.     mov    #77    ,r0        ; clear it out first
  36. 10$:    movb    #40    ,(r1)+        ; fill rest of buffer with spaces
  37.     sob    r0    ,10$        ; next please
  38.     mov    #dsp    ,r0        ; get the index table for errors
  39. 20$:    tst    @r0            ; hit the end yet ?
  40.     beq    100$            ; yes, exit with no text
  41.     cmp    @2(r5)    ,@r0        ; type indexentry = record
  42.     beq    30$            ;       errnum: integer
  43.     cmp    (r0)+    ,(r0)+        ;    errtxt: textaddress
  44.     br    20$            ;      end ;
  45.  
  46. 30$:    mov    2(r0)    ,r0        ; get the error text address
  47.     mov    #77    ,r1        ; maxlength of 77 (8) bytes
  48. 40$:    movb    (r0)+    ,(r2)+        ; copy until 63 characters or a
  49.     beq    50$            ; null byte is found
  50.     sob    r1    ,40$        ; next please
  51. 50$:    clrb    @r2            ; insure .asciz for output text
  52.  
  53. 100$:    unsave    <r2,r1,r0>        ; pop our registers and exit
  54.     return
  55.  
  56.  
  57.  
  58.  
  59.     .psect    dsp    ,ro,d,lcl,rel,con
  60. dsp:
  61.     .psect    msgtxt    ,ro,d,lcl,rel,con
  62.     .macro    $ioer$    nam,code,txt
  63.  
  64.     .psect    msgtxt
  65.     $$ = .
  66.     .ascii    #nam#
  67.     .ascii    #  #
  68.     .asciz    #txt#
  69.     .psect    dsp
  70.     .word    code,$$
  71.     nam    =    code
  72.     .psect
  73.     .endm
  74.  
  75.  
  76.  
  77.  
  78. $IOER$    ER$NPK,-1184.,<INDEXED FILE-NO PRIMARY KEY DEFINED>
  79. $IOER$    ER$OPN,-1200.,<RSTS/E OPEN FUNCTION FAILED(STV=SYS ERR CODE)>
  80. $IOER$    ER$ORD,-1216.,<XAB'S NOT IN CORRECT ORDER>
  81. $IOER$    ER$ORG,-1232.,<INVALID FILE ORGANIZATION VALUE>
  82. $IOER$    ER$PLG,-1248.,<ERROR IN FILE'S PROLOGUE(RECONSTRUCT FILE)>
  83. $IOER$    ER$PLV,-1256.,<FILE PROLOGUE VERSION LEVEL UNSUPPORTED>
  84. $IOER$    ER$POS,-1264.,<"POS" FIELD INVALID(POS GT MRS,STV=@XAB)>
  85. $IOER$    ER$PRM,-1280.,<BAD FILE DATE FIELD RETRIEVED(STV=@XAB)>
  86. $IOER$    ER$PRV,-1296.,<PRIVILEGE VIOLATION(OS DENIES ACCESS)>
  87. $IOER$    ER$RAB,-1312.,<NOT A VALID RAB>
  88. $IOER$    ER$RAC,-1328.,<ILLEGAL RAC VALUE>
  89. $IOER$    ER$RAT,-1344.,<ILLEGAL RECORD ATTRIBUTES>
  90. $IOER$    ER$RBF,-1360.,<INVALID RECORD BUFFER ADDR>
  91. $IOER$    ER$RER,-1376.,<FILE READ ERROR(STV=SYS ERR CODE)>
  92. $IOER$    ER$REX,-1392.,<RECORD ALREADY EXISTS>
  93. $IOER$    ER$RFA,-1408.,<BAD RFA VALUE>
  94. $IOER$    ER$RFM,-1424.,<INVALID RECORD FORMAT>
  95. $IOER$    ER$RLK,-1440.,<TARGET BUCKET LOCKED BY ANOTHER ACCESSOR>
  96. $IOER$    ER$RMV,-1456.,<RSX-F11ACP REMOVE FUNCTION FAILED(STV=SYS ERR CODE)>
  97. $IOER$    ER$RNF,-1472.,<RECORD NOT FOUND(STV=0/ER$IDX)>
  98. $IOER$    ER$RNL,-1488.,<RECORD NOT LOCKED>
  99. $IOER$    ER$ROP,-1504.,<INVALID RECORD OPTIONS>
  100. $IOER$    ER$RPL,-1520.,<ERROR WHILE READING PROLOGUE(STV=SYS ERR CODE)>
  101. $IOER$    ER$RRV,-1536.,<INVALID RRV RECORD ENCOUNTERED>
  102. $IOER$    ER$RSA,-1552.,<THIS ERROR CODE NO LONGER USED>
  103. $IOER$    ER$RSL,-1556.,<NO RESULTANT STRING IN RESULTANT STRING AREA>
  104. $IOER$    ER$RSS,-1560.,<INVALID RESULTANT STRING SIZE>
  105. $IOER$    ER$RST,-1564.,<INVALID RESULTANT STRING ADDRESS>
  106. $IOER$    ER$RSZ,-1568.,<BAD RECORD SIZE>
  107. $IOER$    ER$RTB,-1584.,<RECORD TOO BIG FOR USER'S BUFFER(STV=ACTUAL REC SIZE)>
  108. $IOER$    ER$RVU,-1592.,<RRV UPDATE ERROR ON INSERT>
  109. $IOER$    ER$SEQ,-1600.,<PRIMARY KEY OUT OF SEQUENCE(RAC=RB$SEQ FOR $PUT)>
  110. $IOER$    ER$SHR,-1616.,<UNRECOGNIZABLE VALUE IN FAB SHR FIELD>
  111. $IOER$    ER$SIZ,-1632.,<"SIZ" FIELD INVALID(STV=@XAB)>
  112. $IOER$    ER$STK,-1648.,<THIS ERROR CODE NO LONGER USED>
  113. $IOER$    ER$SUP,-1656.,<OPERATION UNSUPPORTED OVER NETWORK>
  114. $IOER$    ER$SYS,-1664.,<SYSTEM DIRECTIVE ERROR(STV=SYS ERR CODE)>
  115. $IOER$    ER$TRE,-1680.,<INDEX TREE ERROR>
  116. $IOER$    ER$TYP,-1696.,<ERROR IN FILE TYPE EXTENSION>
  117. $IOER$    ER$UBF,-1712.,<INVALID USER BUFFER ADDR>
  118. $IOER$    ER$UIN,-1720.,<FAL REJECTED SOME FIELD (STV TELLS WHICH)>
  119. $IOER$    ER$USZ,-1728.,<INVALID USER BUFFER SIZE(USZ=0)>
  120. $IOER$    ER$VER,-1744.,<ERROR IN VERSION NUMBER>
  121. $IOER$    ER$VOL,-1760.,<INVALID VOLUME NUMBER(STV=@XAB)>
  122. $IOER$    ER$WCD,-1768.,<WILD CARD ENCOUNTERED DURING FNA/DNA STRING PARSE>
  123. $IOER$    ER$WER,-1776.,<FILE WRITE ERROR(STV=SYS ERR CODE)>
  124. $IOER$    ER$WLK,-1784.,<DEVICE IS WRITE-LOCKED>
  125. $IOER$    ER$WPL,-1792.,<ERROR WHILE WRITING PROLOGUE(STV=SYS ERR CODE)>
  126. $IOER$    ER$XAB,-1808.,<NOT A VALID XAB(@XAB=ODD,STV=@XAB)>
  127. $IOER$    ER$XTR,-1824.,<EXTRANEOUS FIELD DETECTED DURING PARSE>
  128.  
  129.     .psect    dsp
  130.     .word    0,0            ; mark end of text
  131.  
  132.     .end
  133.