(Macintosh) Mini vMac v3.2.3 Beta - 模擬器
By Rosalind
at 2011-09-22T11:55
at 2011-09-22T11:55
Table of Contents
2011.09.22
Mini vMac v3.2.3 Beta is released. Mini-vMac is a Macintosh Plus,
Macintosh SE, Macintosh 128 and Macintosh 512 emulator. Mini vMac
emulates a Macintosh Plus, one of the earliest of Macintosh computers.
It can run old Macintosh software that otherwise couldn't be used on
recent machines.
--
Mini vMac v3.2.3 Beta Changelog:
New features in default compile
* Auto scrolling: If the emulated screen is larger than the real screen
while in full screen mode, the emulated screen will be scrolled to
keep the mouse pointer in view. (Previously only the top left corner
would ever be displayed, and even that didn't work quite right.)
* "AutoSlow": Mini vMac will automatically shift down to 1x speed if
there is no activity for a while. This helps to preserve the battery
on portable computers.
If the user types, or clicks or moves the mouse, or the emulated computer
draws to the screen, or reads or writes to an emulated disk, that counts
as activity that prevents AutoSlow.
AutoSlow takes effect after either 0.5 seconds of emulated computer time,
or 16 seconds worth of emulated instructions executed (usually about 2
seconds at the default 8x speed), which ever is longer.
It is possible that some software will not draw anything to the screen
for longer than that while doing real work, so the AutoSlow feature can
be disabled with Control-S-W.
A blinking insertion point will not prevent AutoSlow. This required
improving the code for detecting how much of the emulated screen was
changed. This makes Mini vMac more efficient in general, since
transfering images to the real screen tends to be expensive. Previously
it would detect that areas at the top and bottom of the emulated screen
hadn't changed, to limit the amount of drawing to the real screen. Now
it can detect that areas at the left and right of the emulated screen
haven't changed. If the remaining area that has changed is only a single
pixel wide and less than 32 pixels tall, it is assumed to be only a
blinking insertion point, that doesn't prevent AutoSlow.
Changed behavior in default compile
* Have begun making tweaked assembly version of 68000 emulation for Intel
x86 computers (starting from assembly language generated by gcc). This
makes Mini vMac faster, as well as giving more consistent results when
Mini vMac is compiled with different development environments. (Had
previously only made tweaked assembly language for PowerPC computers.)
* Improved accuracy of timing. Mini vMac now measures time in cycles
rather than instructions executed. In the simplest form, all
instructions are assumed to take the same number of cycles, and this
closely matches the results of previous versions of Mini vMac. (Mini
vMac actually counts sixty fourth cycles, not just integer number of
cycles, so that average times of instructions can be more accurate.)
But by default, Mini vMac now assigns an average number of cycles for
each of the 65536 primary opcodes.
As a compile time option, in addition to using the table, Mini vMac can
try to compute more accurate cycles for certain instructions, depending
on the current data. This is slower, and only implemented in the C
version of the 68000 emulation, making it slower still.
The build system option "-ta 0" selects the least accurate of these
three methods, the default is "-ta 1", and "-ta 2" selects the most
accurate.
The most accurate option is still not completely accurate. Completely
accurate timing would be exceedingly difficult. For example, the CPU and
video output conflict for accesses to RAM, and that would seem very
complex to model.
The greater accuracy is so far mostly theoretical. The timings were
entered from Motorola documentation. It needs to be tested and calibrated
by comparing to real hardware. Currently 68000 timings are used even in
the 68020 emulation. More accurate timing for 68020 should be added in a
future version. Truly accurate timing for 68020 would be much more
difficult than for the 68000 because of pipelining and caching, probably
to the point of being unfeasible for Mini vMac. But more accurate
averages should be possible.
* Mini vMac will now by default mount disk images in Disk Copy 4.2 format
as read only. This is because by default Mini vMac ignores the checksum
and tags of this format, so writing to the image makes it invalid. Mini
vMac can be compiled with full support for this format, in which case
the images will be writable.
The new utility CnvtDC42 converts Disk Copy 4.2 format images to a new
image without the tags and checksums, that the default version of Mini
vMac can write to.
* The Windows and Linux versions now match a previous feature of the
Macintosh versions. When switching from full screen to normal mode, or
toggling magnification in normal mode, it will preserve the emulated
cursor position, by moving the host computer's cursor.
* As an additional safety feature, the control mode confirmation for the
reset, interrupt, and quit commands will now treat anything other
than 'y' as meaning no, rather than ignoring it. (With exception that
a repeated key is ignored - so 'q' is ignored for quit, 'r' for reset,
and 'i' for interrupt.) This is because I once managed to accidentally
reset Mini vMac by typing unintentionally into control mode.
* The power button can now be used in the OS X version when in full
screen mode, to put the (real) computer to sleep.
* I've rearranged the Mini vMac about page (Control-A) a bit to make
room for another idea I have for the variations. It no longer displays
which the computer is being emulated. That can be inferred from the
variation number.
Bug fixes in default compile
* In OS X, changing the screen configuration, such as switching between
using the internal screen of a MacBook Air and an external screen,
would tend to make Mini vMac stop drawing.
* In OS X, if the screen configuration changes when in full screen mode,
Mini vMac will turn off full screen mode, instead of just leaving the
emulator window at a size that is now wrong.
* In OS X, may now have a viable work around for misbehavior of the
operating system calls to hide and show the cursor. The most easily
reproducible such situation was when the computer went to sleep and
then wakes up, the real cursor would end up visible.
* In OS X, The operating system can sometimes bring up a dialog, such
as for force quit (upon command-option-escape), and Mini vMac wouldn't
notice, leaving the real cursor hidden, making the dialog hard to use.
______________________________________________________________________________
下載:http://www.mediafire.com/?mu469rhzic4qso2
官方:http://minivmac.sourceforge.net/
--
Mini vMac v3.2.3 Beta is released. Mini-vMac is a Macintosh Plus,
Macintosh SE, Macintosh 128 and Macintosh 512 emulator. Mini vMac
emulates a Macintosh Plus, one of the earliest of Macintosh computers.
It can run old Macintosh software that otherwise couldn't be used on
recent machines.
--
Mini vMac v3.2.3 Beta Changelog:
New features in default compile
* Auto scrolling: If the emulated screen is larger than the real screen
while in full screen mode, the emulated screen will be scrolled to
keep the mouse pointer in view. (Previously only the top left corner
would ever be displayed, and even that didn't work quite right.)
* "AutoSlow": Mini vMac will automatically shift down to 1x speed if
there is no activity for a while. This helps to preserve the battery
on portable computers.
If the user types, or clicks or moves the mouse, or the emulated computer
draws to the screen, or reads or writes to an emulated disk, that counts
as activity that prevents AutoSlow.
AutoSlow takes effect after either 0.5 seconds of emulated computer time,
or 16 seconds worth of emulated instructions executed (usually about 2
seconds at the default 8x speed), which ever is longer.
It is possible that some software will not draw anything to the screen
for longer than that while doing real work, so the AutoSlow feature can
be disabled with Control-S-W.
A blinking insertion point will not prevent AutoSlow. This required
improving the code for detecting how much of the emulated screen was
changed. This makes Mini vMac more efficient in general, since
transfering images to the real screen tends to be expensive. Previously
it would detect that areas at the top and bottom of the emulated screen
hadn't changed, to limit the amount of drawing to the real screen. Now
it can detect that areas at the left and right of the emulated screen
haven't changed. If the remaining area that has changed is only a single
pixel wide and less than 32 pixels tall, it is assumed to be only a
blinking insertion point, that doesn't prevent AutoSlow.
Changed behavior in default compile
* Have begun making tweaked assembly version of 68000 emulation for Intel
x86 computers (starting from assembly language generated by gcc). This
makes Mini vMac faster, as well as giving more consistent results when
Mini vMac is compiled with different development environments. (Had
previously only made tweaked assembly language for PowerPC computers.)
* Improved accuracy of timing. Mini vMac now measures time in cycles
rather than instructions executed. In the simplest form, all
instructions are assumed to take the same number of cycles, and this
closely matches the results of previous versions of Mini vMac. (Mini
vMac actually counts sixty fourth cycles, not just integer number of
cycles, so that average times of instructions can be more accurate.)
But by default, Mini vMac now assigns an average number of cycles for
each of the 65536 primary opcodes.
As a compile time option, in addition to using the table, Mini vMac can
try to compute more accurate cycles for certain instructions, depending
on the current data. This is slower, and only implemented in the C
version of the 68000 emulation, making it slower still.
The build system option "-ta 0" selects the least accurate of these
three methods, the default is "-ta 1", and "-ta 2" selects the most
accurate.
The most accurate option is still not completely accurate. Completely
accurate timing would be exceedingly difficult. For example, the CPU and
video output conflict for accesses to RAM, and that would seem very
complex to model.
The greater accuracy is so far mostly theoretical. The timings were
entered from Motorola documentation. It needs to be tested and calibrated
by comparing to real hardware. Currently 68000 timings are used even in
the 68020 emulation. More accurate timing for 68020 should be added in a
future version. Truly accurate timing for 68020 would be much more
difficult than for the 68000 because of pipelining and caching, probably
to the point of being unfeasible for Mini vMac. But more accurate
averages should be possible.
* Mini vMac will now by default mount disk images in Disk Copy 4.2 format
as read only. This is because by default Mini vMac ignores the checksum
and tags of this format, so writing to the image makes it invalid. Mini
vMac can be compiled with full support for this format, in which case
the images will be writable.
The new utility CnvtDC42 converts Disk Copy 4.2 format images to a new
image without the tags and checksums, that the default version of Mini
vMac can write to.
* The Windows and Linux versions now match a previous feature of the
Macintosh versions. When switching from full screen to normal mode, or
toggling magnification in normal mode, it will preserve the emulated
cursor position, by moving the host computer's cursor.
* As an additional safety feature, the control mode confirmation for the
reset, interrupt, and quit commands will now treat anything other
than 'y' as meaning no, rather than ignoring it. (With exception that
a repeated key is ignored - so 'q' is ignored for quit, 'r' for reset,
and 'i' for interrupt.) This is because I once managed to accidentally
reset Mini vMac by typing unintentionally into control mode.
* The power button can now be used in the OS X version when in full
screen mode, to put the (real) computer to sleep.
* I've rearranged the Mini vMac about page (Control-A) a bit to make
room for another idea I have for the variations. It no longer displays
which the computer is being emulated. That can be inferred from the
variation number.
Bug fixes in default compile
* In OS X, changing the screen configuration, such as switching between
using the internal screen of a MacBook Air and an external screen,
would tend to make Mini vMac stop drawing.
* In OS X, if the screen configuration changes when in full screen mode,
Mini vMac will turn off full screen mode, instead of just leaving the
emulator window at a size that is now wrong.
* In OS X, may now have a viable work around for misbehavior of the
operating system calls to hide and show the cursor. The most easily
reproducible such situation was when the computer went to sleep and
then wakes up, the real cursor would end up visible.
* In OS X, The operating system can sometimes bring up a dialog, such
as for force quit (upon command-option-escape), and Mini vMac wouldn't
notice, leaving the real cursor hidden, making the dialog hard to use.
______________________________________________________________________________
下載:http://www.mediafire.com/?mu469rhzic4qso2
官方:http://minivmac.sourceforge.net/
--
Tags:
模擬器
All Comments
Related Posts
(PC-E) Ootake v2.61
By Rebecca
at 2011-09-22T11:42
at 2011-09-22T11:42
Nintendulator 0.975 beta (2011/09/21)
By John
at 2011-09-21T23:18
at 2011-09-21T23:18
GameBoy Online (2011/09/21)
By Quintina
at 2011-09-21T23:17
at 2011-09-21T23:17
MisfitMAMEUIFX32 v0.128.B
By Mary
at 2011-09-21T23:16
at 2011-09-21T23:16
MameUI v0.143.6
By George
at 2011-09-21T23:14
at 2011-09-21T23:14