GSSquared v.0.72 released

From Jawaid Bazyar:

I am pleased to announce the release of GSSquared v0.7.2. GSSquared is an Apple II series computer emulator. Supported platforms are:

  • Apple ][
  • Apple ][ Plus
  • Apple //e
  • Apple //e Enhanced
  • Apple //e Enhanced with 65816 CPU and Super Hires Video
  • Apple IIgs ROM 01

Pre-built binaries available for:

  • MacOS (Intel and Apple Silicon)
  • Windows 10+
  • Linux AppImage (Should run on many linux, but I tested on Ubuntu 22).

This is a maintenance release, focusing on user interface – menus and interactive widgets of various types.

User Interface

  • Menu bars on MacOS, Windows, and Linux for managing common elements of an emulated Apple. On MacOS/Windows, this is native menus functionality. *1
  • Help / Documentation menu item that launches the project GitHub Pages with user-facing documentation
  • There is a on-hover sidebar menu on the left edge of the display that supports speed change, monitor type change, reset, and mouse capture.
  • Improve readability of disk drive status (slot, drive, track)
  • Disk Drive status now includes indicator for media changed (*) and write protected (lock icon)
  • Some clarity in the code over properly generating 59.9226 frames per second for monitors that support AMD FreeSync etc. Smoothness of emulator display is enhanced with FreeSync.
  • The system select tiles now use a background color appropriate to that Apple’s actual case color; IIgs badge greatly improved.
  • When using keyboard control-RESET sequence, reset is asserted as long as you hold down the RESET key, just like a real Apple II.
  • Modifier keys (Open-Apple and Closed-Apple) are now consistent across MacOS, Windows, Linux.
  • Reset key now appropriate to system (F12 on MacOS/Windows and PAUSE/BREAK on Linux).
  • GS2 no longer automatically enables mouse capture when you click in the window. You must use F1, or the Capture Mouse menu.

Features

  • GSSquared now implements an Extended SmartPort interface for its “3.5” (aka hard disk) interface. This improves GS/OS performance and properly notifies GS/OS etc of media changes.
  • IIgs keyboard now implements auto-repeat internally and respects GS control panel delay-to-repeat and repeat-rate settings.
  • New “Pause / Resume” function to suspend the emulator.
  • User can enable “Sleep” versus Busy Wait to reduce CPU usage, at the cost of a (very slight) increased inaccuracy in FPS.
  • Drag/drop for disk images has been reenabled. When you drag a disk image over GS2, the Control Panel automatically opens and you can drop the image on whichever drive you want.
  • Copy Screen reimplemented to support IIgs with borders, and not crash.

Bug Fixes

  • the IIgs 1-second interrupt is now truly a 1-sec interrupt (as opposed to 60 frames) and at boot is synced to your system’s realtime clock.
  • IIgs ADB fixes for “SRQ” mode – Ctrl-RESET now works in Wolf3D for example.
  • Now implement WAI and STP 65816 instructions
  • Fixed a sporadic coredump bug in the IIe MMU code
  • Fixed a coredump on Linux in IIgs MMU
  • Fixed a variety of memory leaks
  • Cleaned up a variety of build warnings

Internals

  • The main application loop is now done using the SDL3 “App Callbacks” method. Which should have no impact on use, but does open up some interesting new host platform options.
  • Some reorganization of platforms vs systemconfig, getting us closer to being able to edit slots before starting a VM.
  • Lots of restructuring of the On Screen Display user interface library

*1: On Linux, because Linux is a dumb wasteland of ego, there is no platform-native menu interface an application can use with SDL that will work on all distros, so Linux uses the IMGui library for menus. This is a new build dependency on Linux.

https://github.com/jawaidbazyar2/gssquared/releases/tag/v0.7.2

Author: A.P.P.L.E.
The A.P.P.L.E. Website is run by the Apple Pugetsound Program Library Exchange Users Group and is open to all Apple and Macintosh fans and their friends.