/LUKUP.SB / / LOOKUP DEVICE INFO / / LUK = LUKUP(DEVN,IFS,IRO,IWO,ITYPE) / / DEVN: 2A2 FORMAT DEVICE NAME (INPUT) / IFS: RETURNS A '1' IF DEVICE IS FILE STRUCTURED. / IRO: RETURNS A '1' IF DEVICE IS READ-ONLY. / IWO: RETURNS A '1' IF DEVICE IS WRITE-ONLY. / ITYPE: RETURNS DEVICE TYPE (0-63) / (DESCRIBED IN OS/8 SOFT. SUPPORT MANUAL) / FUNCTION RETURNS A -1 IF DEVICE DOES NOT EXIST / RETURNS 0 IF DEVICE EXISTS / /------------------------------------------------------------ OPDEF TADI 1400 OPDEF DCAI 3400 OPDEF JMPI 5400 OPDEF CDF10 6211 OPDEF CIF10 6212 ENTRY LUKUP LUKUP, 0 L, 0 TAD LUKUP DCA F1 F1, HLT TADI L;INC L DCA GF STA TADI L;INC L DCA 10 GF, HLT TADI 10 JMS AMPS DCA DEV TADI 10 JMS AMPS DCA DEV# TAD F1 DCA PUTF CIF10 DUMZZ, JMS I (7700 12 /INQUIRE DEV, 0 DVN, 0 ENTR, 0 STA /IF ERROR DCA GF TAD DVN TAD C7757 DCA DVN CDF10 TADI DVN /GET DEVICE WORD DCA DVN TAD DVN RTL AND (1 JMS PUT TAD DVN RTL RAL AND (1 JMS PUT TAD DVN RTL RTL AND (1 JMS PUT TAD DVN RTR RAR AND (77 JMS PUT TAD GF /ERROR CODE RETRN LUKUP C7757, 7757 PUT, 0 DCA PT PUTF, HLT /CALLING FIELD TADI L;INC L DCA PTF /PARAM FIELD TADI L;INC L DCA PTA TAD PT PTF, HLT /PARAM FIELD DCAI PTA /PUT PARAM JMP I PUT PT, 0 PTA, 0 AMPS, 0 /ZERO FILL NAME DCA PT TAD PT AND (77 TAD (-40 SZA TAD (40 DCA PTA TAD PT AND (7700 CLL RAL SZA RAR TAD PTA JMPI AMPS /RETURN ZERO FILLED WORD END