Monthly Archives: December 2020

Merry X-Mas! (with Glider 4 and Scarab of RA)

Even though it’s been a rough year around the world, soon will again be the time of the year, when the friendly, white-bearded dude in red outfit from Lapland will fly around the world, giving presents to everyone.

This year we are able to contribute to your holiday celebration, as we got permissions for distributing not only one, but two new classic Mac games, which you can enjoy during the holiday break:

New application bundles available for download: Scarab of RA and Glider 4

Thanks to the generous permissions by John Calhoun (author of Glider 4), and Rick Holzgrafe (author of Scarab of RA), those two defining samples of the classic Mac gaming history are now again available for everybody to play with during the holidays!

To download and try out these classics, go to the https://mace.software/files page on this site, and you will find links to both Mac and Windows 10 versions of these application bundles, including details about these games.

Although Glider already runs quite well in color mode, it is only available as the “classic” version for the time being, as sound is not yet working in the color mode. I will update the application bundle later in the spring, when the color version is ready for public testing.

NOTE: The current version of M.A.C.E. may cause random “pops” on macOS platforms, and possibly low-volume high-pitch background noise on Windows 10 platform. This is most likely is caused by the old classic sound emulation code we are still using, as it passes the 22255 Hz frequency used by old Macs directly to SDL2. It may apparently, depending on platform, give the job of upsampling it to the host operating system, which in some cases may give varying results depending on the audio hardware and drivers being used. This is a known issue, and it will be fixed when Sound Manager implementation is added in the spring, possibly even before that.

Most recent new tests cases: Holiday Lemmings, Master of Orion, Pararena 2.0

Fitting for the holiday season, we tried running X-Mas Lemmings demo, and for most parts it seems to work pretty well. However, in this game, the most important features missing are still Sound Manager and color cursor support.

Another test case, which we recently added, was inspired by watching a Twitch streamer playing the DOS version of this particular game: Master of Orion. The Mac version seems to work okay’ish in M.A.C.E., but there are some minor glitches:

  • Dialog items are missing from various new game setup dialogs
  • A lot of the color texts are drawn reversed, i.e. the text is transparent but rectangle around is text color. This is probably just a minor glitch in text blitter, which we will investigate and fix soon.
  • Sounds are missing because of the aforementioned missing work on Sound Manager

And as part of getting John Calhoun’s great games to work in our emulator, we also made some fixes which allow Pararena 2.0 to (almost) work in M.A.C.E. The only missing feature, which we know of, is again Sound Manager support. I guess that will be a main goal to aim for during the spring…

More Styled Textedit updates

In other news, there is progress in various parts of the emulator, one of them being the ongoing work on improving Styled Textedit support. Two of the test cases most recently made functional are Speedometer and the aforementioned Pararena 2.0 (which both ironically use it for help screens, by pure coincidence):

There is still some work to do, as for example editing a Styled Textedit field does not yet work, because caret and highlight features are still not updated for multi-style support.

Full list of changes since last post

2020-12-21 03:14:09 +0200 • Fix updating FSSpec name from TE field in StdFile 
2020-12-21 03:12:17 +0200 • Implement StandardPutFile selector (#5) in Pack3  
2020-12-21 02:56:24 +0200 • Add Master of Orion test app to CMake JSON configs
2020-12-21 02:04:46 +0200 • Implement DisposeCCursor trap for Color QD
2020-12-20 01:21:33 +0200 • Merge branch 'master' of
2020-12-20 01:21:23 +0200 • Add Holiday Lemmings Demo CMake JSON configs
2020-12-20 01:19:57 +0200 • Fix handle MP flag check in ResrvMem
2020-12-19 17:36:06 +0200 • Remove colon from CMake JSON config app names
2020-12-18 17:01:07 +0200 • Merge branch 'master' of
2020-12-18 17:00:41 +0200 • Color PICT recording updates
2020-12-17 01:10:47 +0200 • Rename native EqualRect to not collide Win64 API
2020-12-17 01:09:52 +0200 • Make GestaltKeyboardType windows compatible
2020-12-17 01:09:16 +0200 • Update windows icon caches
2020-12-17 01:08:26 +0200 • Update appname in cmake configs to support windows
2020-12-17 00:40:50 +0200 • Fix invalid character in wolf 3d cmake json config
2020-12-10 23:38:31 +0200 • Implement TEGetOffset trap
2020-12-10 23:32:23 +0200 • Add Pararena 2 CMake JSON test application config
2020-12-10 23:31:31 +0200 • Implement TEGetStyle selector for TEDispatch
2020-12-10 23:01:36 +0200 • Add patOr color QD rectangle blitter mode support
2020-12-10 02:44:49 +0200 • Mark rect dirty in b&w CopyMask (+fix warnings)
2020-12-10 01:44:02 +0200 • Add some john calhoun's games to CMake JSON conf..
2020-12-10 01:35:42 +0200 • Use ShieldCursor instead of HideCursor in CopyMask
2020-12-10 01:34:02 +0200 • Some cursor code cleanup (init state, AllocCursor)
2020-12-09 16:07:08 +0200 • Add patOr, patXor & patBic color QD StdLine modes
2020-12-09 13:57:13 +0200 • Fix missing icon check in Dialog Manager item draw
2020-12-08 03:14:20 +0200 • Handle launch failure more gracefully
2020-12-06 05:26:53 +0200 • Add SimpleText test app JSON config to CMake
2020-12-06 05:25:59 +0200 • Tweak Glider 4 CMake config, update 4.06 to 4.10
2020-12-05 16:21:48 +0200 • Fix Pixel2Char output width on TRUE result case
2020-12-05 14:30:26 +0200 • Work on TEStyleInsert; Speedometer help works now
2020-12-04 05:50:01 +0200 • Fix start pt to bottom right clamp in GrowWindow
2020-12-02 22:47:00 +0200 • More CMake tweak + update build number
2020-12-02 20:30:30 +0200 • Update some CMake test app JSON configs
2020-12-02 02:37:25 +0200 • Fix compilation on Xcode 12