All the different emulators are most suitable for different purposes. Mini VMac is simpler and better for early Macs; Basilisk for Macs with MMUs (68030 and 68040); QEMU is very versatile, but quite resource heavy, MAME (I think) is more game oriented.This is very interesting!
But, how does it compare to emulators like SheepShaver, and, for 68k, Basilisk, Mini vMac, QEMU and, what is it, MAME or MESS?
If I'm not mistaken, it seems to be an attempt to create a new, more accurate emulator from scratch, yes?
c
ld.w r19,rIp,0 ;rIp^instruction, r19=opcode.
ld.l r20,rVecBase,r19<<2;dependecy on r19.
jmp.n r20 ;jump with delayed branch again, dep on r19.
add rIp,2 ;6c.
;So, NOPs at 8c each? So, at 25MHz, that's about 3MIPs max.
;Simple Ins:
ld.l r5,rDRegs,n
ld.l r6,rDRegs,m
add.u r5,r5,r6 ;update flags too.
;save flags (flags need translating for a number of scenarios).
st.l r5,rDRegs,n ;store result.
;Next. So, 7cycles to 10 cycles, so 18c, so 1MIP.
The mihaip (InfiniteMac) fork is based mostly on the dingusdev upstream fork. It has all the same code and only replaces some UI bits to make it work in WebAssembly. The dingusdev fork will eventually get the memory upgrade commits from the joevt fork and those will eventually end up in the mihaip fork. Or the mihaip fork can cherry pick the commits from my fork instead of waiting.So, I guess this is for a native macOS emulator rather than InfiniteMac's web-based emulator (which I understand is a WebAssembly conversion of DingusPPC)? I've only been trying the InfiniteMac version, which still only allows 8MB of real RAM even with the latest build: cd67940
I have also seen this issue. I'm not sure why this happens. Why is floppy and CD working by HD is not working? Could it be the SCSI drivers in the HD image? But aren't those 68K? I haven't investigated. What if it boots with CD and has HD for data?Trying to boot the HD image of 7.1.2 on Infinite Mac's PM6100 emulator hangs (though as you can see from earlier comments, 7.1.2 disk tools could boot).
Probably 7500 just needs some commits from the joevt fork. That machine type has an 8500 variant (includes sixty6 video out; planb video in may be added later) and a 9500 variant (includes bandit2). For 9500, a PCI graphics card needs to be added. We have the ATIs for the Beige G3 but probably need to add their fcode as a PCI option ROM to make them work.The PM7200 is an interesting machine to me, being the first PCI Mac! The 7500 emulator on InfiniteMac won't boot properly, it does a slow screen clear to black and then the pointer cursor appears within a grey 16x16 block against that black background. Then Mac OS (I've tried 7.5.3) doesn't boot (but the mouse moves).
SheepShaver is faster (has a JIT compiler and maybe some harddrive and graphics acceleration) but is limited to System 7.5.2 to 9.0.4. It patches the ROMs in order to work. SheepShaver can share host files. I don't think aliases to host files work between boots.But, how does it compare to emulators like SheepShaver, and, for 68k, Basilisk, Mini vMac, QEMU and, what is it, MAME or MESS?
If I'm not mistaken, it seems to be an attempt to create a new, more accurate emulator from scratch, yes?
I wouldn't know how to reboot the PM6100 on CD in VM mode, but using the HD for swap. I always assumed swap was on the boot drive. Oh, of course, there's a drop-down in the memory panel to choose it, but I never thought about that.The mihaip (InfiniteMac) fork [Summary mihaip <= dingusdev <= jeovt forks, but mihaip could bypass]
I have also seen this issue. I'm not sure why this happens. Why is floppy and CD working by HD is not working? Could it be the SCSI drivers in the HD image? But aren't those 68K? I haven't investigated. What if it boots with CD and has HD for data?
So they'll be able to eventually. @mihai , currently looking at the f28bd59 commit. I'm finding the PM7500 boots into a black screen with a movable cursor (but the green activity led never starts flickering).pm7200 and later can boot from HD but require 7.5.3 or later.
Probably 7500 just needs some commits from the joevt fork [.. some interesting HW explanations for why it's possible and/or not too much effort based on related models].
I'm excited about Dingus PPC, because it handles VM and PPC601, 603(e). I'm hoping there will be some kind of early 603(e) model support at some point (maybe 5200 as it would be fun to present the all-in-one look of the 5200).SheepShaver .. QEMU.. DingusPPC tries to [summary: emulate PPC601.. G3 & the chipsets instead of modifying drivers by ROM-patching. OF and VM should work and Mac OS 7.1.2 to Mac OS X 10.4.11. Not JIT. No host FS/ Networking yet. PCI bridge, but few PCI devices & no USB. Basic ATI card & multiple display support.].
I didn't think about virtual memory not being possible with CD boot. I guess booting with CD is one way to make sure VM is not enabled. So your theory is that HD doesn't boot because of problems VM?I wouldn't know how to reboot the PM6100 on CD in VM mode, but using the HD for swap. I always assumed swap was on the boot drive. Oh, of course, there's a drop-down in the memory panel to choose it, but I never thought about that.
It depends on the documentation and info that can be found. Some of the info can be gleaned from the ROM of the Mac. All the ROMs are available online in various places. What's not available is the Power Express ROM and New World ROMs (not the ROM files from classic Mac OS which don't contain the Open Firmware parts needed to boot - Sheep Shaver bypasses Open Firmware and qemu uses OpenBIOS). Other useful info would come from running certain commands in Open Firmware (device tree and properties, aliases, lspci, and dumping registers from the Mac IO controller).I'm excited about Dingus PPC, because it handles VM and PPC601, 603(e). I'm hoping there will be some kind of early 603(e) model support at some point (maybe 5200 as it would be fun to present the all-in-one look of the 5200).
I can certainly run System 1.0 on a Mac 128kB today:Anyone else having trouble with infinitemac today? Or is it just me.
View attachment 71497
View attachment 71498
Weird. Just me then.I can certainly run System 1.0 on a Mac 128kB today:
View attachment 71499
And 1.1, 2.0 and 2.1 (which says Finder 5.0):
View attachment 71500
@mihai, @joevt - actually just trying to restart the 6100 causes the hang, it's not specific to trying to reboot into VM. It happens even if there's no infinite HD, just a boot drive too.Hi @jeovt! Sorry about the lack of a reply until now.
I wouldn't know how to reboot the PM6100 on CD in VM mode, but using the HD for swap. I always assumed swap was on the boot drive. Oh, of course, there's a drop-down in the memory panel to choose it, but I never thought about that.
So they'll be able to eventually. @mihai , currently looking at the f28bd59 commit. I'm finding the PM7500 boots into a black screen with a movable cursor (but the green activity led never starts flickering).
View attachment 71493
I'm excited about Dingus PPC, because it handles VM and PPC601, 603(e). I'm hoping there will be some kind of early 603(e) model support at some point (maybe 5200 as it would be fun to present the all-in-one look of the 5200).
@mihai , I always look forward to the updates, so sorry to have a downer on the latest commit, but from a PM 6100 viewpoint it's slightly worse. I still can't choose anything more than 8MB of RAM, but also VM doesn't work any more. Instead (and I've tried on 7.5.3, 7.5.5, and 7.6) trying to restart with VM just leads to a hang before it can restart:
View attachment 71494
(half-erased Control Strip). Mac OS 8.0 and 8.1 just generate a dialog saying it's the wrong installer and nothing later will run in 8MB. Previously I could reboot into VM mode, but couldn't run MacBench 4.0 as it would hang while checking SCSI.
I did some experimentation and the error only showed in FireFox on my Android phone (worked in another browser). I updated FireFox and now it works.Weird. Just me then.
Hmm, I wonder if any of the issues I see are due to the browser (Safari on M2)?I did some experimentation and the error only showed in FireFox on my Android phone (worked in another browser). I updated FireFox and now it works.
Infinite Mac has a limit of 256MB. Maybe that could be increased to support the 264MB option for PM6100. Round the max up to 384MB so that PM6100 is not the machine with the most allowed RAM? DPPC emulating outside Infinite Mac allows up to 1.5 GB for some Macs.Hi @mihai , (and @joevt). Checking out the latest: 2fcb4fe commit on the PM6100 emulation. Firstly, wow! Great to see that it supports higher RAM sizes: 12MB, 24MB, 40MB, 72MB and 136MB (every 8MB+(4<<x) MB except for x=1 curiously). And in About The Finder will report the right amount of RAM. I've tested Mac OS 7.5.3. In theory this means that despite it still being able to reboot (and thus VM can't be made to work), apps that bust the 8MB boundary can run.
Bad news: The HD images for Mac OS 8.0 to 9.22 won't boot - the Mac puts up a dialog to say it's the wrong installation.
PM6100 can boot Disk Tools 8.1 floppy. I haven't found a CD or HD that PM6100 can boot for >= 8.0 but I haven't really looked.I tried to run a few CD images, but 8.0 failed loading a chunk from the CD; 8.1 said it was the wrong type of installation (as per the boot HDs); 8.5 and 9.2.2 just seemed to hang.
DPPC doesn't have timers that would give accurate results anyway but that shouldn't stop MacBench 4.0 from running. I'll give it a try later.Also, as before, MacBench 4.0 won't run.
Reboot should work. I'll do more testing later.Also, I can't reboot the PM6100 under any OS.
I'll compare upstream fork with my fork to see if Infinite Mac could be improved with existing commits from my fork.PowerMac 7500 emulation has the same problem as before: it does a slow screen clear and then you just see a Mouse pointer with a checkerboard background in what appears to be a 16x16 pixel area.
I'm super-impressed that I can choose more than 8MB !Infinite Mac has a limit of 256MB. Maybe that could be increased to support the 264MB option for PM6100. Round the max up to 384MB so that PM6100 is not the machine with the most allowed RAM? DPPC emulating outside Infinite Mac allows up to 1.5 GB for some Macs.
OK.PM6100 can boot Disk Tools 8.1 floppy. I haven't found a CD or HD that PM6100 can boot for >= 8.0 but I haven't really looked.
Thanks! On my MacBook M2, The PM6100 emulator is far faster than a real 6100 should have been of course, though on my Mac mini late 2012 (Dual core i5 at 2.5GHz) it's quite a lot slower than a real 6100.DPPC doesn't have timers that would give accurate results anyway but that shouldn't stop MacBench 4.0 from running. I'll give it a try later.
Thanks!Reboot should work. I'll do more testing later.
I think that I should probably get around to contributing instead of just testing with my fixation on the PM6100. Most people seem to be interested in the G3 and faster/later machines, but my interest is in the earliest machines and a relatively authentic experience. However, since I'm not contributing to the project, I don't mind if it takes quite a while for these things to work (unless I start contributing). I think that it'd be quite nice for Infinite Mac to emulate a Performa 5200 at some point, because then the screen could look like a real Performa 5200!I'll compare upstream fork with my fork to see if Infinite Mac could be improved with existing commits from my fork.
Thanks! I've just run the PM6100 emulation again. It does indeed restart! And VM is supported again! And MacBench gets further: it doesn't crash on initialisation while testing SCSI; I can start to run some tests, but it seems to get stuck in a loop on the FPU tests (the PM6100 didn't crash, it just doesn't complete while the mouse still moves and I gave it a couple of minutes). Speedometer tests run:I've updated the Infinite Mac build with the latest upstream DingusPPC code, and the 6100 should be restartable again.
It really is great stuff!FWIW the fork that I have (https://github.com/mihaip/dingusppc) is just for Infinite Mac-specific changes. I usually rebase it (from the upstream at https://github.com/dingusdev/dingusppc) every week or so.
To be honest, the two things that don't run in a lot of different emulators I've found, are benchmarks and TattleTech.Hi @mihai ,
Thanks! I've just run the PM6100 emulation again. It does indeed restart! And VM is supported again! And MacBench gets further: it doesn't crash on initialisation while testing SCSI; I can start to run some tests, but it seems to get stuck in a loop on the FPU tests (the PM6100 didn't crash, it just doesn't complete while the mouse still moves and I gave it a couple of minutes). Speedometer tests run:
View attachment 71927
CPU is 38% faster, FPU about 5x faster, when emulated on my MacBook M2. This means it feels like a 100MHz PPC601 Mac.
Anyway, great progress!
It really is great stuff!
-cheers from Julz
PowerMac 7500 emulation has the same problem as before: it does a slow screen clear and then you just see a Mouse pointer with a checkerboard background in what appears to be a 16x16 pixel area.
For TNT machines (7500, etc.) you may be able to boot from floppy (except for a crash that may occur if the machine plays a system beep which it probably will since DPPC doesn't support writing to floppy).I'll compare upstream fork with my fork to see if Infinite Mac could be improved with existing commits from my fork.