52 SUBROUTINE pad(IBAY,IBIT,IBYT,IPADB)
56 CHARACTER*128 BORT_STR
65 ipad = ipadb - mod(ibit+8,ipadb)
68 CALL pkb(ipad,8,ibay,ibit)
70 CALL pkb(0,ipad,ibay,ibit)
73 IF(mod(ibit,ipadb).NE.0)
GOTO 900
74 IF(mod(ibit,8 ).NE.0)
GOTO 901
80900
WRITE(bort_str,
'("BUFRLIB: PAD - THE INPUT BIT BOUNDARY TO PAD '//
81 .
'TO (",I8,") IS NOT A MULTIPLE OF 8")') ipadb
83901
WRITE(bort_str,
'("BUFRLIB: PAD - THE NUMBER OF BITS IN A PACKED'//
84 .
' SUBSET AFTER PADDING (",I8,") IS NOT A MULTIPLE OF 8")') ibit
subroutine bort(STR)
This subroutine calls subroutine errwrt() to log an error message, then calls subroutine bort_exit() ...
subroutine pad(IBAY, IBIT, IBYT, IPADB)
THIS SUBROUTINE FIRST PACKS THE VALUE FOR THE NUMBER OF BITS BEING "PADDED" (WE'LL GET TO THAT LATER)...
subroutine pkb(NVAL, NBITS, IBAY, IBIT)
This subroutine encodes an integer value within a specified number of bits of an integer array,...