GDSX Manual
Using Pseudo Procedures in a NonStop TS/MP
Environment
Extended General Device Support (GDSX) Manual–134303
D-6
USAMPLE1 Listing
!
6.
!******************************************************************************
8. ?NOMAP, NOLMAP, NOCODE, SYMBOLS, CPU TNS/II
9.
10. NAME uscode;
11.
12
13. BLOCK COMMON^TEMPLATES;
14. ?NOLIST, Source DCCBDECS (ERRORS)
16. ?NOLIST, Source DCCBDECS (EVENTS)
18. ?NOLIST, Source DCCBDECS (TCB^LAYOUT)
20. ?NOLIST, Source DCCBDECS (IOCB^LAYOUT)
22. ?NOLIST, Source DCCBDECS (FCB^LAYOUT)
24. ?NOLIST, Source DCCBDECS (RCB^LAYOUT)
26. !===========================================================================
27. !Comment Users may include their own file to modify DCB and LINE Templates.
28. !Comment See file ULHDECS that USAMPLE sources in here
29. ?NOLIST, Source ULHDECSE(Dcb^Template, Line^Template)
32. END BLOCK; ! COMMON^TEMPLATES
33.
34. BLOCK CONFIG^PARMS^TEMPLATES;
35. ?NOLIST, Source DCCBDECS (CONFIG^TEMPLATES)
37. END BLOCK; ! CONFIG^PARMS^TEMPLATES
38.
39. ! Global Data
40. !
41. BLOCK CONFIG^PARMS^DATA;
42. ?NOLIST, Source DCCBDECS (CONFIG^DATA)
44. END BLOCK; ! CONFIG^PARMS^DATA
45.
46. BLOCK COMMON^DATA;
47. ?NOLIST, Source DCCBDECS (COMMON^DATA)
49. END BLOCK; ! COMMON^DATA
50.
51. BLOCK USER^PRIVATE;
52. LITERAL TRUE = -1, FALSE = 0;
53. END BLOCK; !USER^PRIVATE
54.
55. !===========================================================================
56. !Comment User may include System Procedures desired here.
57. ?NOLIST, Source $SYSTEM.SYSTEM.EXTDECS0(Debug,String_Upshift_)
61. ?NOLIST, Source PEXTGDS
63.
65. !===========================================================================
66. Proc Device^Handler (Term^File^Num, Internal^Term^No, Term^Type);
67. !===========================================================================
68.
69. Int Term^File^Num , -- file number for this D^H
task
70. Internal^Term^No, -- terminal number for this
D^H task
71. Term^Type ; -- terminal type
72.
73. Begin
74.
75. !===========================================================================
76. ! USCODE can declare desired DEVICE^HANDLER Local Variables here
77. !===========================================================================
78.
79. Int .EXT My^Dcb (DCB^TEMPLATE);
80. Int .EXT RCV^IOCB (IOCB^TEMPLATE);
81. Int .EXT Term^IOCB (IOCB^TEMPLATE);
82. Int .EXT MY^TCB (TCB^TEMPLATE);
83.
84. Int .EXT Term^Buf := 0D;
85. String .EXT S^Term^Buf = Term^Buf;
86. Int .EXT Rcv^Buf := 0D;
87. String .EXT S^Rcv^Buf = Rcv^Buf;
88. Int .EXT Work^Buf := 0D;
89. String .EXT S^Work^Buf = Work^Buf;
90.
91.
92. Int Dolr^Rcv := 0;