home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / INFO / ASMUTL / PC370.ZIP / TEST25S3.ALC < prev    next >
Encoding:
Text File  |  1987-04-23  |  2.5 KB  |  67 lines

  1.     TITLE 'TEST25S3 - TEST SVC 25 LOAD DYNAMICALLY LOADED SUBROUTINE'
  2. * AUTHOR. DON HIGGINS.
  3. * DATE.   04/09/87
  4. * REMARKS.
  5. *        THIS ROUTINE IS LINKED AS COM AND EXECUTED VIA ATTACH
  6. *
  7. * MAINTENANCE.
  8. *
  9. * 04/18/87 USE ADDR. RELOCATION CONSTANTS TO DEMO ATTACH
  10. *
  11. TEST25S3 CSECT
  12.     USING TEST25S3,R15
  13.     L     R3,X'104'+ASCPRV-ASCB ABS. ADDR OF PREV ASCB
  14.     LA    R1,4
  15.     MVCP  SAVID(R1),ASCIDR-ASCB,R3 GET ASCB ID
  16.     CLC   SAVID,=CL4'ASCB'
  17.     BNE   ERR                   VERFIY PREV ASCB ID
  18.     CLC   X'104'+ASCIDR-ASCB,=CL4'ASCB'
  19.     BNE   ERR                   VERIFY THIS ASCB ID
  20.     LRA   R4,X'104'             ABS. ADDR OF THIS ASCB
  21.     MVCP  SAVNXT(R1),ASCNXT-ASCB,R3 GET NEXT ASCB PTR FROM PREV ASCB
  22.     L     R5,SAVNXT
  23.     CLR   R4,R5                 VERIFY PREV ASCB POINTS TO THIS ASCB
  24.     BNE   ERR
  25.     L     R2,=A(MSG)
  26.     SVC   WTO
  27.     BR    R14
  28. ERR      EQU   *
  29.     SVC   TRACE
  30.     DC    C'BUG'
  31.     B     ERR
  32. SAVNXT   DC    A(0)
  33. SAVID    DC    CL4' '
  34. MSG      DC    C'TEST25S3 LOAD AND ATTACH 370 COM FILE SUCCESSFUL$'
  35. TRACE    EQU   9
  36. WTO      EQU   209
  37. R1       EQU   1    LENGTH FOR MVCP
  38. R2       EQU   2    WTO PARM
  39. R3       EQU   3    PREV ASCB ABS. ADDR. / ABS BASE FOR MVCP
  40. R4       EQU   4    THIS ASCB ABS. ADDR.
  41. R5       EQU   5    ASCNXT FROM PREV. ASCB SHOULD MATCH R4
  42. R14      EQU   14   LINK RETURN
  43. R15      EQU   15   BASE
  44. *********************************************************************
  45. *
  46. *  ASCB - ADDRESS SPACE CONTROL BLOCK FOR PC/370 RELEASE 2.0+
  47. *
  48. *********************************************************************
  49. *
  50. *  THIS CONTROL BLOCK IS INITIALIZED BY THE PC/370 EMULATOR AT EXECUTION
  51. *  TIME FOR THE MAIN PROGRAM COM FILE AND IS LOCATED AT VIRTUAL MEMORY
  52. *  ADDRESS X'104'.  THIS CONTROL BLOCK IS ALSO CREATED FOR EACH ATTACHED
  53. *  COM PROGRAM ADDRESS SPACE DURING ATTACH SVC 26 EXECUTION (SEE SVC.DOC).
  54. *
  55. *********************************************************************
  56. ASCB     DSECT
  57. ASCIDR   DS    CL4  ASCB IDENTIFIER C'ASCB'
  58. ASCNXT   DS    A    ABSOLUTE ADDRESS OF NEXT DAUGHTER TASK ASCB
  59. ASCPRV   DS    A    ABSOLUTE ADDRESS OF PREVIOUS MOTHER TASK ASCB
  60. ASCASO   DS    A    ABSOLUTE ADDRESS OF ADDRESS SPACE ORIGIN
  61. ASCASL   DS    F    LENGTH OF ADDRESS SPACE (USED FOR ADDRESS PROTECTION)
  62. ASCASF   DS    A    RELATIVE ADDRESS OF FIRST FREE QUEUE ELEMENT (FQE)
  63. ASCENT   DS    A    RELATIVE ADDRESS OF ENTRY POINT (FROM COM PREFIX)
  64. ASCEXT   DS    A    RELATIVE ADDRESS OF RETURN IN MOTHER TASK ASCB
  65. LASCB    EQU   *-ASCB
  66.     END   TEST25S3
  67.