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

  1.     .title    rmser2    overlay 2 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. rmser2::save    <r0,r1,r2>        ; be nice to our caller
  31.     mov    4(r5)    ,r1        ; return buffer address
  32.     mov    r1    ,r2        ; save buffer address
  33.     clrb    (r1)+            ; make first char .asciz
  34.     mov    #77    ,r0        ; clear it out first
  35. 10$:    movb    #40    ,(r1)+        ; fill rest of buffer with spaces
  36.     sob    r0    ,10$        ; next please
  37.     mov    #dsp    ,r0        ; get the index table for errors
  38. 20$:    tst    @r0            ; hit the end yet ?
  39.     beq    100$            ; yes, exit with no text
  40.     cmp    @2(r5)    ,@r0        ; type indexentry = record
  41.     beq    30$            ;       errnum: integer
  42.     cmp    (r0)+    ,(r0)+        ;    errtxt: textaddress
  43.     br    20$            ;      end ;
  44.  
  45. 30$:    mov    2(r0)    ,r0        ; get the error text address
  46.     mov    #77    ,r1        ; maxlength of 77 (8) bytes
  47. 40$:    movb    (r0)+    ,(r2)+        ; copy until 63 characters or a
  48.     beq    50$            ; null byte is found
  49.     sob    r1    ,40$        ; next please
  50. 50$:    clrb    @r2            ; insure .asciz for output text
  51.  
  52. 100$:    unsave    <r2,r1,r0>        ; pop our registers and exit
  53.     return
  54.  
  55.  
  56.  
  57.  
  58.     .psect    dsp    ,ro,d,lcl,rel,con
  59. dsp:
  60.     .psect    msgtxt    ,ro,d,lcl,rel,con
  61.     .macro    $ioer$    nam,code,txt
  62.  
  63.     .psect    msgtxt
  64.     $$ = .
  65.     .ascii    #nam#
  66.     .ascii    #  #
  67.     .asciz    #txt#
  68.     .psect    dsp
  69.     .word    code,$$
  70.     nam    =    code
  71.     .psect
  72.     .endm
  73.  
  74.  
  75.  
  76.  
  77. $IOER$    ER$EXT,-624.,<FILE EXTEND FAILURE(STV=SYS ERR CODE)>
  78. $IOER$    ER$FAB,-640.,<NOT A VALID FAB>
  79. $IOER$    ER$FAC,-656.,<RECORD OPERATION NOT SUPPORTED IN FAB FAC>
  80. $IOER$    ER$FAL,-664.,<REMOTE NODE DOES NOT SUPPORT OPERATION>
  81. $IOER$    ER$FEX,-672.,<FILE ALREADY  EXISTS >
  82. $IOER$    ER$FID,-168.,<INVALID FILE-ID>
  83. $IOER$    ER$FLG,-688.,<INVALID FLAG-BITS COMBINATION(STV=@XAB)>
  84. $IOER$    ER$FLK,-704.,<FILE IS LOCKED BY OTHER USER>
  85. $IOER$    ER$FNA,-712.,<ZERO FNA WITH NON-ZERO FNS>
  86. $IOER$    ER$FND,-720.,<RSX-F11ACP "FIND" FUNCTION FAILED(STV=SYS ERR CODE)>
  87. $IOER$    ER$FNF,-736.,<FILE NOT FOUND>
  88. $IOER$    ER$FNM,-752.,<ERROR IN FILE NAME>
  89. $IOER$    ER$FOP,-768.,<INVALID FILE OPTIONS>
  90. $IOER$    ER$FSS,-776.,<SYSTEM ERROR DURING FNA/DNA STRING PARSE>
  91. $IOER$    ER$FUL,-784.,<DEVICE/FILE FULL>
  92. $IOER$    ER$IAN,-800.,<INDEX AREA NUMBER INVALID(STV=@XAB)>
  93. $IOER$    ER$IDX,-816.,<INDEX NOT INITIALIZED(STV ONLY,STS=ER$RNF)>
  94. $IOER$    ER$IFI,-832.,<INVALID IFI VALUE,OR UNOPENED FILE>
  95. $IOER$    ER$IMX,-848.,<TOO MANY XABS OF A GIVEN TYPE(STV=@XAB)>
  96. $IOER$    ER$INI,-864.,<THIS ERROR CODE NO LONGER USED>
  97. $IOER$    ER$IOP,-880.,<OPERATION ILLEGAL,OR INVALID FOR FILE ORG.>
  98. $IOER$    ER$IRC,-896.,<ILLEGAL RECORD ENCOUNTERED(SEQ. FILES ONLY)>
  99. $IOER$    ER$ISI,-912.,<INVALID ISI VALUE, OR UNCONNECTED RAB>
  100. $IOER$    ER$KBF,-928.,<BAD KEY BUFFER ADDRESS(KBF=0)>
  101. $IOER$    ER$KEY,-944.,<INVALID KEY FIELD(KEY=0/NEG)>
  102. $IOER$    ER$KRF,-960.,<INVALID KEY-OF-REFERENCE($GET/$FIND)>
  103. $IOER$    ER$KSZ,-976.,<KEY SIZE=0,OR TOO LARGE(IDX)/NOT=4(REL)>
  104. $IOER$    ER$LAN,-992.,<LOWEST-LEVEL-INDEX AREA NUMBER INVALID(STV=@XAB)>
  105. $IOER$    ER$LBL,-1008.,<NOT ANSI LABELED TAPE>
  106. $IOER$    ER$LBY,-1024.,<LOGICAL CHANNEL BUSY>
  107. $IOER$    ER$LCH,-1040.,<LOGICAL CHANNEL NUMBER TOO LARGE>
  108. $IOER$    ER$LEX,-1048.,<LOGICAL EXTEND ERROR>
  109. $IOER$    ER$LIB,-1052.,<OLD/INCONSISTENT LIBRARY CONFIGURATION(CRASH)>
  110. $IOER$    ER$LOC,-1056.,<"LOC" FIELD INVALID(STV=@XAB)>
  111. $IOER$    ER$MAP,-1072.,<BUFFER MAPPING ERROR>
  112. $IOER$    ER$MEM,-1080.,<FNA, DNA, ESA, OR RSA STRING WRAPPED TO ZERO>
  113. $IOER$    ER$MKD,-1088.,<F11ACP COULD NOT MARK FILE FOR DELETION>
  114. $IOER$    ER$MRN,-1104.,<MRN VALUE=NEG/REL.KEY GT MRN>
  115. $IOER$    ER$MRS,-1120.,<ILLEGAL FAB MRS VALUE>
  116. $IOER$    ER$NAE,-1128.,<UNMAPPABLE NETWORK ACCESS ERROR>
  117. $IOER$    ER$NAM,-1136.,<"NAM" BLOCK ADDRESS ZERO OR ODD>
  118. $IOER$    ER$NEF,-1152.,<NOT POSITIONED TO EOF(SEQ. FILES ONLY)>
  119. $IOER$    ER$NET,-1160.,<LINK OR NETWORK ABORTED>
  120. $IOER$    ER$NID,-1168.,<THIS ERROR CODE NO LONGER IN USE>
  121. $IOER$    ER$NMF,-1172.,<NO MORE FILES MATCHING WILD-CARD SPECIFICATION>
  122. $IOER$    ER$NOD,-1176.,<ERROR IN NODE NAME (OR IMBALANCED NODES FOR $RENAME)>
  123.  
  124.     .psect    dsp
  125.     .word    0,0            ; mark end of text
  126.  
  127.     .end
  128.