MAME 2023 Mac emulation updates

About Mini vMac and all other 68k emulators, including SoftMac, Executor, and MESS.

Moderators: Cat_7, Ronald P. Regensburg

Post Reply
Arbee
Nice Guy
Posts: 37
Joined: Mon Sep 13, 2010 12:09 pm

MAME 2023 Mac emulation updates

Post by Arbee »

Lots of stuff happened this past year! MAME now supports all desktop 680x0 Macs with the correct ASICS emulated and show the correct Gestalt IDs except for the IIfx, Quadra 900/950, Macintosh TV, and the AV Quadras. (Quadra 700, 800, 610, 630, 650 all work and can run Mac OS 8.1). AppleSC CD-ROM support is improved and CD audio tracks now play for apps and games that use them.

On the PowerPC side, the 6100 now can boot a floppy into the installer and the keyboard and mouse work, but bugs remain before I can call it usable. The beige G3 can boot into Open Firmware and you can type commands to it and it responds. And the Bondi blue iMac chimes and turns on the screen, but then gets hung up in bugs. So consider those things future attractions.

Here are blog posts covering everything that happened, starting from last year's review:
https://rbelmont.mameworld.info/?p=1505
https://rbelmont.mameworld.info/?p=1542
https://rbelmont.mameworld.info/?p=1555
https://rbelmont.mameworld.info/?p=1594

And a few YouTube videos:
https://www.youtube.com/watch?v=hoBqL8evwIY shows the Quadra 700 playing some music in Sound Trecker
https://www.youtube.com/watch?v=t26j8pcFdt8 shows the Mac SE running the Apple CD-ROM Explorer and playing CD audio tracks
https://www.youtube.com/watch?v=NH7GR-e8hq0 shows the Quadra 800 and the Mac OS 8.1 CD player playing CD audio tracks

If you're on a modern Mac, MAME now has an easy to use Mac-and-Apple-emulation focused GUI called Ample: https://github.com/ksherlock/ample/releases

And the Mac version of Disk Jockey can convert mini vMac and Basilisk hard drive images into real hardware format that MAME (and BlueSCSI, ZuluSCSI, SCSI2SD, etc) require on real Macs: https://diskjockey.onegeekarmy.eu/

As always our Mac-on-MAME documentation wiki is up to date: https://wiki.mamedev.org/index.php/Driver:Mac_68K
User avatar
adespoton
Forum All-Star
Posts: 4414
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com

Re: MAME 2023 Mac emulation updates

Post by adespoton »

Arbee wrote: Sun Dec 17, 2023 3:01 pm Lots of stuff happened this past year! MAME now supports all desktop 680x0 Macs with the correct ASICS emulated and show the correct Gestalt IDs except for the IIfx, Quadra 900/950, Macintosh TV, and the AV Quadras. (Quadra 700, 800, 610, 630, 650 all work and can run Mac OS 8.1). AppleSC CD-ROM support is improved and CD audio tracks now play for apps and games that use them.

On the PowerPC side, the 6100 now can boot a floppy into the installer and the keyboard and mouse work, but bugs remain before I can call it usable. The beige G3 can boot into Open Firmware and you can type commands to it and it responds. And the Bondi blue iMac chimes and turns on the screen, but then gets hung up in bugs. So consider those things future attractions.

Here are blog posts covering everything that happened, starting from last year's review:
https://rbelmont.mameworld.info/?p=1505
https://rbelmont.mameworld.info/?p=1542
https://rbelmont.mameworld.info/?p=1555
https://rbelmont.mameworld.info/?p=1594

And a few YouTube videos:
https://www.youtube.com/watch?v=hoBqL8evwIY shows the Quadra 700 playing some music in Sound Trecker
https://www.youtube.com/watch?v=t26j8pcFdt8 shows the Mac SE running the Apple CD-ROM Explorer and playing CD audio tracks
https://www.youtube.com/watch?v=NH7GR-e8hq0 shows the Quadra 800 and the Mac OS 8.1 CD player playing CD audio tracks

If you're on a modern Mac, MAME now has an easy to use Mac-and-Apple-emulation focused GUI called Ample: https://github.com/ksherlock/ample/releases

And the Mac version of Disk Jockey can convert mini vMac and Basilisk hard drive images into real hardware format that MAME (and BlueSCSI, ZuluSCSI, SCSI2SD, etc) require on real Macs: https://diskjockey.onegeekarmy.eu/

As always our Mac-on-MAME documentation wiki is up to date: https://wiki.mamedev.org/index.php/Driver:Mac_68K
Wow! That's great progress, Richard! And somewhat amazing to have all 68000, 68020 and 68030 Macs emulating smoothly with correct ASICS AND CD audio!

And for others, a great benefit of the MAME implementation is that hardware debugging works.

Looks like it may be time for me to update https://docs.google.com/spreadsheets/d/ ... 2nWC9_t2w/ with a few more supported OS versions under MAME, too!
RichCini
Inquisitive Elf
Posts: 38
Joined: Fri Feb 28, 2020 3:10 am

Re: MAME 2023 Mac emulation updates

Post by RichCini »

I just saw this and it's awesome! I downloaded it and so far it works great with some of my old disk images that I had made for vMac. I'm going to try various disks/hard drives and see what happens.

I know MAME uses a rom list which ties to the zip files, and the ROM files look to be split like the real ROMs rather than linear as used in vMac and other emulators. If I wanted to take some images I had and split them/zip them up (like an SE/30 ROM), how would you recommend I do that?

Keep up the great work!
Rich
User avatar
adespoton
Forum All-Star
Posts: 4414
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com

Re: MAME 2023 Mac emulation updates

Post by adespoton »

Arbee wrote: Sun Dec 17, 2023 3:01 pm Lots of stuff happened this past year! MAME now supports all desktop 680x0 Macs with the correct ASICS emulated and show the correct Gestalt IDs except for the IIfx, Quadra 900/950, Macintosh TV, and the AV Quadras. (Quadra 700, 800, 610, 630, 650 all work and can run Mac OS 8.1). AppleSC CD-ROM support is improved and CD audio tracks now play for apps and games that use them.

On the PowerPC side, the 6100 now can boot a floppy into the installer and the keyboard and mouse work, but bugs remain before I can call it usable. The beige G3 can boot into Open Firmware and you can type commands to it and it responds. And the Bondi blue iMac chimes and turns on the screen, but then gets hung up in bugs. So consider those things future attractions.
...
As always our Mac-on-MAME documentation wiki is up to date: https://wiki.mamedev.org/index.php/Driver:Mac_68K
I notice the wiki doesn't mention PDS slots for the Color Classic or Color Classic II? Actually, it doesn't mention the CCII at all....

Are the hardware profiles with no details listed just undocumented, or are the slots unusable?

Makes me wish I still had my PDS Macs and various cards, so I could dump and document them :) It'd be awesome to be able to load the various PDS expansion and accelerator cards, as well as the PDS Ethernet cards that were out there.

Also, my Color Classic had a VRAM socketed upgrade and I was among the first people to re-wire the board to support 640x480 resolution. I always planned to get around to soldering in a second audio controller and speaker into the available slots, but never did that before I sold the thing. I'll have to investigate what's involved in making my own MAME hardware profile with these modifications :)
bribri
Student Driver
Posts: 19
Joined: Tue Apr 04, 2023 4:20 am

Re: MAME 2023 Mac emulation updates

Post by bribri »

I was just having some fun playing around with this via Ample. Very well done! I'm impressed that so many mac models can be emulated now.
User avatar
adespoton
Forum All-Star
Posts: 4414
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com

Re: MAME 2023 Mac emulation updates

Post by adespoton »

RichCini wrote: Fri Jan 19, 2024 9:33 pm If I wanted to take some images I had and split them/zip them up (like an SE/30 ROM), how would you recommend I do that?
I'm a bit late, but using a hex editor you can copy out the first half and the second half into unique files -- for most, that should be all you need to do, other than matching the naming conventions of MAME for the individual files and the name of the zip you put them in.
almeath
Mac Mechanic
Posts: 190
Joined: Mon Jul 18, 2005 5:42 am
Location: Australia

Re: MAME 2023 Mac emulation updates

Post by almeath »

I realize I have come to this late as well, but I made the time to set this up yesterday and I am pleasantly surprised at the huge progress. I recall years ago I could not even get the MacOS to boot up at all, so this is great.

I have a question though - does anyone know where I can obtain a definitive listing of what ROM/CHD/BIOS or various other support files MAME requires to emulate all the supported Mac models and hardware peripherals? (i.e. "mac128k.zip", "maccclas.zip", "macii.zip" etc.)

I ask because I was only able to get this working correctly by downloading an entire MAME 'merged' ROM set of 15,000 items and 75GB in size. I tried isolating any files starting with "mac" but then when I booted up the mouse was erratic and jumping all over the place and the emulated keyboard was not working properly at all.

It would be good to know exactly what is needed for Mac emulation only, so that I can ditch the rest of the files that are just taking up a huge amount of space.
User avatar
adespoton
Forum All-Star
Posts: 4414
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com

Re: MAME 2023 Mac emulation updates

Post by adespoton »

almeath wrote: Fri Jul 12, 2024 2:30 am I realize I have come to this late as well, but I made the time to set this up yesterday and I am pleasantly surprised at the huge progress. I recall years ago I could not even get the MacOS to boot up at all, so this is great.

I have a question though - does anyone know where I can obtain a definitive listing of what ROM/CHD/BIOS or various other support files MAME requires to emulate all the supported Mac models and hardware peripherals? (i.e. "mac128k.zip", "maccclas.zip", "macii.zip" etc.)

I ask because I was only able to get this working correctly by downloading an entire MAME 'merged' ROM set of 15,000 items and 75GB in size. I tried isolating any files starting with "mac" but then when I booted up the mouse was erratic and jumping all over the place and the emulated keyboard was not working properly at all.

It would be good to know exactly what is needed for Mac emulation only, so that I can ditch the rest of the files that are just taking up a huge amount of space.
If you're on macOS, the Ample front-end automatically pulls the latest Mac/Apple ROMs from archive.org without pulling down the whole set. If you're not, you can use the MAME front-end itself to see what zip files and hashes MAME is looking for.
almeath
Mac Mechanic
Posts: 190
Joined: Mon Jul 18, 2005 5:42 am
Location: Australia

Re: MAME 2023 Mac emulation updates

Post by almeath »

adespoton wrote: Fri Jul 12, 2024 3:21 pm If you're on macOS, the Ample front-end automatically pulls the latest Mac/Apple ROMs from archive.org without pulling down the whole set. If you're not, you can use the MAME front-end itself to see what zip files and hashes MAME is looking for.
Thanks, I am using Windows but I also have a Mac, and it looks like it is easier to do all the configuration on that side. There does not seem to be anything as good as Ample on the PC side.
User avatar
adespoton
Forum All-Star
Posts: 4414
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com

Re: MAME 2023 Mac emulation updates

Post by adespoton »

almeath wrote: Sat Jul 13, 2024 3:40 am
adespoton wrote: Fri Jul 12, 2024 3:21 pm If you're on macOS, the Ample front-end automatically pulls the latest Mac/Apple ROMs from archive.org without pulling down the whole set. If you're not, you can use the MAME front-end itself to see what zip files and hashes MAME is looking for.
Thanks, I am using Windows but I also have a Mac, and it looks like it is easier to do all the configuration on that side. There does not seem to be anything as good as Ample on the PC side.
The good news is, the ROMs and the MAME configurations are identical for Ample and regular MAME, so you can set up your configs on the Mac and just copy everything over to the Windows PC and it should work.
almeath
Mac Mechanic
Posts: 190
Joined: Mon Jul 18, 2005 5:42 am
Location: Australia

Re: MAME 2023 Mac emulation updates

Post by almeath »

Yes, it worked perfectly. In particular, it is very useful to see the command line output updated live as you adjust settings in the GUI. I can then just paste them into my launch scripts in Windows.

MAME has finally provided that sweet spot I was seeking for running games that came out right at the advent of System 7.0 - too old to work properly in SheepShaver due to things like speed sensitivity, and yet also not working in Mini vMac for various reasons. A particular bugbear of mine has been early LucasArts games with incorrect music reproduction, such as Monkey Island and Loom. They both work perfectly in System 7.1 while emulating a Quadra 800 in MAME.

And.. I can finally use CRT shaders with a Macintosh emulator! I already figured out how to get my favorite tweaked lottes shader converted to the MAME format, so I’m really satisfied with this outcome.

Given the pace of development over the last couple of years, there is huge potential once they can find a way to get Power Macintosh models fully working.
User avatar
adespoton
Forum All-Star
Posts: 4414
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com

Re: MAME 2023 Mac emulation updates

Post by adespoton »

almeath wrote: Thu Jul 18, 2024 5:28 pm Yes, it worked perfectly. In particular, it is very useful to see the command line output updated live as you adjust settings in the GUI. I can then just paste them into my launch scripts in Windows.

MAME has finally provided that sweet spot I was seeking for running games that came out right at the advent of System 7.0 - too old to work properly in SheepShaver due to things like speed sensitivity, and yet also not working in Mini vMac for various reasons. A particular bugbear of mine has been early LucasArts games with incorrect music reproduction, such as Monkey Island and Loom. They both work perfectly in System 7.1 while emulating a Quadra 800 in MAME.

And.. I can finally use CRT shaders with a Macintosh emulator! I already figured out how to get my favorite tweaked lottes shader converted to the MAME format, so I’m really satisfied with this outcome.

Given the pace of development over the last couple of years, there is huge potential once they can find a way to get Power Macintosh models fully working.
I'm hoping that some of the work done on DingusPPC can be re-used in concept to assist with MAME PPC emulation. Until then, you can always use DingusPPC as well -- it runs System 7.1 quite nicely :)
almeath
Mac Mechanic
Posts: 190
Joined: Mon Jul 18, 2005 5:42 am
Location: Australia

Re: MAME 2023 Mac emulation updates

Post by almeath »

adespoton wrote: Thu Jul 18, 2024 8:30 pm I'm hoping that some of the work done on DingusPPC can be re-used in concept to assist with MAME PPC emulation. Until then, you can always use DingusPPC as well -- it runs System 7.1 quite nicely :)
Thanks, I will check it out. Would you say it is in a "usable" state? I would consider usable to mean sound works properly, not randomly crashing/freezing, and running at at least close to native speeds for the machine it is emulating.

Apparently proper support for the PowerMac 6100 in MAME is close though. Exciting times for Mac emulation. :smile:
User avatar
adespoton
Forum All-Star
Posts: 4414
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com

Re: MAME 2023 Mac emulation updates

Post by adespoton »

almeath wrote: Fri Jul 19, 2024 7:05 am
adespoton wrote: Thu Jul 18, 2024 8:30 pm I'm hoping that some of the work done on DingusPPC can be re-used in concept to assist with MAME PPC emulation. Until then, you can always use DingusPPC as well -- it runs System 7.1 quite nicely :)
Thanks, I will check it out. Would you say it is in a "usable" state? I would consider usable to mean sound works properly, not randomly crashing/freezing, and running at at least close to native speeds for the machine it is emulating.

Apparently proper support for the PowerMac 6100 in MAME is close though. Exciting times for Mac emulation. :smile:
You can give DingusPPC a quick spin already via infinitemac.org -- the PM6100 emulation is good enough to boot and run apps; I can't recall whether it's got audio emulation working yet.
almeath
Mac Mechanic
Posts: 190
Joined: Mon Jul 18, 2005 5:42 am
Location: Australia

Re: MAME 2023 Mac emulation updates

Post by almeath »

adespoton wrote: Fri Jul 19, 2024 3:20 pm You can give DingusPPC a quick spin already via infinitemac.org -- the PM6100 emulation is good enough to boot and run apps; I can't recall whether it's got audio emulation working yet.
Thanks, I will check it out.
Arbee
Nice Guy
Posts: 37
Joined: Mon Sep 13, 2010 12:09 pm

Re: MAME 2023 Mac emulation updates

Post by Arbee »

Sorry, for some reason I don't get notified about replies here. I'll have to check my user settings :-)

The wiki page has been updated to cover the PDS slots and the newest cards available, so adding a second monitor or Ethernet to machines with the LC PDS slot is covered.

I'll condense the major updates so far for 2024 here:
- FPU bugs causing the Jigsaw Puzzle desk accessory and Wolfenstein 3D to glitch out (as well as bad results in some calculator apps) have been fixed.
- ADB emulation for machines using the PIC1654S ADB modem has been bug fixed, so mouse movement and keyboard/mouse switching is now smooth on the SE, II, IIx, IIcx, IIci, SE/30, Quadra 700, and Quadra 800.
- Emulation of the Egret and Cuda microcontrollers has been improved to properly sync the clock to the host computer's time and date at startup, instead of defaulting to August of 1956 (the birthday of Egret and Cuda creator Ray Montagne, which is hardcoded into the firmware for both of those chips).
- The IOP co-processors used in the IIfx, Quadra 900, and Quadra 950 were emulated and those 3 machines now work. All but two desktop 68k Macs are now supported (the Quadra 660AV and 840AV are the last hold-outs).
- Some improvements to the Mitsubishi M50753 microcontroller emulation and our low-level ADB bus emulation made the Mac Portable and PowerBook 100 fully working, including simulated battery level and charger status (currently it always reads as 100% battery and plugged in to AC power but that could be made configurable in the future for laughs). Other PowerBook 1xx machines are coming as well.
User avatar
adespoton
Forum All-Star
Posts: 4414
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com

Re: MAME 2023 Mac emulation updates

Post by adespoton »

Arbee wrote: Sun Sep 22, 2024 5:43 pm Sorry, for some reason I don't get notified about replies here. I'll have to check my user settings :-)

The wiki page has been updated to cover the PDS slots and the newest cards available, so adding a second monitor or Ethernet to machines with the LC PDS slot is covered.

I'll condense the major updates so far for 2024 here:
- FPU bugs causing the Jigsaw Puzzle desk accessory and Wolfenstein 3D to glitch out (as well as bad results in some calculator apps) have been fixed.
- ADB emulation for machines using the PIC1654S ADB modem has been bug fixed, so mouse movement and keyboard/mouse switching is now smooth on the SE, II, IIx, IIcx, IIci, SE/30, Quadra 700, and Quadra 800.
- Emulation of the Egret and Cuda microcontrollers has been improved to properly sync the clock to the host computer's time and date at startup, instead of defaulting to August of 1956 (the birthday of Egret and Cuda creator Ray Montagne, which is hardcoded into the firmware for both of those chips).
- The IOP co-processors used in the IIfx, Quadra 900, and Quadra 950 were emulated and those 3 machines now work. All but two desktop 68k Macs are now supported (the Quadra 660AV and 840AV are the last hold-outs).
- Some improvements to the Mitsubishi M50753 microcontroller emulation and our low-level ADB bus emulation made the Mac Portable and PowerBook 100 fully working, including simulated battery level and charger status (currently it always reads as 100% battery and plugged in to AC power but that could be made configurable in the future for laughs). Other PowerBook 1xx machines are coming as well.
Wow, that's great progress Richard! Down to the hardware with the custom chips now that work in a non-standard way.

Is anyone currently working on the PPC code? It looks like DingusPPC may have some progress that could be a useful secondary reference here -- but what I'm really waiting for is a MAME reference implementation of the Mac ATi Rage 128, which will open up a bunch of opportunities in emulating turn of the century Macs.
Post Reply