1C/MEMBR ADD NAME=SVCOM1,SSI=0
2      subroutine svcom1(rsav, isav)
3c%purpose
4c this routine stores in rsav and isav the contents of common blocks
5c ls0001 and eh0001, which are used internally in the lsode package.
6c
7c%calling sequence
8c rsav = real array of length 219 or more.
9c isav = integer array of length 41 or more.
10c!
11      double precision isav
12      integer ieh, ils
13      integer i, lenils, lenrls
14      double precision rsav,   rls
15      dimension rsav(*), isav(*)
16cDEC$ ATTRIBUTES DLLIMPORT:: /ls0001/
17      common /ls0001/ rls(219), ils(39)
18cDEC$ ATTRIBUTES DLLIMPORT:: /eh0001/
19      common /eh0001/ ieh(2)
20      data lenrls/219/, lenils/39/
21c
22      do 10 i = 1,lenrls
23 10     rsav(i) = rls(i)
24      do 20 i = 1,lenils
25 20     isav(i) = dble(ils(i))
26      isav(lenils+1) =dble(ieh(1))
27      isav(lenils+2) =dble(ieh(2))
28      return
29      end
30