New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 9434 – NEMO

Changeset 9434


Ignore:
Timestamp:
2018-03-27T10:32:34+02:00 (6 years ago)
Author:
andmirek
Message:

#2067 add atribute for file opening

Location:
branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC
Files:
20 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/DIA/diadct.F90

    r6486 r9434  
    177177     !open output file 
    178178     IF( lwm ) THEN 
    179         CALL ctl_opn( numdct_vol,  'volume_transport', 'NEW', 'FORMATTED', 'SEQUENTIAL', -1, numout,  .FALSE. ) 
    180         CALL ctl_opn( numdct_heat, 'heat_transport'  , 'NEW', 'FORMATTED', 'SEQUENTIAL', -1, numout,  .FALSE. ) 
    181         CALL ctl_opn( numdct_salt, 'salt_transport'  , 'NEW', 'FORMATTED', 'SEQUENTIAL', -1, numout,  .FALSE. ) 
     179        CALL ctl_opn( numdct_vol,  'volume_transport', 'NEW', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, numout,  .FALSE. ) 
     180        CALL ctl_opn( numdct_heat, 'heat_transport'  , 'NEW', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, numout,  .FALSE. ) 
     181        CALL ctl_opn( numdct_salt, 'salt_transport'  , 'NEW', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, numout,  .FALSE. ) 
    182182     ENDIF 
    183183 
     
    336336     !open input file 
    337337     !--------------- 
    338      CALL ctl_opn( numdct_in, 'section_ijglobal.diadct', 'OLD', 'UNFORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 
     338     CALL ctl_opn( numdct_in, 'section_ijglobal.diadct', 'OLD', 'UNFORMATTED', 'SEQUENTIAL', 'READ', -1, numout, .FALSE. ) 
    339339  
    340340     !--------------- 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/DIA/diadimg.F90

    r8280 r9434  
    133133     irecl4 = MAX(jpi*jpj*sp , 84+(18+jpk)*sp + 8*jpnij*sp  ) 
    134134       WRITE(clname,'(a,a,i3.3)') TRIM(cd_name),'.',narea 
    135        CALL ctl_opn(inum, clname,'UNKNOWN','UNFORMATTED','DIRECT',irecl4,numout,lwp) 
     135       CALL ctl_opn(inum, clname,'UNKNOWN','UNFORMATTED','DIRECT', 'WRITE', irecl4,numout,lwp) 
    136136       WRITE(inum,REC=1 ) clver, cd_text, irecl4, & 
    137137            &     jpi,jpj, klev, 1 , 1 ,            & 
     
    168168       !! Standard dimgproc (1 file per variable, all procs. write to this file ) 
    169169       !! * Open file 
    170        CALL ctl_opn(inum, cd_name,'UNKNOWN','UNFORMATTED','DIRECT',irecl4,numout,lwp) 
     170       CALL ctl_opn(inum, cd_name,'UNKNOWN','UNFORMATTED','DIRECT', 'WRITE', irecl4,numout,lwp) 
    171171 
    172172       !! * Write header on record #1 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/DIA/diafwb.F90

    r6486 r9434  
    401401      IF ( kt == nitend .AND. cp_cfg == "orca" .AND. lwp ) THEN 
    402402 
    403          CALL ctl_opn( inum, 'STRAIT.dat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 
     403         CALL ctl_opn( inum, 'STRAIT.dat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, numout, lwp, narea ) 
    404404         WRITE(inum,*) 
    405405         WRITE(inum,*)    'Net freshwater budget ' 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/DIA/diawri.F90

    r8400 r9434  
    530530         IF(lwp) THEN 
    531531            CALL dia_nam( clhstnam, nwrite,' ' ) 
    532             CALL ctl_opn( inum, 'date.file', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 
     532            CALL ctl_opn( inum, 'date.file', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, numout, lwp, narea ) 
    533533            WRITE(inum,*) clhstnam 
    534534            CLOSE(inum) 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/FLO/flodom.F90

    r6486 r9434  
    7575         ! open the restart file  
    7676         !---------------------- 
    77          CALL ctl_opn( inum, 'restart_float', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 
     77         CALL ctl_opn( inum, 'restart_float', 'OLD', 'FORMATTED', 'SEQUENTIAL', 'READ', -1, numout, lwp ) 
    7878 
    7979         ! read of the restart file 
     
    145145      ! we get the init values  
    146146      !----------------------- 
    147       CALL ctl_opn( inum , clname1, 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 
     147      CALL ctl_opn( inum , clname1, 'OLD', 'FORMATTED', 'SEQUENTIAL', 'READ', -1, numout, lwp ) 
    148148      DO jfl = kfl_start,kfl_end 
    149149         READ(inum,*) flxx(jfl),flyy(jfl),flzz(jfl), nisobfl(jfl),ngrpfl(jfl),itrash 
     
    322322         jfl1=0 
    323323         ierr=0 
    324          CALL ctl_opn( inum, clname2, 'OLD', 'FORMATTED', 'SEQUENTIAL', 1, numout, .TRUE., 1 ) 
     324         CALL ctl_opn( inum, clname2, 'OLD', 'FORMATTED', 'SEQUENTIAL', 'READ', 1, numout, .TRUE., 1 ) 
    325325         DO WHILE (ierr .EQ. 0) 
    326326            jfl1=jfl1+1 
     
    337337             
    338338      ! we get the init values  
    339       CALL ctl_opn( inum, clname2, 'OLD', 'FORMATTED', 'SEQUENTIAL', 1, numout, .TRUE., 1 ) 
     339      CALL ctl_opn( inum, clname2, 'OLD', 'FORMATTED', 'SEQUENTIAL', 'READ', 1, numout, .TRUE., 1 ) 
    340340      DO jfl = kfl_start, kfl_end 
    341341          READ(inum,*) tpifl(jfl),tpjfl(jfl),tpkfl(jfl),itrash, itrash 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/FLO/florst.F90

    r6486 r9434  
    9696         inum=0 
    9797         IF( lwp )THEN 
    98             CALL ctl_opn( inum, clname, 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 
     98            CALL ctl_opn( inum, clname, 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, numout, .FALSE. ) 
    9999            REWIND inum 
    100100         ENDIF 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/FLO/flowri.F90

    r6486 r9434  
    189189            !---------------------- 
    190190            IF( kt == nn_it000 ) THEN 
    191                CALL ctl_opn( numflo, 'trajec_float', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 
     191               CALL ctl_opn( numflo, 'trajec_float', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, numout, .FALSE. ) 
    192192               irecflo = NINT( (nitend-nn_it000) / FLOAT(nn_writefl) ) 
    193193               WRITE(numflo,*)cexper,no,irecflo,jpnfl,nn_writefl 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/ICB/icbini.F90

    r6823 r9434  
    7878      !                          ! note that we choose to do this on all processors since we cannot 
    7979      !                          ! predict where icebergs will be ahead of time 
    80       CALL ctl_opn( numicb, 'icebergs.stat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 
     80      CALL ctl_opn( numicb, 'icebergs.stat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, numout, lwp, narea ) 
    8181 
    8282      ! set parameters (mostly from namelist) 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/IOM/prtctl.F90

    r6486 r9434  
    332332      DO jn = sind, eind 
    333333         WRITE(clfile_out,FMT=clb_name) jn-1 
    334          CALL ctl_opn( numid(jn -narea + 1), clfile_out, 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 1, numout, .FALSE. ) 
     334         CALL ctl_opn( numid(jn -narea + 1), clfile_out, 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 'WRITE', 1, numout, .FALSE. ) 
    335335         j_id = numid(jn -narea + 1) 
    336336         WRITE(j_id,*) 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/LBC/lib_mpp.F90

    r8356 r9434  
    320320 
    321321      IF( mynode == 0 ) THEN 
    322          CALL ctl_opn( kumond, TRIM(ldname), 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. , 1 ) 
     322         CALL ctl_opn( kumond, TRIM(ldname), 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, 6, .FALSE. , 1 ) 
    323323         WRITE(kumond, nammpp)       
    324324      ENDIF 
     
    37163716      function_value = 0 
    37173717      IF( .FALSE. )   ldtxt(:) = 'never done' 
    3718       CALL ctl_opn( kumond, TRIM(ldname), 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. , 1 ) 
     3718      CALL ctl_opn( kumond, TRIM(ldname), 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, 6, .FALSE. , 1 ) 
    37193719   END FUNCTION mynode 
    37203720 
     
    39463946 
    39473947 
    3948    SUBROUTINE ctl_opn( knum, cdfile, cdstat, cdform, cdacce, klengh, kout, ldwp, karea ) 
     3948   SUBROUTINE ctl_opn( knum, cdfile, cdstat, cdform, cdacce, cdact, klengh, kout, ldwp, karea ) 
    39493949      !!---------------------------------------------------------------------- 
    39503950      !!                  ***  ROUTINE ctl_opn  *** 
     
    39633963      LOGICAL          , INTENT(in   ) ::   ldwp      ! boolean term for print 
    39643964      INTEGER, OPTIONAL, INTENT(in   ) ::   karea     ! proc number 
     3965      CHARACTER(len=*) , INTENT(in   ) ::   cdact     ! action READ/WRITE/READWRITE default READWRITE 
    39653966      !! 
    39663967      CHARACTER(len=80) ::   clfile 
     
    39833984      iost=0 
    39843985      IF( cdacce(1:6) == 'DIRECT' )  THEN 
    3985          OPEN( UNIT=knum, FILE=clfile, FORM=cdform, ACCESS=cdacce, STATUS=cdstat, RECL=klengh, ERR=100, IOSTAT=iost ) 
     3986         OPEN( UNIT=knum, FILE=clfile, FORM=cdform, ACCESS=cdacce, STATUS=cdstat, ACTION=TRIM(cdact), & 
     3987     &                                                              RECL=klengh, ERR=100, IOSTAT=iost ) 
    39863988      ELSE 
    3987          OPEN( UNIT=knum, FILE=clfile, FORM=cdform, ACCESS=cdacce, STATUS=cdstat             , ERR=100, IOSTAT=iost ) 
     3989         OPEN( UNIT=knum, FILE=clfile, FORM=cdform, ACCESS=cdacce, STATUS=cdstat, ACTION=TRIM(cdact), & 
     3990     &                                                                           ERR=100, IOSTAT=iost ) 
    39883991      ENDIF 
    39893992      IF( iost == 0 ) THEN 
     
    39943997            WRITE(kout,*) '     form   = ', cdform 
    39953998            WRITE(kout,*) '     access = ', cdacce 
     3999            WRITE(kout,*) '     action = ', cdact 
    39964000            WRITE(kout,*) 
    39974001         ENDIF 
     
    40074011            WRITE(kout,*) '           form   = ', cdform 
    40084012            WRITE(kout,*) '           access = ', cdacce 
     4013            WRITE(kout,*) '           action = ', cdact 
    40094014            WRITE(kout,*) '           iostat = ', iost 
    40104015            WRITE(kout,*) '           we stop. verify the file ' 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/LBC/mppini.F90

    r6498 r9434  
    365365     ! Save processor layout in layout.dat file  
    366366       IF (lwp) THEN 
    367         CALL ctl_opn( inum, 'layout.dat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE., narea ) 
     367        CALL ctl_opn( inum, 'layout.dat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, numout, .FALSE., narea ) 
    368368        WRITE(inum,'(a)') '   jpnij     jpi     jpj     jpk  jpiglo  jpjglo' 
    369369        WRITE(inum,'(6i8)') jpnij,jpi,jpj,jpk,jpiglo,jpjglo 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/LBC/mppini_2.h90

    r6498 r9434  
    523523      ! Save processor layout in ascii file 
    524524      IF (lwp) THEN 
    525          CALL ctl_opn( inum, 'layout.dat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE., narea ) 
     525         CALL ctl_opn( inum, 'layout.dat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, numout, .FALSE., narea ) 
    526526         WRITE(inum,'(a)') '   jpnij     jpi     jpj     jpk  jpiglo  jpjglo' 
    527527         WRITE(inum,'(6i8)') jpnij,jpi,jpj,jpk,jpiglo,jpjglo 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcfwb.F90

    r6487 r9434  
    118118         IF( kt == nit000 ) THEN                      ! initialisation 
    119119            !                                         ! Read the corrective factor on precipitations (fwfold) 
    120             CALL ctl_opn( inum, 'EMPave_old.dat', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 
     120            CALL ctl_opn( inum, 'EMPave_old.dat', 'OLD', 'FORMATTED', 'SEQUENTIAL', 'READ', -1, numout, .FALSE. ) 
    121121            READ ( inum, "(24X,I8,2ES24.16)" ) iyear, a_fwb_b, a_fwb 
    122122            CLOSE( inum ) 
     
    147147         ! 
    148148         IF( kt == nitend .AND. lwp ) THEN            ! save fwfold value in a file 
    149             CALL ctl_opn( inum, 'EMPave.dat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE., narea ) 
     149            CALL ctl_opn( inum, 'EMPave.dat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, numout, .FALSE., narea ) 
    150150            WRITE( inum, "(24X,I8,2ES24.16)" ) nyear, a_fwb_b, a_fwb 
    151151            CLOSE( inum ) 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_lim.F90

    r6498 r9434  
    268268      ! 
    269269                                       ! Open the reference and configuration namelist files and namelist output file  
    270       CALL ctl_opn( numnam_ice_ref, 'namelist_ice_ref',    'OLD',     'FORMATTED', 'SEQUENTIAL', -1, numout, lwp )  
    271       CALL ctl_opn( numnam_ice_cfg, 'namelist_ice_cfg',    'OLD',     'FORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 
    272       IF(lwm) CALL ctl_opn( numoni, 'output.namelist.ice', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, 1 ) 
     270      CALL ctl_opn( numnam_ice_ref, 'namelist_ice_ref',    'OLD',     'FORMATTED', 'SEQUENTIAL', 'READ', -1, numout, lwp )  
     271      CALL ctl_opn( numnam_ice_cfg, 'namelist_ice_cfg',    'OLD',     'FORMATTED', 'SEQUENTIAL', 'READ', -1, numout, lwp ) 
     272      IF(lwm) CALL ctl_opn( numoni, 'output.namelist.ice', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, numout, lwp, 1 ) 
    273273 
    274274      CALL ice_run                     ! set some ice run parameters 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/SOL/solver.F90

    r6498 r9434  
    6060 
    6161      IF(lwp) THEN                  !* open elliptic solver statistics file (only on the printing processors) 
    62          CALL ctl_opn( numsol, 'solver.stat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 
     62         CALL ctl_opn( numsol, 'solver.stat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, numout, lwp, narea ) 
    6363      ENDIF 
    6464 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/TRD/trdmxl.F90

    r6487 r9434  
    850850  
    851851      IF( nn_ctls == 1 ) THEN 
    852          CALL ctl_opn( inum, 'ctlsurf_idx', 'OLD', 'UNFORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 
     852         CALL ctl_opn( inum, 'ctlsurf_idx', 'OLD', 'UNFORMATTED', 'SEQUENTIAL', 'READ', -1, numout, lwp ) 
    853853         READ ( inum, * ) nbol 
    854854         CLOSE( inum ) 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/nemogcm.F90

    r9321 r9434  
    255255      ! 
    256256      !                             ! Open reference namelist and configuration namelist files 
    257       CALL ctl_opn( numnam_ref, 'namelist_ref', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. ) 
    258       CALL ctl_opn( numnam_cfg, 'namelist_cfg', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. ) 
     257      CALL ctl_opn( numnam_ref, 'namelist_ref', 'OLD', 'FORMATTED', 'SEQUENTIAL', 'READ', -1, 6, .FALSE. ) 
     258      CALL ctl_opn( numnam_cfg, 'namelist_cfg', 'OLD', 'FORMATTED', 'SEQUENTIAL', 'READ', -1, 6, .FALSE. ) 
    259259      ! 
    260260      REWIND( numnam_ref )              ! Namelist namctl in reference namelist : Control prints & Benchmark 
     
    374374      IF(lwp) THEN                            ! open listing units 
    375375         ! 
    376          CALL ctl_opn( numout, 'ocean.output', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE., narea ) 
     376         CALL ctl_opn( numout, 'ocean.output', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, 6, .FALSE., narea ) 
    377377         ! 
    378378         WRITE(numout,*) 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/stpctl.F90

    r9276 r9434  
    7474            clfname = 'time.step' 
    7575         ENDIF 
    76          CALL ctl_opn( numstp, TRIM(clfname), 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 
     76         CALL ctl_opn( numstp, TRIM(clfname), 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, numout, lwp, narea ) 
    7777      ENDIF 
    7878 
     
    227227      ELSE                                   !* ssh statistics (and others...) 
    228228         IF( kt == nit000 .AND. lwp ) THEN   ! open ssh statistics file (put in solver.stat file) 
    229             CALL ctl_opn( numsol, 'solver.stat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 
     229            CALL ctl_opn( numsol, 'solver.stat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, numout, lwp, narea ) 
    230230         ENDIF 
    231231         ! 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/timing.F90

    r6486 r9434  
    199199              
    200200      IF( ln_onefile ) THEN 
    201          IF( lwp) CALL ctl_opn( numtime, 'timing.output', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout,.TRUE., narea ) 
     201         IF( lwp) CALL ctl_opn( numtime, 'timing.output', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, numout,.TRUE., narea ) 
    202202         lwriter = lwp 
    203203      ELSE 
    204          CALL ctl_opn( numtime, 'timing.output', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout,.FALSE., narea ) 
     204         CALL ctl_opn( numtime, 'timing.output', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', 'WRITE', -1, numout,.FALSE., narea ) 
    205205         lwriter = .TRUE. 
    206206      ENDIF 
  • branches/UKMO/dev_r5518_GO6_namelist_read/NEMOGCM/NEMO/OPA_SRC/trc_oce.F90

    r6486 r9434  
    224224      ENDIF 
    225225      ! 
    226       CALL ctl_opn( numlight, 'kRGB61.txt', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 
     226      CALL ctl_opn( numlight, 'kRGB61.txt', 'OLD', 'FORMATTED', 'SEQUENTIAL', 'READ', -1, numout, lwp ) 
    227227      DO jc = 1, 61 
    228228         READ(numlight,*) zchl, ( prgb(jb,jc), jb = 1, 3 ) 
Note: See TracChangeset for help on using the changeset viewer.