home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / INFO / ASMUTL / PC370.ZIP / TESTAT.ALC < prev    next >
Encoding:
Text File  |  1987-02-25  |  3.0 KB  |  135 lines

  1.     TITLE 'TESTAT - TEST ASSIST INSTRUCTIONS'
  2. * PGMID. TESTAT.ALC
  3. * AUTHOR.DON HIGGINS.
  4. * MAINTENANCE.
  5. *
  6. * 02/19/87 COPIED FROM DEMOAST2
  7. *          TEST XFILI, XFILO, XREAD, XPRNT, XDECI,XDECO, XDUMP
  8. * 02/25/87 ADD HEADER XREAD AND XPRNT AND TEST HOW/LOW INTEGERS
  9. *
  10. *
  11. *
  12.     START
  13.     USING *,R15
  14. *
  15. * INDIVIDUAL XDECI AND XDECO TESTS
  16. *
  17.     XDECI 2,=C'2147483647 ' LARGEST VALID 32 BIT NUMBER
  18.     BNP   ERROR
  19.     CL    2,=F'2147483647'
  20.     BNE   ERROR
  21.     XDECO 2,DNUM
  22.     CLC   DNUM,=CL12'  2147483647'
  23.     BNE   ERROR
  24.     XDECI 2,=C'2147483648 ' LARGEST VALID 32 BIT NUMBER + 1
  25.     BNO   ERROR
  26.     XDECI 2,=C'-2147483648 ' SMALLEST VALID 32 BIT NUMBER
  27.     BNM   ERROR
  28.     SR    R0,R0
  29.     S     R0,=F'2147483647'  BYPASS ERROR IN A370 F'-2147483648'
  30.     S     R0,=F'1'
  31.     CLR   R0,R2
  32.     BNE   ERROR
  33.     XDECO 2,DNUM
  34.     CLC   DNUM,=CL12' -2147483648'
  35.     BNE   ERROR
  36.     XDECI 2,=C'-21474836489 ' SMALLEST VALID 32 BIT NUMBER - 1
  37.     BNO   ERROR
  38. *
  39. * READ FILE OF NUMBERS AND COMPARE WITH TABLE VALUES
  40. *
  41.     XFILI =C'TESTAT.DAT'   RESET DEFAULT ASSIST FILE NAMES
  42.     XFILO =C'TESTAT.PRN'
  43.     XREAD CARD        READ AND PRINT THREE HEADER LINES
  44.     BNZ   ERROR
  45.     XPRNT CARD-1,81
  46.     XREAD CARD
  47.     BNZ   ERROR
  48.     XPRNT CARD-1,81
  49.     XREAD CARD
  50.     BNZ   ERROR
  51.     XPRNT CARD-1,81
  52.     XPRNT =CL132' XDUMP REGISTERS NEXT'
  53.     XDUMP
  54.     XPRNT =CL132' XDUMP CARD,80 NEXT'
  55.     XDUMP CARD,80
  56.     XPRNT =CL132' TESTAT OUTPUT TEST FILE'
  57.     LA    R3,TABLE
  58. READ     EQU   *
  59.     SVC   TRACE
  60.     DC    C'XRD '
  61.     XREAD CARD     READ RECORD WITH NUMBERS
  62.     BNZ   EOF
  63.     XPRNT CARD-1,81
  64.     LA    R1,CARD
  65. FORMAT   EQU   *
  66.     SVC   TRACE
  67.     DC    C'FMT'
  68.     XDECI R4,0(R1) GET NEXT NUMBER FROM CARD
  69.     BO    READ     END OF CARD IF CC3
  70.     BZ    ZERO
  71.     BP    POS
  72. MINUS    EQU   *
  73.     LTR   R4,R4
  74.     BNM   ERROR
  75.     B     VERIFY
  76. ZERO     EQU   *
  77.     LTR   R4,R4
  78.     BNZ   ERROR
  79.     B     VERIFY
  80. POS      EQU   *
  81.     LTR   R4,R4
  82.     BNP   ERROR
  83. VERIFY   EQU   *
  84.     CLI   0(R1),C','
  85.     BNE   SKPCOM
  86.     LA    R1,1(R1)
  87. SKPCOM   EQU   *
  88.     C     R4,0(R3)
  89.     SVC   TRACE
  90.     DC    C'VER'
  91.     BNE   ERROR    VERIFY VALUE FROM CARD MATCHES TABLE
  92.     SVC   TRACE
  93.     DC    C'PRT'
  94.     XDECO R4,DNUM
  95.     XPRNT LINE,20  OUTPUT NUMBER
  96.     LA    R3,4(R3)
  97.     LA    R5,1(R5)
  98.     B     FORMAT
  99. EOF      EQU   *
  100.     SVC   TRACE
  101.     DC    C'EOF'
  102.     SR    R15,R15
  103.     BR    R14
  104. ERROR    EQU   *
  105.     SVC   TRACE
  106.     DC    C'BUG '
  107.     B     ERROR
  108. TABLE    DS    0F  TABLE OF VALUES IN TEST INPUT FILE
  109.     DC    F'0,1,12,123,1234,12345'
  110.     DC    F'123456,1234567,12345678,123456789'
  111.     DC    F'1234567890'
  112.     DC    F'+0,+1,+12,+123,+1234,+12345'
  113.     DC    F'+123456,+1234567,+12345678,+123456789'
  114.     DC    F'+1234567890'
  115.     DC    F'-0,-1,-12,-123,-1234,-12345'
  116.     DC    F'-123456,-1234567,-12345678,-123456789'
  117.     DC    F'-1234567890'
  118.     DC    C' '
  119. CARD     DC    CL80' '
  120.     DC    C'X'   FORCE END OF XDECI SCAN
  121. LINE     DS    0CL20C' '
  122.     DC    C' '
  123. DNUM     DC    CL12' '
  124.     DC    CL(LINE+L'LINE-*)' '
  125. TRACE    EQU   9
  126. R0       EQU   0
  127. R1       EQU   1
  128. R2       EQU   2
  129. R3       EQU   3  TABLE
  130. R4       EQU   4  VALUE VIA XDECI
  131. R5       EQU   5  COUNTER
  132. R14      EQU   14
  133. R15      EQU   15
  134.     END
  135.