Attention: iDevGames forum has a new home at http://www.idevgames.com/forums.
Please update your bookmarks and linkage.
This forum has been locked and will be available for archival purposes only.
iDevGames - Mac, iPhone, iPad & iPod Game Developers Forum  


Tools & Technology Specific questions about networking, IDEs, APIs, SDKs, frameworks, debuggers, etc. Also for help with porting.

 
 
Thread Tools Display Modes
Old
  (#1)
sixtyfive
 
Posts: n/a
Porting Wolfenstein 3D to Mac OS X - 2005.11.01, 01:19 PM

Why isn't anyone interested in porting the Macintosh version of Wolfenstein 3D to Mac OS X? We already have Doom, Marathon and Duke Nukem.

Why not Wolfenstein?
   
Old
  (#2)
Leisure Suit Lurie
Moderator
 
Posts: 670
Join Date: 2003.03
Location: Clifton, NJ
2005.11.01, 03:18 PM

You can always try running it through DOSBox.


"Yes, well, that's the sort of blinkered, Philistine pig-ignorance I've come to expect from you non-creative garbage."
   
Old
  (#3)
Carlos Camacho
Editor-in-Chief
 
Posts: 1,253
Join Date: 2002.04
Location: Windsor Locks, CT, USA
2005.11.01, 07:21 PM

>Why isn't anyone interested in porting the Macintosh version of Wolfenstein 3D to Mac OS X
Daniel's idea is good. I'll take a wack at why no one is interested in porting the game..

1) If I recall, there is a great deal of ASM, whereas recent id code that was released is in C (or variant)

2) The 3d engine (which is really 2d) is pretty primitive for today. Considering that devs can use dim3, Unity or OpenGL to make their own FPS, I can't see a reason to revisit the game. Perhaps you should grab such dev tools and make an all new game that is set in the WW2 era?

Cheers,


Carlos A. Camacho, Editor-in-Chief
"One Editor to Rule Them All"
iDevGames Store | Donate to iDevGames
   
Old
  (#4)
Leisure Suit Lurie
Moderator
 
Posts: 670
Join Date: 2003.03
Location: Clifton, NJ
2005.11.01, 07:39 PM

I *think* Bill Heinman released the mac source code to Wolfenstein. Not 100% on that. Its probably 68k assembly though.


"Yes, well, that's the sort of blinkered, Philistine pig-ignorance I've come to expect from you non-creative garbage."
   
Old
  (#5)
sixtyfive
 
Posts: n/a
2005.11.02, 10:29 AM

Quote:
Originally Posted by Leisure Suit Lurie
I *think* Bill Heinman released the mac source code to Wolfenstein. Not 100% on that. Its probably 68k assembly though.
Yes, and I have a copy of the code.

It's really all C, except for a 16 KB PPC assembly document.

...
...
...

Just to confirm what I said, I remember that Axel Wefers (Fruitz of Dojo) once told me that porting that specific version of Wolfenstein to Mac OS X would be a half-a-day long work for a good coder.

If you want, I can put the source online somewhere, since it isn't available anymore from Contrabandent's Hotline server.

Last edited by sixtyfive : 2005.11.02 at 11:06 AM.
   
Old
  (#6)
Malarkey
Über Member
 
Posts: 370
Join Date: 2004.06
Location: Behind the Orange Curtain
2005.11.05, 12:13 PM

We're all in the middle of a 6-week programming contest plus the holidays (for the US residents, at least) are coming up so it's probably more likely that no one has the time right now.

If you want, post it, and I'll take a look at it but don't expect anything for a while.


The brains and fingers behind Malarkey Software (plus caretaker of the world's two brattiest felines).
   
Old
  (#7)
sixtyfive
 
Posts: n/a
2005.11.07, 11:32 AM

Quote:
History of Wolfenstein 3D: First & Second Encounter
Programming and Project Lead: Bill Heineman
Additional programming: Chris DeSalvo
Producer: Bill Dugan

Wolfenstein 3D for MacOS was released on October 1st, 1994 by Interplay Productions under license from id software. The code was based not on the PC version but of a Super NES version that was done at id software. This version of the game differs greatly from the PC version since it used BSP trees to help determine which walls were to be drawn instead of the ray-casting method.

The fixed point number system was 8.8 format so that it could fit in a 65816 register for the SNES and Apple IIgs version of Wolf 3D. (8 bits of integer and 8 bits of fraction)

The mac version also has two modes of drawing. In the 68000 version, 68000 code is generated at runtime to draw the vertical lines very quickly. The source file SetupScalers68k.c creates the 68000 code and then issues calls to it via a little 68000 assembly glue code. This is how the game got its speed. The powerpc version originally had this method as well but the performance sucked. So it was changed to a simple assembly loop and the game ran fine. This is why there is SetupScalersPPC.c and SetupScalers68k.c.

I took the code from Codewarrion DR/4 which was the development system at the time and updated the project to Codewarrior PRO 5 (Which is what I use today). I've compiled, tested and ran the game and the code runs fine. The sound code is copyright Steve Hales and Jim Nitchals. You cannot use the music driver in your own programs unless you get a license from Steve Hales. (Jim Nitchals sadly has passed on, may he rest in peace).

Yes, there is a level editor that I wrote. It sucks. I suggest you get WolfEdit that is available on the web from WolfAddict software instead. It doesn't suck.

Here it is 1/21/2000. Over 5 years since I did the mac version of Wolf 3D. Seems like yesterday. I hope you enjoy looking over this code and making little changes for your own pleasure and learning. If someone makes any improvements to this code like adding Sprocket support or GL support, please send me the new source. I can be found at burger@logicware.com

I want to thank those who helped make this project a reality. John Carmack, Jay Wilbur, John Romero, Brian Luzietti and my wife Lorenza.

Bill Heineman
Logicware Inc.
20628 E. Arrow Hwy. #6
burger@logicware.com
http://rapidshare.de/files/7312368/W...ource.sit.html

As I said before, only a 12 KB .ppc file actually contains assembly code. Shouldn't be a hard work for a talented programmer.

Have a nice day,
sixtyfive
   
Old
  (#8)
unknown
Moderator
 
Posts: 1,597
Join Date: 2005.07
Location: Moon
2005.11.14, 08:04 AM

This is the origional wolf3d, I want this on x

Do you have xcode?
If not install it you will need it later,
this is all the files added to a project and it gets two errors (and a lot more if you comment out those lines)
the error is deferencing pointer to incomplete type
PalHand = (Handle) (**(*GameGWorld).portPixMap).pmTable;

update:
PalHand = (Handle)(**GetPortPixMap(GameGWorld)).pmTable;
seems to fix it
another update: fixed one file, out of I dont know how many will cause problems but basically the problems are things like
UpdateDialog(theDialog, theDialog->visRgn);
needs to be changed to

RgnHandle theDialog_visRgn;
GetPortVisibleRegion(theDialog, &theDialog_visRgn);
UpdateDialog(theDialog, theDialog_visRgn);

because of this being carbon and not mac os


Sir, e^iπ + 1 = 0, hence God exists; reply!
   
Old
  (#9)
sixtyfive
 
Posts: n/a
2005.11.14, 09:00 AM

My problem is, I'm not really used to working on other people's code. Also, my knowledge of C isn't that good, and is even worse when applied to the Macintosh environment.

By the way, I was formely known on these forums as SixtySoftWorks.
   
Old
  (#10)
unknown
Moderator
 
Posts: 1,597
Join Date: 2005.07
Location: Moon
2005.11.14, 09:05 AM

get xcode and try and compile this.

Im just uploading what ive done so far version,
search for EDEDED to see the changes,

theres some errors there just now I dont understand yet, if someone with some experience with Quickdraw could take a look would be very useful,
www.geocities.com/ed72678954/Wolf3D.zip


Sir, e^iπ + 1 = 0, hence God exists; reply!
   
Old
  (#11)
sixtyfive
 
Posts: n/a
2005.11.14, 09:12 AM

Just installed Xcode, now looking. Thanks for your prompt replies, mine will follow soon.
   
Old
  (#12)
sixtyfive
 
Posts: n/a
2005.11.14, 09:16 AM

I'm actually getting erros on PrefsFile.c. It actually refers to Mac OS Classic directory structures (Macintosh HD:System Folder:Preferences), so that should be changed.

Also, I think file I/O routines changed with the newer systems.
   
Old
  (#13)
unknown
Moderator
 
Posts: 1,597
Join Date: 2005.07
Location: Moon
2005.11.14, 09:20 AM

Thats odd, it must be compiling in a order for you, I get errors in Mac.c, but im sure ill get errors in PrefsFile.c later
Much of the code will still work, but yeah filesystem things can cause problems, that was the problem getting music in the candy crisis game.
Its just a matter of updating the some parts of the code for the altered carbon API, so hopefully it shouldnt be too much trouble. I am stuck with the setPort thing just now..


Sir, e^iπ + 1 = 0, hence God exists; reply!
   
Old
  (#14)
sixtyfive
 
Posts: n/a
2005.11.14, 09:22 AM

You are doing a good job I think. Any chances to continue this talk on AIM or MSN?
   
Old
  (#15)
sixtyfive
 
Posts: n/a
2005.11.14, 11:59 AM

We are stuck on the ASM code for the rendering engine. Could someone join us?
   
 


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump



Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
vBulletin Skin developed by: vBStyles.com
DevServe Network: iDevApps | uDevGames | iDevGames