!*! Updated on 11-Jan-1996 at 7:08 AM by James A. Jarboe I V; edit time: 0:19:09
!
! Test progam for the BUSY XCALL.
!
!****************************************************************************
!*                                                                          *
!*             XCALL BUSY - Interface to ESP's busy indicator               *
!*                                                                          *
!****************************************************************************
! Calling format:
!
!       XCALL BUSY, OPTION, MODE, {COUNT}
!
!  where:
!
!       OPTION: BZY'TX = flashing "BUSY".
!               BZY'PC = Percentage of completion.
!               BZY'NM = Complete-of-total.
!       MODE:   BZY'OFF= Init/reset indicator (PC and NM only).
!               BZY'TGL= "Tickle" the indicator.
!       COUNT:  Used with BZY'OFF. 0 = reset, >0 = init.
!
++INCLUDE SYSSTD.BSI
!
MAP1 A, F

       XCALL INITRM,"Busy Test",""

! Show Busy Total Count.
!
       X$ = "Busy Complete/Total Test"
       CALL PAUSE
       CALL BUSY'COUNT

! Show Busy Percentage Count.
!
       X$ = "Busy Percentage Test"
       CALL PAUSE
       CALL BUSY'PERC

! Show Busy Text Flash.
!
       X$ = "Busy Text Flash"
       CALL PAUSE
       CALL BUSY'FLASH

! Finished.
!
       X$ = "End of Busy Sample"
       CALL PAUSE
       GOTO ERR'ROUTINE


!*************
! BUSY'COUNT *
!*************
!
BUSY'COUNT:

! Initialize Busy Flash
!
       XCALL BUSY, BZY'OFF, BZY'NM, 100

! Busy Loop
!
       FOR X=1 TO 100

! Process loop
!
       FOR A = 1 TO 5000 : NEXT A
       XCALL BUSY, BZY'TGL, BZY'NM
       NEXT X

       X$="Busy Total/Count Finished"
       CALL PAUSE

! Turn Last Busy off
!
       XCALL BUSY, BZY'OFF, BZY'NM, 0

       RETURN


!*************
! BUSY'PERC  *
!*************
!
BUSY'PERC:

! Initialize Busy Percentage
!
       XCALL BUSY, BZY'OFF, BZY'PC, 100

! Busy Loop
!
       FOR X=1 TO 100

! Process Loop
!
       FOR A = 1 TO 5000 : NEXT A
       XCALL BUSY, BZY'TGL, BZY'PC
       NEXT X

       X$="Busy Percentage Finished"
       CALL PAUSE

! Turn Last Busy off
!
       XCALL BUSY, BZY'OFF, BZY'PC, 0

       RETURN


!*************
! BUSY'FLASH *
!*************
!
BUSY'FLASH:

! Initialize Busy Flash
!
       XCALL BUSY, BZY'OFF, BZY'TX, 0

! Busy Loop
!
       FOR X=1 TO 100

! Process loop.
!
       FOR A = 1 TO 2500 : NEXT A
       XCALL BUSY, BZY'TGL, BZY'TX
       NEXT X

       X$="Busy Flash Finished"
       CALL PAUSE

! Turn Last Busy off
!
       XCALL BUSY, BZY'OFF, BZY'TX, 0

       RETURN

!************
! PAUSE     *
!************
! Pause for user input to introduce next action.
!
PAUSE:
       XCALL ERRDSP, X$
       RETURN

!**************
! ERR'ROUTINE *
!**************
! Exit
!
ERR'ROUTINE:
       XCALL INITRM
       END