The next Development source snapshot fixes the cursor display issue in the
Mac II emulation (by implementing the VBL interrupt in the emulated video card). So now this emulation can be perfectly useable for long stretches of time, until it attempts to play sound or do any floating point arithmetic. The FPU and ASC emulation need to be worked on. It is still black and white only for now. (The build option for Macintosh II emulation is ´-m II´.)
Besides the documentation from Apple (such as "Designing Cards and Drivers for Macintosh II and Macintosh SE"), the source code for the Basilisk II emulator has been a useful reference. Thanks.
Also thanks to Jonathan and Shelly Pratt, for making possible this work.
There are a number of other changes besides the cursor display fix. The
Mac II emulation can now support other screen sizes, at compile time with the -hres and -vres options. The default is 640x480, but 800x600 for example can be selected with ´-hres 800 -vres 600´. The MacsBug debugging software operates correctly, unlike when using the larger screen hack implemented for other Macintosh models. (The video card ROM, which lists the available modes, is now created dynamically at startup. Only the driver code is precompiled. The source to this driver is now included in the snapshot. I forgot to include it in the previous snapshot.)
The
Mac II emulation can now use 8M of memory, twice the 4M limit on all previous versions of Mini vMac. The build option is ´-mem 8M´. It can also use ´-mem 5M´, ´-mem 4M´, ´-mem 2M´, and ´-mem 1M´. The ´-m´ option now checks that it´s argument is valid for the machine being emulated. So the
Mac II for example has two banks of memory, each of which can contain 1M or 4M or none (or higher on the real machine, but that isn´t useful with 24 bit memory addressing).
By the way, the
Mac II emulation in Mini vMac does implement 32 bit addressing, as it is required to even boot, but the emulation is optimized for 24 bit addressing. The 32 bit addressing mode is significantly slower.
The
Mac II emulation now implements the automatic power off at shutdown. That is, Mini vMac will quit automatically.
Besides all the
Mac II emulation work, this snapshot also has an initial port to Gtk. This will allow the Linux version to better match the other ports, with menus and an open file dialog. It also will make possible a port to Maemo, which is based on Gtk. The build option is ´-t lx86 -api gtk´. (The build system now optionally allows you to choose what API to use, instead of automatically setting it from the selected target.)