From: mleblanc@netcom.com (Marcel A. LeBlanc)
Newsgroups: comp.os.os2.apps
Subject: Berkeley SPICE 2G.6 circuit simulator now at HOBBES!
Summary: spice for OS/2 2.0 at hobbes
Keywords: spice, berkeley, os2
Date: 31 Jul 92 19:03:14 GMT
Organization: Netcom - Online Communication Services  (408 241-9760 guest)


I just put it in "pub/downloads/spice2g6.zoo" at ftp-os2.nmsu.edu!  I wasn't
expecting the flood or replies that I received. :)  For those who have
access to NETCOM.COM, the archive can also be found in
"/usr/hack/ftp/tmp/mleblanc/spice2g6.zoo" for at least a few days.

Here's the README file:
----------------------------------------------------------------------
This is a port of SPICE 2G.6 to OS/2 2.0.  The following lines are 
extracted from the source file spice.f:

C
C
C SPICE VERSION 2G.6  SCCSID=root.ma 3/15/83
C
C     SPICE IS AN ELECTRONIC CIRCUIT SIMULATION PROGRAM THAT WAS DEVE-
C LOPED BY THE INTEGRATED CIRCUITS GROUP OF THE ELECTRONICS RESEARCH
C LABORATORY AND THE DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER
C SCIENCES AT THE UNIVERSITY OF CALIFORNIA, BERKELEY, CALIFORNIA.  THE
C PROGRAM SPICE IS AVAILABLE FREE OF CHARGE TO ANY INTERESTED PARTY.
C THE SALE, RESALE, OR USE OF THIS PROGRAM FOR PROFIT WITHOUT THE
C EXPRESS WRITTEN CONSENT OF THE DEPARTMENT OF ELECTRICAL ENGINEERING
C AND COMPUTER SCIENCES, UNIVERSITY OF CALIFORNIA, BERKELEY, CALIFORNIA,
C IS FORBIDDEN.
C

This "port" was made exceptionally simple thanks to the EMX GCC compiler
and F2C, the Fortran to C translation utility.  I've only been using it
for a few days, but so far there are no signs of problems.

To use spice with OS/2 2.0, just place "spice.exe" in some directory listed
in your PATH variable, and "emx.dll" in some directory listed in your LIBPATH
variable (but only if it's newer than your current emx.dll!).

To run spice, just type:

	spice < infile > outfile 

For some reason, all numbers are output in the form 0.12345-006 instead
of the usual form 0.12345E-006 (Is this normal for Fortran?).  If you
prefer the latter form, get a copy of 'sed' (it's available at hobbes),
and do:

	spice < infile | sed "s/\([0-9]\)\([-+][0-9]\)/\1E\2/g" > outfile

If you would like to use symbolic node names (like in HSPICE) send me
some mail asking for "spices", my symbolic node name pre-processor.

If anybody's interested, I have also written an implementation of a 
genetic algorithm (described in the July 1992 issue of Scientific 
American) for automatic optimization of circuits using SPICE 2G.6 .

This port is a FULL version.  I didn't have to scale down anything to 
get it to work.  Using the automatic optimization program that I 
mentioned above, I've run over 10000 spice simulations (in 2 days!) of a
simple, 6-transistor circuit.  With level 3 models each simulation takes
about 9 seconds on my 486/33.

Judging from the benchmark results given in the circuits/ directory, my
486/33 seems to be comparable in speed to a MIPS M/800, or about 10x the
speed of a VAX 11/780.  For those who are interested, I used "f2c -A -E",
followed by "gcc -O2" (the emx 0.8d version) to do the compilation from
Berkeley Fortran sources.

If you manage to do some novel things with spice, please send me some mail!
Any comments are welcome!

Marcel LeBlanc
mleblanc@netcom.com
(or leblanc@eecg.toronto.edu)