.macro _odsmdef, global $defini odsm, global $equ odsm_s_device 64 $equ odsm_t_device 0 $equ odsm_k_keylength 64 $equ odsm_s_volnam 12 $equ odsm_t_volnam 64 $equ odsm_b_minimum 76 $equ odsm_b_maximum 77 $equ odsm_s_host 8 $equ odsm_t_host 78 $equ odsm_l_spare1 86 $equ odsm_l_spare2 90 $equ odsm_l_spare3 94 $equ odsm_k_length 98 $equ odsm_s_odsmdef 98 $defend odsm, global def .endm _odsmdef .macro display_error status=r0, ?next blbs status, next movl status, odsm_msgsts $putmsg_s msgvec=odsm_msgvec movl odsm_msgsts, status next: .endm display_error .macro signal_error status=r0, ?next blbs status, next pushl status calls #1, g^lib$stop next: .endm signal_error .macro brdcst message, where=console, ?ok pushaq message pushaq odsm_version calls #2, g^send_operator blbs r0, ok pushaq where pushaq message pushaq odsm_version calls #3, g^sys_broadcast ok: .endm brdcst .macro s_brdcst message, where=console pushaq where pushaq message pushaq odsm_version calls #3, g^sys_broadcast .endm s_brdcst