A MULTIPLATFORM LOW RESOURCE CIRCUIT SIMULATOR**
Version 1.0 April 2016
SPECI-SPICE is an implementation of [[SPICE]] 2 subset for 8 bit Z80 computers. It supports all 16 devices available in SPICE2 and four major analyses (OP, DC, AC and TRAN). As it is written in standard C, it can be also recompiled to Unix, MS Windows and MS DOS systems. It is a general-purpose circuit simulation program for nonlinear dc, nonlinear transient, and linear ac analyses. Circuits may contain resistors, capacitors, inductors, mutual inductors, independent voltage and current sources, four types of dependent sources, and the four most common [semiconductor devices]: diodes, BJT’s, JFET’s, and MOSFET’s.
AUTHOR AND LICENSE
SPECI-SPICE is written by prof. dr. Samir Ribić at Universiry of Sarajevo, with [credits] to other people work.
DOWNLOADING AND STARTING INSTRUCTIONS
Z80 PLATFORMS
[Amstrad CPC family] [Cambridge Z88] [Commodore 128] [CPM computers] [EACA Colour Genie EG2000]
[Enterprise 64 and 128] [Grundy NewBrain] [Jupiter ACE] [Camputers Lynx] [Mattel Aquarius]
[Lambda 8300 or Power 3000] [CCE MC-1000] [MSX computers] [Memotech MTX 512] [Philips P2000]
[SAM Coupe] [Sega SC-3000] [Sharp MZ family] [Sorcerer Exidy]
[Sinclair ZX 80] [Sinclair ZX 81] [Sinclair ZX Spectrum] [Sord M5] [Peters Plus Sprinter]
[Timex TS2068 (ZX Spectrum clone)] [Texas Instruments, TI85 calculators] [Texas Instruments, TI86 calculators]
[TRS-80 (Tandy Radio Shack and clones)] [VZ 200 and Laser 200]
8086 PLATFORMS
[IBM PC compatible with MS DOS]
80386 PLATFORMS
[IBM PC compatible with Windows]
Multiple platforms
[Generic Unix or Linux computer]
MEMORY REQUIREMENTS
Depending on target platform available memory and OS, SPECI-SPICE can be compiled to different capability levels called [LEVEL0], [LEVEL1], [LEVEL2], [LEVEL3], [LEVEL4], [LEVEL5].
ENTERING CIRCUIT
After the program is started, the circuit is entered line by line. The netlist file format required by SPECI-SPICE is quite simple. The lines are inserted from keyboard or ASCII text file containing multiple lines of text ( LEVEL3 and above), each line describing either a circuit component or special SPICE command. Circuit architecture is specified by assigning numbers to each component's connection points in each line, connections between components designated by common numbers. Examine the following example circuit diagram and its corresponding SPECI-SPICE netlist. Please bear in mind that the circuit diagram exists only to make the simulation easier to understand. SPECI-SPICE only understands netlists. This example should work on all levels.
The schematic above is representerd with the following net list.
EXAMPLE CIRCUIT
V1 1 0 DC 5
R1 1 0 2.2K
R2 1 2 3.2K
R3 2 0 150
.OP
.END
Each line shown above is explained here:
If some parameter of a component is wrongly entered before .END command, the whole line can be retyped. To clear component and lines entered after it, use the .CLEAR command followed by component name, if supported.
On LEVEL3 platforms and above, the netlist can be prepared in a text file whose name is submited as a parameter to the SPICE command.
ENTRY FORMAT
The input format for SPECI-SPICE consists of multiple lines. Fields on a line are separated by one or more blanks, a comma, an equal (=) sign, or a left or right parenthesis; extra spaces are ignored. A name field must begin with a letter (A through Z) and cannot contain any delimiters. Only the first eight
characters of the name are used. A number field may be an integer field (12, -44), a floating point field (3.14159), either an integer or floating point number followed by an integer exponent (1E-14, 2.65E3), or either an integer or a floating point number followed by one of the following scale factors:
T=1E12 G=1E9 MEG=1E6 K=1E3
M=1E-3 U=1E-6 N=1E-9 P=1E-12 F=1E-15
Letters immediately following a number that are not scale factors are ignored, and letters immediately following a scale factor are ignored. Hence, 10, 10V, 10VOLTS, and 10HZ all represent the same number, and M, MA, MSEC, and MMHOS all represent the same scale factor. Note that 1000, 1000.0, 1000HZ, 1E3, 1.0E3, 1KHZ, and 1K all represent the same number.
The circuit to be analyzed is described to SPECI-SPICE by a set of [element lines], which define the circuit topology and element values, and a set of control line, which define the model parameters and the run controls. The first line in the input must be a title line. The order of the remaining lines depends on referencing: you can enter the line which depends on element name or model name only after the referenced device or model.
DEVICES REFERENCE
[C - Capacitor]
[D - Semiconductor diode]
[E - Linear voltage controlled voltage source]
[F - Linear current controlled current source]
[G - Linear voltage controlled current source]
[H - Linear current controlled voltage source]
[I - Current source]
[J - Junction FET]
[K - Inductive couple]
[L - Inductivity]
[M - MOSFET]
[Q - Bipolar transistor]
[R - Resistor]
[T - Transmission line]
[V - Voltage source]
[X - Subcircuit]
COMMAND REFERENCE
[Title line]
[Comment line]
[END]
[MODEL]
[SUBCKT]
[ENDS]
[TEMP]
[OP]
[DC]
[AC]
[TRAN]
[PRINT]
[CLEAR]
[LIST]
COMPILING
Each platform to be built has corresponding batch file. Edit them if the compiler it calls is installed in different directory.
Wiki: AC
Wiki: Amstrad CPC family
Wiki: C - Capacitor
Wiki: CCE MC-1000
Wiki: CLEAR
Wiki: CPM computers
Wiki: Cambridge Z88
Wiki: Camputers Lynx
Wiki: Comment line
Wiki: Commodore 128
Wiki: D - Semiconductor diode
Wiki: D - Semiconductor diode
Wiki: DC
Wiki: E - Linear voltage controlled voltage source
Wiki: EACA Colour Genie EG2000
Wiki: END
Wiki: ENDS
Wiki: ENDS
Wiki: Enterprise 64 and 128
Wiki: F - Linear current controlled current source
Wiki: G - Linear voltage controlled current source
Wiki: Generic Unix or Linux computer
Wiki: Grundy NewBrain
Wiki: H - Linear current controlled voltage source
Wiki: I - Current source
Wiki: IBM PC compatible with MS DOS
Wiki: IBM PC compatible with Windows 32 bit
Wiki: IBM PC compatible with Windows
Wiki: J - Junction FET
Wiki: Jupiter ACE
Wiki: K - Inductive couple
Wiki: L - Inductivity
Wiki: LEVEL0
Wiki: LEVEL1
Wiki: LEVEL2
Wiki: LEVEL3
Wiki: LEVEL4
Wiki: LEVEL5
Wiki: LIST
Wiki: Lambda 8300 or Power 3000
Wiki: M - MOSFET
Wiki: MODEL
Wiki: MSX computers
Wiki: Mattel Aquarius
Wiki: Memotech MTX 512
Wiki: NEC PC-6001
Wiki: OP
Wiki: PRINT
Wiki: Peters Plus Sprinter
Wiki: Philips P2000
Wiki: Q - Bipolar transistor
Wiki: R - Resistor
Wiki: SAM Coupe
Wiki: SPICE
Wiki: SUBCKT
Wiki: Sega SC-3000
Wiki: Sharp MZ family
Wiki: Sinclair ZX 80
Wiki: Sinclair ZX 81
Wiki: Sinclair ZX Spectrum
Wiki: Sorcerer Exidy
Wiki: Sord M5
Wiki: T - Transmission line
Wiki: TEMP
Wiki: TRAN
Wiki: TRS-80 (Tandy Radio Shack and clones)
Wiki: Texas Instruments, TI85 calculators
Wiki: Texas Instruments, TI86 calculators
Wiki: Timex TS2068 (ZX Spectrum clone)
Wiki: Title line
Wiki: V - Voltage source
Wiki: VZ 200 and Laser 200
Wiki: X - Subcircuit
Wiki: credits
Wiki: element lines
Wiki: semiconductor devices