No guessing, no hand-drawn netlists, no wrong answers in green. Type the question, get the file.
Free and open source, not code-signed yet. SmartScreen warning: pick More info, then Run anyway. Smart App Control block: that setting has no override and must be turned off under Windows Security → App & browser control (Windows will not let you turn it back on without a reset).
waiting for a question| EN | A1 | A0 | Y0 | Y1 | Y2 | Y3 |
|---|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 0 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 | 0 | 0 | 0 |
| 1 | 0 | 0 | 1 | 0 | 0 | 0 |
| 1 | 0 | 1 | 0 | 1 | 0 | 0 |
| 1 | 1 | 0 | 0 | 0 | 1 | 0 |
| 1 | 1 | 1 | 0 | 0 | 0 | 1 |
Four steps. Three of them are automatic. The second one is the one worth reading.
Plain English. Paste the question exactly as the lab manual wrote it.
Everything below is something the app actually does, not a promise.
Digital answers are evaluated exhaustively by Logisim Evolution running the actual emitted file. Not our code checking our code.
Sequential logic, unmeasured parts, analog without LTspice: refused, with the reason named.
LTspice checks the design against the question's own figures. A smaller promise, so it is never called "verified".
A circuit the simulator disagrees with is thrown away and redone. You see the rejected attempts, not just the winner.
Bring a free model key. It's stored encrypted on your laptop and never uploaded by Ohmwork.
Name a 7447 and Ohmwork probes a real one in the evaluator first, all 128 input rows, then checks your design against that. Nobody's memory of a datasheet is involved.
The model never grades its own work.
The model writes the circuit. Logisim Evolution or LTspice runs the emitted file. If the tool disagrees, the design is thrown away and the tool's objection goes back to the model. If nothing passes, you get an honest failure.
An exhaustive truth-table check and a few measured numbers are different sizes of promise. The app refuses to let them look alike. Refusals and failures are their own thing too.
A simulator proves the circuit matches the reading. It can't prove the reading matches the question: an enable read as active-low when the manual meant active-high passes every check. So the reading is printed first, every time.
One installer, a free key, a real simulator doing the checking.