BBC Master 128 Revealed

[Adrian] comments that the BBC Master 128 is a rare 8-bit computer, and we agree — we couldn’t remember hearing about that particular machine, although the BBC series is quite familiar. The machine has a whopping 128 K of RAM, quite a bit for those days. It also had a 6502 variant known as the 65C12, which has an extra pin compared to a 6502 and doesn’t use the same clock arrangement. A viewer sent him one of these machines, which apparently was used in the BBC studios. You can see this rare beauty in the video below.

The computer has a very nice-looking keyboard that includes a number pad. There are also expansion ports for printers and floppy disk drives. It has some similarities to a standard BBC computer but has a number of differences externally and internally.

Of course, we were waiting for the teardown about 15 minutes in. There were some corroded batteries but luckily, they didn’t do much damage. The power supply had a burned smell. Cracking it open for inspection was a good time to convert the power supply to run on 120 V, too.

After some power supply repair, it was time to power the machine up. The results were not half bad. It started up with a cryptic error message: “This is not a language.” Better than a dead screen. The keyboard wasn’t totally working, though. A bit of internet searching found that the error happens when the battery dies and the machine loses its configuration.

More walkthroughs will take a bit more work on the keyboard. But we were impressed it came up as far as it did, and we look forward to a future installment where the machine fully starts up.

[Adrian] mentioned the co-processor slot accepting a Raspberry Pi, something we’ve talked about before. Or, add an FPGA and make the plucky computer think it is a PDP/11.

Continue reading “BBC Master 128 Revealed”

Mangle Videos With RecurBOY And A Raspberry Pi Zero

You used to need a lot of equipment to be a video DJ. Now you can do it all with a Raspberry Pi Zero and [cyberboy666]’s recurBOY. And if you missed out on the 1970’s video-editing psychedelia, now’s your chance to catch up – recurBOY is a modern video synth with all of the bells and whistles, and it’ll fit in your pocket. Check out [cyberboy666]’s demo video if you don’t yet know what you’re getting into. (Embedded below.)

RecurBOY has four modes: video, shader, effects, and external input, and each of these is significantly cooler than the previous. Video mode plays videos straight off of the SD card through the recurBOY’s composite video out. Shader mode lets you program your own shaders using the GLES shader dialect for resource-constrained devices. And this is where the various knobs and buttons come in. You can program the various shader routines to read any of the pots as input, allowing you to tweak the graphics demos on the fly.

Effects mode overlays your shaders on the video that’s playing, and external mode allows you to plug in a USB video capture card or a webcam so you can do all that same mangling with a live camera feed. And these two modes are where it gets awesome. The shader effects in the demo video cover all of the analog classics – including bloom and RGB separation – but also some distinctly digital effects. And again, you can tweak them all live with the knobs. Or plug in a MIDI controller and control it all externally. What hasn’t he thought of?

Old school analog video effects are really fun, and recurBOY brings them to you with the flexibility of modern shader coding. What’s not to love? If you want to see the pinnacle of the pre-digital era, that would be the Scanimate. For a video synth that integrates with your audio synth, check out Hypno. And if glitching the video is more your style, you can hijack the RAM of a VGA/composite converter.

Trippy, man!

Continue reading “Mangle Videos With RecurBOY And A Raspberry Pi Zero”

AI Creates Killer Drug

Researchers in Canada and the United States have used deep learning to derive an antibiotic that can attack a resistant microbe, acinetobacter baumannii, which can infect wounds and cause pneumonia. According to the BBC, a paper in Nature Chemical Biology describes how the researchers used training data that measured known drugs’ action on the tough bacteria. The learning algorithm then projected the effect of 6,680 compounds with no data on their effectiveness against the germ.

In an hour and a half, the program reduced the list to 240 promising candidates. Testing in the lab found that nine of these were effective and that one, now called abaucin, was extremely potent. While doing lab tests on 240 compounds sounds like a lot of work, it is better than testing nearly 6,700.

Interestingly, the new antibiotic seems only to be effective against the target microbe, which is a plus. It isn’t available for people yet and may not be for some time — drug testing being what it is. However, this is still a great example of how machine learning can augment human brainpower, letting scientists and others focus on what’s really important.

WHO identified acinetobacter baumannii as one of the major superbugs threatening the world, so a weapon against it would be very welcome. You can hope that this technique will drastically cut the time involved in developing new drugs. It also makes you wonder if there are other fields where AI techniques could cull out alternatives quickly, allowing humans to focus on the more promising candidates.

Want to catch up on machine learning algorithms? Google can help. Or dive into an even longer course.

Math Reveals How Many Shuffles Randomizes A Deck

Math — and some clever simulations — have revealed how many shuffles are required to randomize a deck of 52 cards, but there’s a bit more to it than that. There are different shuffling methods, and dealing methods can matter, too. [Jason Fulman] and [Persi Diaconis] are behind the research that will be detailed in an upcoming book, The Mathematics of Shuffling Cards, but the main points are easy to cover.

A riffle shuffle (pictured above) requires seven shuffles to randomize a 52-card deck. Laying cards face-down on a table and mixing them by pushing them around (a technique researchers dubbed “smooshing”) requires 30 to 60 seconds to randomize the cards. An overhand shuffle — taking sections from a deck and moving them to new positions — is a staggeringly poor method of randomizing, requiring some 10,000-11,000 iterations.

The method of dealing cards can matter as well. Back-and-forth dealing (alternating directions while dealing, such as pattern A, B, C, C, B, A) yields improved randomness compared to the more common cyclic dealing (dealing to positions in a circular repeating pattern A, B, C, A, B, C). It’s interesting to see different dealing methods shown to have an effect on randomness.

This brings up a good point: there is not really any such a thing as “more” random. A deck of cards is either randomized, or it isn’t. If even two cards have remained in the same relative positions (next to one another, for example) after shuffling, then a deck has not yet been randomized. Similarly, if seven proper riffle shuffles are sufficient to randomize a 52-card deck, there is not really any point in doing eight or nine (or more) because there isn’t any such thing as “more” random.

You can watch these different methods demonstrated in the video embedded just under the page break. Now we know there’s no need for a complicated Rube Goldberg-style shuffling solution just to randomize a deck of cards (well, no mathematical reason for one, anyway.)

Continue reading “Math Reveals How Many Shuffles Randomizes A Deck”

3D Printing Bores Without Support

If you’ve done even a small amount of 3D printing, you probably ran into the challenge of printing a small hole on top of a larger hole. The conventional solution is just to add support, but in the video after the break, [Angus] of Maker’s Muse demonstrates an alternative solution you can implement in CAD, without having to do manual post-processing.

This is a common problem when you have a countersink feature for a bolt head or captured nut on the bottom of the part. [Angus] first demonstrates some other techniques, including printing the bore over empty space, adding a sacrificial bridge, and making the overhang 45°. Each of these work but have some trade-offs. The proposed solution is what [Angus] calls sequential overhangs. It involves bridging the sides of the open space in steps to create supporting edges onto which the bore perimeter can print. It starts with 2 or 3 bridging layers to create a rectangle the same width as the bore, and then a second set of bridges at 90° to turn the opening into a square. For smaller holes this should create enough of a support to start the bore perimeter, but for larger holes three sets of bridges at 60° offsets might be needed.

[Angus] does not claim to have invented the technique but states he borrowed the idea from parts printed by Prusa Research for their popular line of 3D printers. One of the comments on the [Maker’s Muse] video referenced a 2014 blog post by [nophead] showing the same approach. Regardless of the idea’s lineage, it’s a great addition to anyone’s 3D printing design toolbox.
Continue reading “3D Printing Bores Without Support”

Hacking A “Smart” Electric Toothbrush To Reset Its Usage Counter

The visible circuitry inside the brush head.
The visible circuitry inside the brush head.

Following the trend of stuffing more electronics in everyday devices, the new Philips Sonicare electric toothbrush that [Cyrill Künzi] purchased ended up having a ‘brush head replacement reminder’ feature that wasn’t simply a timer in the handle or base of the unit, but ended up involving an NFC chip embedded in every single brush head containing the usage timer for that particular head. Naturally, this asked for it to be solidly reverse-engineered and hacked.

The NFC chip inside the brush head turned out to be an NXP NTAG213, with the head happily communicating with the NFC reader in a smartphone and the NFC Tools app. This also revealed the memory layout and a few sections that had write access protected by a password, one of which was likely to be the counter. This turned out to be address 0x24, with a few experiments showing the 32-bit value at this address counting the seconds the brush head had been used.

Continue reading “Hacking A “Smart” Electric Toothbrush To Reset Its Usage Counter”

AI Image Generation Gets A Drag Interface

AI image generators have gained new tools and techniques for not just creating pictures, but modifying them in consistent and sensible ways, and it seems that every week brings a fascinating new development in this area. One of the latest is Drag Your GAN, presented at SIGGRAPH 2023, and it’s pretty wild.

It provides a point-dragging interface that modifies images based on their implied structure. A picture is worth a thousand words, so this short animation shows what that means. There are plenty more where that came from at the project’s site, so take a few minutes to check it out.

GAN stands for generative adversarial network, a class of machine learning that features prominently in software like image generation; the “adversarial” part comes from the concept of networks pulling results between different goalposts. Drag Your GAN has a GitHub repository where code is expected to be released in June, but in the meantime, you can read the full paper or brush up on the basics of how AI image generators work, as well as see how image generation can be significantly enhanced with an understanding of a 2D image’s implied depth.