home *** CD-ROM | disk | FTP | other *** search
/ The C Users' Group Library 1994 August / wc-cdrom-cusersgrouplibrary-1994-08.iso / vol_300 / 349_01 / sss.arc / EX_0601.FOR < prev    next >
Text File  |  1991-04-10  |  2KB  |  72 lines

  1. C     Program EX_0601.FOR
  2. C     Listing 12F - see documentation in TUTOR.SSS
  3.  
  4. $include:'SSSF1.H'
  5.  
  6.       subroutine prime
  7. $include:'SSSF2.H'
  8.       call INIQUE(1, 3, 1)
  9.       call SIMEND(24.0)
  10.       call CREATE(0.0, 0)
  11.       call inista(1,'Cost                 ',0, 0, 0, 0)
  12.       call SETQDC(1, 'SVF     ')
  13.       return
  14.       end
  15.  
  16.       Program EX_0601
  17. $include:'SSSF2.H'
  18.       integer ARRIVL, STARTA, ENDACT, NEXTAC,
  19.      +  id, server, ecode
  20.       data  ARRIVL/1/, STARTA/2/, ENDACT/3/, NEXTAC/4/
  21.       data  id/0/, server/1/
  22.  
  23.       call prime
  24.  
  25.    99 ecode = NEXTEV()
  26.       if (ecode.gt.0) then
  27.         goto (101, 102, 103, 104) ecode
  28.  
  29. C ARRIVL
  30.   101   continue
  31.         id = id + 1
  32.         call CREATE(EX(1.0), id)
  33.         call SETA(1, T())
  34.         call SETA(2, 1 + EX(2.0))
  35.         call SETA(3, RN(.66667, .16667))
  36.         call SCHED(0.0, NEXTAC, IDE())
  37.         goto 99
  38.  
  39. C NEXTAC
  40.   104   continue
  41.         if (server.gt.0) then
  42.           call SCHED(0.0, STARTA, IDE())
  43.         else
  44.           call QUEUE(1, A(3)/A(2))
  45.         endif
  46.         goto 99
  47.  
  48. C STARTA
  49.   102   continue
  50.         call SCHED(A(3), ENDACT, IDE())
  51.         server = server - 1
  52.         goto 99
  53.  
  54. C ENDACT
  55.   103   continue
  56.         call TALLY(1, (T() - A(1))*A(2))
  57.         call DISPOS
  58.         server = server + 1
  59.         if (NQ(1).gt.0) then
  60.           call REMVFQ(1, 1)
  61.           call SCHED(0.0, STARTA, IDE())
  62.         endif
  63.         goto 99
  64.  
  65.       else
  66.  
  67.         call SUMRY(' ')
  68.         stop 'End of simulation'
  69.  
  70.       endif
  71.       end
  72.