LIB$EXTV        - extract a signed extended variable bit field   21-AUG-1978 18:57:25   VAX-11 MACRO X0.3-11               Page   0

TABLE OF CONTENTS   



   (2)      87  DECLARATIONS

   (3)     110  LIB$EXTV  - extract and sign extend a field 

LIB$EXTV        - extract a signed extended variable bit field   21-AUG-1978 18:57:25   VAX-11 MACRO X0.3-11               Page   1

00-01                                                                                                                            (1)



                                     0000     1 	.TITLE	LIB$EXTV - extract a signed extended variable bit field 

                                     0000     2 	.IDENT	/00-01/			; File: LIBEXTV.MAR

                                     0000     3 

                                     0000     4 ;

                                     0000     5 ;			  COPYRIGHT (c) 1977 BY

                                     0000     6 ;	      DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.

                                     0000     7 ;

                                     0000     8 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND  COPIED

                                     0000     9 ; ONLY  IN  ACCORDANCE  WITH  THE  TERMS  OF  SUCH  LICENSE AND WITH THE

                                     0000    10 ; INCLUSION OF THE ABOVE COPYRIGHT NOTICE.  THIS SOFTWARE OR  ANY  OTHER

                                     0000    11 ; COPIES  THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY

                                     0000    12 ; OTHER PERSON.  NO TITLE TO AND OWNERSHIP OF  THE  SOFTWARE  IS  HEREBY

                                     0000    13 ; TRANSFERRED.

                                     0000    14 ;

                                     0000    15 ; THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE  WITHOUT  NOTICE

                                     0000    16 ; AND  SHOULD  NOT  BE  CONSTRUED  AS  A COMMITMENT BY DIGITAL EQUIPMENT

                                     0000    17 ; CORPORATION.

                                     0000    18 ;

                                     0000    19 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR  RELIABILITY  OF  ITS

                                     0000    20 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.

                                     0000    21 ;

                                     0000    22 

                                     0000    23 ;++

                                     0000    24 ; FACILITY: General Utility Library

                                     0000    25 ;

                                     0000    26 ; ABSTRACT:

                                     0000    27 ;

                                     0000    28 ;	Return a longword field which has been extracted from the specified

                                     0000    29 ;	variable bit field.

                                     0000    30 ;

                                     0000    31 ; ENVIRONMENT: User Mode, AST Reentrant

                                     0000    32 ;

                                     0000    33 ;--

                                     0000    34 ; AUTHOR: Donald G. Petersen, CREATION DATE: 30-Dec-77

                                     0000    35 ;

                                     0000    36 ; MODIFIED BY:

                                     0000    37 ;

                                     0000    38 ;	Donald G. Petersen, : VERSION 00

                                     0000    39 ; 01	- Original 

LIB$EXTV        - extract a signed extended variable bit field   21-AUG-1978 18:57:25   VAX-11 MACRO X0.3-11               Page   2

00-01           DECLARATIONS                                                                                                     (2)



                                     0000    41 	.SBTTL	DECLARATIONS

                                     0000    42 ;

                                     0000    43 ; INCLUDE FILES:

                                     0000    44 ;

                                     0000    45 

                                     0000    46 ;

                                     0000    47 ; MACROS:

                                     0000    48 ;

                                     0000    49 

                                     0000    50 ;

                                     0000    51 ; EQUATED SYMBOLS:

                                     0000    52 ;

                                     0000    53 

                                     0000    54 ;

                                     0000    55 ; OWN STORAGE:

                                     0000    56 ;

                                     0000    57 

                                     0000    58 ;

                                     0000    59 ; PSECT DECLARATIONS:

                                     0000    60 ;

                                 00000000    61 	.PSECT LIB$CODE PIC, SHR, LONG, EXE, NOWRT

                                     0000    62 

LIB$EXTV        - extract a signed extended variable bit field   21-AUG-1978 18:57:25   VAX-11 MACRO X0.3-11               Page   3

00-01           LIB$EXTV  - extract and sign extend a field                                                                      (3)



                                     0000    64 	.SBTTL	LIB$EXTV  - extract and sign extend a field 

                                     0000    65 ;++

                                     0000    66 ; FUNCTIONAL DESCRIPTION:

                                     0000    67 ;

                                     0000    68 ;	Return a signed extended longword field which has been extracted from the

                                     0000    69 ;	specified variable bit field.  If a size of zero is specified, then a zero

                                     0000    70 ;	is returned.  Specifying a size greater than 31 results in a reserved

                                     0000    71 ;	operand fault.

                                     0000    72 ;

                                     0000    73 ; CALLING SEQUENCE:

                                     0000    74 ;

                                     0000    75 ;	field.wlu.v = LIB$EXTV (pos.rl.r, size.rbu.r, base.rv.r)

                                     0000    76 ;

                           00000004  0000    77 	POSITION = 4			; Adr. of longword containing position

                           00000008  0000    78 	SIZE = 8			; Adr. of byte containing size of field

                           0000000C  0000    79 	BASE = 12			; Adr. of base of field

                                     0000    80 

                                     0000    81 

                                     0000    82 ; INPUT PARAMETERS:

                                     0000    83 ;

                                     0000    84 ;	NONE

                                     0000    85 ;

                                     0000    86 ; IMPLICIT INPUTS:

                                     0000    87 ;

                                     0000    88 ;	NONE

                                     0000    89 ;

                                     0000    90 ; OUTPUT PARAMETERS:

                                     0000    91 ;

                                     0000    92 ;	NONE

                                     0000    93 ;

                                     0000    94 ; IMPLICIT OUTPUTS:

                                     0000    95 ;

                                     0000    96 ;	NONE

                                     0000    97 ;

                                     0000    98 ; FUNCTION VALUE:

                                     0000    99 ;

                                     0000   100 ;	field

                                     0000   101 ;

                                     0000   102 ; SIDE EFFECTS:

                                     0000   103 ;

                                     0000   104 ;	SS$ROPRAND - reserved operand fault for size greater than 31

                                     0000   105 ;

                                     0000   106 ;--

                                     0000   107 

                                     0000   108 

                               0000' 0000   109 	.ENTRY LIB$EXTV, ^M<>		;Entry point

                                     0002   110 

         08 BC         04 BC     EE  0002   111 	EXTV	@POSITION(AP), @SIZE(AP), -

            50         0C BC         0007       

                                     000A   112 		@BASE(AP), R0			; extract 

                                 04  000A   113 	RET

                                     000B   114 	.END

LIB$EXTV        - extract a signed extended variable bit field   21-AUG-1978 18:57:25   VAX-11 MACRO X0.3-11               Page   4

SYMBOL TABLE                                                                                                                     (3)



BASE           = 0000000C            

FOR$K_ERR_PREFX= 00000018            

LIB$EXTV         00000000 RG    02   

MTH$K_ERR_PREFX= 00000016            

MTH__FLOOVEMAT = 00000058            

MTH__FLOUNDMAT = 00000059            

MTH__INVARG    = 00000051            

MTH__LOGZERNEG = 00000053            

MTH__SINSIGLOS = 00000057            

MTH__SQUROONEG = 00000054            

MTH__UNDEXP    = 00000052            

MTH__WRONUMARG = 00000050            

POSITION       = 00000004            

SIZE           = 00000008            





PROGRAM SECTION SYNOPSIS



.  ABS  .        00000000      00     NOPIC   USR   CON   ABS   LCL NOSHR NOEXE NORD  NOWRT BYTE  

. BLANK .        00000000      01     NOPIC   USR   CON   REL   LCL NOSHR   EXE   RD    WRT BYTE  

LIB$CODE         0000000B      02       PIC   USR   CON   REL   LCL   SHR   EXE   RD  NOWRT LONG  





THERE WERE NO ERRORS OR WARNINGS.

28018. BYTES LEFT IN FREE MEMORY POOL.

OBJ$:LIBEXTV,LIS$:LIBEXTV/-SP=LIB$:S/ML,SRC$:P,LIBEXTV

0 MLB DIR RDS - 0 GETS TO DEFINE 0 MACROS. 1 INTER. FILE WRITES. 

