Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Gez

Hexen Mac

Recommended Posts

Inspired by this edit I decided to take a look at the Mac version of Hexen, and for a start at the freely downloadable demo that can be found on ftp.idsoftware.com/idstuff/hexen/mac/. Extracting the goods involved using binhex and unsitins in DOSBox, which was fun.

It's pretty interesting. Upon opening it in SLADE, I get warning messages that several lumps "did not decode properly", which means they looked like they used the same compression system as Jaguar Doom (but it's actually something different). A lot of lumps are far too small (4 bytes or less) to actually contain anything useful. MAP01 and MAP04 are made unplayable this way. There are high-res versions of some interface graphics at the end, including a high res title screen that's spread across four different lumps (which seem to be in 640x100 resolution each?).

Is there any source port out there that tried to support the Mac version of Hexen?

Share this post


Link to post
Gez said:

There are high-res versions of some interface graphics at the end, including a high res title screen that's spread across four different lumps (which seem to be in 640x100 resolution each?).

Been awhile since I looked, but I think most of them looked like a filter rather than actual high resolution graphics.

HHexen is supposed to support it.

Share this post


Link to post

Finding the actual full version of the game somewhere, or even any information about it, would be a fantastic start.

Who developed it? Who published it? What was the release date? Was it on CD-ROM like the PC version? Did it similarly support Redbook audio? Did it have tight Mac OS integration like the versions of Doom released there did?

Without all this info, I can't even start a wiki article on it, which really bothers me.

Even worse, I've heard rumors of a Mac version of Heretic as well, which is even MORE elusive.

Share this post


Link to post

For what it's worth, the demo contains a lump named PRSGCRED which presumably is short for "PRESAGE CREDITS":



It answers partially some of these questions.

Looking into the HHexen source code, I haven't found references to the high-res lumps (like H2BARL + H2BARR instead of just H2BAR) so it doesn't seem like it has a complete support for Mac Hexen.

Share this post


Link to post
Quasar said:

Finding the actual full version of the game somewhere, or even any information about it, would be a fantastic start.

Who developed it? Who published it? What was the release date? Was it on CD-ROM like the PC version? Did it similarly support Redbook audio? Did it have tight Mac OS integration like the versions of Doom released there did?

Without all this info, I can't even start a wiki article on it, which really bothers me.

Even worse, I've heard rumors of a Mac version of Heretic as well, which is even MORE elusive.

I have only a tiny bit of extra information about both of these - I don't own either of them, but I have mild experience with them.

Mac Hexen was definitely released on CD-ROM, if I remember correctly it has the same CD audio as the DOS release, and the MIDI was also available to playback through QuickTime. This was an officially sanctioned release under id Software, and Deathkings also had a Mac release but I know even less about that. If I had to guess, that release happened around the same time as Mac Quake.

Mac Heretic, on the other hand, was released around 1999, and is more-or-less a hobbyist project. I briefly toyed around with the "shareware" release that was distributed on a 1999-era MacAddict CD; aside from a few extra options in the menu bar (high resolution support and the like), it is probably identical to the PC release. I'll have to go grab the MacAddict disc in question again, probably, so I can see about offloading the data for further examination.

Share this post


Link to post

At the time Hexen would have been released, Macs would still be using PowerPC. So it possible that data structures are in big endian rather than little endian (optimization!).

EDIT: I do have a bunch of PowerMacs around me, so if it works in Mac OS X 10.5 then I can test it out (whenever I next boot into Mac OS X). However I do not have access to Mac OS 9 and such.

Share this post


Link to post

I have the full Mac version of Hexen. The IWAD is mostly identical to the DOS version, but it's missing a few lumps. It also contains these extra lumps:

+CHAIN11       5668     Graphic
+CHAIN12       5668     Graphic
+CHAIN21       5668     Graphic
+CHAIN22       5668     Graphic
+CHAIN31       5668     Graphic
+CHAIN32       5668     Graphic
+LIFEGEM1      3964     Graphic
+LIFEGMFB      3964     Graphic
+LIFEGMFC      3964     Graphic
+LIFEGMFD      3964     Graphic
+LIFEGMFE      3964     Graphic
+LIFEGMFF      3964     Graphic
+LIFEGMFG      3964     Graphic
+LIFEGMFH      3964     Graphic
+LIFEGMCA      3964     Graphic
+LIFEGMCB      4064     Graphic
+LIFEGMCC      3964     Graphic
+LIFEGMCD      3964     Graphic
+LIFEGMCE      4064     Graphic
+LIFEGMCF      3964     Graphic
+LIFEGMCG      3964     Graphic
+LIFEGMCH      3964     Graphic
+LIFEGMM1      4064     Graphic
+LIFEGMM2      4064     Graphic
+LIFEGMM3      4064     Graphic
+LIFEGMM4      3964     Graphic
+LIFEGMM5      4064     Graphic
+LIFEGMM6      3964     Graphic
+LIFEGMM7      3964     Graphic
+LIFEGMM8      3964     Graphic
+FONTA011       232     Graphic
+FONTA021       264     Graphic
+FONTA031       408     Graphic
+FONTA041       364     Graphic
+FONTA051       400     Graphic
+FONTA061       316     Graphic
+FONTA071       180     Graphic
+FONTA081       268     Graphic
+FONTA091       264     Graphic
+FONTA101       292     Graphic
+FONTA111       268     Graphic
+FONTA121       180     Graphic
+FONTA131       220     Graphic
+FONTA141       144     Graphic
+FONTA151       220     Graphic
+FONTA161       432     Graphic
+FONTA171       380     Graphic
+FONTA181       496     Graphic
+FONTA191       504     Graphic
+FONTA201       404     Graphic
+FONTA211       504     Graphic
+FONTA221       428     Graphic
+FONTA231       404     Graphic
+FONTA241       476     Graphic
+FONTA251       432     Graphic
+FONTA261       200     Graphic
+FONTA271       224     Graphic
+FONTA281       316     Graphic
+FONTA291       276     Graphic
+FONTA301       316     Graphic
+FONTA311       360     Graphic
+FONTA321       504     Graphic
+FONTA331       400     Graphic
+FONTA341       436     Graphic
+FONTA351       396     Graphic
+FONTA361       432     Graphic
+FONTA371       396     Graphic
+FONTA381       432     Graphic
+FONTA391       416     Graphic
+FONTA401       444     Graphic
+FONTA411       268     Graphic
+FONTA421       332     Graphic
+FONTA431       428     Graphic
+FONTA441       292     Graphic
+FONTA451       392     Graphic
+FONTA461       416     Graphic
+FONTA471       388     Graphic
+FONTA481       420     Graphic
+FONTA491       420     Graphic
+FONTA501       408     Graphic
+FONTA511       364     Graphic
+FONTA521       384     Graphic
+FONTA531       412     Graphic
+FONTA541       384     Graphic
+FONTA551       364     Graphic
+FONTA561       404     Graphic
+FONTA571       408     Graphic
+FONTA581       416     Graphic
+FONTA591       220     Graphic
+FONTAZ01       232     Graphic
+FONTAZ02       264     Graphic
+FONTAZ03       408     Graphic
+FONTAZ04       364     Graphic
+FONTAZ05       392     Graphic
+FONTAZ06       316     Graphic
+FONTAZ07       180     Graphic
+FONTAZ08       268     Graphic
+FONTAZ09       264     Graphic
+FONTAZ10       292     Graphic
+FONTAZ11       268     Graphic
+FONTAZ12       180     Graphic
+FONTAZ13       220     Graphic
+FONTAZ14       144     Graphic
+FONTAZ15       220     Graphic
+FONTAZ16       428     Graphic
+FONTAZ17       380     Graphic
+FONTAZ18       492     Graphic
+FONTAZ19       504     Graphic
+FONTAZ20       404     Graphic
+FONTAZ21       504     Graphic
+FONTAZ22       428     Graphic
+FONTAZ23       404     Graphic
+FONTAZ24       472     Graphic
+FONTAZ25       432     Graphic
+FONTAZ26       200     Graphic
+FONTAZ27       228     Graphic
+FONTAZ28       316     Graphic
+FONTAZ29       276     Graphic
+FONTAZ30       316     Graphic
+FONTAZ31       364     Graphic
+FONTAZ32       504     Graphic
+FONTAZ33       400     Graphic
+FONTAZ34       436     Graphic
+FONTAZ35       396     Graphic
+FONTAZ36       436     Graphic
+FONTAZ37       396     Graphic
+FONTAZ38       432     Graphic
+FONTAZ39       412     Graphic
+FONTAZ40       448     Graphic
+FONTAZ41       268     Graphic
+FONTAZ42       332     Graphic
+FONTAZ43       432     Graphic
+FONTAZ44       292     Graphic
+FONTAZ45       392     Graphic
+FONTAZ46       416     Graphic
+FONTAZ47       388     Graphic
+FONTAZ48       420     Graphic
+FONTAZ49       420     Graphic
+FONTAZ50       408     Graphic
+FONTAZ51       360     Graphic
+FONTAZ52       384     Graphic
+FONTAZ53       416     Graphic
+FONTAZ54       388     Graphic
+FONTAZ55       364     Graphic
+FONTAZ56       404     Graphic
+FONTAZ57       408     Graphic
+FONTAZ58       416     Graphic
+FONTAZ59       220     Graphic
+FONTC01         52     Graphic
+FONTC02         52     Graphic
+FONTC03         52     Graphic
+FONTC04         52     Graphic
+FONTC05        820     Graphic
+FONTC06         52     Graphic
+FONTC07        232     Graphic
+FONTC08         52     Graphic
+FONTC09         52     Graphic
+FONTC10         52     Graphic
+FONTC11         52     Graphic
+FONTC12        232     Graphic
+FONTC13        428     Graphic
+FONTC14        224     Graphic
+FONTC15        564     Graphic
+FONTC16        700     Graphic
+FONTC17        372     Graphic
+FONTC18        744     Graphic
+FONTC19        868     Graphic
+FONTC20        608     Graphic
+FONTC21        768     Graphic
+FONTC22        764     Graphic
+FONTC23        612     Graphic
+FONTC24        816     Graphic
+FONTC25        788     Graphic
+FONTC26        316     Graphic
+FONTC27         52     Graphic
+FONTC28         52     Graphic
+FONTC29         52     Graphic
+FONTC30         52     Graphic
+FONTC31        768     Graphic
+FONTC32         52     Graphic
+FONTC33        744     Graphic
+FONTC34        792     Graphic
+FONTC35        612     Graphic
+FONTC36        796     Graphic
+FONTC37        644     Graphic
+FONTC38        528     Graphic
+FONTC39        884     Graphic
+FONTC40        820     Graphic
+FONTC41        476     Graphic
+FONTC42        588     Graphic
+FONTC43        868     Graphic
+FONTC44        420     Graphic
+FONTC45       1048     Graphic
+FONTC46        800     Graphic
+FONTC47        752     Graphic
+FONTC48        928     Graphic
+FONTC49        756     Graphic
+FONTC50        484     Graphic
+FONTC51        668     Graphic
+FONTC52        460     Graphic
+FONTC53        684     Graphic
+FONTC54        664     Graphic
+FONTC55       1004     Graphic
+FONTC56        684     Graphic
+FONTC57        692     Graphic
+FONTC58        664     Graphic
+PAUSED1       8052     Graphic
+FBULA1       18316     Graphic
+FBULB1       18308     Graphic
+FBULC1       18308     Graphic
+FBULD1       18308     Graphic
+FBULE1       18308     Graphic
+FBULF1       18308     Graphic
+FBULG1       18308     Graphic
+TITLE1       64000     Lump of raw data
+TITLE2       64000     Lump of raw data
+TITLE3       64000     Lump of raw data
+TITLE4       64000     Lump of raw data
+PRSGCRED     64000     Lump of raw data
+IN01           408     Graphic
+IN11           184     Graphic
+IN21           456     Graphic
+IN31           416     Graphic
+IN41           328     Graphic
+IN51           452     Graphic
+IN61           448     Graphic
+IN71           328     Graphic
+IN81           440     Graphic
+IN91           420     Graphic
+NEGNUM1        164     Graphic
+SMALLINA       168     Graphic
+SMALLINB        84     Graphic
+SMALLINC       172     Graphic
+SMALLIND       176     Graphic
+SMALLINE       144     Graphic
+SMALLINF       176     Graphic
+SMALLING       172     Graphic
+SMALLINH       132     Graphic
+SMALLINI       168     Graphic
+SMALLINJ       172     Graphic
+INRED01        408     Graphic
+INRED11        184     Graphic
+INRED21        456     Graphic
+INRED31        416     Graphic
+INRED41        328     Graphic
+INRED51        452     Graphic
+INRED61        448     Graphic
+INRED71        328     Graphic
+INRED81        440     Graphic
+INRED91        420     Graphic
+M_SLCTRA      1100     Graphic
+M_SLCTRB      1100     Graphic
+M_SLDLT1      1784     Graphic
+M_SLDMDA       568     Graphic
+M_SLDMDB       568     Graphic
+M_SLDRT1      1784     Graphic
+M_SLDKB1       652     Graphic
+M_HTIC1      13124     Graphic
+LOADICOM     25540     Graphic
+SAVEICOM     26000     Graphic
+TELEICOM     31060     Graphic
+H2BARL       30876     Graphic
+H2BARR       30836     Graphic
+H2TOPL        5392     Graphic
+H2TOPR        5352     Graphic
+LFEDGE1       1964     Graphic
+RTEDGE1       1988     Graphic
+ARMCLS1       1932     Graphic
+ARTICLS1      4536     Graphic
+MANAVL11       580     Graphic
+MANAVL21       580     Graphic
+MANAVL1E       580     Graphic
+MANAVL2E       580     Graphic
+MANACLS1      1000     Graphic
+MANADIMA      1060     Graphic
+MANADIMB      1060     Graphic
+MANABRTA      1060     Graphic
+MANABRTB      1060     Graphic
+INVBARL      17332     Graphic
+INVBARR      17332     Graphic
+STATBARL     17332     Graphic
+SLECTBOY      1776     Graphic
+KILLS1        4148     Graphic
+WPSLOT01      7876     Graphic
+WPSLOT11      7876     Graphic
+WPSLOT21      7876     Graphic
+WPFULL01      7876     Graphic
+WPFULL11      7876     Graphic
+WPFULL21      7876     Graphic
+WPIECEFA      4840     Graphic
+WPIECECA      3184     Graphic
+WPIECEMA      1940     Graphic
+WPIECEFB      1252     Graphic
+WPIECECB      1804     Graphic
+WPIECEMB      2632     Graphic
+WPIECEFC      1804     Graphic
+WPIECECC      2908     Graphic
+WPIECEMC      3184     Graphic
Not sure what these are all for, but they're probably to do with the Mac interface like you say.

Also, the install CD has ~40 icons laid out in a grid that make up the Hexen logo, but viewing it on OS X it looks like some kind of crazy advent calendar.

Share this post


Link to post
fraggle said:

It also contains these extra lumps:

<snip>

Not sure what these are all for, but they're probably to do with the Mac interface like you say.

Yeah.

CHAIN: 246x7
CHAIN11: 246x14
CHAIN12: 246x14
Glue together CHAIN11 and CHAIN12, and you have a high-res version of CHAIN.

Same deal for CHAIN2 with CHAIN21 and CHAIN22, or CHAIN3 with CHAIN31 and CHAIN32.

Likewise LIFEGEM has a high-res counterpart in LIFEGEM1, LIFEGMF2 has LIFEGMFB, etc. If a graphic would get above 320 width, they split it in two, this can be seen with the chains as well as with H2BAR (H2BARL+H2BARR), H2TOP (H2TOPL+H2TOPR), INVBAR (INVBARL+INVBARR) and STATBAR (STATBARL+STATBARR). I'm not sure why -- it's not a limitation of the format. Also they forgot to make a high res version of KEYBAR.

It's also interesting that they split TITLE into four slices of 640x100 pixels (it's raw data, I'm not sure what could have stopped them from putting all 640x400 pixels in the same lump), and they haven't made their credit screen high res.

Share this post


Link to post
Gez said:

It's also interesting that they split TITLE into four slices of 640x100 pixels (it's raw data, I'm not sure what could have stopped them from putting all 640x400 pixels in the same lump)

Perhaps some code was limited to 16 bit offsets (640x100 = 64000, which is just under 2^16).

Share this post


Link to post
Quasar said:

Even worse, I've heard rumors of a Mac version of Heretic as well, which is even MORE elusive.

As WildWeasel said, Mac Heretic is a fan port. At least as far as I'm aware the only sanctioned port of Heretic was to the Acorn Archimedes (which are fairly interesting ports). If I recall correctly in the last thread Mac Heretic was mentioned, the person who thought they had it either confirmed it was the fan port or didn't look.

Share this post


Link to post
andrewj said:

Perhaps some code was limited to 16 bit offsets (640x100 = 64000, which is just under 2^16).

Perhaps. Speaking of offsets, I've noticed in the demo IWAD that the lump offsets are 4-byte aligned.

SIDEDEFS: size 83610, actualsize 83612
SECTORS: size 10426, actualsize 10428
REJECT: size 20101, actualsize 20104
BLOCKMAP: size 13942, actualsize 13944
etc. (not gonna paste the whole output, it'd be pointless.)

size is the declared lump size in the directory, actual size is the total amount of bytes between that lump's start offset and the next lump's start offset. This is not a thing in the PC IWADs. In that respect, the Hexen Mac IWAD is like the console Doom IWADs I have checked.

Share this post


Link to post

I could be wrong, but I believe PowerPC (and maybe 68k) are highly sensitive to memory alignment. That is while a PowerPC Mac can do unaligned access (unlike consoles which will crash) it's much slower than aligned. It's possible they felt the optimization was worth it?

Share this post


Link to post

Sorry for bumping this, but I didn't want to start a separate thread for basically the same subject.

Recently I've taken quite some interest in Mac ports of open source games, like Duke Nukem 3D or Descent/Descent II. Descent is particularly noteworthy as the DX1-Rebirth port supports Mac data (including the demo), allowing to play the game with a high-res HUD:


Anyways I also thought it would be a good idea to check out the Hexen Mac demo, which I did. I first opened the IWAD with the Game File Explorer and then also XWE, confirming that the data is readable on little-endian systems. Then I tried to use the demo IWAD with ZDoom, but it failed to load the first level, giving an error report. Also it seems to not make any use of the high-resolution graphics and fonts.

While the Mac HUD and fonts aren't anything special, they're still a nice thing to have, especially since the Mac port is official.

Considering this, are there any ports other than the aforementioned Linux one that may read and use Mac Hexen IWADs?

[Edit] I've just found a YouTube video of the Mac version running with high-res interface:
https://youtu.be/2arJ02nVIRo

It would also be nice to have the music working like that too, but it is my understanding that this requires support for some Mac-native format (the Mac demo seems to still contain MIDI music which is not used).

Share this post


Link to post

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  
×