After 36 years as a paid product, the Micro-Cap Circuit Simulator is now free
spectrum-soft.com
spectrum-soft.com
Does anyone have an insight on why Spectrum Software is now closed?
P.S. The man behind the company, Andy Thompson, seems to be an excessively humble person. He left a lot of details in the mist. However, all these details are priceless to us mere humans. Memoirs? A blog? 39 years in business is not a small feat.
There needs to be a name for this kind of dead end aphorism thinking.
“The true payments,” haha.
Maybe their customer base was too small and their reference market too saturated to convince anyone to buy it.
Now I wish LTSpice would take MC GUI and features, and implement it with their simulator. They should have bought it.
I lost some important records because yahoo shut down it's group archive last year (and banned the archive team from saving stuff wtf), and it's been on my mind lately.
What's the name of the group?
https://www.theverge.com/2019/11/4/20917500/yahoo-group-data...
Anyone here use the software?
I then bought a 486DX, 50 MHz and the same simulation was finished before the mouse button lifted.
Fun times. Microcap was really cool at the time as it was the only GUI based SPICE, and the student version was under $50.
Nowadays I use LTSpice specifically since LT makes good switching regulators, and only develops those models for LTSpice. Otherwise I use Microwave Office.
MC still looks much more polished than LTSpice, at least the GUI. Schematic entry in LTSpice is still abysmal.
https://www.tinkercad.com/ (Web)
http://www.virtualbreadboard.com/ (Windows)
MC is a modern simulator, and professional level. I assume the guy is retiring. You are not going to be simulating large ICs, but it’s still plenty good for other stuff.
I have an idea that the "espresso" algorithm could be used to minimize not only electronic circuits but general boolean expressions for any programming language... I think it would do for a useful refactoring tool.
1: https://web.archive.org/web/20131022051516/http://www.sontra...
I think the goal for most boolean expressions in code is for the reader to be able to conceptually grasp what's being checked for, not for the expression to be as short as possible. Distributive properties can make an expression shorter while simultaneously making the concepts behind the expression much more obscure.
if( value1 < 0 || value2 < 0 || value3 < 0 ) {
to temp = value1 | value2 | value3;
if( temp < 0 ) {
Taking a sort of hardware, Boolean logic view makes this possible, as VHDL generally does this when synthesed.This is most of the inner loop of a barycentric coordinate rasterizer, so I was pretty concerned about micro-optimizations when I was checking.
N.B. the || (logical or) operator is an "early out" operator whereas the | (binary or) operator is NOT
The compiler would need to look for special cases of value1, value2 and value3... such as: are any of them volatile, perhaps one refers to a memory mapped I/O device, perhaps one if actually a function call, or array dereference, or pointer dereference, what about value1 being a "char" which needs to be promoted before it can be or'd, what about any of the "values" being a constant < 0 which would short circuit the "if" statement and remove the need for any tests.
As I said, this is not as simple as it first appears.
A predicable branch is almost free in a modern processor.
Clang will optimize
bool swap_if(bool c,
int& a, int& b) {
int ta = a, tb = b;
a = (-c & tb)|((c-1) & ta);
b = (-c & ta)|((c-1) & tb);
return c;
}
into cmov instructions. Used in a quicksort partition loop as l += swap_if(
*r <= pv, *l, *r);
It makes quicksort fully 2x as fast as the usual branch.btw, I started to think about "boolean refactoring" when I saw J. Edwards' schematic tables video [1].
It simulates logic, supports automated testing, simulates and analyses combinatorial and sequential logic, comes with a large library of components (generic stuff, specific 7400 logic, displays and memories, etc), it can output VHDL or Verilog, and it can export JEDEC files for GALs.
1: https://en.wikipedia.org/wiki/Quine%E2%80%93McCluskey_algori...
I had fun with that, it is/was quite nice to use. I wonder what happened to it. The "sontrak.com" domain is bust now it seems.
The about page has this in the copyright though:
> *Espresso and misII are copyright © 1988-1993, Regents of the University of California.
Indeed. Something to consider when choosing a license and distribution model for your own projects, including web-based software. Your life is finite, but the life of your software may not be.
I hated working in it and have done my best to forget everything about it.
And there's a Feature Tour with screenshots: http://www.spectrum-soft.com/demo/schemati.shtm
I've been using the latter on a Mac for simulating vacuum tube (UK: valve) circuits with some success and a very large amount of frustration. I would love something a little less actively user-hostile...
(Founder of https://www.circuitlab.com/ (YC W13), an analog circuit simulator that many universities have now started using.)
The interface is weird. Placement of components isn't so bad but when you want to do stuff like move them or rotate, you fall into this strange mode system that's unlike any other software I've ever used.
Including models is done by writing arcane text commands on the diagram. And also by setting parameters in a hidden window on the component diagram itself.
Models != visual components.
Sometimes I have to set the model designator for a component in the UI twice before it'll "take". That's hostile!
Finickity pin alignment on custom/3rd party components sometimes leads to open circuits when they look closed.
The parameter/settings windows are cryptic.
The wire drawing tool is really nice though.
It's obviously better than writing a setlist in TextEdit but I've found the learning curve very steep, with all the underlying complexity of Spice exposed. The fairly prehistoric interface paradigm that means that any muscle memory and expectations from using any other graphical software just don't help. In fact, they hurt.
I tried your thing when I was looking for circuit design software. I liked it. It didn't have any vacuum tube models at the time (not that I blame you, it's niche) and so I couldn't use it for what I needed.
Best schematic editor I’ve found. It also has tubes.
Last time I played with it that was what got me to leave. A drag and drop wysiwyg is wholly inappropriate for serious work. Also the search feature doesn’t work well, it stalled looking for “op amp”
And by “serious” work I mean a small circuit with two dozen elements.
I'll try it better when I get home.
Edit: I hope the downvotes are because it supports `https` (just not by default, thanks to progman32 for correcting me) and not because you think that not wanting to download an executable over an open connection is an unreasonable thing.
Looking a gift horse in the mouth?
My question was in relation to a unsigned executable on an unencrypted http site, as the OP site loads by default. Would you download and run one?
The same is probably equivalently applicable to the hardware that was used to compile the compiler that compiled the compiler that compiled the compiler that you're using.
I got: http://www.spectrum-soft.com/download/mc12cd.zip sha3-256: 1e9c7d1ec04019446fa448fec74af36f53eaf6508def75068eb32ae0d7f5109a
https://www.virustotal.com/gui/file/773a060c5c824f6c47352dea...
Therefore, an unsigned binary is an unsigned binary, no matter the transport mechanism. I agree that distributing unsigned binaries is poor security practice, but I also think that it is dangerous to think that the transport of an unsigned binary over an SSL connection gives it any credibility.
Once implemented, it's much easier than hacking servers and more convenient to do targeted, semi-targeted, local network/cafe script-kiddie attacks, without it being easily detected. Unfortunately for attackers, these days people don't download and run unverified executables as often, especially over http, so you may need lots of patience if you want do infect a specific person.
MITM executable patching attacks are not theoretical. AFAIU, the first hit on "mitm executable infection" [1] and an interceptor (ARP/wifi/whatever) is all a script kiddie needs.
If you're security conscious enough to not download random executables over http then you really should be aware that it's 99% as dangerous to download them over any link.