Mini vMac November News

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

Moderators: Cat_7, Ronald P. Regensburg

Post Reply
User avatar
Site Admin
Posts: 4361
Joined: Mon May 20, 2002 4:37 am
Location: Uiwang

Mini vMac November News

Post by ClockWise »

Here are a couple of items from the Mini vMac site this month:

November 19, 2020

Work on the reference CPU emulator has been interrupted by Apple’s announcement of new ARM based Macintosh Computers.

The latest Development source snapshot adds support for XCode 12.3 (with “-ev 12300”), and a new target “-t mcar” (Macintosh on ARM).

I now have access to one of these new computers with ARM (also known as Apple Silicon, and the specific chip is called M1). Mini vMac for x86-64 seems to work fine on an M1 Mac Mini using Rosetta 2, with reasonable performance. An typical CPU score from Speedometer is around 146.000. On an Intel i7 Mac Mini 2018, a typical score is 438.000.

Mini vMac compiled for ARM on XCode worked on the first try, and got a score of 219.000. But this is without any tweaking for this specific compiler at all. With tweaking, I would be surprised if it does not end up faster than the i7 Mac Mini.

The Speedometer CPU score is a very rough measure. Other scores from even the same program give somewhat different results. For example, the Math score is actually already slightly better for the new M1 version than on the i7.

The next step is to support compiling for Apple Silicon with XCode command line tools, and then add it to the Variations Service.

November 4, 2020

The latest Development source snapshot fixes a few minor issues in the CPU emulation code.

I’m working on a way to deal with reports of Mini vMac not emulating software correctly that a different Macintosh emulator can, when the emulation of the CPU is the likely problem, by creating a reference CPU emulator. The reference emulator is designed to be as simple as possible while still being as accurate as possible, unlike the current CPU emulation of Mini vMac which is more about balancing performance and compactness. But the important difference is that the reference emulator will be designed to be easily grafted into another CPU emulator, using the CPU state of the host emulator, so that individual instructions can run on either emulator. By varying exactly which of the 65536 primary opcodes go to which emulator, one can determine exactly which one is causing a difference in behavior.

Creating the reference CPU emulator, using the current one in Mini vMac as a starting point, is also serving as a code review. I have noticed a number of minor issues, the most serious of which is that some opcodes would not be recognized as illegal. Mostly, a number of comments were incorrect.
Post Reply