ASMB,L,C,R
      HED DBWRT IMAGE/1000 UTILITY SUBROUTINE 
      NAM DBWRT,7 92069-16161 REV.1912 790130 
* 
* 
******************************************************************* 
* (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1979. ALL RIGHTS RESERVED.
* NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, REPRODUCED, OR
* TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITHOUT THE PRIOR WRITTEN
* CONSENT OF HEWLETT-PACKARD COMPANY. 
******************************************************************* 
* 
* 
*     SOURCE:    92069-18161
*     RELOC:     92069-16161
* 
*     PRGMR:     CEJ
* 
* 
******************************************************************* 
* 
* 
* 
*  WRiTe entry performs an FMP EWRIT and POST on the record of the data 
*  set in the data base specified by the three input parameters from the
*  record in the record buffer. 
* 
*  The calling sequence for DBWRT is: 
* 
*            JSB DBWRT
*             DEF *+4       return point
*             DEF BASE      data base # (1st word of ibase parameter) 
*             DEF SET       data set number 
*             DEF RECRD     doubleword record number
* 
      EXT .ENTR,DBFCB,DBRBP,POST,EWRIT
      ENT DBWRT 
A     EQU 0 
B     EQU 1 
* 
BASE  NOP 
SET   NOP 
RECRD NOP 
* 
*  Get true addresses of parameters and return point. 
* 
DBWRT NOP 
      JSB .ENTR 
       DEF BASE 
* 
*  Call DBFCB to set up DCB for FMP calls.
* 
      JSB DBFCB 
       DEF *+4
       DEF BASE,I 
       DEF SET,I
       DEF DCBAD
* 
*  If DBFCB ran into an error, just return. 
* 
      SZA 
      JMP WRT1
* 
*  Perform FMP EWRIT call on returned DCB with given doubleword record
*  number from record buffer. 
* 
      JSB EWRIT 
       DEF *+6
       DEF DCBAD,I
       DEF ERROR
       DEF DBRBP,I
       DEF D0       Length of zero writes one record. 
       DEF RECRD,I
* 
      SSA           If any error return immediately.
      JMP WRT1
* 
      JSB POST      Else, post record to disc.
       DEF *+2
       DEF DCBAD,I
* 
      SSA,RSS 
      CLA 
WRT1  JMP DBWRT,I   Return point. 
* 
*  Constants and variables
* 
D0    DEC 0 
DCBAD NOP 
ERROR NOP 
      END 
                                                                                                