Sweet16 Release Notes
Version 2.3.1 (July 31, 2011)
- Improved the vertical mouse wheel support to be more reliable.
- Added support for horizontal mouse wheel scrolling.
- The emulator speed overlay now moves properly when the video window is resized.
Version 2.3 (July 20, 2011)
- The mouse scroll wheel now operates by sending appropriate events to scrollable content to scroll it, instead of sending keyboard up and down.
- Clearing of system memory on a reset is now done like a real IIgs.
- The right-click button on your Mac mouse or trackpad is now delivered to the GS as a right-click.
- The “Clear Recent Disks” menu option no longer crashes.
- The “Get Clipboard from Mac” NDA has been replaced with a corrected copy that actually works.
- Rewrote all the sound code to use Core Audio instead of the archaic Sound Manager.
- Revamped the about box to look nicer.
- Performance of audio in select programs that use one-shot mode on the DOC has been improved (examples include Tass Times in Tonetown and Arkanoid). It’s not perfect but it’s better.
- Removed some dead code here and there, which reduced code size and improved performance.
- Classic 1-bit sound code is no longer being disabled when not in use; this prevents the first few moments of audio from being lost while it gets turned back on.
- While paused, the GS display is now dimmed to make this obvious.
- The CPU preferences panel now includes a note explaining that quitting and restarting Sweet16 is required to make changes to the ZipGS on/off setting take effect.
- Fixed a crash that was happening when playing the disk eject sound effect; this should finally resolve the last of the crashes happening when ejecting disks.
- Added a note to the screen border when in full screen mode that explains how to get out of full screen mode.
- Moved the system speed display into the video window, and its option to turn it on and off to the View menu.
Version 2.2.1 (September 16, 2010)
1. The SmartPort emulation now correctly sets the screen hole at $07F8 to $C7 each time a device is accessed; this corrects some issues with disks not working as expected; for example, now you can boot ProDOS 8 and then run the GS/OS bootstrap version of the PRODOS file to switch to GS/OS.
Version 2.2 (July 18, 2010)
1. Sweet16 now defaults to having speed control enabled, with the GS set to a 40 MHz emulated speed. This prevents laptops from getting hot while running Sweet16. You can easily turn off speed control to let your GS fly, using the preferences’ CPU options panel.
2. You can now mount ProDOS-order (.po) disk images that are not floppy disk sizes.
3. When paused, Sweet16 no longer continues to use lots of your Mac’s processor capacity.
4. Creating 1.4 MB disks using the Create Disk Image feature now creates disk images that are actually 1.4 MB, rather than 1.6 MB.
Version 2.1.3 (August 29, 2009)
1. Massive speed improvement (especially on PowerPC) achieved by optimizing the main CPU thread loop.
2. Fixed a problem preventing the speed control feature from working on PowerPC.
3. Control-H no longer resets the Apple IIgs. Oops.
4. Removed some stray debug output.
5. Rewrote the Recent Disks code so the Recent Disks submenu now only shows file names instead of full URLs to the files in the list. This makes it much more user-friendly.
Version 2.1.2 (August 26, 2009)
1. Fixed several errors in the French keyboard support.
2. Creating any size disk image, including floppy disk sizes, now has the same speed gain as creating hard disk images got in Sweet16 2.1.1.
3. Removed an obsolete error message.
4. Fixed an error message that was coming up blank when trying to create invalidly-sized DiskCopy 4.2 images.
5. The disk image size now tracks correctly in the “Create Disk Image” window, so the size you get actually matches the size you picked all the time (there were cases in which that wouldn’t necessarily be true).
Version 2.1.1 (August 4, 2009)
1. Reworded the alert that appears when trying to mount a CD-ROM when no CD-ROM is found, since the same alert is used both when there is no CD-ROM media available as well as when there is no CD-ROM drive available.
2. Memory no longer gets leaked when controls in the Create Disk Image and Create Emupack file panels are clicked on.
3. The Create Disk Image panel now lets you create DiskCopy 4.2 images at 1.4 MB.
4. The Create Disk Image panel’s size popup no longer wanders out of view when you resize the panel.
5. Enabled some new optimizations that noticeably improves performance on PowerPC systems.
6. Removed some unnecessary debug output.
7. The SpiderMonkey JavaScript runtime is now weak-linked, so that Sweet16 really does now run on PowerPC G3 systems (albeit without debugger support).
8. The Create Disk Image panel now lets you choose a disk image format on Mac OS X 10.4; previously this popup window didn’t do anything prior to Mac OS X 10.5.
9. Creating disk images of even 1 MB sizes (5 MB, 10 MB, 32 MB, 100 MB, for example) now goes much, much faster, since instead of writing out 512 bytes at a time, these are written 1 MB at a time. A future update will provide a similar performance improvement for floppy size image creation.
10. Clicks in the video window are no longer ignored when the System Information window is open.
11. Removed some unnecessary mutual exclusion code in the networking support, speeding up networking substantially.
12. Rewrote the video timing code to be more precise.
13. The main event loop now does sleeps instead of busy-loops, dramatically reducing wasted CPU cycles; Sweet16 plays much more nicely with other running processes now.
Version 2.1 (July 23, 2009)
1. Added a new View menu, with new half-size, normal size, and double size options.
2. Moved the Full Screen option to the View menu.
3. Fixed a serious memory corrupting/crashing bug in the Get Clipboard NDA.
4. Improved the robustness of the Sweet16 side of the clipboard code.
Version 2.0 (July 23, 2009)
1. Added to the help menu links to several useful Apple II related web sites.
2. Improved the algorithm for detecting DiskCopy and DiskCopy 6 images to hopefully work better.
3. Fixed a bug that would cause a crash if an error occurred while trying to allocate the buffers for full screen mode; now full screen mode is simply disabled if this happens.
4. Instead of giving up and ejecting the CD-ROM if an error occurs, now the first nine partitions are all tried, and if any of them succeed, the disk is considered mounted. This lets it work with disks that have “free space” and unrecognized partitions.
5. Removed some dead code.
6. Fixed the EMUBYTE softswitch to correctly return $16 as the product ID; this has been broken for a very long time.
7. Rewrote the networking code. The new networking code is both faster and no longer requires annoying authentication and so forth to use it. There is a new link layer that must be installed to use the updated networking code successfully.
8. Removed Sparkle support for automatic updating; the Carbon version of this is a fourth-party patch and I decided I’d rather not worry about it.
9. The debugger should now be disabled on G3 systems; I still haven’t figured out why the debugger makes Sweet16 crash on launch on G3 systems, so at least now Sweet16 should work, but the debugger will silently do nothing.
10. Fixed the data displayed in the Finder’s Get Info window to correctly show Sweet16’s version number where you expect it to be.
11. Gamepads are now supported for game control.
12. Fixed a bug that caused screenshots captured under certain circumstances to have garbage at the bottom.
13. Disk images that are exactly 819,200 bytes long are now assumed to be 800K raw disk images, regardless of their type and/or extension.
14. The disk eject code has been updated to no longer crash while trying to redraw the online disks window.
15. Added support for, and implemented, two new NDAs: GetClipboard and SendClipboard; these let you copy the Mac clipboard to the IIgs clipboard and vice versa.
16. Added Emupacks — self contained packages including disk images, ROM, and preferences that can all be opened and enabled at once, simply by double-clicking the Emupack in the Mac Finder.
17. Fixed the preference for disabling the mouse in text modes so it actually works.
18. Removed the window that says Sweet16 is recalculating DiskCopy 4 checksums; it didn’t stay onscreen long enough to be helpful, and would sometimes crash because it was being opened from background threads.
19. The Close option in the File menu is now disabled if the video window is frontmost, since you can’t close it.
Version 2.0 Public Beta 2 / 2.0b18 (August 11, 2008)
1. Rebuilt the integrated JavaScript support to work on both PowerPC G4 and G5 processors. G3 support should be forthcoming.
Version 2.0 Public Beta 2 / 2.0b17 (August 10, 2008)
1. If no joystick is connected, the joystick routines now report that they’re dead center.
2. If the memory for the screen shot buffer can’t be allocated, screen shots are disabled, instead of letting it try and crash.
3. You can now paste text from the Mac clipboard into the Apple IIgs. Only ASCII characters are supported at present.
4. Added a System Information window to show the CPU speed.
5. Programmers can access the OpenGL buffer used to draw the Apple IIgs screen in banks $E2 through $E9 of Apple IIgs memory. This is a 640x400 pixel buffer in 16-bit color.
6. The Sparkle framework is now used to provide automatic updates. I don’t know how well this will work yet.
7. Added mutex to fix problems with crashes adding and removing disks to the online disks windows.
8. Added a new Toggle Full Screen NDA so you can toggle full screen within the IIgs environment.
9. Fixed a crash that occurred when changing the window title from the CPU thread; it is now done in the UI thread.
10. Fixed a problem with color palettes that affected colors in DreamGrafix, Wolfenstein 3D, and other applications.
11. You can now mount disk images by dragging them to the application’s icon.
12. Added joystick support; USB joysticks are now supported (but not gamepads).
13. Fixed a crash that occurred when ejecting disks by moving the resize of the online disks window into the UI thread.
14. If GS/OS is shut down and you’re at the “It’s now safe to shut off your Apple IIgs” screen, quitting Sweet16 no longer asks for confirmation, since it’s safe to quit.
15. Added a new preference that lets Sweet16 automatically switch to 1 MHz when booting 5.25” disk images.
16. If the first character of a disk image name you’re creating isn’t a letter, it’s replaced with an “x” when naming the ProDOS volume written onto it.
17. Implemented TCP/IP networking support over Ethernet.
18. Strings are now in the localizable.strings file so they can be localized.
19. Replaced the application icon with something less dorky looking.
20. Added a sweet new debugger.
21. Fixed the title of the About window to get rid of some junk characters.
22. You can now mount ISO format disk images; these may require the High Sierra (ISO) FST to be installed, depending on the format of the contents.
23. You can now mount CD-ROM disks into Sweet16. Sweet16 will attempt to mount all partitions on the disc. Ejecting the disk from the emulator physically ejects it from the computer.
24. Added the “Open CDA Menu” option to the Setup menu; this lets you open the CDA menu if you don’t remember the keys to do it, or if they conflict with some other software running on your Mac.
Version 2.0 Public Beta 1 (July 19, 2007)
1. Graphics are now done using OpenGL for added performance.
2. Added routines that Apple IIgs code can call to aid in debugging.
3. Added support for setting the video window’s title bar to indicate the name of the running Apple IIgs application.
4. Added the Storage panel to preferences, which includes settings for whether to mount 3.5” disk images on CleverPort or IWM by default, as well as a preference for whether to automatically set the IIgs to 1 MHz when booting 5.25” disk images.
5. Added support for full screen mode.
6. You can now resize the video window to any size; just hold down the option key to make the resize box appear.
7. Now using Carbon events for improved performance and capabilities.
8. Improved showing and hiding of the Mac mouse cursor.
9. You can now switch between 16:10 aspect ratio and 4:3. 16:10 looks better, but 4:3 is the standard Apple IIgs aspect ratio for the screen, so things are the correct shape.
10. Fixed a bug that was causing files to be created if they didn’t exist, which was causing problems if your ROM was missing (it would create an empty ROM file and start having weird errors).
11. DiskCopy 4.2 and Universal Disk Image files are now recognized by their file type and creator codes, which makes mounting these easier if they’re missing their extensions.
12. Universal Disk Image files are now recognized by their contents, and can therefore be mounted even if their type, creator, and extension are wrong.
13. HDRV images are now recognized by type and creator.
14. The mouse scroll wheel now sends up and down arrow key events to the IIgs.
Version 1.7.3 (September 12, 2006)
1. Fixed timing problems with time-based interrupts such as the quarter-second and 1-second interrupts, which makes time-based games tend to work much better.
2. Choosing the Dvorak and French Canadian keyboard layouts in the Control Panel no longer crashes Sweet16, and should actually provide the correct keyboard layout.
3. Removed some unneeded data.
4. Speed control now works correctly on PowerPC machines; it had previously been fixed only on Intel processors.
Version 1.7.2 (August 28, 2006)
1. You can now write to 5.25" disk images.
2. You can now drag multiple disk images to the disks window to mount them all at once.
Version 1.7.1 (August 18, 2006)
1. Holding down the option key while mounting 800K disk images now mounts them as CleverPort devices instead of as IWM floppy disks; this lets you mount lots of 3.5" disk images at once, which makes installing the system software, for example, incredibly easy.
2. Updated the URL in the documentation that's presented for where to go to download system disks.
3. Aliases to files now resolve correctly, so you can drop aliases to your disk images into the Disk Images folder, instead of moving the images themselves.
4. The Reset command in the Setup menu now works correctly.
5. Optimized more PowerPC code, resulting in a small additional performance boost over version 1.7.
6. Fixed a bug that prevented Recent Disks from mounting.
7. Items in the Eject submenu now display the name of the disk correctly; this broke in version 1.7 due to the UTF-8 change.
8. Ejecting a disk then inserting a new one now properly redraws the contents of the disks window if it's visible. Previously, it was possible for the contents of the window to become somewhat confused in this situation.
9. Fixed a bug that caused the mouse cursor to bounce around the screen when Default Folder X is installed. This also slightly improves the response performance of the mouse in Sweet16.
10. Fixed a couple of problems that caused crashes when clicking in the disks window under certain circumstances.
11. The Control-Command-M keyboard combination now properly issues the Mount Disk Image command.
12. Fixed a memory leak when initializing the Recent Disks menu.
13. Added a "Clear Recent Disks" command to the Recent Disks menu. This empties the recent disks list.
14. Fixed a bug that caused new DiskCopy 4.2 images to have invalid names in their DiskCopy 4.2 headers.
15. Fixed a bug that caused the progress window used when creating disk images or calculating the checksum on a DiskCopy 4.2 image to crash.
16. Fixed HTML markup problem in the documentation that made the instructions on copying the ROM from a IIgs unreadable.
17. Fixed the error dialog box that appears if you try to mount too many disks (or too many of a given type) so it actually contains text.
18. Fixed the "allow 14 MB" checkbox and the other controls in the Memory panel in the Preferences window to stay in sync properly.
19. Fixed the memory size preference so it resets to 8 MB if you turn off the "allow 14 MB" checkbox with the memory size set above 8 MB.
Version 1.7 (August 14, 2006)
1. Pathnames are now kept in UTF-8 format instead of in ASCII, which improves compatibility for non-English users.
2. Added a preference to automatically cause the mouse to be disabled when in text modes.
3. Fixed the speed control checkbox so that toggling it takes effect immediately instead of usually requiring you to quit and restart Sweet16.
4. Optimized performance on PowerPC systems, improving speed by up to 30%.
5. DiskCopy 4.2 images created and marked as being Mac format disks will now work in Sweet16.
6. Sound effects are now played when ejecting floppy disk images.
7. The font in the disks window is now Lucida Grande.
Version 1.6.1 (August 1, 2006)
1. The Disks window no longer disappears when Sweet16 isn't in the foreground, which makes it an easier target for drag & drop of disk images.
2. DiskCopy 4.2 disk images are now recognized for mounting even if they don't have an extension.
3. Fixed a problem that caused an empty error dialog box if you tried to mount a disk image that's already mounted by Sweet16.
4. Dragging disk images into the disks window now displays the fancy arrow with a green plus cursor.
5. Enabled some optimizations when compiling that I hadn't been using before. These may or may not have any noticeable impact on performance, but it probably doesn't hurt.
6. By default, the speed used when you turn on speed control is now 2.6 MHz instead of the strange 0.5 MHz it was set to before.
Version 1.6 (July 19, 2006)
Initial release.