!*** MODULE $UIDDEF *** !DEC$ OPTIONS/ALIGN=(RECORDS=PACKED,COMMONS=PACKED)/NOWARN PARAMETER UID$K_ArchVersion = '00000001'X ! Current architecture version PARAMETER UID$K_Apollo1 = '00000000'X ! UID format types PARAMETER UID$K_Apollo2 = '00000001'X PARAMETER UID$K_Digital = '00000002'X PARAMETER UID$K_Microsoft = '00000003'X PARAMETER UID$K_LENGTH = '00000010'X ! Total structure length STRUCTURE /UIDDEF/ UNION MAP INTEGER*4 UID$q_timeAndVersion(2) ! Time and version END MAP MAP INTEGER*4 UID$l_timeLow ! Low order 32 bits of time INTEGER*2 UID$w_timeMid ! Middle order 16 bits of time UNION MAP INTEGER*2 UID$w_timeHiAndVersion ! High order 12 bits of time and END MAP MAP ! 4 bits of version PARAMETER UID$S_timeHi = 12 PARAMETER UID$V_timeHi = 0 ! High order 12 bits of time PARAMETER UID$S_Version = 4 PARAMETER UID$V_Version = 12 BYTE %FILL (2) ! 4 bits of version END MAP END UNION END MAP END UNION UNION MAP INTEGER*2 UID$w_clockSeqAndReserved ! Clock sequence and reserved END MAP MAP UNION MAP BYTE UID$b_clockSeqHiAndReserved ! High order 6 bits of clock sequence END MAP MAP ! and 2 reserved bits PARAMETER UID$S_clockSeqHi = 6 PARAMETER UID$V_clockSeqHi = 0 ! High order 6 bits of clock sequence PARAMETER UID$S_Reserved = 2 PARAMETER UID$V_Reserved = 6 BYTE %FILL (1) ! 2 bits of reserved END MAP END UNION BYTE UID$b_clockSeqLow ! Low order 8 bits of clock sequence END MAP END UNION UNION MAP BYTE UID$b_node(1:6) END MAP MAP INTEGER*2 UID$w_nodeHi ! High order 16 bits of node number INTEGER*4 UID$l_nodeLow ! Low order 32 bits of node number END MAP END UNION END STRUCTURE ! UIDDEF !DEC$ END OPTIONS