wrm

I lol’ed

Note to Groom: This is where you GTF away. Seriously. Most people don’t get this good a Hint. You won’t get another one this clear.

Welcome Distopia

Sol stopped pedaling and the whine died away to a moan, then vanished. He disconnected the wires from the electrical generator that was geared to the rear axle of the bike, and carefully coiled them up next to the four black automobile storage batteries that were racked on top of the refrigerator.

— Harry Harrison, Make Room! Make Room! a.k.a. Soylent Green

The novel was set in 1999, the movie in 2022. Reality is lagging a tiny little bit behind.

 

IBM PC (x86) emulator

If you’re looking for a small, simple, light-weight x86 emulator, 8086tiny might be a good call.

The main problem with it is that it was written by a dude who writes code for the Obfuscated C Contest (as a matter of fact, the obfuscated version of 8086tiny won in 2013*) — and it shows. The “documented, commented, maintainable version” (his words) is written in a way… let’s just say that if you were a programme manager and one of the team members wrote code like this you would be a very worried person. Like DJ Bernstein’s daemontools or qmail, it’s clearly written by someone who Has Clue, but should not be approached by someone who doesn’t.

For example, the code comes with a BIOS. The BIOS also includes the instruction lookup table, which is obviously a critical part of the code, and has nothing to do with the BIOS…

Anyway, I managed to import the BIOS for the NEC APC into the memory space (the standard BIOS lives at 0xF0100 (F000:0100)  – 0xF1Ef2 while the NEC BIOS lives at 0xFE000 (FE00:0000) – 0xFFFFF).  There are clashes, the 8086tiny BIOS actually writes its own reset vectors to what would normally be part of the BIOS EPROM at 0xFFFF0, overwriting the NEC vectors, and it puts the stack at 0xFF000 (F000:F000) which is in the middle of the NEC BIOS — but I can fire up the emulator and use debug to look at the NEC BIOS so I guess it’s a matter of time before I maybe modify this thing to emulate the APC and not a PC XT.

Or not. Round ‘tuits are scare sometimes.

* Look, I’ll give him a lot of points for style, but I feel making the BIOS blob a critical part of your code and then not counting its size is kind of… cheating. But hey. It _is_ beautiful to look at.

Logic Probe

There’s a kid around the corner who is building a Z-80 computer on veroboard.

This is not his story.

But in helping him I realised he needed a logic probe. This is that story.

I built this logic probe a … long … time … ago. Late seventies, I think. You can see where I cut it down the middle to fit in a pill bottle, but I straightened it again later.

And I could lay my hands on it when I needed to, a week ago. Yea, I don’t throw stuff away. Especially not useful stuff, and a logic probe counts as useful. I had to replace the 7400 which is now in a socket, back when I built it a socket would have been a luxury.

I have no idea where I got the original schematic from, but this is it, except that my R2 is 1k and my capacitors are higher-value tantalums that I recycled from something else.

And when we built one for Z-80 boy the other day, we found that R2 should indeed be 1k, because otherwise it doesn’t work right.

I also added a diode for reverse-voltage protection which is not a bad idea.

There are of course many other, better designs out there (electronicsforu.comelechelp.com, circuitfee…), including one in Everyday Electronics of September 1980*. But this one is simple and it works.

* I “subscribed” (in that my parents would give me the money every month and I would walk down to the CNA on Voortrekker Road and buy a copy, which they reserved for me) to Everyday Electronics from September 1978, or at least, that’s the earliest cover I remember.

When your failure detection system… doesn’t actually fail.

Couple of years ago, I repaired a NAD T751 which turned on and then immediately off again. These NADs have a protection circuit that shuts the amp down if something is wrong, and in this case, the protection circuit was at fault.

So when my brother spotted a T760 with exactly the same problem, he bought it, figuring that this was a solved case.

This turned out to not be the case. While the T760 is almost identical to the T751, this one lacks the bodge that caused the problem last time. And while the prime culprits (C173, C174, C176, C199 on the AC3 board) were all out of spec (measuring 70pF to 10nF), replacing them did not solve the problem.

(If your PCB is discoloured around the voltage regulators, the amp ran hot for long, and that dries out the caps).

Anyway. so I went where I should have started, and measured the offsets on P501, P502, P503, JP801 and JP802 (representing the amplifier quescient current).

And that explains it (even if it’s a b*tch to get at).

Attended to a couple other suspicious-looking solder joints, buttoned the whole thing up again. Offset on the centre amp (the one which had the bad joints) doesn’t want to come down below 2.7mV so it’s going to run a bit hot, others all at 2.0mV (over 0.22 ohm, so 9mA idle current).

 

 

Sometimes it’s better to remain quiet.

None of these answers is useful. I’m fully expecting the next comment to be a warning not to solder without adequate ventilation.

(For the record, 105 = 10 and 5 zeroes, just like a resistor, so 1000000 pF = 1 uF. And yes, 15 is the voltage. Also, google “what is the value of a capacitor marked 105” gives the correct answer straight off the bat. People. Feh).