.title mda ; Use this little routine to figure out the ucb$l_media_id fields for ; serveable devices. Couple examples given at end. ; .MACRO MEDIA dd, devnam, dtname .SAVE .PSECT $$$220_DEVTYPE_TABLE_01 RD,WRT,EXE,BYTE $$BEGIN$$=-1 $$MEDIA$$=0 $$S$$=27 .IRPC $$L$$,
$$TEMP$$ = ^a/$$L$$/ - ^x40 .IF GT $$TEMP$$ $$MEDIA$$ = $$MEDIA$$ + <$$TEMP$$ @ $$S$$> .ENDC $$S$$ = $$S$$ - 5 .ENDR .IRPC $$L$$, .IF GE <$$S$$ - 7> $$TEMP$$ = ^a/$$L$$/ - ^x40 .IF GT $$TEMP$$ $$MEDIA$$ = $$MEDIA$$ + <$$TEMP$$ @ $$S$$> .IF_FALSE .IIF LT $$BEGIN$$, $$BEGIN$$ = <17-$$S$$>/5 .ENDC $$S$$ = $$S$$ - 5 .ENDC .ENDR .IIF LT $$BEGIN$$, $$BEGIN$$ = 3 $$N$$ = %extract( $$BEGIN$$, 3, devnam ) $$MEDIA$$ = $$MEDIA$$ + $$N$$ .NOSHOW CND .SHOW ME .LONG $$MEDIA$$ ; Store media-id .IF BLANK dtname .BYTE DT$_'devnam' ; Store VMS device type .IF_FALSE ; -- OR -- .BYTE dtname ; Store explicit VMS type .ENDC .NOSHOW ME ; Filler to make listing look .SHOW CND ; good .SHOW ME .NOSHOW ME .RESTORE .ENDM .list meb media FD,FDA0,RP06 media MP,MPA0,TS11 .end