PumpkinOS

PumpkinOS: A Modern Reimplementation Of PalmOS For Today’s Platforms

In a world where the personal digital assistant (PDA) has become yet another retro computing system, it’s always nice when experiencing the software for such platforms can be done in a way that does not involve hunting down original hardware of questionable functionality. Here PumpkinOS is a PalmOS-compatible project by [migueletto] which runs as a regular application on modern systems and allows for  original PalmOS applications for the Motorola 68k to run on x86 and ARM host systems.

On start-up the Launcher shows up first, just like with PalmOS, from which the four standard PalmOS applications (AddressBook, MemoPad, ToDoList and DateBook) can be launched. Due to endianness issues (m68k being Big Endian), files created by these applications cannot be shared between PumpkinOS and PalmOS, and as noted on the GitHub page, it’s still a far from finished project. That said, it appears to be able to run quite a few original PalmOS applications from sites like PalmDB, and compatibility should get better over time.

The author maintains a development blog as well, for those who are interested in the more in-depth details of this project.

A Brief History Of Keyboard Encoding

Photoelectric encoder keyboard configured as ASCII
Photoelectric encoder keyboard configured as ASCII

While typing away on our DIN, PS/2, USB or Bluetooth keyboards one of the questions which we rarely concern ourselves with is that of how the keyboard registers which keys we’re pressing. One exception here is when the keyboard can only register a limited number of simultaneous keypresses (rollover). Even though most keyboards today use a matrix which connects the keys, there are many configuration choices even here, which much like other keyboard configurations come with their own advantages and disadvantages. As a good primer we can look at this article by [Daniel Beardsmore] as he takes us through both historical and current-day keyboards.

Especially before  it was realistic to just put an entire microcontroller with a look-up table into every keyboard, more inventive approaches were required to not only register keypresses, but also encode them for the host computer. The photoelectric approach of the 1960s was one such encoding method, before diode matrices became popular, along with more exotic encoding switches that contained their code already hard-wired on their multitude of pins. One inevitable limitation with these was that of a lack of multi-key support, leading to the development of matrix scan technology around 1970.

Matrix scanning keyboards allow for multiple key presses at the same time, tackle debouncing of keys and were at the forefront of what gives us the ubiquitous and generally boringly reliable keyboards which we use today.

The Rise And Fall Of Silicon Graphics

Maybe best known as the company which brought a splash of color to corporate and scientific computing with its Indigo range of computer systems, Silicon Graphics Inc. (later SGI) burst onto the market in 1981 with what was effectively one of the first commercial graphics operations accelerator with the Geometry Engine. SGI’s founder – James Henry Clark was quite possibly as colorful a character as the company’s products, with [Bradford Morgan White] covering the years leading up to SGI’s founding, its highlights and its eventual demise in 2009.

The story of SGI is typical of a start-up that sees itself become the market leader for years, even as this market gradually changes. For SGI it was the surge in commodity 3D graphics cards in the 1990s alongside affordable (and cluster-capable; insert Beowulf cluster jokes here) server hardware that posed a major problem. Eventually it’d start offering Windows NT workstations, drop its MIPS-based systems in a shift to Intel’s disastrous Itanium range of CPUs and fall to the last-ditch effort of any struggling company: a logo change.

None of this was effective, naturally, and ultimately SGI would file (again) for Chapter 11 bankruptcy in 2009, with Rackable Systems snapping up its assets and renaming itself to SGI, before getting bought out by HPE and sunsetting SGI as a brand name.

Fortran And WebAssembly: Bringing Zippy Linear Algebra To NodeJS & Browsers

With the rise of WebAssembly (wasm) it’s become easier than ever to run native code in a browser. As mostly just another platform to target, it would be remiss if Fortran was not a part of this effort, which is why a number of projects have sought to get Fortran supported on wasm.

For the ‘why’, [George Stagg] makes the point that software packages like BLAS and LAPACK for Fortran are still great for scientific computing, while the ‘how’ is a bit more hairy, but getting better courtesy of the still-in-development LLVM front-end for Fortran (flang-new). Using it for wasm is not straightforward yet, due to the lack of a wasm32 target, but as [George] demonstrates, this is easily patched around.

We reported on Fortran and wasm back in 2016, with things having changed somewhat in the intervening eight years (yes, that long). The Fortran-to-C translator utility (f2c) is effectively EOL, while LFortran is coming along but still missing many features. The Dragonegg GCC-frontend-for-LLVM project was the best shot in 2020 for Fortran and WebAssembly, but obsolete now. Classic Flang has been in LLVM for a while, but is to be replaced with what is now called flang-new. The wish by [George] is now to find a way to get his patched flang-new code for wasm support into the project.

In the article, the diff for patching the flang-new toolchain to target wasm is provided. During compilation of the standard Fortran runtime it was then found that the flang-new code assumes that target system sizeof() results are identical to those of the host system, which of course falls flat for wasm32. One more patch (or hardcoded hack, rather) later the ‘Hello World’ example in Fortran was up and running, clearing the way to build the BLAS (Basic Linear Algebra Subprograms) and LAPACK (Linear Algebra Package) libraries and create a few example projects in Fortran-for-wasm32 which uses them.

The advantage of being able to use extremely well-optimized software packages like these when limited to a browser environment should be obvious, in addition to the benefit of using existing codebases. It is certainly [George]’s hope that flang-new will soon officially support wasm (32 and 64-bit) as targets, and he actively seeks help with making this a reality.

Jpegli: Google’s Better JPEG And Possible Death Knell For WebP

Along with the rise of the modern World Wide Web came the introduction of the JPEG image compression standard in 1992, allowing for high-quality images to be shared without requiring the download of a many-MB bitmap file. Since then a number of JPEG replacements have come and gone – including JPEG 2000 – but now Google reckons that it can improve JPEG with Jpegli, a new encoder and decoder library that promises to be highly compatible with JPEG.

To be fair, it’s only the most recent improvement to JPEG, with JPEG XT being introduced in 2015 and JPEG XL in 2021 to mostly deafening silence, right along that other, better new image format people already forgot about: AVIF. As Google mentions in their blog post, Jpegli uses heuristics developed for JPEG XL, making it more of a JPEG XL successor (or improvement). Compared to JPEG it offers a higher compression ratio, 10+-bit support which should reduce issues like banding. Jpegli images are said to be compatible with existing JPEG decoders, much like JPEG XT and XL images.

Based on the benchmarks from 2012 by [Blobfolio] between JPEG XL, AVIF and WebP, it would seem that if Jpegli incorporates advancements from AVIF while maintaining compatibility with JPEG decoders out there, it might be a worthy replacement of AVIF and WebP, while giving JPEG a shot in the arm for the next thirty-odd years of dominating the WWW and beyond.

Voyager 1 Issue Tracked Down To Defective Memory Chip

After more than forty-six years all of us are likely to feel the wear of time, and Voyager 1 is no different. Following months of harrowing troubleshooting as the far-flung spacecraft stopped returning sensible data, NASA engineers now feel confident that they have tracked down the cause for the problem: a single defective memory chip. Why this particular chip failed is unknown, but possibilities range from wear and tear to an energetic particle hitting it and disrupting its operation.

We’ve covered the Voyager 1 troubleshooting saga so far, with the initial garbled responses attributed to a range of systems, but narrowed down to the Flight Data Subsystem (FDS), which prepares data for transmission by the telemetry modulation unit (TMU). Based on a recent ‘poke’ command that returned a memory dump engineers concluded that the approximately 3% of corrupted data fit with this one memory chip, opening the possibility of a workaround.

Recently NASA engineers have also been working on patching up the firmware in both Voyager spacecraft, against the background of the dwindling energy produced by the radioisotope generators that have kept both spacecraft powered and warm, even in the cold, dark depths of Deep Space far beyond the light of our Sun.

3M’s Floppy Disks: A Story Of Success And The Birth Of Imation

3M, or as it was officially called until 2002, the Minnesota Mining and Manufacturing Company is one of those odd-duck companies where if you ask what products they manufacture the answer is pretty close to a general ‘yes’. Throughout its 121 year history, it’s moved from producing sandpaper to also producing adhesives, laminates, personal protective equipment, as well as a nearly infinite list of further products which at one point in time included a magnetic storage range of products. How this latter came to be is the subject of an article by [Ernie Smith], focusing on floppy disk storage.

Although 3M was not the one to invent floppy disks or magnetic storage, their expertise in making small grains of material stick in an organized fashion on a wide range of materials came in handy. This first allowed 3M to make a name for itself with its Scotch magnetic (reel-to-reel) tape, followed by 3M moving into the floppy disk market by 1973. Over the years following this introduction, 3M storage media came to be known as highly reliable, but as the 1990s saw the magnetic storage market mature and stagnate, 3M management saw the writing on the wall and spun this division off into a new company: Imation.

While the floppy disk isn’t quite dead yet, at this point in time Imation and its main competitors like Memorex are now mostly just a fading memory — while 3M is still plowing ahead, creating new divisions and divesting as opportunities arise.