I7 not working on MacOS 10.12 "Sierra"

This was reported a few days ago, but I only just installed the MacOS update myself to check.

The Inform IDE has a serious bug under MacOS 10.12: the “Story” pane just doesn’t display anything. The game compiles correctly but won’t run in the IDE.

This is a general CocoaGlk bug – all versions of Inform 7 have the same problem (going back to 6G60 at least). So does Zoom.

This is particularly bad timing with IFComp coming up. If you’re scurrying to finish your IFComp entry, you really don’t want to upgrade MacOS and find your development workflow has run into the curb. So be aware.

(It is possible to compile, copy the game out of the project file, and test it in another interpreter. The debug-mode game file is at project.inform/Build/output.ulx after compilation.)

Bug filed: inform7.com/mantis/view.php?id=1953

Unfortunately there’s also a report of Gargoyle not working on Sierra: github.com/garglk/garglk/issues/232

Crap.

(Completely unrelated issues, since those share no I/O code.)

The takeaway is “don’t upgrade your OS (or Inform) during an important project”.

The last few years of MacOS upgrades have not been this much trouble. This is unusual.

I’ve encountered the same issues I’m seeing in Inform in Spatterlight in Sierra, just to add another data point.

Double crap.

I may have to shove some Z-code support into Lectrote just to keep Mac users alive during IFComp.

Please do! I like Lectrote better than Gargoyle, and switching to other interpreters for Z-machine games is a bummer.

I haven’t upgraded my Mini yet, but I do have to say I am growing fonder of Lectrote!

Lectrote update: see https://intfiction.org/t/lectrote-1-1-3-now-with-z-machine-support/10483/1 .

If it helps, macOS has moved it’s NULL memory address to 0x0, whereas it used to be a LOT higher (something like 0x274154).
Also, the macOS Sierra POLL syscall now returns instantly if called when no file descriptors are open

I’m not sure what you’re referring to re the null memory address. (Do you have a link?) But it is unlikely to be relevant. The apps in question are written in C-family languages, where “0” or “NULL” (or “nil” in ObjC) are the standard and supported way to write the null pointer. That’s always worked.

POLL mishandling is most likely to show up as a process wedging at 100% CPU, which we don’t see.

No, my guess is that the CocoaGlk problem is subtle changes in handling font memory structures. (CocoaGlk has been bitten by this before.) As for Gargoyle, it’s probably down in the SDL layer which I know nothing about.

What about Glulx games with sounds or custom text styles? They cannot be played anymore on Mac, I guess…

(Or maybe Zarf will nicely add sound and style hints support on Quixe, plus custom CSS? That would be great! :smiley:)

The plan here was to do the minimum amount of work needed to make Z-code games playable on 10.12. (Beyond terminal-mode interpreters, which work fine but are an acquired taste.) That is now done.

I also spent a few minutes trying to recompile Gargoyle, hoping that there would be an easy fix. However, I did not get the build to work.

Can anyone say how chances are that this issue gets fixed in the near future?

Jens

No bets. If someone’s working on the problem, they haven’t told me.

Update: Toby Nelson started updating the Mac IDE bugs in the bug-tracker. I don’t know what the plan is for a new release, though.

The current code for the Mac Inform IDE at github.com/TobyLobster/Inform says “Release 1.65.1 - macOS Sierra support, and a fix for 10.6.8”. I haven’t been able to test it on Sierra, but it seems to work fine when I compile and run it on El Capitan.

I wonder if there is a way to rip out the internal version of whatever interpreter the IDE uses and turn it into a standalone that can run external game files.

EDIT: It turns out that there is a CocoaGlk target in the Xcode project that builds a working application. You get to choose a game file at startup and it plays fine, but there are no preferences and no way to open a new game, so you will have to quit the app if you want to play something else. Otherwise it is a pretty nice interpreter.

So what is the quick fix in the mean time. I have downloaded and installed Lectrote to get my ‘play’ fix going, but I am eager to ‘write’ something and Inform is not working :frowning:

I am running Sierra 10.12.1. I cloned and compiled Tony’s code from github. Aside from a few ‘Semantic Issues’ errors during compile time, I got a fully functional Inform.app it seems, yay! I am back up and running!