d .TITLE QUOTA .IDENT /V01.01 (01-84)/ , $FIBDEF  $DQFDEF  .PSECT $LOCAL,PIC,USR,CON,REL,LCL,NOSHR,NOEXE,RD,WRT,LONG XDFIB: .LONG 48  .ADDRESS FIB FIB: .BLKL 12 CHAN: .BLKW 1 DBUF: .LONG 32 L .ADDRESS BUF BUF: .BLKL 8 DSND: .LONG 32 x .ADDRESS SND SND: .BLKL 8 @IOSB: .BLKQ 1 LONG: .BLKL 1  .PSECT $CODE,PIC,USR,CON,REL,LCL,SHR,EXE,RD,NOWRT,LONG l .ENTRY ADD_QUOTA,^M<>  MOVW #FIB$C_ADD_QUOTA,FIB+FIB$W_CNTRLFUNC 4 CLRL FIB+FIB$L_CNTRLVAL  MOVL @12(AP),SND+DQF$L_PERMQUOTA  MOVL @16(AP),SND+DQF$L_OVERDRAFT ` BRB SUITE .ENTRY REM_QUOTA,^M<> ( MOVW #FIB$C_REM_QUOTA,FIB+FIB$W_CNTRLFUNC CLRL FIB+FIB$L_CNTRLVAL BRB SUITE T .ENTRY MOD_QUOTA,^M<> MOVW #FIB$C_MOD_QUOTA,FIB+FIB$W_CNTRLFUNC  BISL2 #FIB$M_MOD_PERM!FIB$M_MOD_OVER,FIB+FIB$L_CNTRLVAL MOVL @12(AP),SND+DQF$L_PERMQUOTA MOVL @16(AP),SND+DQF$L_OVERDRAFT H BRB SUITE .ENTRY EXA_QUOTA,^M<>  MOVW #FIB$C_EXA_QUOTA,FIB+FIB$W_CNTRLFUNC t CLRL FIB+FIB$L_CNTRLVAL ; INITIALISATION DU FIB <SUITE: CLRL FIB  CLRL FIB+FIB$W_FID  CLRW FIB+FIB$W_FID+4 h CLRL FIB+FIB$W_DID  CLRW FIB+FIB$W_DID+4 0 CLRL FIB+FIB$L_WCC  CLRW FIB+FIB$W_NMCTL  CLRL FIB+FIB$L_EXVBN \ CLRQ FIB+FIB$B_ALOPTS  CLRQ FIB+FIB$B_ALOPTS+8 $; INITIALISATION DU BLOC DE CONTROLE  CLRL SND  MOVL @8(AP),SND+DQF$L_UIC P $QIOW_S CHAN=4(AP),FUNC=#IO$_ACPCONTROL,IOSB=IOSB,P1=DFIB,-  P2=#DSND,P4=#DBUF  BLBS R0,10$ | RET ; TEST DU STATUS D10$: MOVL IOSB,R0  BLBS R0,20$  RET p; TRAITEMENT FINAL (SUIVANT LA FONCTION DEMANDEE) 20$: MOVW FIB+FIB$W_CNTRLFUNC,R1 8 CMPW R1,#FIB$C_ADD_QUOTA  BNEQ 30$  RET d30$: MOVL BUF+DQF$L_USAGE,@20(AP)  MOVL BUF+DQF$L_PERMQUOTA,@12(AP) , MOVL BUF+DQF$L_OVERDRAFT,@16(AP)  RET  .END