Thursday, December 15, 2011

Reminiscing

Well, hello there. Been a few months since I posted here. Figured I'd post about something, y'know.

Had a busy summer... busy fall too. Played a few games recently, including one classic game -- The Journeyman Project: Pegasus Prime. Let's reminisce a bit (WARNING: Contains spoilers; just skip to the very bottom for the good stuff).


The essential title screen; usually in most games. Let's move onto gameplay.


We should probably wake up, and not be late for work.


Too late! The commissioner doesn't look too happy. Also, bad temporal rip incoming and whatnot.


Time to go recover that log and not jump off the cliff though!


Avoid dinosaurs too, always good. Let's go to Mars instead.


Watch out! (Aside: For fun, you can try to attack this guy with any inventory item -- I bet you didn't know that!)


Freeze the lock, let's take a look at that bomb. Don't just pry it out though! Now, let's get out of here.


The maze isn't the same without the original music, but it's still enjoyable. Let's go catch that robot!


Bang bang! Pew pew! Now, tractor her in and board her!


Need to stop a robot down under too.


Being under the sea more to your liking? This guy doesn't seem to think you're much of a match for him, though. Probably should stay out of his way or maybe crush him or something.


I hope you don't need a map to solve this one.


Watch out! Robot on the loose!


Who needs lockpicks? Let's just blow the door open.


Why are there no tasers in the future?


How come James Bond never had to go through this level of difficulty when diffusing a bomb?


Mission Accomplished!


















Well, that was a fun little aside don't you think! Talking about a classic adventure game randomly, just like that. Or was it really random? Maybe there's something common about those screenshots; no, not just in PNG format. They're all taken from within ScummVM. Yeah, you heard correctly. This is definitely happening, and I'll hopefully be done fairly soon. Ah, now you see what I'm getting at? There's still some graphical glitches with the videos, but it's in very good shape overall.

Oh and it's even completable.

More updates to come soon (And no, this code isn't on my github account yet, but will be soon).

And, of course, much thanks to Presto Studios for making all this possible and providing the original source code!

Friday, June 17, 2011

Mac SCI1.1+ Games Update

I really should update here more :P

In an effort to catch up with stuff I've missed, I'll start by going over stuff I coded a few months ago. Remember last year when I wrote up two posts about SCI Mac code? Well, I don't. So, here's two links from last summer.

Back in probably February, waltervn and myself tackled the resource compression of the non-King's Quest VI SCI1.1+ Mac games. King's Quest VI wasn't good enough to receive the compression of the other games. Then we found out that they changed the sprite compression routine again (runs now a word instead of a byte) for QFG1 VGA Mac. The Mac versions of Hoyle Classic Card Games and Freddy Pharkas became playable too, especially after waltervn put in a bunch of work on the hardcoded menu bar of KQ6 and Freddy Mac (though, still not complete).

One of the problems we found with these Mac games is that they have their black and white palette indexes reversed from normal SCI (black = 0x00, white = 0xff). Why? Because on classic Mac OS, white is always at 0x00 and black is always at 0xff. Our solution was to swap black and white pixels so that our palette code from the DOS versions would still work and would keep the complexity down.

Then, I took a look at the SCI2.1 Mac situation (GK1 Mac is SCI2.1 instead of SCI2 like the DOS version). The four SCI1.1 Mac games began to switch various resources to store multi-byte values in big endian order instead of the little endian order of their DOS counterparts. Starting with GK1, Sierra began to, as I like to put it, "big-endian-ify" the remaining resources. I also added support for the high-res GK1 Mac fonts that the DOS version doesn't have. It currently is probably on the same page of support as the DOS version (minus the sound driver and one skippable timing bug in the Day 1 intro). Gabriel Knight 2 Mac also has some small amount of support, but with some more weird transparency issues. The later SCI2.1 Mac games have some Sound class changes (the SCI class, that is) that causes games like Phantasmagoria to not start without a couple hacks.

Going back even further, there's three SCI0 Mac games that we don't support yet either: Space Quest III, Hoyle's Book of Games I and Hoyle's Book of Games II. These three are special in that they run in a higher resolution than the usual 320x200 and have high-res views.

And now for some screenshots:

Clicking on the KQ6 menu

Looked at that awesome greyed out effect!

GK1 high-res fonts = awesome

Yeah, it's Mostly working (I am the king of lame puns)

Monday, February 21, 2011

Just Some Code Lying Around...

Well, as promised by yesterday's post, I would come back with some more code. Oh look! There's two new branches on my fork of ScummVM.

First off, is jmp, which was supposed to be an engine for the Windows versions of The Journeyman Project (Turbo!) and its sequel, Buried in Time. However, other than an AVI player (KQ6 put this code to good use), not much was of use until recently when I added support for loading resources from the EXE/DLL. Both games are entirely hardcoded. Still not much is done, but it's got some good code in there for the Cinepak-based bitmaps I mentioned on my blog before. The codebase here dates back to 2006, so be gentle with it.

Probably the more important of the branches, at least to me, is pegasus. Unlike their predecessors, The Journeyman Project: Pegasus Prime (Mac only) is not hardcoded (minus some 'minigames'). It seemed like a better candidate to me. Well, it's a bit more functional than the others but still not much is done. You can traverse the menus a bit and the intro plays (with that recently-added QuickTime seeking), but not much else can be done yet. And thanks to a fellow fan's research, some of the resource types are also loaded in (but not all). I intend to continue on this when I'm done with Mohawk (at least the "core" Mohawk games :P).

It feels good to get this all off my chest. Have I mentioned how much I love git?

Sunday, February 20, 2011

Git 'er done

Now that ScummVM has moved to git, I figured I would do a couple things with a fork of the project. I love git so far!

First off, I brought my Rebel Assault changes mentioned recently to a fork called ra-smush. I also got audio (mostly) working in it (there's a slightly different SAUD frame header). No, don't even think about asking support for it in ScummVM!

Secondly, my old Star Trek engine (for 25th Anniversary and Judgment Rites) has found its way into another fork.

And maybe there will be more forks soon.......

Tuesday, February 15, 2011

Monkey Island FM-Towns for Sale

...at the low low price of $1200! Even Zak isn't going for that much. You know a game is expensive when it's for sale at double the price of Zak McKracken FM-Towns.

But, hey, look on the bright side: there's free shipping.

And now back to our irregularly scheduled program.

Saturday, January 29, 2011

Riven iOS

My father wanted to buy Riven iOS for his iPod Touch, so I figured I'd take a quick look at it. The game itself seems to work well, but the videos are a bit jittery. Now onto the more important part: A look at the data files.

No, I'm not going to reimplement this engine. But at least this would be a good starting point for anyone who wants to.

It was pretty easy to figure out everything that was going on immediately. Ron Hayter already updated his Riveal tool to extract the images from the game. So, here's pretty much what's going on with those formats:

Images
PNG in the main directory and in zip files with the stack name in it, for example: "aspitimages" is the zip file holding images for aspit, also known as the main menu.

Sounds
CoreAudio Format in the main directory.

Movies
MPEG-4 with h.264 video and AAC audio.

Scripts
Now, here's the interesting part. The scripts are all in a SQlite database (version 3). They're also named by the stack, such as "aspitdb" for the scripts for the main menu. The actual scripts seem to be all in strings, probably based on the original HyperCard source (which was never released). I matched up some script segments for a comparison:

Riven iOS Script
Riven Win/Mac Script (dumped using ScummVM)

The card scripts start with the script type. The hotspots have the name followed by the rect followed by their scripts. It's pretty much the same setup as CARD/HSPT in the Win/Mac version.

Miscellaneous Observations
The entire main menu seems to have been converted, but is unused. Anyone who finds a debug mode in the app and goes to the original setup page gets a cookie from me.

Sunday, January 23, 2011

The Riven Easter Egg Shortcut

Hopefully the couple readers I have remember a post I did back in August entitled Riven Easter Egg Plus. For those who don't, it was about there being some script fragments on how to shortcut the full Riven easter egg.

Tonight, I present to you the full version of that shortcut. There is a trick to doing it and the game itself will try to block you at various occasions (disabling the shortcut just because you turned one way by accident). Oh yes, with the original interpreter as well. So, here's my best attempt at explaining this. You should *not* click on any red-shaded areas.

1) After the intro videos, walk over to the handle and click it *one* time.







2) Turn around to the cage (avoiding red spots) and look up. Then click the star on top of the helmet *one* time.





3) Turn right from the helmet and avoid red hotspots to walk over to Cho.







4) Click the hotspots on Cho in this order:



At this point, you have just taken a shortcut through the first four parts of the Riven easter egg. The last part is to go press the RAWA hotspot over by the maglev.

Yes, that's right. You can get the entire easter egg setup from the beginning without ever leaving Temple Island. So what are you waiting for? Go try it out! :)

Tuesday, January 11, 2011

Riven Update

Been a while, but here's a Riven update! Today, I finally finished QuickTime seeking support, so I quickly jumped at the opportunity to implement another puzzle, and here are the results:

This is how I envision my death

Need some aspirin?

Also, the telescope actually moves now instead of just jumping from place to place. Stay tuned for more updates soon, hopefully, maybe!

Feeling Rebellious

Out of boredom the other day, I decided to play around with ScummVM's SMUSH player and see if it could be "convinced" into playing some Rebel Assault videos (not Rebel Assault II, that's basically already there).

These version 1 videos are very similar to their version 2 brethren (Rebel Assault II, The Dig, Full Throttle, etc.), but have some differences. The delta palette code is different, providing fewer entries (smaller color sizes?). Audio and text seem to be handled differently as well. At least the audio flags are different. There's also a 'PVOC' chunk that probably deals with audio and a 'GAME' chunk that I can only speculate what it's for. Of course, I completely ignored the 'IACT' (interactive, for the INSANE code).

So, minus audio, text, and palette changes, I was able to render a couple frames. A couple at any rate. Without further ado:

The cutscene after the hardest level in the game. Seriously, who makes a level that hard and difficult to navigate? Damn Kolaador...


Now someone should go implement the game (not in ScummVM)!

Wednesday, December 15, 2010

Some Carmen Images

Well, we don't support Where in the World is Carmen Sandiego? yet beyond showing images. But we added support for the DOS images of Where in the World is Carmen Sandiego? Deluxe Edition yesterday, so I figured I'd show it off. Also, I don't update my blog enough, so here's a post.

Where Wile E. Coyote Shops

Police Squad! ...In 256 Colors


These are the same (well, similar) images from the intro of the two games. The former is in EGA from Deluxe and the latter in VGA from v2. They went full screen for Deluxe game and decided to size it down for Windows (The first image is actually three 640x160 images put together).

Surprisingly (or I guess I shouldn't be surprised considering how much Brøderbund likes to reuse things), the CSWorld Deluxe archive format is the same one used in Prince of Persia 2!

I cracked the archive format before I realized PoP2 used it, so I only found this info out afterward. Same with the simple SND resource format. I checked out the specs for the bitmap decompressor and applied a modified version to the ScummVM source (thanks to fuzzie for helping figure out the data was EGA planar). And lo and behold, it uses the exact same modified LZ decompression that was used in all other Mohawk games (minus Riven). It looks like the planar part isn't in PoP, but I'm not sure.

One last note: We will not support Prince of Persia 1/2 in ScummVM no matter how much you ask. ;)

Monday, November 29, 2010

Surprise Update #2

Poof again!

bgK has finished coding the Selenitic age for Myst! Feast upon the glory that is the best looking (IMO) and also the hardest (by far). I cannot be paid to solve the maze runner puzzle with all the bleeps, sweeps, and creeps (Yes, I just went there) so I don't blame you if you cheat on the maze runner. If anyone wants to try, they'll need to use the debug console and run "changeStack Selenitic 1282".

Screenshot time!

Does the door really need to close behind you?

Actually, this has always worked. I just like fire.

BRING ME THE PAGES

In Your Tunnel

Does anyone actually do this puzzle?


What hell truly looks like

Sunday, November 28, 2010

Surprise Update #1

Poof!

fuzzie has done some great work on Living Books code for Mohawk in ScummVM and the games are very very very playable. Go try them out (along with our collection of near-infinite demos)! v1 games (the older, 512x384 ones) work near perfectly while the v3 games (640x480) have some new features that aren't fully supported yet. And now time for obligatory screenshots along with random semi-humorous subtitles provided by me.

A Way-Too-Happy Book

Fast Decaying Ham

Riding a Dog

Creeping Logo

Arturo, por favor

Eternal Third-Grade Punishment

Monday, November 22, 2010

Near Thanksgiving

Is this thing still on?

I have (sadly) neglected this blog for far too long. But, fear not! I am not dead (much)!

First off, the big kahuna. Riven is completable in the trunk. It actually has been for a while. I should have posted about it earlier... Ah well. It was a quiet night. August 31. I remember it as if it were only three months ago. At 11:47 PM, local time, I was able to complete the game in my local checkout without using the debug console (I did know the marble puzzle answer and Riven numerals previously, however). Soon after it became completable, I also implemented the marble puzzle itself.

Is it a big accomplishment? Probably. Is Riven supported now? Hell no. I still have to implement a few of the puzzles that help give you the marble puzzle solution and Riven numeral meanings. There's also some visual things that need to be done (which have no effect on the actual gameplay). There should be no major bugs in the game right now either, just missing features, which is a definite plus. Also, please don't submit bug reports yet!

Secondly, there is nothing else to report on. I found another SCI 1.1 Mac game (Hoyle 4) and did some other coding for stuff I can't really remember at this point. And I improved support for the Riven demo a bit so that the intro now plays when starting and you have the ability to hit that nice Exit button at the bottom of the screen.

Screenshot time!


Hot Demo Action


Some Fun with Marbles


"Care to join us?"

Tune in soon for some updates on currently in-progress Mohawk code (some of which isn't written by me!). Until next time... Shablagoo!!!!

Monday, August 23, 2010

Riven Easter Egg Plus

Well, I'm sure anyone that has played Riven has at least heard of the massive easter egg system that is in there. (Yes, this will work in ScummVM :P). I was checking some scripts in Riven because there are some other hotspots that will make the cursor disappear in the original game but weren't really attached to the easter egg. Richard Watson ("RAWA") even said that they weren't related to the easter egg. Well, it seems that they were originally going to be part of the game, but were cut out - and the scripts prove it.



The first of the hotspots, is the one above the cage. When clicking on the hotspot, this code runs:

switch (tdl) {
case 2:
tdl = 3;
break;
default:
tdl = 0;
break;
}

Unfortunately, all the other hotspots set tdl to 0, so the variable can never truly be set here. Not to mention tdl is also not set to 2 anywhere. (EDIT: See below)

Now for the Cho hotspots. It seems it was intended to have you click the hotspots in a specific order after tdl is set to 3 (from the above code segment). I have labeled them in the correct order here:



The hotspots labeled 1-6 will increase tdl by one if pressed in the right order. When you press the last hotspot, this segment of code is run:

switch (tdl) {
case 9:
araw = 4;
break;
}
tdl = 0;

araw is the variable used for the main Riven easter egg variable! aova is the other one. araw is normally set to 4 when you click the hotspot above the elevator on Garden Island:



So, it seems that this content was cut and replaced by the elevator hotspot. Or it could be that they changed the whole easter egg structure after having this initial "Cho code" in there.

(NOTE: The green/red rectangles are part of the hotspot debugging mode I added to the engine in ScummVM. Green = enabled, red = disabled)

EDIT: Well, turns out there's another piece of the puzzle. Clicking on the jammed lever outside of the cage in the beginning runs this code:

switch (tdl) {
case 1:
tdl = 2;
break;
default:
tdl = 0;
break;
}

Maybe there's a place where tdl is set to 1? The mystery continues!

Sunday, August 22, 2010

Riven and Combinatorics

A short blog post today. I normally can't come up with something that's worthy of a full blog post anyway, so here's an attempt to post a bit more often. Take a look at this page which goes into detail of a lot of the combinations of puzzles in Riven. Gotta love that marble puzzle...

In the programming realm, I added support for drawing the dome combination and telescope combination in the lab journal and Catherine's journal, respectively. Screenshots of course!





Now you might say "But, clone, I can see where the numbers in Catherine's journal end and the page begins." Yes, you can. You also can in the original game. Nothing I can do to make it look better than what it does currently :P

And for those who are really interested and have forgotten the D'ni number system, the dome combo here is 2-6-16-18-22 and the telescope combination is 1-5-5-2-3.

EDIT: I forgot to mention that because Catherine's journal now displays the telescope combination, two more endings are now accessible from the beginning without using the debug console. \o/

Sunday, August 01, 2010

"You've already got me, you lucky devil"

This blog post is a special one. Most of you know that SCI testing is going on already for all those boat loads of SCI games you have. That's for SCI0-SCI1.1, of course. I'm here to announce something different, though. No, not another LordHoto joke. No joke at all, actually!

I'm here to announce that GABRIEL KNIGHT: SINS OF THE FATHERS is completable in ScummVM. Not without bugs of course. And note that it will still NOT be tested in our current SCI testing nor be supported with the rest when they make it into a full release eventually.

EDIT: DrMcCoy has a quick trigger finger and found out that the hi-res (Windows) version is not completable. The DOS CD version is (and almost definitely the floppy version). This should be fixed now.

There are two major bugs with it still, but both are fixable if you use the fan made patches. In other words, both of these bugs were in the original game so they're not "our fault". You can download said patches from here. You'll want the NRS patches for either floppy or CD. There will be some other problems too. The save/restore menu is not working 100%, the text wrapping isn't correct, and transparency does not work yet. You'll see what I mean about the transparency if you get to use the flashlight or arrive at Schloss Ritter.

We do NOT want bugs submitted about Gabriel Knight, we know there's plenty of them still.

Also, please don't play Gabriel Knight if you still have other SCI0-SCI1.1 games to test. We really need you loyal ScummVM users concentrating on those. We love you guys! :D And thanks for all those SCI games you've already played through... and a seemingly neverending amount of bugs :P

Last August, SCI32 games weren't even startable and look how far we've come in just under a year!

Ah, and the obligatory screenshot. This was taken two days ago when I beat it for the first time. Yes, I missed 7 points. No idea where though...


PS - My apologies to pgr on #scummvm (IRC). We had decided not to reveal this, but changed our minds after discovering that the Day 5 lockup was indeed in the original too. It's also skippable using the spacebar. I'll be comparing both the good and bad scripts to add a workaround to the code for it soon. Hopefully I'll be able to figure out something clean ;) I hope you can forgive me! :)

Monday, July 19, 2010

Spit-Shined

The old "blue" theme was becoming old and dusty feeling. So, I've decided to use one of the new blogger templates. It's like stainless steel now. Not silver, I'm too cheap for that. OK, too poor for that. But you know what I'm getting at! Coming soon: "clone2727 Platinum" - where only followers who have purchased the "Clone2727's Blog Gold Package" can view the posts.

You can look forward to no other new changes and the occasional posting. That is all.

Also, if anyone dislikes the design (besides DrMcCoy), let me know! DrMcCoy will still be uploading those Halloween pictures somewhere. Thankfully, not here.

NOTE: This post was edited about 50 times, so if you see a different version, just laugh at my bad jokes there and move on. And yes, we do love DrMcCoy (Paid for by the Don't Force DrMcCoy to Work on Urban Runner Foundation™).

Sunday, July 18, 2010

Return to Return to Zork

I revisited my Return to Zork work again this past week a bit. Mostly because my FM-Towns version arrived! :D It's been a while since I've looked at the game... have to go way back in the blog to find some posts about it.

I put the disc in as soon as I ripped open the package and looked at the files. To my surprise, ScummVM detected it immediately! It seems that we have a collision here... the rtzcd.red file has the same md5 of the first 5000 bytes and the same size as the English CD v1.0 version. Furthering my amazement, it turns out there's three other rtzcd.dat files on the disc (an rtzcd.dat is also in rtzcd.red). One in the base directory, one in the "RTZFM" directory and one in the "RTZ9821" directory. Turns out the one in the base directory is for DOS, RTZFM for FM-Towns and RTZ9821 for PC-98. Three-in-one, yay! I added the detection for all three.

The three versions all show up with messed up text. It seems to use the "KROM" file included on the disc for the font. I proceeded to install the DOS version using DOSBox. In some strange oddness, the game failed to find the two resource files: it was searching for the floppy names of the files. A quick rename and the game started up, though still failed to play the videos off the CD. The Japanese text does work there, so I'll have a chance to compare eventually.

All this RTZ stuff got me to pull my PlayStation version out again (Yes, I have 5 versions now: DOS, Mac, FM-Towns, PlayStation, and Saturn :P). The game currently errors out when starting up in ScummVM with failing to load the cursor bitmap. Couldn't make out too much of the format yet, but it seems to have 8 characters in the beginning with some sort of numerical text followed by possibly a uint32 size or offset.

Anyway, I got to looking at some of the other files on the disc (possibly again, I don't remember what I'd done in the past). There's a ZORKX.INF/ZORKX.XAI pair of files that contains the XA ADPCM audio (which we luckily support already!). The INF contains text entries of the filename and some numbers (tracks?) into the XAI. In the DISK1/DISK2 directories, There's the [dirname].INF and .STL files that are similar, except they contain PlayStation Stream videos.

In the MSG2/MSGJ folders, there's a bunch of TIM files and BS files. Hopefully no pun on the latter. The TIM's are standard PlayStation images. I know there's a bunch of tools out there for them already, but I wanted to write my own; it's simple enough. It can now be found here and supports both 4bpp and 16bpp TIM's. And my favorite of the converted pictures:

Thursday, June 17, 2010

Are You Ready for the Summer?

Summer is just around the corner, though I've been off from Uni for over a month now (since my last post). So, what's been happening?

Continuing off my last post: SCI Mac. I began working on the KQ6 Mac icon bar interface. The picture below has a slightly off-centered position and slightly off-colored palette. The PICT code got moved from Mohawk to common code and was updated to allow for paletted images. The Mohawk QuickTime code was also moved to common code and updated to show the Cinepak-based movies. However, they don't show completely correctly due to "Cyan logo syndrome." Seeking support in QuickTime has a higher priority on my TODO list, so that comes first ;) I haven't made progress on other SCI1.1+ Mac games.

Mohawk. I fixed several bugs, such as the videos not showing when clicking on a stone in the rebel tunnel puzzle or when opening the cage in Gehn's office (not yet accessible from the beginning anyway). The boiler puzzle also got some fixes. There were a couple other minor fixes as well. Eugene changed some detector code to allow for detection through nested directories so Riven is playable directly off the DVD now (CD swapping will happen in the future :)).

SCI. Gabriel Knight is completable (albeit with extreme graphical glitches) up to trying to get inside Madame Cazanoux's house in Day 3 (door knocker not 'operatable'), thanks to various fixes from myself, md5, m_kiewitz, and Walter. Mostly (pun intended), that's all I've been working on in SCI. I've also promised myself to play one GK1 day each day (in DOSBox) starting tomorrow (June 18), meaning 17 years after the original game took place. Day 2 is clearly the best of the days.

That concludes this update. I'm looking forward to cheesecake on Saturday and Futurama next Thursday.

PS - Yay! (When sf.net stops throwing python exceptions)
PPS - Carmen Sandiego!
PPPS - In case you didn't get the title reference...

Wednesday, May 12, 2010

SCI Mac Craziness

Mac versions of SCI games started out fairly nice. SCI0/SCI1 games used the normal map/volume that their PC and Amiga counterparts used. That held true until the SCI1.1 releases.

Now, the game data is stored inside of Mac resource forks (which I have covered here before). My resource fork patch was accepted earlier this week, so I went into greater work for these games. It was pretty straightforward to get SCI's ResourceManager to support these. Mainly, it involved mapping the resource fork types to the SCI types. Nothing is ever that easy, however.

Right from the get go, it was pretty obvious that various resources were no longer all in little endian order, as had been the case with all other SCI games (even Amiga and pre-SCI1.1 Mac games). I wrote a wrapper function around the pointer reads so that it would choose the right one for the right platform/version. After some work, I got scripts to work and I saw the KQ6 title screen. Then came view support. Thanks to m_kiewitz, we figured out that some view fields were really uint32's instead of uint16's and then we had "preliminary" support for those. See the screenshot below. Also, messages were also in big endian order.

After stubbing off cursors (a view could not be found), the game was playable. There's a cursor in the screenshot, but that's because it shows the last cursor shown, which was the GUI cursor (now with the current cursor palette). However, the views didn't appear right... they could almost be made out. Fortunately, the sound format (MIDI/sequenced) is still the same and the GM mapping works well enough (the Mac/Amiga format is not supported yet). The audio (sampled) has been replaced by Mac 'snd' resources. They were easy to code, based off the Apple specs. On the bright side, font and picture resources are also the same as the normal DOS ones.

I also have Quest for Glory I Mac that I've been looking at, and it seems they may have compressed the scripts/heaps...

Anyway, here's a screenshot of my current code, obviously WIP:



EDIT: m_kiewitz cracked the Mac SCI1.1+ View compression, so we have that working now too. I also fixed cursors. It turns out that the cursors are stored in Mac CURS resources and the view that is called is a "dummy" view telling the engine to use the CURS resources instead.