| Click here to select a new forum. |
| Windows NT PPC on Macs |
Posted by: Rairii on 2024-07-13 06:26:10
For NT on Alpha there was a dynamic recompilation thing from x86 - no idea how well it worked though or whether it made it to the PPC build. In the NT4 times there was wx86 for Alpha, MIPS and PowerPC.
For PowerPC specifically, there's a version of wx86 that has the emulator replaced with a port of Insignia SoftWindows: https://archive.org/details/softwindows-32-powerpc-v1.01
I've had that running fine under my dingus tree but haven't checked it on real hardware yet. |
Posted by: Rairii on 2024-07-13 06:39:43
I’d love to see this evolve further with custom drivers, stability improvements, more supported models, etc. Most of these projects don’t go beyond proof of concept though, just gotta hope this goes further. I plan to. I have an iBook G3 sitting next to me that runs NT in the wrong endianness (it boots, plenty of weird issues that would be HELL to debug), but thanks to the port to Gossamer-derivatives I learned what MSR_LE actually does, so eventually I'll do a bare metal ARC firmware little endian port to them (yes, I poked around uni-north registers hoping there was a PCI endianness switch register bit like on Bandit, but no luck).
The main things that need to be dealt with for a decent set of drivers are HAL related. There's no DMA support at all yet, mainly because even though the thing's documented due to its usage in Hydra, I have no idea how Apple's overblown DMA works. Also I'm not even sure if PCI interrupts work properly yet, most of the existing implementations just assume firmware sets up the PCI config registers appropriately, and the interrupts are completely different here (for example, I'm not sure how exactly the PCI interrupts would work for devices behind a bridge).
But given that I started porting NT to Wii to learn more about NT internals that I didn't know much about, and then later to Uni-North because I ran into hardware issues and an iBook G3 was cheaper than a USB Gecko, and then later to Gossamer-derivatives because the MPC106 actually has a little endian mode and there were systems that officially ran PowerPC NT that used it, I guess "learning things" is the entire point.
Although bring-up has been getting quicker I guess. I only bought my Lombard two months ago! |
Posted by: obsolete on 2024-07-13 13:47:06 Welcome to the forum, @Rairii! You'll fit right in here 🙂 |
Posted by: MOS8_030 on 2024-07-13 16:08:06
There is an old Vogons thread talking about PPC NT stuff but sadly the archive.org link doesn’t seem to work anymore:
www.vogons.org
Way back around 1997-8 in the the heady days of the Apple Clone Wars when I was at Motorola we had one of those PowerStack systems running NT in our office. Our admin had it set up as a server since everyone else in the office was still using Macs.
I don't know what became of that PowerStack system. There weren't many of them made to begin with and Microsoft dropped all their work on PPC NT immediately.
I got one of only a couple StarMax systems that made it in to our group before Apple killed licensing.
I ran NT for a while on my 200mhz Starmax via Virtual PC. It was slow but it worked. |
Posted by: Nixontheknight on 2024-07-13 19:22:40
Screen!
This just seems... wrong:
View attachment 75689
View attachment 75690
View attachment 75691
Here are the system specific strings from the System Control Panel:
View attachment 75692
View attachment 75693
Plays Pinball:
View attachment 75688
Its surprisingly stable for a hack. It only crashed twice for me. if my DV iMac wasn't in pieces and in need of a recap, I'd do this |
Posted by: croissantking on 2024-07-13 22:56:06
if my DV iMac wasn't in pieces and in need of a recap, I'd do this But the GitHub readme says it’s only for tray loaders. |
Posted by: Daniël on 2024-07-14 05:01:26
But the GitHub readme says it’s only for tray loaders.
On top of that, there's no possibility of adding ADB to a Slotloader. The Trayloaders have a bunch of left over functional legacy connectors on the logic board, including ADB, making it possible to actually use NT4 at this point, given the current lack of (working) USB HID drivers. |
Posted by: croissantking on 2024-07-14 05:04:49
On top of that, there's no possibility of adding ADB to a Slotloader. The Trayloaders have a bunch of left over functional legacy connectors on the logic board, including ADB, making it possible to actually use NT4 at this point, given the current lack of (working) USB HID drivers Ummm. No USB? They say the G4 Yikes is compatible. |
Posted by: Daniël on 2024-07-14 05:05:51
Ummm. No USB? They say the G4 Yikes is compatible.
It's a Gossamer Mac, so yes, it theoretically is compatible, but there's no functional input on that Mac either for now, unless you solder the ADB connector and supporting components back, like on the Trayloader. |
Posted by: croissantking on 2024-07-14 05:08:49
It's a Gossamer Mac, so yes, it theoretically is compatible, but there's no functional input on that Mac either for now, unless you solder the ADB connector and supporting components back, like on the Trayloader. I mean, that’s a great idea, assuming I can work out what supporting components it needs.
It’s kind of a catch 22 - machine must be new world but USB is broken. The Lombard is the only machine that works without any hardware modification, since its keyboard and trackpad are connected by ADB.
Edit: Oh, and the G3 Yosemite, of course! |
Posted by: Daniël on 2024-07-14 05:12:16
I mean, that’s a great idea, assuming I can work out what supporting components it needs.
There's an article that describes it here: https://ameblo.jp/keroxiee1016/entry-12663017372.html
For the Trayloader, it's just the inductors (or resistors as used for the larger inductors in this article), and the fuse, those capacitors aren't used on the board. That said, the location of the MiniDIN-4 connector on the Trayloader board is right behind a screw post for the side panel, making it unusable in that position.
It very much seems like it was there for testing purposes during the prototype phase, that wasn't removed before production. But that just adds to my theory that the Trayloader was rushed, and the Slotloader being the iMac G3 Apple would have shipped right out of the gate if they had the means and time to do so. |
Posted by: croissantking on 2024-07-14 05:14:14
the Trayloader was rushed Less rushed than the TAM though, right? |
Posted by: croissantking on 2024-07-14 05:16:28
There's an article that describes it here: Whoa, awesome. This is great! |
Posted by: Nixontheknight on 2024-07-14 07:24:21
But the GitHub readme says it’s only for tray loaders. that's what I get for reading too fast |
Posted by: joevt on 2024-07-14 15:54:29
I learned what MSR_LE actually does Does the NT on PowerPC stay in little endian mode all the time, or does it switch to big endian sometimes? In either case, I am wondering if the LE check in dingusppc could be done outside the CPU instruction execution loop so that when it happens, the emulator just goes into a different CPU instruction execution loop. |
Posted by: wottle on 2024-07-14 17:56:24 This makes me want to run it on my Black G3 All-In-One that I upgraded with a Yikes CPU. I'm assuming that won't work until they get it working with the Beige G3 (same logic board as the AIO). Would be fun to see NT running on a G4 AIO... |
Posted by: Rairii on 2024-07-15 02:44:21
Does the NT on PowerPC stay in little endian mode all the time, or does it switch to big endian sometimes? In either case, I am wondering if the LE check in dingusppc could be done outside the CPU instruction execution loop so that when it happens, the emulator just goes into a different CPU instruction execution loop. It stays in little endian mode all the time. |
Posted by: Snial on 2024-07-15 05:11:39 OK, so based on the current conversation, NT for PPC could run on a 603e-based Mac as it too supports Little-endian mode, if it also supported built-in USB?
|
Posted by: finkmac on 2024-07-15 05:29:56 to my knowledge, all powerpc cpus do little endian. the usb support for this isn't work yet either. neither of those are requirements for ntppc.
Spoiler content hidden. |
Posted by: croissantking on 2024-07-15 06:14:13
OK, so based on the current conversation, NT for PPC could run on a 603e-based Mac as it too supports Little-endian mode, if it also supported built-in USB?
View attachment 75838 It only supports Gosammer boards currently, not sure what it would take to get it to work on anything older. |
| < 2 > |