home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 3 Comm / 03-Comm.zip / QCMCFG.ZIP / QCMCFG.CMD
OS/2 REXX Batch file  |  1992-08-12  |  40KB  |  1,329 lines

  1. /**********************************************************************/
  2. /*  This REXX Program uses the OS/2 Extended Services Communications  */
  3. /*  Manager Programmable Configuration Feature to list (in Read Only  */
  4. /*  Mode) many(most?) of the configured features of a <selected>      */
  5. /*  .CFG file.                                                        */
  6. /*  The user will be prompted to specify whether he wants to see      */
  7. /*  the report on the screen as it is produced.                       */
  8. /*  In any case, a report file xxxxxxxx.$RP (where xxxxxxxx is the    */
  9. /*  name of the .CFG file selected) will be produced in the C:\CMLIB  */
  10. /*  directory.  At completion, the OS/2 System Editor will be invoked */
  11. /*  to "edit" this xxxxxxxx.$RP file.                                 */
  12. /**********************************************************************/
  13. /* This program was written and released to the public domain by:     */
  14. /*                                                                    */
  15. /*  Robert H. Stratton                                                */
  16. /*  167 Woodfield Rd., SW.,                                           */
  17. /*  CALGARY, Alberta, Canada.                                         */
  18. /*  T2W 5K5                                                           */
  19. /*  (403) 251-5591(h)  (403) 233-3132(o)                              */
  20. /*  CIS:70754,2753                                                    */
  21. /*                                                                    */
  22. /*  Permission is granted to distribute freely.  I ask that this      */
  23. /* header remain with the file and that anyone who improves/corrects  */
  24. /* the program document (and take credit for) the changes and puts    */
  25. /* it back on CIS for everyones benefit.                              */
  26. /*                                                                    */
  27. /**********************************************************************/
  28. Trace N
  29. "@ECHO OFF"
  30. YN_ans = ""
  31. Do while YN_ans \= "Y" & YN_ans \= "N"
  32.    Say "Do you want to see the report on your screen as it is produced? (Y/N)"
  33.    Pull YN_ans
  34.    YN_ans = translate(substr(strip(YN_ans),1,1))
  35. End
  36. If YN_ans = "Y" then Disp_Report = 1;
  37. Else                 Disp_Report = 0
  38. "C:"
  39. "CD\CMLIB"
  40. rc = Job('BEGIN',"QCMCFG")
  41. /*   Get list of .CFG files */
  42. rc = file(list,'C:\CMLIB\*.CFG','CFGFILES.')
  43. If Symbol('CFGFILES.0') = 'VAR' then do
  44.    "CLS"
  45.    Say ""
  46.    Say "Configuration files available are:"
  47.    Say ""
  48.    Do until datatype(the_ans) = "NUM" & the_ans \> j
  49.       Do i = 0 by 1 while Symbol('CFGFILES.'i) = 'VAR'
  50.          Say i+1 || ")" CFGFILES.i
  51.       End
  52.       j = i
  53.       Say ""
  54.       Say "Please select one of the files listed above"
  55.       Pull the_ans
  56.    End
  57.    j = the_ans - 1
  58.    Parse var CFGFILES.j CFG_File '.' .
  59. End
  60. Report_File = strip(CFG_File) || ".$RP"
  61. If stream(Report_File,'C','QUERY EXISTS') \= "" then "ERASE" Report_File
  62. "CLS"
  63. Msg = Centre("Configuration Report for" CFGFILES.j,80)
  64. Call Write_Out
  65. Msg = Copies("*",77)
  66. Call Write_Out
  67. Msg = Copies(" ",77)
  68. Call Write_Out
  69. If file('OPEN',CFG_File,'RO') = 0 then do
  70.    Call Workstation_Configuration
  71.    Call 3270_DFT
  72.    Call 3270_SNA
  73.    Call 5250_SNA
  74.    Call SNA_Connection
  75.    SNA_DLC_Type = "SDLC"
  76.    Call SNA_DLC
  77.    SNA_DLC_Type = "LDLC"
  78.    Call SNA_DLC
  79.    SNA_DLC_Type = "TDLC"
  80.    Call SNA_DLC
  81.    SNA_DLC_Type = "XDLC"
  82.    Call SNA_DLC
  83.    Call LAN_IEEE8022
  84.    Call LAN_NETBIOS
  85.    Call PR_LUA
  86.    Call SRPI_SERVER
  87. End
  88. /********************************************************************/
  89. /** Done:   Report file xxxxxxxx.$RP created                       **/
  90. /** Terminate job, then edit the report file                       **/
  91. /********************************************************************/
  92. rc = Job(END,"QCMCFG")
  93. "CLS"
  94. x = stream(Report_File,"C","CLOSE")
  95. "E" report_file
  96. "CD\"
  97. "CLS"
  98. Say ""
  99. Say "QCMCFG Ended"
  100. Say "Report file C:\CMLIB\" || strip(Report_File) "created."
  101. Exit
  102. /********************************************************************/
  103. /**                                                                **/
  104. /**           Called main routines                                 **/
  105. /**                                                                **/
  106. /********************************************************************/
  107. Workstation_Configuration:
  108. Msg = "[ Workstation Configuration ]"
  109. Call Write_Out
  110. Mnemonic = "COMMENT"
  111. Msg_Text = "Comment"
  112. Call Get_Wkstn
  113. Call Write_Out2
  114. Mnemonic = "MACHINE_TYPE"
  115. Msg_Text = "Machine type"
  116. Call Get_Wkstn
  117. Call Write_Out2
  118. Mnemonic = "MODEL_NUM"
  119. Msg_Text = "Model Number"
  120. Call Get_Wkstn
  121. Call Write_Out2
  122. Mnemonic = "PLANT_MFG"
  123. Msg_Text = "Plant of Manufacture"
  124. Call Get_Wkstn
  125. Call Write_Out2
  126. Mnemonic = "SERIAL_NUM"
  127. Msg_Text = "Serial number"
  128. Call Get_Wkstn
  129. Call Write_Out2
  130. Mnemonic = "TRANS_TABLE"
  131. Msg_Text = "Translation table file name"
  132. Call Get_Wkstn
  133. Call Write_Out2
  134. Mnemonic = "LOG_FNAME"
  135. Msg_Text = "Error log file name"
  136. Call Get_Wkstn
  137. Call Write_Out2
  138. Mnemonic = "LOG_SIZE"
  139. Msg_Text = "Error log file size"
  140. Call Get_Wkstn
  141. Call Write_Out2
  142. Mnemonic = "LOG_OVFLOW"
  143. Msg_Text = "Error log overflow option"
  144. Call Get_Wkstn
  145. If MSG_Val = 1 then Msg_Val = "Wrap";
  146. Else Msg_Val = "Extend"
  147. Call Write_Out2
  148. Mnemonic = "MEDIA_NAME"
  149. Msg_Text = "Message log file name"
  150. Call Get_Wkstn
  151. Call Write_Out2
  152. Mnemonic = "MEDIA_SIZE"
  153. Msg_Text = "Message log file size"
  154. Call Get_Wkstn
  155. Call Write_Out2
  156. Mnemonic = "MEDIA_OVFLOW"
  157. Msg_Text = "Message log overflow option"
  158. Call Get_Wkstn
  159. If MSG_Val = 1 then Msg_Val = "Wrap"
  160. Else                Msg_Val = "Extend"
  161. Call Write_Out2
  162. Mnemonic = "DISP_MSG_POPUP"
  163. Msg_Text = "Display Message Popup"
  164. Call Get_Wkstn
  165. Call Write_Out2
  166. Mnemonic = "QUICK_START"
  167. Msg_Text = "Enable Autostart Options"
  168. Call Get_Wkstn
  169. Call Write_Out2
  170. Mnemonic = "START_3270_DFT"
  171. Msg_Text = "Autostart 3270 DFT terminal emulation"
  172. Call Get_Wkstn
  173. Call Write_Out2
  174. Mnemonic = "START_ALL_DFT_SESS"
  175. Msg_Text = "Autostart all 3270 DFT sessions"
  176. Call Get_Wkstn
  177. Call Write_Out2
  178. Do k = 1 to 5
  179.    Mnemonic = "START_DFT_SESS_" || k
  180.    Msg_Text = "Autostart 3270 DFT session" k
  181.    Call Get_Wkstn
  182.    If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2
  183. End
  184. Mnemonic = "START_3270_APPC"
  185. Msg_Text = "Autostart 3270 SNA terminal emulation"
  186. Call Get_Wkstn
  187. Call Write_Out2
  188. Mnemonic = "START_ALL_NDFT_SESS"
  189. Msg_Text = "Autostart all 3270 SNA sessions"
  190. Call Get_Wkstn
  191. Call Write_Out2
  192. Do k = 1 to 5
  193.    Mnemonic = "START_NDFT_SESS_" || k
  194.    Msg_Text = "Autostart 3270 SNA session" k
  195.    Call Get_Wkstn
  196.    If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2
  197. End
  198. Mnemonic = "START_5250_WSF"
  199. Msg_Text = "Autostart 5250 Workstation Feature"
  200. Call Get_Wkstn
  201. Call Write_Out2
  202. Mnemonic = "START_ALL_5250_SESS"
  203. Msg_Text = "Autostart all 5250 sessions"
  204. Call Get_Wkstn
  205. Call Write_Out2
  206. Do k = 1 to 5
  207.    Mnemonic = "START_5250_SESS_" || k
  208.    Msg_Text = "Autostart 5250 session" k
  209.    Call Get_Wkstn
  210.    If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2
  211. End
  212. Mnemonic = "1ST_SCREEN_SESS"
  213. Msg_Text = "Screen to display first"
  214. Call Get_Wkstn
  215. Call Write_Out2
  216. Mnemonic = "START_ASYNC_TRM"
  217. Msg_Text = "Autostart ASCII Terminal Emulation"
  218. Call Get_Wkstn
  219. Call Write_Out2
  220. Mnemonic = "LOAD_SERVICES"
  221. Msg_Text = "Load all configured services"
  222. Call Get_Wkstn
  223. Call Write_Out2
  224. Mnemonic = "LOAD_SNA_APPC"
  225. Msg_Text = "Load SNA/APPC services"
  226. Call Get_Wkstn
  227. Call Write_Out2
  228. Mnemonic = "LOAD_SRPI"
  229. Msg_Text = "Load SRPI services"
  230. Call Get_Wkstn
  231. Call Write_Out2
  232. Mnemonic = "LOAD_X25_API"
  233. Msg_Text = "Load X.25 services"
  234. Call Get_Wkstn
  235. Call Write_Out2
  236. Mnemonic = "LOAD_ACDI"
  237. Msg_Text = "Load ACDI services"
  238. Call Get_Wkstn
  239. Call Write_Out2
  240. Return
  241. /********************************************************************/
  242. /* Check whether there are any 3270 DFT Sessions defined */
  243. 3270_DFT:
  244. rc = 3270DFT(LIST,SESSION,"DFTSESS.")
  245. If Symbol("DFTSESS." || 0 ) = "VAR" then do
  246.    Term_Type = "DFT"
  247.    do i = 0 by 1 while Symbol("DFTSESS." || i ) = "VAR"
  248.       Session_ID = DFTSESS.i
  249.       Msg = "  "
  250.       Call Write_Out
  251.       Msg = "[ 3270 DFT Session" Session_ID "Configuration ]"
  252.       Call Write_Out
  253.       Call Term_3270
  254.    End
  255. End
  256. Return
  257. /********************************************************************/
  258. /* Check whether there are any 3270 SNA Sessions defined */
  259. 3270_SNA:
  260. rc = 3270SNA(LIST,SESSION,"SNASESS.")
  261. If Symbol("SNASESS." || 0 ) = "VAR" then do
  262.    Term_Type = "SNA"
  263.    Msg = "  "
  264.    Call Write_Out
  265.    Msg = "[ 3270 SNA Configuration ]"
  266.    Call Write_Out
  267.    do i = 0 by 1 while Symbol("SNASESS." || i ) = "VAR"
  268.       Session_ID = SNASESS.i
  269.       Msg = "  "
  270.       Call Write_Out
  271.       Msg = "[ 3270 SNA Session" Session_ID "Configuration ]"
  272.       Call Write_Out
  273.       Call Term_3270
  274.    End
  275. End
  276. Return
  277. /********************************************************************/
  278. /* Check whether there are any 5250 terminal Sessions defined */
  279. 5250_SNA:
  280. rc = 5250(LIST,SESSION,"W5250SESS.")
  281. If Symbol("W5250SESS." || 0 ) = "VAR" then do
  282.    Msg = "  "
  283.    Call Write_Out
  284.    Msg = "[ 5250 Configuration ]"
  285.    Call Write_Out
  286.    /************************/
  287.    Mnemonic = "SESS_LU_ALIAS"
  288.    Msg_Text = "APPN LU alias"
  289.    Call Get_Sess_5250
  290.    Call Write_Out2
  291.    Do i = 1 to 5
  292.       Mnemonic = "SESS" || i || "_PROF_NAME"
  293.       Msg_Text = "5250 session" i "wrkstn feature prof name"
  294.       Call Get_Sess_5250
  295.       Call Write_Out2
  296.       Mnemonic = "SESS" || i || "_PLU_ALIAS"
  297.       Msg_Text = "APPN session" i "partner LU alias"
  298.       Call Get_Sess_5250
  299.       Call Write_Out2
  300.       Mnemonic = "SESS" || i || "_MODE_NAME"
  301.       Msg_Text = "APPN session" i "mode name"
  302.       Call Get_Sess_5250
  303.       Call Write_Out2
  304.       Mnemonic = "SESS" || i || "_SHORT_ID"
  305.       Msg_Text = "Session" i "short ID"
  306.       Call Get_Sess_5250
  307.       Call Write_Out2
  308.    End
  309.    /************************/
  310.    rc = 5250(LIST,TERM,"W5250TERM.")
  311.    If Symbol("W5250TERM." || 0 ) = "VAR" then do
  312.       do i = 0 by 1 while Symbol("W5250TERM." || i ) = "VAR"
  313.          Session_ID = W5250TERM.i
  314.          Msg = "[ 5250 Terminal" Session_ID "Configuration ]"
  315.          Call Write_Out
  316.          Call Term_5250
  317.       End
  318.    End
  319. End
  320. /************************/
  321. /* Check whether there are any 5250 Printers defined */
  322. rc = 5250(LIST,PRT,"W5250SESS.")
  323. If Symbol("W5250SESS." || 0 ) = "VAR" then do
  324.    Msg = "  "
  325.    Call Write_Out
  326.    do i = 0 by 1 while Symbol("W5250SESS." || i ) = "VAR"
  327.       Session_ID = W5250SESS.i
  328.       Msg = "[ 5250 Printer" Session_ID "Configuration ]"
  329.       Call Write_Out
  330.       Call Prnt_5250
  331.    End
  332. End
  333. Return
  334. /********************************************************************/
  335. /* Get 3270 SNA connection type */
  336. SNA_Connection:
  337. Msg = "[ 3270 SNA Connection Configuration ]"
  338. Call Write_Out
  339. Mnemonic = "DLC_TYPE"
  340. Msg_Text = "Connection Type"
  341. Drop Msg_Val
  342. Call Get_SNA_Connect
  343. Select
  344.    When Msg_Val = 1 then Msg_Val = "SDLC"
  345.    When Msg_Val = 2 then Msg_Val = "IBM Token Ring Network"
  346.    When Msg_Val = 3 then Msg_Val = "X.25"
  347.    When Msg_Val = 4 then Msg_Val = "IBM PC Network through a gateway"
  348.    When Msg_Val = 5 then Msg_Val = "ETHERAND Network through a gateway"
  349.    Otherwise nop
  350. End
  351. Call Write_Out2
  352. Mnemonic = "ADAPT_NUM"
  353. Msg_Text = "Adapter number"
  354. Call Get_SNA_Connect
  355. Call Write_Out2
  356. Mnemonic = "DEST_ADDR"
  357. Msg_Text = "Destination address"
  358. Call Get_SNA_Connect
  359. Call Write_Out2
  360. Mnemonic = "X25_DIR"
  361. Msg_Text = "Directory entry name"
  362. Call Get_SNA_Connect
  363. Call Write_Out2
  364. Return
  365. /********************************************************************/
  366. /* SNA DLC  */
  367. SNA_DLC:
  368. rc = SNA(LIST,SNA_DLC_Type,"SNADLC.")
  369. If Symbol("SNADLC." || 0 ) = "VAR" then do
  370.    Msg = "[ SNA" SNA_DLC_Type "Configuration ]"
  371.    Call Write_Out
  372.    do i = 0 by 1 while Symbol("SNADLC." || i ) = "VAR"
  373.       Session_ID = SNADLC.i
  374.       Msg = "[ SNA" SNA_DLC_Type Session_ID "Configuration ]"
  375.       Call Write_Out
  376.       Call SNA_DLCs
  377.    End
  378. End
  379. Return
  380. /********************************************************************/
  381. SNA_DLCs:
  382. Mnemonic = "COMMENT"
  383. Msg_Text = "Comment"
  384. Call Get_SNA_DLC
  385. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  386. Else Drop Msg_Val
  387. If SNA_DLC_Type \= "TDLC" then do
  388.    Mnemonic = "ADAPT_TYPE"
  389.    Msg_Text = "Adapter Type"
  390.    Call Get_SNA_DLC
  391.    If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then do
  392.       If Msg_Val = 1 then Msg_Val = "IBM PC Network"
  393.       If Msg_Val = 2 then Msg_Val = "IBM Token-Ring Network"
  394.       If Msg_Val = 3 then Msg_Val = "ETHERAND Network"
  395.       Call Write_Out2
  396.    End
  397.    Else Drop Msg_Val
  398. End
  399. Mnemonic = "LOAD"
  400. Msg_Text = "Load DLC"
  401. Call Get_SNA_DLC
  402. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  403. Else Drop Msg_Val
  404. Mnemonic = "FREE_CONNECTS"
  405. Msg_Text = "Free unused connections"
  406. Call Get_SNA_DLC
  407. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  408. Else Drop Msg_Val
  409. Mnemonic = "MAX_LINK_STA"
  410. Msg_Text = "Maximum Link stations"
  411. Call Get_SNA_DLC
  412. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  413. Else Drop Msg_Val
  414. Mnemonic = "PER_N_CALLS"
  415. Msg_Text = "Percent of incoming calls"
  416. Call Get_SNA_DLC
  417. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  418. Else Drop Msg_Val
  419. Mnemonic = "FREE_LINK"
  420. Msg_Text = "Free unused link"
  421. Call Get_SNA_DLC
  422. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  423. Else Drop Msg_Val
  424. Mnemonic = "PER_CONGEST"
  425. Msg_Text = "Congestion tolerance"
  426. Call Get_SNA_DLC
  427. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  428. Else Drop Msg_Val
  429. Mnemonic = "MAX_RU_SIZE"
  430. Msg_Text = "Maximum RU Size"
  431. Call Get_SNA_DLC
  432. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  433. Else Drop Msg_Val
  434. Mnemonic = "CONTROL_ADDR"
  435. Msg_Text = "Controller address"
  436. Call Get_SNA_DLC
  437. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  438. Else Drop Msg_Val
  439. If SNA_DLC_Type = "TDLC" then do
  440.    Mnemonic = "ADAPT_TYPE"
  441.    Msg_Text = "Adapter Type"
  442.    Call Get_SNA_DLC
  443.    If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then do
  444.       If Msg_Val = 1 then Msg_Val = "IBM System/36 38 workstation"
  445.       If Msg_Val = 2 then Msg_Val = "Enhanced 5250"
  446.       Call Write_Out2
  447.    End
  448.    Else Drop Msg_Val
  449. End
  450. Mnemonic = "SEND_COUNT"
  451. Msg_Text = "Send window count"
  452. Call Get_SNA_DLC
  453. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  454. Else Drop Msg_Val
  455. Mnemonic = "REC_COUNT"
  456. Msg_Text = "Receive window count"
  457. Call Get_SNA_DLC
  458. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  459. Else Drop Msg_Val
  460. Mnemonic = "CASM_LAN_ID"
  461. Msg_Text = "Commns and systems management LAN ID"
  462. Call Get_SNA_DLC
  463. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  464. Else Drop Msg_Val
  465. Mnemonic = "LINE_TYPE"
  466. Msg_Text = "Line type"
  467. Call Get_SNA_DLC
  468. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then do
  469.    If Msg_Val = 1 then Msg_Val = "Switched"
  470.    If Msg_Val = 2 then Msg_Val = "Non-switched"
  471.    Call Write_Out2
  472. End
  473. Else Drop Msg_Val
  474. Mnemonic = "LINK_STA_ROLE"
  475. Msg_Text = "Link station role"
  476. Call Get_SNA_DLC
  477. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then do
  478.    If Msg_Val = 1 then Msg_Val = "Secondary"
  479.    If Msg_Val = 2 then Msg_Val = "Primary"
  480.    If Msg_Val = 3 then Msg_Val = "Negotiable"
  481.    Call Write_Out2
  482. End
  483. Else Drop Msg_Val
  484. Mnemonic = "LINE_MODE"
  485. Msg_Text = "Line mode"
  486. Call Get_SNA_DLC
  487. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then do
  488.    If Msg_Val = 1 then Msg_Val = "Line turnaround required"
  489.    If Msg_Val = 2 then Msg_Val = "Constant request to send"
  490.    Call Write_Out2
  491. End
  492. Else Drop Msg_Val
  493. Mnemonic = "NRZI"
  494. Msg_Text = "Non-return-to-zero (inverted)"
  495. Call Get_SNA_DLC
  496. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  497. Else Drop Msg_Val
  498. Mnemonic = "MODEM_RATE"
  499. Msg_Text = "Modem Rate"
  500. Call Get_SNA_DLC
  501. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then do
  502.    If Msg_Val = 1 then Msg_Val = "Full speed"
  503.    If Msg_Val = 2 then Msg_Val = "Half speed"
  504.    Call Write_Out2
  505. End
  506. Else Drop Msg_Val
  507. Mnemonic = "DSR_TIMEOUT"
  508. Msg_Text = "Data set ready timeout"
  509. Call Get_SNA_DLC
  510. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  511. Else Drop Msg_Val
  512. Mnemonic = "LOC_SAT_ADDR"
  513. Msg_Text = "Local station address"
  514. Call Get_SNA_DLC
  515. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  516. Else Drop Msg_Val
  517. Mnemonic = "XID_REPOLL"
  518. Msg_Text = "Exchange ID (XID) repoll count"
  519. Call Get_SNA_DLC
  520. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  521. Else Drop Msg_Val
  522. Mnemonic = "NXID_REPOLL"
  523. Msg_Text = "Non-XID repoll count"
  524. Call Get_SNA_DLC
  525. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  526. Else Drop Msg_Val
  527. Mnemonic = "SEND_ALERT"
  528. Msg_Text = "Send alert for beaconing"
  529. Call Get_SNA_DLC
  530. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  531. Else Drop Msg_Val
  532. Mnemonic = "5250_IO_PORT"
  533. Msg_Text = "I/O Port"
  534. Call Get_SNA_DLC
  535. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  536. Else Drop Msg_Val
  537. Mnemonic = "5250_INT_LEVEL"
  538. Msg_Text = "Hardware interrupt level"
  539. Call Get_SNA_DLC
  540. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  541. Else Drop Msg_Val
  542. Mnemonic = "5250_RAM_LOCA"
  543. Msg_Text = "Shared RAM location"
  544. Call Get_SNA_DLC
  545. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then do
  546.    If Msg_Val = 1 then Msg_Val = "Use first available address"
  547.    If Msg_Val = 2 then Msg_Val = "CC000"
  548.    If Msg_Val = 3 then Msg_Val = "DC000"
  549.    Call Write_Out2;
  550. End
  551. Else Drop Msg_Val
  552. If SNA_DLC_Type = "XDLC" then do
  553.    Mnemonic = "IN_CONNECTS"
  554.    Msg_Text = "Number of incoming connections"
  555.    Call Get_SNA_DLC
  556.    If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  557.    Else Drop Msg_Val
  558.    Mnemonic = "CALL_ADDR_REQ"
  559.    Msg_Text = "Insert calling address in call request packet"
  560.    Call Get_SNA_DLC
  561.    If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  562.    Else Drop Msg_Val
  563.    Mnemonic = "NEGOT_PACK_SIZE"
  564.    Msg_Text = "Negotiate packet size"
  565.    Call Get_SNA_DLC
  566.    If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  567.    Else Drop Msg_Val
  568.    Mnemonic = "NEGOT_WIND_SIZE"
  569.    Msg_Text = "Negotiate window size"
  570.    Call Get_SNA_DLC
  571.    If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  572.    Else Drop Msg_Val
  573.    Mnemonic = "DEF_LINK_STA_ROLE"
  574.    Msg_Text = "Default link station role"
  575.    Call Get_SNA_DLC
  576.    If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then do
  577.       If Msg_Val = 1 then Msg_Val = "Secondary"
  578.       If Msg_Val = 2 then Msg_Val = "Primary"
  579.       If Msg_Val = 3 then Msg_Val = "Negotiable"
  580.       Call Write_Out2;
  581.    End
  582.    Else Drop Msg_Val
  583.    Mnemonic = "DEF_RETRY_COUNT"
  584.    Msg_Text = "Default retry count"
  585.    Call Get_SNA_DLC
  586.    If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  587.    Else Drop Msg_Val
  588.    Mnemonic = "DEF_TIMEOUT"
  589.    Msg_Text = "Default timeout"
  590.    Call Get_SNA_DLC
  591.    If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  592.    Else Drop Msg_Val
  593.    Mnemonic = "REVERSE_CHARGES"
  594.    Msg_Text = "Accept reverse charges"
  595.    Call Get_SNA_DLC
  596.    If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2;
  597.    Else Drop Msg_Val
  598. End
  599. Return
  600. /********************************************************************/
  601. /* Process LAN IEEE 802.2       */
  602. LAN_IEEE8022:
  603. rc = LAN(LIST,IEEE8022,"XIEEE8022.")
  604. If Symbol("XIEEE8022." || 0 ) = "VAR" then do
  605.    do i = 0 by 1 while Symbol("XIEEE8022." || i ) = "VAR"
  606.       Session_ID = XIEEE8022.i
  607.       Msg = "[ LAN IEEE 802.2" Session_ID "Configuration ]"
  608.       Call Write_Out
  609.       Call LAN_IEEE_8022
  610.    End
  611. End
  612. Return
  613. /********************************************************************/
  614. /* Process LAN Netbios     */
  615. LAN_NETBIOS:
  616. rc = LAN(LIST,NETB,"XNETBIOS.")
  617. If Symbol("XNETBIOS." || 0 ) = "VAR" then do
  618.    do i = 0 by 1 while Symbol("XNETBIOS." || i ) = "VAR"
  619.       Session_ID = XNETBIOS.i
  620.       Msg = "[ LAN Netbios" Session_ID "Configuration ]"
  621.       Call Write_Out
  622.       Call LAN_NET_BIOS
  623.    End
  624. End
  625. Return
  626. /********************************************************************/
  627. /* Process SRPI            */
  628. SRPI_SERVER:
  629. Mnemonic = "NOTIFY_MODE"
  630. Msg_Text = "Change notification mode for 3270 sessions"
  631. rc = SRPI(GET,SVRBASE,Msg_Val EQ Mnemonic)
  632. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then do
  633.    Msg = "   "
  634.    Call Write_Out
  635.    Msg = "[ SRPI Server Configuration ]"
  636.    Call Write_Out
  637.    Call Write_Out2
  638.    rc = SRPI(LIST,SERVER,"SRPISRVR.")
  639.    If Symbol("SRPISRVR." || 0 ) = "VAR" then do
  640.       do i = 0 by 1 while Symbol("SRPISRVR." || i ) = "VAR"
  641.          Session_ID = SRPISRVR.i
  642.          Msg = "[ SRPI Server" Session_ID "Configuration ]"
  643.          Call Write_Out
  644.          Call SRPISERVER
  645.       End
  646.    End
  647. End
  648. Return
  649. /********************************************************************/
  650. /* Process LUA            */
  651. PR_LUA:
  652. rc = LUA(LIST,LUA,"LUAS.")
  653. If Symbol("LUAS." || 0 ) = "VAR" then do
  654.    do i = 0 by 1 while Symbol("LUAS." || i ) = "VAR"
  655.       Session_ID = LUAS.i
  656.       Msg = "[ LUA LUA" Session_ID "Configuration ]"
  657.       Call Write_Out
  658.       Call LUA_LUA
  659.    End
  660. End
  661. Return
  662. /********************************************************************/
  663. /**                                                                **/
  664. /**           Called sub routines                                  **/
  665. /**                                                                **/
  666. /********************************************************************/
  667. Get_Wkstn:
  668. rc = Machine(GET,WKST,Msg_Val EQ Mnemonic)
  669. Return Msg_Val
  670. /*******************************************/
  671. Term_3270:
  672. Mnemonic = "SESN_ID"
  673. Msg_Text = "Session ID/LU Name"
  674. Call Get_Term_3270
  675. Call Write_Out2
  676. Mnemonic = "COMMENT"
  677. Msg_Text = "Comment"
  678. Call Get_Term_3270
  679. Call Write_Out2
  680. Mnemonic = "TYPE"
  681. Msg_Text = "Profile Type"
  682. Call Get_Term_3270
  683. Term_Type = Msg_Val
  684. If Msg_Val = 1 then do
  685.    Msg_Val = "Terminal"
  686. End
  687. Else do
  688.    Msg_Val = "Printer"
  689. End
  690. Call Write_Out2
  691. Mnemonic = "SHORT_ID"
  692. Msg_Text = "Short Session ID"
  693. Call Get_Term_3270
  694. Call Write_Out2
  695. If Term_Type = "SNA" then do
  696.    Mnemonic = "NAU"
  697.    Msg_Text = "LU local address (NAU address)"
  698.    Call Get_Term_3270
  699.    Call Write_Out2
  700. End
  701. If Term_Type = 1 then do
  702.    Mnemonic = "AT_KEYBOARD"
  703.    Msg_Text = "AT Keyboard profile name"
  704.    Call Get_Term_3270
  705.    Call Write_Out2
  706.    Mnemonic = "ENH_KEYBOARD"
  707.    Msg_Text = "Enhanced Keyboard profile name"
  708.    Call Get_Term_3270
  709.    Call Write_Out2
  710.    Mnemonic = "SPACE_SIZE"
  711.    Msg_Text = "Presentation space size"
  712.    Call Get_Term_3270
  713.    Select
  714.       When Msg_Val = 1 then Msg_Val = "25X80 (3278/79 mod 2)"
  715.       When Msg_Val = 2 then Msg_Val = "33X80 (3278/79 mod 3)"
  716.       When Msg_Val = 3 then Msg_Val = "44X80 (3278/79 mod 4)"
  717.       When Msg_Val = 4 then Msg_Val = "28X132 (3278/79 mod 5)"
  718.       Otherwise Msg_Val = "Other"
  719.    End
  720.    Call Write_Out2
  721.    Mnemonic = "PSS_ROW"
  722.    Msg_Text = "Rows of Presentation space size"
  723.    Call Get_Term_3270
  724.    Call Write_Out2
  725.    Mnemonic = "PSS_COL"
  726.    Msg_Text = "Columns of Presentation space size"
  727.    Call Get_Term_3270
  728.    Call Write_Out2
  729.    Mnemonic = "XFER_SIZE"
  730.    Msg_Text = "Data transfer buffer size override"
  731.    Call Get_Term_3270
  732.    Call Write_Out2
  733.    Mnemonic = "UNSUP_CC"
  734.    Msg_Text = "Unsupported control codes"
  735.    Call Get_Term_3270
  736.    If MSG_VAL = 1 then Msg_Val = "Display hyphens"
  737.    If MSG_VAL = 2 then Msg_Val = "Error codes"
  738.    Call Write_Out2
  739.    Mnemonic = "APS_PRINT"
  740.    Msg_Text = "Activate presentation space print"
  741.    Call Get_Term_3270
  742.    Call Write_Out2
  743.    Mnemonic = "DBCS_LANG"
  744.    Msg_Text = "Language selection"
  745.    Call Get_Term_3270
  746.    If Msg_Val = 1 then Msg_Val = "English"
  747.    If Msg_Val = 2 then Msg_Val = "Katakana"
  748.    Call Write_Out2
  749.    Msg = "[ 3270 Session" Session_ID "Colour attributes ]"
  750.    Call Write_Out
  751.    /*   Foreground colours   */
  752.    Mnemonic = "F_NORMAL_UNPRO"
  753.    Msg_Text = "Normal, unprotected foreground"
  754.    Call Get_Term_3270_Colour
  755.    Call Write_Out2
  756.    Mnemonic = "F_INTENSE_UNPRO"
  757.    Msg_Text = "Intensified, unprotected foreground"
  758.    Call Get_Term_3270_Colour
  759.    Call Write_Out2
  760.    Mnemonic = "F_NORMAL_PRO"
  761.    Msg_Text = "Normal, protected foreground"
  762.    Call Get_Term_3270_Colour
  763.    Call Write_Out2
  764.    Mnemonic = "F_INTENSE_PRO"
  765.    Msg_Text = "Intensified, protected foreground"
  766.    Call Get_Term_3270_Colour
  767.    Call Write_Out2
  768.    Mnemonic = "F_BLUE"
  769.    Msg_Text = "Blue foreground"
  770.    Call Get_Term_3270_Colour
  771.    Call Write_Out2
  772.    Mnemonic = "F_GREEN"
  773.    Msg_Text = "Green foreground"
  774.    Call Get_Term_3270_Colour
  775.    Call Write_Out2
  776.    Mnemonic = "F_PINK"
  777.    Msg_Text = "Pink foreground"
  778.    Call Get_Term_3270_Colour
  779.    Call Write_Out2
  780.    Mnemonic = "F_RED"
  781.    Msg_Text = "Red foreground"
  782.    Call Get_Term_3270_Colour
  783.    Call Write_Out2
  784.    Mnemonic = "F_TURQUOISE"
  785.    Msg_Text = "Turquoise foreground"
  786.    Call Get_Term_3270_Colour
  787.    Call Write_Out2
  788.    Mnemonic = "F_WHITE"
  789.    Msg_Text = "White foreground"
  790.    Call Get_Term_3270_Colour
  791.    Call Write_Out2
  792.    Mnemonic = "F_YELLOW"
  793.    Msg_Text = "Yellow foreground"
  794.    Call Get_Term_3270_Colour
  795.    Call Write_Out2
  796.    Mnemonic = "F_BLINK"
  797.    Msg_Text = "Blink foreground"
  798.    Call Get_Term_3270_Colour
  799.    Call Write_Out2
  800.    Mnemonic = "F_DEFLT_HILITE"
  801.    Msg_Text = "Default highlight of foreground"
  802.    Call Get_Term_3270_Colour
  803.    Call Write_Out2
  804.    Mnemonic = "F_DEFLT_NOHILT"
  805.    Msg_Text = "Default no highlight of foreground"
  806.    Call Get_Term_3270_Colour
  807.    Call Write_Out2
  808.    Mnemonic = "F_OIA"
  809.    Msg_Text = "Operator information area of foreground"
  810.    Call Get_Term_3270_Colour
  811.    Call Write_Out2
  812.    /*   Background colours   */
  813.    Mnemonic = "B_NORMAL_UNPRO"
  814.    Msg_Text = "Normal, unprotected background"
  815.    Call Get_Term_3270_Colour
  816.    Call Write_Out2
  817.    Mnemonic = "B_INTENSE_UNPRO"
  818.    Msg_Text = "Intensified, unprotected background"
  819.    Call Get_Term_3270_Colour
  820.    Call Write_Out2
  821.    Mnemonic = "B_NORMAL_PRO"
  822.    Msg_Text = "Normal, protected background"
  823.    Call Get_Term_3270_Colour
  824.    Call Write_Out2
  825.    Mnemonic = "B_INTENSE_PRO"
  826.    Msg_Text = "Intensified, protected background"
  827.    Call Get_Term_3270_Colour
  828.    Call Write_Out2
  829.    Mnemonic = "B_BLUE"
  830.    Msg_Text = "Blue background"
  831.    Call Get_Term_3270_Colour
  832.    Call Write_Out2
  833.    Mnemonic = "B_GREEN"
  834.    Msg_Text = "Green background"
  835.    Call Get_Term_3270_Colour
  836.    Call Write_Out2
  837.    Mnemonic = "B_PINK"
  838.    Msg_Text = "Pink background"
  839.    Call Get_Term_3270_Colour
  840.    Call Write_Out2
  841.    Mnemonic = "B_RED"
  842.    Msg_Text = "Red background"
  843.    Call Get_Term_3270_Colour
  844.    Call Write_Out2
  845.    Mnemonic = "B_TURQUOISE"
  846.    Msg_Text = "Turquoise background"
  847.    Call Get_Term_3270_Colour
  848.    Call Write_Out2
  849.    Mnemonic = "B_WHITE"
  850.    Msg_Text = "White background"
  851.    Call Get_Term_3270_Colour
  852.    Call Write_Out2
  853.    Mnemonic = "B_YELLOW"
  854.    Msg_Text = "Yellow background"
  855.    Call Get_Term_3270_Colour
  856.    Call Write_Out2
  857.    Mnemonic = "B_BLINK"
  858.    Msg_Text = "Blink background"
  859.    Call Get_Term_3270_Colour
  860.    Call Write_Out2
  861.    Mnemonic = "B_DEFLT_HILITE"
  862.    Msg_Text = "Default highlight of background"
  863.    Call Get_Term_3270_Colour
  864.    Call Write_Out2
  865.    Mnemonic = "B_DEFLT_NOHILT"
  866.    Msg_Text = "Default no highlight of background"
  867.    Call Get_Term_3270_Colour
  868.    Call Write_Out2
  869.    Mnemonic = "B_OIA"
  870.    Msg_Text = "Operator information area of background"
  871.    Call Get_Term_3270_Colour
  872.    Call Write_Out2
  873.    Mnemonic = "HOST_ALARM"
  874.    Msg_Text = "Host alarm"
  875.    Call Get_Term_3270
  876.    If Msg_Val = 1 then Msg_Val = "On"
  877.    If Msg_Val = 2 then Msg_Val = "Off"
  878.    Call Write_Out2
  879.    Mnemonic = "PF_ALARM"
  880.    Msg_Text = "Protected field alarm"
  881.    Call Get_Term_3270
  882.    If Msg_Val = 1 then Msg_Val = "On"
  883.    If Msg_Val = 2 then Msg_Val = "Off"
  884.    Call Write_Out2
  885.    Mnemonic = "SU_ALARM"
  886.    Msg_Text = "Screen update alarm"
  887.    Call Get_Term_3270
  888.    If Msg_Val = 1 then Msg_Val = "On"
  889.    If Msg_Val = 2 then Msg_Val = "Off"
  890.    Call Write_Out2
  891. End
  892. Else do
  893.    Mnemonic = "PRT_BUFF"
  894.    Msg_Text = "Print buffer size"
  895.    Call Get_Term_3270
  896.    Call Write_Out2
  897. End
  898. Return
  899. /*******************************************/
  900. Get_Term_3270:
  901. rc = 3270SNA(GET,SESSION EQ Session_ID,Msg_Val EQ Mnemonic)
  902. Return
  903. /*******************************************/
  904. Get_Term_3270_Colour:
  905. rc = 3270SNA(GET,SESSION EQ Session_ID,Colour_Code EQ Mnemonic)
  906. Select
  907.    When Colour_Code =  1 then Msg_Val = "Black"
  908.    When Colour_Code =  2 then Msg_Val = "Blue"
  909.    When Colour_Code =  3 then Msg_Val = "Green"
  910.    When Colour_Code =  4 then Msg_Val = "Cyan"
  911.    When Colour_Code =  5 then Msg_Val = "Red"
  912.    When Colour_Code =  6 then Msg_Val = "Magenta"
  913.    When Colour_Code =  7 then Msg_Val = "Brown"
  914.    When Colour_Code =  8 then Msg_Val = "Light Grey"
  915.    When Colour_Code =  9 then Msg_Val = "Grey"
  916.    When Colour_Code = 10 then Msg_Val = "Light Blue"
  917.    When Colour_Code = 11 then Msg_Val = "Light Green"
  918.    When Colour_Code = 12 then Msg_Val = "Light Cyan"
  919.    When Colour_Code = 13 then Msg_Val = "Light Red"
  920.    When Colour_Code = 14 then Msg_Val = "Light Magenta"
  921.    When Colour_Code = 15 then Msg_Val = "Yellow"
  922.    When Colour_Code = 16 then Msg_Val = "White"
  923.    Otherwise Msg_Val = "Unknown"
  924. End
  925. Drop Colour_Code
  926. Return
  927. /*******************************************/
  928. Get_SNA_Connect:
  929. rc = 3270SNA(GET,CONNECT,Msg_Val EQ Mnemonic)
  930. Return
  931. /*******************************************/
  932. Term_5250:
  933. Mnemonic = "COMMENT"
  934. Msg_Text = "Comment"
  935. Call Get_Term_5250
  936. Call Write_Out2
  937. Mnemonic = "AT_KB_NAME"
  938. Msg_Text = "AT Keyboard profile name"
  939. Call Get_Term_5250
  940. Call Write_Out2
  941. Mnemonic = "ENH_KB_NAME"
  942. Msg_Text = "Enhanced Keyboard profile name"
  943. Call Get_Term_5250
  944. Call Write_Out2
  945. Mnemonic = "BUFF_KEYS"
  946. Msg_Text = "Buffer Keystrokes"
  947. Call Get_Term_5250
  948. Call Write_Out2
  949. Mnemonic = "HOST_TYPE"
  950. Msg_Text = "Host Type"
  951. Call Get_Term_5250
  952. If Msg_Val = 1 then do
  953.    Msg_Val = "System 36"
  954.    Call Write_Out2
  955.    Mnemonic = "SYS36_WS_ID"
  956.    Msg_Text = "System/36 Workstation ID"
  957.    Call Get_Term_5250
  958.    Call Write_Out2
  959. End
  960. If Msg_Val = 2 then do
  961.    Msg_Val = "AS/400"
  962.    Call Write_Out2
  963.    Mnemonic = "AS400_WS_ID"
  964.    Msg_Text = "AS/400 Workstation ID"
  965.    Call Get_Term_5250
  966.    Call Write_Out2
  967. End
  968. Mnemonic = "DBCS_USER_CHAR"
  969. Msg_Text = "Use user defined characters"
  970. Call Get_Term_5250
  971. If Msg_Val = 1 then Msg_Val = "PS/55"
  972. If Msg_Val = 2 then Msg_Val = "AS/400"
  973. Call Write_Out2
  974. Mnemonic = "DBCS_LANG_SEL"
  975. Msg_Text = "Language selection"
  976. Call Get_Term_5250
  977. If Msg_Val = 1 then Msg_Val = "English"
  978. If Msg_Val = 2 then Msg_Val = "Katakana"
  979. Call Write_Out2
  980. Mnemonic = "AUTO_SIGNON"
  981. Msg_Text = "Auto sign on"
  982. Call Get_Term_5250
  983. Call Write_Out2
  984. Mnemonic = "SEP_FOR_BLNK"
  985. Msg_Text = "Display blanks in column separator field"
  986. Call Get_Term_5250
  987. Call Write_Out2
  988. Mnemonic = "COL_SEP"
  989. Msg_Text = "Column separator"
  990. Call Get_Term_5250
  991. Call Write_Out2
  992. Return
  993. /*******************************************/
  994. Get_Sess_5250:
  995. rc = 5250(GET,SESSION,Msg_Val EQ Mnemonic)
  996. Return
  997. /*******************************************/
  998. Get_Term_5250:
  999. rc = 5250(GET,TERM EQ Session_ID,Msg_Val EQ Mnemonic)
  1000. Return
  1001. /*******************************************/
  1002. Prnt_5250:
  1003. Mnemonic = "COMMENT"
  1004. Msg_Text = "Comment"
  1005. Call Get_Prt_5250
  1006. Call Write_Out2
  1007. Mnemonic = "AT_KB_NAME"
  1008. Msg_Text = "AT Keyboard profile name"
  1009. Call Get_Prt_5250
  1010. Call Write_Out2
  1011. Mnemonic = "ENH_KB_NAME"
  1012. Msg_Text = "Enhanced Keyboard profile name"
  1013. Call Get_Prt_5250
  1014. Call Write_Out2
  1015. Mnemonic = "PRINT_TYPE"
  1016. Msg_Text = "Printer type 1"
  1017. Call Get_Prt_5250
  1018. Call Write_Out2
  1019. Mnemonic = "PFT_FILE_NAME8"
  1020. Msg_Text = "Printer function table name"
  1021. Call Get_Prt_5250
  1022. Call Write_Out2
  1023. Mnemonic = "HOST_TYPE"
  1024. Msg_Text = "Host type"
  1025. Call Get_Prt_5250
  1026. Call Write_Out2
  1027. Mnemonic = "SYS36_WS_ID"
  1028. Msg_Text = "System/36 workstation ID"
  1029. Call Get_Prt_5250
  1030. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2
  1031. Mnemonic = "AS400_WS_ID"
  1032. Msg_Text = "AS/400 workstation ID"
  1033. Call Get_Prt_5250
  1034. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Call Write_Out2
  1035. Mnemonic = "NET_CONV"
  1036. Msg_Text = "Printer type 2"
  1037. Call Get_Prt_5250
  1038. Call Write_Out2
  1039. Mnemonic = "EBCDIC_PAGE"
  1040. Msg_Text = "Host code page"
  1041. Call Get_Prt_5250
  1042. Call Write_Out2
  1043. Mnemonic = "ASCII_PAGE"
  1044. Msg_Text = "PC code page"
  1045. Call Get_Prt_5250
  1046. Call Write_Out2
  1047. Mnemonic = "DBCS_USER_CHAR"
  1048. Msg_Text = "Use user defined characters"
  1049. Call Get_Prt_5250
  1050. If Msg_Val = 1 then Msg_Val = "PS/55"
  1051. If Msg_Val = 2 then Msg_Val = "AS/400"
  1052. Call Write_Out2
  1053. Mnemonic = "SER_PAR"
  1054. Msg_Text = "Serial or Parallel printer"
  1055. Call Get_Prt_5250
  1056. If Msg_Val = 1 then Msg_Val = "Serial"
  1057. If Msg_Val = 2 then Msg_Val = "Parallel"
  1058. Call Write_Out2
  1059. Mnemonic = "SER_PORT"
  1060. Msg_Text = "Communication port"
  1061. Call Get_Prt_5250
  1062. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Msg_Val = "COM" || strip(Msg_Val)
  1063. Call Write_Out2
  1064. Mnemonic = "BPS"
  1065. Msg_Text = "Bits per second"
  1066. Call Get_Prt_5250
  1067. Select
  1068.    When Msg_Val = 1 then Msg_Val = 110
  1069.    When Msg_Val = 2 then Msg_Val = 150
  1070.    When Msg_Val = 3 then Msg_Val = 300
  1071.    When Msg_Val = 4 then Msg_Val = 600
  1072.    When Msg_Val = 5 then Msg_Val = 1200
  1073.    When Msg_Val = 6 then Msg_Val = 2400
  1074.    When Msg_Val = 7 then Msg_Val = 4800
  1075.    When Msg_Val = 8 then Msg_Val = 9600
  1076.    Otherwise nop
  1077. End
  1078. Call Write_Out2
  1079. Mnemonic = "DATA_BITS"
  1080. Msg_Text = "Data bits"
  1081. Call Get_Prt_5250
  1082. Select
  1083.    When Msg_Val = 1 then Msg_Val = 7
  1084.    When Msg_Val = 2 then Msg_Val = 8
  1085.    Otherwise nop
  1086. End
  1087. Call Write_Out2
  1088. Mnemonic = "STOP_BITS"
  1089. Msg_Text = "Stop bits"
  1090. Call Get_Prt_5250
  1091. Call Write_Out2
  1092. Mnemonic = "PARITY"
  1093. Msg_Text = "Parity"
  1094. Call Get_Prt_5250
  1095. Select
  1096.    When Msg_Val = 1 then Msg_Val = "None"
  1097.    When Msg_Val = 2 then Msg_Val = "Odd"
  1098.    When Msg_Val = 3 then Msg_Val = "Even"
  1099.    Otherwise nop
  1100. End
  1101. Call Write_Out2
  1102. Mnemonic = "PAR_PORT"
  1103. Msg_Text = "Parallel printer port"
  1104. Call Get_Prt_5250
  1105. If Msg_Val \= "" & Msg_Val \= "MSG_VAL" then Msg_Val = "LPT" || strip(Msg_Val)
  1106. Call Write_Out2
  1107. Mnemonic = "SUBCON_NUM"
  1108. Msg_Text = "Subconsole session number"
  1109. Call Get_Prt_5250
  1110. If Msg_Val = 1 then Msg_Val = "System console";
  1111. Else do
  1112.    If Datatype(Msg_Val) = "NUM" then Msg_Val = Msg_Val = 1
  1113. End
  1114. Call Write_Out2
  1115. Mnemonic = "SEP_PAGES"
  1116. Msg_Text = "Separator pages"
  1117. Call Get_Prt_5250
  1118. Call Write_Out2
  1119. Mnemonic = "NAME"
  1120. Msg_Text = "Printer name"
  1121. Call Get_Prt_5250
  1122. Call Write_Out2
  1123. Mnemonic = "MSG_QUEUE"
  1124. Msg_Text = "Message queue"
  1125. Call Get_Prt_5250
  1126. Call Write_Out2
  1127. Mnemonic = "MSG_Q_LIB"
  1128. Msg_Text = "Message queue library"
  1129. Call Get_Prt_5250
  1130. Call Write_Out2
  1131. Mnemonic = "ALARM"
  1132. Msg_Text = "Printer alarm"
  1133. Call Get_Prt_5250
  1134. If Msg_Val = 1 then Msg_Val = "Enable"
  1135. If Msg_Val = 2 then Msg_Val = "Disable"
  1136. Call Write_Out2
  1137. Mnemonic = "CHAR_DENS"
  1138. Msg_Text = "Prompt for change character density"
  1139. Call Get_Prt_5250
  1140. If Msg_Val = 1 then Msg_Val = "Yes"
  1141. If Msg_Val = 2 then Msg_Val = "No"
  1142. Call Write_Out2
  1143. Mnemonic = "HAND_EQUIP"
  1144. Msg_Text = "Paper handling equipment"
  1145. Call Get_Prt_5250
  1146. If Msg_Val = 1 then Msg_Val = "Continuous forms"
  1147. If Msg_Val = 2 then Msg_Val = "Cut sheets"
  1148. Call Write_Out2
  1149. Mnemonic = "PAPER_WID"
  1150. Msg_Text = "Paper width"
  1151. Call Get_Prt_5250
  1152. If Msg_Val = 1 then Msg_Val = "8 inches"
  1153. If Msg_Val = 2 then Msg_Val = "13.2 inches"
  1154. Call Write_Out2
  1155. Mnemonic = "CPI"
  1156. Msg_Text = "Characters per inch"
  1157. Call Get_Prt_5250
  1158. If Msg_Val = 1 then Msg_Val = "10"
  1159. If Msg_Val = 2 then Msg_Val = "15"
  1160. Call Write_Out2
  1161. Mnemonic = "LPI"
  1162. Msg_Text = "Lines per inch"
  1163. Call Get_Prt_5250
  1164. If Msg_Val = 1 then Msg_Val = "6"
  1165. If Msg_Val = 2 then Msg_Val = "8"
  1166. Call Write_Out2
  1167. Mnemonic = "NUM_DRAWERS"
  1168. Msg_Text = "Number of sheet drawers"
  1169. Call Get_Prt_5250
  1170. Call Write_Out2
  1171. Mnemonic = "ENV_HOP"
  1172. Msg_Text = "Envelope hopper"
  1173. Call Get_Prt_5250
  1174. If Msg_Val = 1 then Msg_Val = "Yes"
  1175. If Msg_Val = 2 then Msg_Val = "No"
  1176. Call Write_Out2
  1177. Mnemonic = "FONT"
  1178. Msg_Text = "Font"
  1179. Call Get_Prt_5250
  1180. Select
  1181.    When Msg_Val =  1 then Msg_Val = "Courier 10"
  1182.    When Msg_Val =  2 then Msg_Val = "Rhetoric"
  1183.    When Msg_Val =  3 then Msg_Val = "Prestige pica"
  1184.    When Msg_Val =  4 then Msg_Val = "Artisan 10"
  1185.    When Msg_Val =  5 then Msg_Val = "Pica"
  1186.    When Msg_Val =  6 then Msg_Val = "Symbol scribe 12"
  1187.    When Msg_Val =  7 then Msg_Val = "Scribe"
  1188.    When Msg_Val =  8 then Msg_Val = "Courier 12"
  1189.    When Msg_Val =  9 then Msg_Val = "Prestige elite"
  1190.    When Msg_Val = 10 then Msg_Val = "Letter gothic"
  1191.    When Msg_Val = 11 then Msg_Val = "Light italic"
  1192.    When Msg_Val = 12 then Msg_Val = "Modern"
  1193.    When Msg_Val = 13 then Msg_Val = "Boldface"
  1194.    When Msg_Val = 14 then Msg_Val = "Essay"
  1195.    When Msg_Val = 15 then Msg_Val = "Essay italic"
  1196.    When Msg_Val = 16 then Msg_Val = "Prestige 15"
  1197.    When Msg_Val = 17 then Msg_Val = "Gothic 15"
  1198.    When Msg_Val = 18 then Msg_Val = "Courier 15"
  1199.    When Msg_Val = 19 then Msg_Val = "Symbol diplomat scribe"
  1200.    Otherwise Msg_Val = "Unknown" Msg_Val
  1201. End
  1202. Call Write_Out2
  1203. /*******************************************/
  1204. Get_Prt_5250:
  1205. rc = 5250(GET,PRT EQ Session_ID,Msg_Val EQ Mnemonic)
  1206. Return
  1207. /*******************************************/
  1208. LAN_IEEE_8022:
  1209. Mnemonic = "ETHERAND_TYPE"
  1210. Msg_Text = "ETHERAND Type"
  1211. Call Get_LAN_IEEE8022
  1212. Call Write_Out2
  1213. Mnemonic = "NETADDRESS"
  1214. Msg_Text = "Network Address"
  1215. Call Get_LAN_IEEE8022
  1216. Call Write_Out2
  1217. Mnemonic = "LINKS"
  1218. Msg_Text = "Maximum Link Addresses"
  1219. Call Get_LAN_IEEE8022
  1220. Call Write_Out2
  1221. Return
  1222. /*******************************************/
  1223. Get_LAN_IEEE8022:
  1224. rc = LAN(GET,IEEE8022 EQ Session_ID,Msg_Val EQ Mnemonic)
  1225. Return
  1226. /*******************************************/
  1227. LAN_NET_BIOS:
  1228. Mnemonic = "SESSIONS"
  1229. Msg_Text = "Maximum Sessions"
  1230. Call Get_LAN_NETBIOS
  1231. Call Write_Out2
  1232. Mnemonic = "NCBS"
  1233. Msg_Text = "Maximum commands"
  1234. Call Get_LAN_NETBIOS
  1235. Call Write_Out2
  1236. Mnemonic = "NAMES"
  1237. Msg_Text = "Maximum names"
  1238. Call Get_LAN_NETBIOS
  1239. Call Write_Out2
  1240. Mnemonic = "NETBIOSTIMEOUT"
  1241. Msg_Text = "Query timeout"
  1242. Call Get_LAN_NETBIOS
  1243. Call Write_Out2
  1244. Return
  1245. /*******************************************/
  1246. Get_LAN_NETBIOS:
  1247. rc = LAN(GET,NETB EQ Session_ID,Msg_Val EQ Mnemonic)
  1248. Return
  1249. /*******************************************/
  1250. Get_SNA_DLC:
  1251. rc = SNA(GET,SNA_DLC_Type EQ Session_ID,Msg_Val EQ Mnemonic)
  1252. Return
  1253. /*******************************************/
  1254. SRPISERVER:
  1255. Mnemonic = "COMMENT"
  1256. Msg_Text = "Comment"
  1257. Call Get_SRPI
  1258. Call Write_Out2
  1259. Mnemonic = "SERVER_NAME"
  1260. Msg_Text = "Server Name"
  1261. Call Get_SRPI
  1262. Call Write_Out2
  1263. Mnemonic = "SESN_ID"
  1264. Msg_Text = "3270 Session ID"
  1265. Call Get_SRPI
  1266. Call Write_Out2
  1267. Return
  1268. /*******************************************/
  1269. Get_SRPI:
  1270. rc = SRPI(GET,SERVER EQ Session_ID,Msg_Val EQ Mnemonic)
  1271. Return
  1272. /*******************************************/
  1273. LUA_LUA:
  1274. Mnemonic = "COMMENT"
  1275. Msg_Text = "Comment"
  1276. Call Get_LUA_LUA
  1277. Call Write_Out2
  1278. Mnemonic = "NAU"
  1279. Msg_Text = "Local address (NAU)"
  1280. Call Get_LUA_LUA
  1281. Call Write_Out2
  1282. Mnemonic = "DLC_TYPE"
  1283. Msg_Text = "Data Link Control type"
  1284. Call Get_LUA_LUA
  1285. Select
  1286.    When Msg_Val = 1 then Msg_Val = "SDLC"
  1287.    When Msg_Val = 2 then Msg_Val = "IBM Token Ring"
  1288.    When Msg_Val = 3 then Msg_Val = "X.25"
  1289.    When Msg_Val = 4 then Msg_Val = "IBM PC Network"
  1290.    When Msg_Val = 5 then Msg_Val = "ETHERAND Network"
  1291.    Otherwise Msg_Val = "Unknown"
  1292. End
  1293. Call Write_Out2
  1294. Mnemonic = "ADAPTER"
  1295. Msg_Text = "Adapter number"
  1296. Call Get_LUA_LUA
  1297. Call Write_Out2
  1298. Mnemonic = "X25_DIR"
  1299. Msg_Text = "Directory entry name"
  1300. Call Get_LUA_LUA
  1301. Call Write_Out2
  1302. Mnemonic = "DEST_ADDR"
  1303. Msg_Text = "Destination address"
  1304. Call Get_LUA_LUA
  1305. Call Write_Out2
  1306. Return
  1307. /*******************************************/
  1308. Get_LUA_LUA:
  1309. rc = LUA(GET,LUA EQ Session_ID,Msg_Val EQ Mnemonic)
  1310. Return
  1311. /*******************************************/
  1312. Write_Out:
  1313. If Disp_Report then do
  1314.    Say Msg
  1315.    Y = Lineout(Report_File,Msg)
  1316. End
  1317. Return
  1318. /*******************************************/
  1319. Write_Out2:
  1320. If Disp_Report then do
  1321.    Say Right(Msg_Text,42) || ":" strip(Msg_Val)
  1322.    Y = Lineout(Report_File,Right(Msg_Text,42) || ":" strip(Msg_Val))
  1323. End
  1324. Else do
  1325.    Dot = charout(".")
  1326. End
  1327. Drop Msg_Val
  1328. Return
  1329.