Linux Fu: Deep Git Rebasing

If you spend much time helping people with word processor programs, you’ll find that many people don’t really use much of the product. They type, change fonts, save, and print. But cross-references? Indexing? Largely, those parts of the program go unused. I’ve noticed the same thing with Git. We all use it constantly. But do we? You clone a repo. Work on it. Maybe switch branches and create a pull request. That’s about 80% of what you want to do under normal circumstances. But what if you want to do something out of the ordinary? Git is very flexible, but you do have to know the magic incantations.

For example, suppose you mess up a commit message — we never do that, of course, but just pretend. Or you accidentally added a file you didn’t want in the commit. Git has some very useful ways to deal with situations like this, especially the interactive rebase.

Continue reading “Linux Fu: Deep Git Rebasing”

[Ken] Looks At The 386

The 80386 was — arguably — Intel’s first modern CPU. The 8086 was commercially successful, but the paged memory model was stifling. The 80286 also had a protected mode, which differed from the 386’s. [Ken Shirriff] takes the 386 apart for us in a recent blog post.

The 286’s protected mode was less successful than the 386 because of several key limitations as it was a 16-bit processor with a 24-bit address bus. It still required segment changes to access larger amounts of memory, and it had no good way to call back into real mode for compatibility reasons. The 386 fixed all that. You could adopt a segment strategy if you wanted to. But you could also load the segment registers once to point to a 4 GB linear address space and then essentially forget them. You also had a virtual 86 mode that could simulate real mode with some work.

The CPU used a 1-micron process, compared to the 1.5-micron process used earlier. The chip had 285,000 transistors (although the 80386SL had many more). That was ten times the number of devices on the 8086. The cheaper 386SX did use the 1.5 micron process for a while, but with a 16-bit external bus, this was feasible. While 285,000 sounds like a lot, a Core i9 has around 4.2 billion transistors. Times have changed.

A smaller design also allowed chips like the 386SL for laptops. The CPU took up only about a fourth of the die. The rest held bus controllers and cache interfaces to cut costs on laptops. That’s why it had so many more transistors.

[Ken] does his usual in-depth analysis of both the die and the history behind this historic device. We spent a lot of time writing protected mode 386 code, and it was nice to see the details of a very old friend. These days, you can get a pretty capable CPU system on a solderless breadboard, but designing a working 386 system took a few extra parts. The 80286 was a stepping stone between the 8086 and 80386, but even it had some secrets to give up.

Burnt Resistor Sleuthing

You smell smoke and the piece of gear you are working on stops working, probably at an inopportune time. You open it up and immediately see the burned remains of a resistor. You don’t have the schematic, the Internet has nothing to say, and the markings on the resistor are burned away. What do you do? [Learn Electronics Repair] has some advice.

The resistor is probably open, but even if it isn’t, you can’t count on any measurement you make. The burning could easily change the value. The technique comes from comments on one of his earlier videos where he had such a burned resistor but was able to find the correct value. He decided to test the suggestion: cut away the burned resistor and measure the pieces that are left. It probably won’t give you the exact value, but it will get you in the ballpark.

So a rotary tool did the surgery, and you can see it all in the video below. We aren’t sure this method would work on every type of resistor you might encounter, and surface mount will also present special problems. However, if you are stabbing in the dark anyway, it won’t hurt to try.

Everyone knows the smoke that comes out is magic. Sometimes, you cut into components by necessity. Other times, it is for art’s sake.

Continue reading “Burnt Resistor Sleuthing”

PCB Repair Is A Sticky Proposition

What do you do when a PCB is cracked or even broken in two? [MH987] has a plan: superglue the board back and then bridge the traces with solder, solder paste, or wire. The exact method, of course, depends on the extent of the damage.

We’ve had some success with similar techniques, and, honestly, for single-sided boards, we would be tempted to add a thin backer behind the crack. We’ve also used conductive paint to repair traces, but it’s good to have having as many tricks as possible because you never know what will work best for a particular repair. The post mentions that this is easier to do on a single-sided board, but it is certainly possible to do on a two-layer board.

The example repair is a Walkman which — if you are a youngster — was a portable music player that takes cassette tapes. These haven’t been made since 2010, so it is important to repair what you have.

If you can’t repair your Walkman, you could build an updated version. If your board is seriously damaged, you might get hope from this more extreme repair.

The Wirtz Pump Spins

Over the ages, a lot of human activity has been concerned about getting water from where we find it to where we want it. If you want to move water to a lower elevation, there’s no problem. But if you want to move water up, you need a pump. The ancients used what we call Archimedes’ screw to raise water. But a Wirtz pump as [Steve Mould] shows in the video below, is another kind of spiral pump that is also very old and uses the same basic principle as the screw pump.

In a way, the Wirtz is just an Archimedes’ screw in cross-section. Part of what makes it work, however, is air-locking. [Steve] made a small model but found it didn’t work exactly as he expected. Of course, investigating that led to some interesting observations.

Continue reading “The Wirtz Pump Spins”

Tech In Plain Sight: Skyscrapers

It is hard to imagine that for thousands of years, the Great Pyramid of Giza was the tallest manmade structure in the world. However, like the Lincoln Cathedral and the Washington Monument, which also held that title, these don’t count as skyscrapers because they didn’t provide living or working space to people. But aside from providing living, retail, or office space, skyscrapers also share a common feature that explains why they are even possible: steel frame construction.

Have you ever wondered why pyramids appear in so many ancient civilizations? The answer is engineering. You build something. Then, you build something on top of it. Then you repeat. It just makes sense. But each upper layer adds weight to all the lower layers, so you must keep getting smaller. Building a 381-meter skyscraper like the Empire State Building using self-supporting walls would mean the ground floor walls would be massive. Steel lets you get around this.

In Antiquity

You might think of high-rise buildings as a modern thing, but that’s actually not true. People seem to have built up to the best of their abilities for a very long time. Some Roman structures were as high as ten stories. Romans built so high that Augustus even tried to limit building height to 25 meters — probably after some accidents.  In the 12th century, Bologna had as many as 100 towers, one nearly 100 meters tall.

There are many other examples, including mudbrick structures rising 30 meters in Yemen and 11th-century Egyptian structures rising 14 stories. In some cases, building up was due to the cost or availability of property. In others, it was to stay inside a defensive wall. But whatever the reason, self-supporting walls can only go so high before they are impractical.

So steel and iron frames grabbed the public’s attention with things like Joseph Paxton’s Crystal Palace in 1851, and Gustav Eiffel’s Tower in 1887.

Continue reading “Tech In Plain Sight: Skyscrapers”

How Not To Build An RP2040 Board

We love that these days you can buy ready-made microcontroller boards that are very capable. But sometimes you need to — or just want to — do it yourself. Unfortunately, you really should design everything twice: once to figure out where all the problems are, and the second time to do it better. If you want to create your own board for the RP2040 then you are in luck. [Jeremy] has made the first (and second) iteration or an RP2040 board and shares with us what he would not do again.

In all fairness, he also has a blog post talking about what he did, so you might want to start there. However, we think his most valuable advice was his final word: Don’t fail to get started on your design. The longest journey, after all, begins with the first step.

His other advice is good, too. For example, don’t plug your new board into a computer because an error in the power supply could take the whole computer out. He also warns you not to do like he did and forget to order the $10 solder stencil with the PCBs.

Some of it is just good advice in general. For example — buy more small components than you think you need. There’s nothing worse than needing three resistors, having three resistors, and then watching one of the three fly across the room or stick to your soldering iron and melt into a pool of slag. Buy ten and you’ll save money in the long run.

In the end, the board did work and what he learned might help you if you decide to tackle a similar project yourself. [Jeremy’s] board is fairly large, but if you have an appetite for something smaller, check out the RPDot or the RP2040 Stamp.