Keep OSNews alive by becoming a Patreon, by donating through Ko-Fi, or by buying merch!

Running Windows NT 4 MIPS on Qemu in 3 easy steps

Today we will be looking at how to run Windows NT 4 for MIPS on the Qemu emulator. I didn’t really have a reason to try this but it seemed like a fun weekend project. In the process I’ve learned a lot about how some systems booted, got even more angry about how awful BIOS boot was on PC, and probably found a 25 year old bug in the ARC boot firmware. While I’m sure all MIPS server admins of yore knew about this I could not find any documentation on the problem, nor any solution to it. I suspect that most people playing with this today are totally fine installing Windows NT on a FAT partition. It is however very puzzling to me that this problem exists at all. What am I talking about? Read on! I find the non-x86 versions from the early days of Windows NT fascinating, and I definitely want to buy some old hardware at some point to run on of them on bare metal. In the meantime, this is a nice substitute.

Making the Master System a master of speech

The Intellivision Voice Synthesis Module was released in 1982, giving the 16-bit console the power of speech. But unfortunately, most other consoles weren’t quite as lucky. Sure, some systems, like the PC Engine CD and Nintendo Famicom, have the ability to play samples directly, so at least they can do pre-recorded speech. But the Sega Master System can’t even do that. So how do we manage? This is the kind of obscure stuff the internet needs more of.

Intel’s Netburst: failure is a foundation for success

In the world of today’s high performance CPUs, major architectural changes don’t happen often. Iterating off a proven base is safer, cheaper, and faster than attempting to massively rework the basics of how a CPU fetches and executes instructions. But more than 20 years ago, things hadn’t settled down yet. Intel made two attempts to replace its solid but aging P6 microarchitecture with something completely different. One was Itanium, which avoided the complexity associated with out-of-order execution and variable length decode to deliver very wide in-order execution. Pentium 4 was the other, and we’ll be taking a look at it in this article. Its microarchitecture, called Netburst, targeted very high clock speeds using a long pipeline. Alongside this key feature, it brought a wide range of innovative architectural features. As we all know, it didn’t quite pan out the way Intel would have liked. But this architecture was an important learning experience for Intel, and was arguably key to the company’s later success. The Pentium 4 era was wild, with insane promises Intel could not fulfill, but at the same time, an are of innovation and progress that would help Intel in later years. Fascinating time.

Text consoles and framebuffer consoles in Linux

And the second post by Chris Siebenmann, this time about how the Linux console has gotten slower over the years. If you’ve been running x86 Linux servers for long enough, you’ve probably noticed two changes in the kernel’s text console. On the one hand, the text console has gotten substantially bigger, sporting sizes like 128×40 instead of the much smaller old sizes, for example 80×25. On the other hand, text output to the console has generally gotten slower, usually much slower than you would expect for the change in console size. These two changes are not unrelated, because they are both part of a fundamental change in how the kernel console normally worked and works on x86 hardware. Hint: the two posts are related.

How we wound up with Linux’s kernel mode setting

I’ve got two fantastic posts about Linux today, from the same author – Chris Siebenmann. First, the history behind kernel mode setting in Linux. In the older days of Linux, the kernel didn’t know very much about graphics (at least on PCs). Instead, setting up and handling graphics hardware was the domain of the X server; the kernel gave it access to PCI (or AGP) resources, and the X server directly stored values and read things out. Part of what the X server did was set the graphics mode (ie, the modeline resolution, depth, and scan frequencies), initially from explicit modelines and then over time from EDID information and other things you didn’t have to configure (which was great). This was user space mode setting. There were a variety of reasons to do this at the time (cf) but it had various drawbacks, including requiring the X server to have significant privileges (cf Fedora removing them). You can see where this is going.

Internet Explorer 11 has retired and is officially out of support

After 25+ years of helping people use and experience the web, Internet Explorer (IE) is officially retired and out of support as of today, June 15, 2022. To many millions of you, thank you for using Internet Explorer as your gateway to the internet. You hear that? That’s the cries of thousands of enterprise software engineers finally realising their garbage enterprise software doesn’t work anymore.

KDE Plasma 5.25 released

This new version brings many improvements: the accent colour can now be set based on the prominent colour from the current desktop background image (it updates if you use slide-show wallpapers) and it applies to more graphical elements. The global theme settings page lets you pick and choose which parts to apply, and floating panels add a margin all around the panel to make it float while no window is maximised. Touchscreen mode can now be activated by detaching the screen, rotating it 360, or enabling it manually. The overview effect can be activated by gestures on a touchpad or touchscreen, using the same smooth Wayland gestures GNOME has implemented as well. The application page for Discover has been redesigned and gives you links to the application’s documentation and website, and shows what system resources it has access to. Panels can now be navigated with the keyboard, and you can assign custom shortcuts to focus individual panels. And much, much more.

People on unsupported hardware were being offered Windows 11 22H2 upgrade

Yesterday, Microsoft released Windows 11 build 22621 to Windows Insiders enrolled in the Release Preview Channel, marking another step towards general availability of Windows 11 22H2 which is scheduled for release sometime later this year. However, it seems from reports on Reddit, that users on unsupported hardware are being offered the upgrade as well, even those on Windows 10. The wrong bit was flipped.

PowerMac 6100 upgrade guide

This site is a comprehensive resource for a variety of upgrades to the Apple PowerMac 6100 and related machines. Contrary to popular press and opinion, the PowerMac 6100 is a very expandable and upgradeable machine! From its humble beginnings as a “beginner’s” Performa, my venerable PowerMac is now a G3-powered, multimedia authoring workhorse machine with all manner of options, input devices, peripherals and cross-platform capabilities. It took a little elbow grease and a lot of reading, but now that the leg work has been done, it’s really quite easy! An extraordinary time capsule from 2000. These upgradeable Macs are some of the most interesting Macs Apple ever released, and I have a soft spot for the various rare and hard-to-find G3 and G4 processor upgrade cards – which is why Action Retro is one of my personal heroes.

DragonFly 6.2.2 released

Hopefully there’s a new ISO/img on the mirrors for DragonFly 6.2.2 by the time you read this – or you can just update your installation.  The changelog is short, because this is a bugfix-level release.  Also, don’t forget there’s a new set of binary packages out; update that too if you haven’t. Clear as day.

Xbox 360 architecture: a practical analysis

Released a year before its main competitor, the Xbox 360 was already claiming technological superiority against the yet-to-be-seen Playstation 3. But while the Xbox 360 might be the flagship of the 7th generation, it will need to fight strongly once Nintendo and Sony take up retail space. This new entry of the console architecture series will give you an additional perspective of how technology was envisioned during the early naughties, with emphasis on the emerging ‘multi-core’ processor and unorthodox symbiosis between components, all of which enabled engineers to tackle unsolvable challenges with cost-effective solutions. As with the other entries into the series, this is great weekend reading. Incredibly detailed, covering both hardware and software, the games, the development tools, and so much more. Excellent work.

OpenBSD 7.1 on PINE64 RockPro64

This is a small write-up about installing OpenBSD 7.1 on a PINE64 RockPro64 SBC. RockPro64 is a beefy single-board computer made by a company that brought us awesome devices like Pinebook Pro (laptop), Pinecil (soldering iron), PineTime (smartwatch) and of course PinePhone. The board utilizes the same hexa-core processor as Pinebook Pro – Rockchip RK3399, and 4 gigabytes of LPDDR4 RAM. One of the distinct features of that computer is a PCI-express X4 socket. Unfortunately I wasn’t able to use any video card there even with “stock” GNU/Linux – ARM64 GPU drivers for AMD/NVIDIA is just not there yet I assume. The slot is often being used for a network cards and SATA controllers – there is even an official case for RP64 with 3.5″ hard drives spots inside, quite handy for a homemade NAS or something of sorts. Exactly what it says on the tin.

Porting Doom to A/UX

It seems NCommander’s horrid journey porting Doom to AIX is inspiring others to the same. This time around, Cariad Keigher ported Doom to a more obscure UNIX variant – Apple’s A/UX. I’ve never considered porting Doom before, but I was curious if my favourite abandoned UNIX variant had a port. With some very brief cursory searches on Google and GitHub, I was led to believe that this was unlikely or if it had been done, it was never publicly announced a port or it has been lost to the sands of time. If it is the case nobody has bothered, there is a good reason: it isn’t exactly necessary. Once I explain A/UX, it’ll make sense why I am likely the first person ever to port the game to this platform. All I can say is – godspeed to people like NCommander and Keigher. This sort of hackery makes me feel all warm and fuzzy inside, even if I don’t always understand all the details of the programming work they’re doing. I wonder who will pick up the baton and what obscure UNIX will get a Doom port next. May I make a suggestion?

Haiku monthly activity report for May

The latest Haiku activity report has been published, and this one is heavy on the driver work. The intel_extreme driver has received quite a bit of love, and Haiku now has an RNDIS USB ethernet driover, which Android uses to share its WiFi connection, so you can now use an Android phone’s hotspot to get Haiku online (only a few devices have been tested so far, though. Another big improvement is the overhauled MTU. waddlesplash overhauled MTU (“maximum transmission unit”) and also receive size handling in the network stack and the FreeBSD compatibility layer. Previously, we always stayed at the default ethernet MTU of 1500, which was fine but suboptimal (as ethernet can usually support jumbo frames up to size 9000 or so), but more problematic was that we could not handle receiving anything larger than this, as it would trigger errors in the ethernet handler related to scattered I/O operations. This required a number of changes: first to the stack itself and to the IPv4 & IPv6 handlers to check the correct MTU value, then to the ethernet module to use larger buffers if necessary when reading or writing data, and finally to the FreeBSD compatibility layer to activate the larger MTUs. These changes had a side effect of fixing “high packet loss” on some devices (or at least PulkoMandy’s very recent Intel ethernet device, anyway.) This is just a small selection – there’s tons more, such as further improvements to the ARM and RISC-V ports, the addition of the OpenBSD WiFi stack to further widen Haiku’s WiFi driver pool, and tons more.

GNOME’s Mutter variable rate refresh support closer to being merged

Variable rate refresh (VRR / FreeSync / Adaptive-Sync) support for GNOME’s Mutter compositor is closer to being merged. The native back-end support for VRR that has been in development the past two years is no longer considered a work-in-progress and it’s believed there are no longer any blocking issues that would prevent this code from landing. Every modern compositor should support this.

EU reaches agreement mandating USB-C charging for phones and other devices

The European Union (EU) has reached an agreement that will make USB-C charging no longer just a convenience but a requirement for iPhones and all other mobile phones by the fall of 2024. The plan extends to additional consumer electronics using wired charging, including digital cameras, tablets, and, at a later date, laptops. Today’s announcement shows the EU Parliament and Council agreeing to terms for universal USB-C charging, something the parliament has spent 10 years arguing for. In September, the European Commission announced its intent to enact legislation requiring USB-C charging. The next step will be for the EU Parliament and Council to formally approve the agreement. A long time coming, but now it’s finally happening.

Windows 9x Video Minidriver HD+

The OS/2 Museum has made available the first version of a display driver disk for Windows 9x running on VirtualBox. The driver uses a linear framebuffer and supports 8/16/24/32bpp modes with resolutions up to 1920×1200 pixels. The driver is not accelerated but tends to be very speedy on modern hardware. I cannot wait to try this out. The linked article also includes a few notes about the development of the driver in question – it won’t come as a surprise that this wasn’t an easy process.