uvmac/docs/change/v3.2.html

1 line
13 KiB
HTML
Raw Normal View History

2020-03-14 19:28:01 +00:00
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title> Changes in Mini vMac 3.2.3 </title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="canonical" href="v3.2.html"> </head> <body> <div> <i> <a href="https://www.gryphel.com/index.html">www.gryphel.com</a>/c/<a href="../index.html">minivmac</a>/<a href="index.html">change</a>/v3.2 - <a href="https://www.gryphel.com/c/feedback.html">feedback</a> </i> </div> <hr> <h3 align=center> Mini vMac 3.2.3 <!-- *<i>Beta</i>* --> </h3> <h3 align=center> Changes </h3> <hr> <p> What has changed in Mini vMac 3.2.3, compared to Mini vMac 3.1.3. This only lists changes that affect behavior, and so doesn't include cleanups of the source code. </p> <p> : </p> <p> default compile: </p> <blockquote> <p> <a href="v3.2.html#feature">New features</a> </p><p> <a href="v3.2.html#modified">Changed behavior</a> </p><p> <a href="v3.2.html#bugs">Bug fixes</a> </p> </blockquote> <p> not in default compile: </p> <blockquote> <p> <a href="v3.2.html#compile_feature">New features</a> </p><p> <a href="v3.2.html#compile_modified">Changed behavior</a> </p><p> <a href="v3.2.html#compile_bugs">Bug fixes</a> </p> </blockquote> <p> <a href="v3.2.html#build">Build System</a> </p> <p> : </p> <p> <a name="feature"> <b> New features in default compile </b> </a> </p> <!-- <p> * None Yet. </p> --> <p> * 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.) </p> <p> * "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. </p> <p> 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. </p> <p> 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. </p> <p> 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. Also, the compile time option '-as 0' causes Mini vMac to start with AutoSlow disabled. </p> <p> 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. </p> <p> <a name="modified"> <b> Changed behavior in default compile </b> </a> </p> <!-- <p> * None Yet. </p> --> <p> * 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.) </p> <p> * 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,