i’m using dialog with the 1a/01-dev compiler. z-files are now crashing windows (windows 11) lectrote (and i can’t get parchment to work either). when using lectrote on mac or gargoyle/frotz on windows everything works fine.
has there been a change recently to ZVM?
and, i apologize, my ability to test this is limited since i have limited access to windows
the error is RangeError: offset is outside the bounds of the dataView.
this is the same error that was happening a few months ago (i haven’t had a chance yet to go back and find the thread), although at THAT time it was happening with lectrote on macos as well and the problem, i hazily recall, was a bug in ZVM that was responding inappropriately to something the dialog compiler was doing?
Yeah, older versions of ZVM require the Unicode translation table to be placed in RAM, and Dialog was putting it in ROM. The released 1a/01 should always put it in RAM, though—make sure you have the most recent compiler?
And here’s another of our test cases, which just prints a bunch of Unicode characters. If the problem is with the Unicode translation table, this one should crash, but the previous one shouldn’t.
That’s the most recent stable release, but the main branch is currently on 1b/01-dev. I don’t think anything between 1a/01 and 1b/01-dev should affect this, but without having a Windows machine to test it myself, I’m somewhat shooting in the dark.
So if it works on 1b/01-dev but not 1a/01, then one of the changes in between (hopefully!) must be the culprit.
actually i realized from the josh grams post above that i wasn’t running the most current windows version of lectrote. i updated to 1.5.6 and problem solved.
so this one appears to be operator error on my part.
Even so, the bug report is much appreciated! Not all players will have the latest interpreter version, so I want the compiler to be as accommodating as possible.
I believe the only big change in the latest ZVM was the Unicode translation table bug, so I’m going to make sure Dialog’s behavior hasn’t regressed there. If it has, I’ll make sure that gets fixed for 1b/01.
If anyone with an older version of Lectrote on Windows can test these as well, it would be much appreciated! Looking at the source, this build should be putting the Unicode translation table in RAM, but “should” isn’t always “is”.
How far do you want to go back? I opened these with Lectrote 1.4.4 (September 2023) and they seem ok. Does the crash occur immediately after opening the file?