File uploaded: ext-mac-300.sit.bin ext-mac-300.sit.bin.txt These files are to replace the files with the same names in angband/Macintosh, with these fixes: Update #2 (19/05/2002) - Supplied missing A-mac-h.pch - Made some rarely used menus submenus under Special. The menu bar was way too long... Update #1 (13/05/2002) - Removed and because their are now automatically included by h-system.h. - Removed instructions for file modifications, because they aren't necessary any longer. - Added a comment on CodeWarrior's bogus prototype in - Avoid the use of always_pict whenever possible, because it's so slow. The real solution is double buffering, but I'm too lazy to do so... - Added support for Mogami's bigtile patch (#ifdef USE_DOUBLE_TILES). Description: This archive contains all the extra files I used to compile three mac ports of Angband 3.0.0 CVS (after beta 2) Angband +- Angband.proj -- CodeWarrior (6) project file | +- (src) -- (source files, in the standard distribution) +- (lib) -- (library files, in the standard distribution) | +- src-mac -+- A-mac-h.pch -- CW prefix header | +- main-mac.c -- Classical OS support | +- main-crb.c -- Carbon support | +- Angband.r -- Menu and window resources | +- Carbon.r -- Extra resources for Carbon | +- 8x8.rsrc -- 8x8 tiles (PICT ID 1001) | +- 16x16.rsrc -- Adam Bolt tiles (PICT ID 1002) | +- mask.rsrc -- Mask images for the above (PICT ID 1003) | +- 8x13.rsrc -- 8x13 tiles (not used) | + AngSound.rsrc -- Sound effects ('snd ' resources) Notes: 1) You have to create l-*.c files by running make on other platform, or, on OS X, modify Makefile.std to target those files: ------------------------------------------------------------------------------ cd blahblahblah/src cp Makefile.std Makefile vi Makefile (or emacs Makefile, if you prefer this way :) find the line that says "all: angband", and put this before it: bootstrap: l-monst.c l-object.c l-player.c l-random.c l-ui.c l-misc.c l-spell.c make ------------------------------------------------------------------------------ Remember setting file type to 'TEXT', or CW won't accept them... You might wish to remove *.o in src/lua 2) In util.c, you have to cast the second argument to write() into (void *) to avoid compiler errors... It seems that MetroWerks have defined *wrong* prototype for this function. The preferred way to fix the problem is to modify CodeWarrior's , because it is simply wrong: In {CodeWarrior}:MSL:MSL_C:MSL_Common:Include:unistd.h Wrong: __inline int write(int _a, void *_b, __std(size_t) _c) {return _write( _a, _b, _c ); } Correct: __inline int write(int _a, const void *_b, __std(size_t) _c) {return _write( _a, _b, _c ); } 3) If you are going to use main-xxx.c in this archive, please make sure adding these macros to pref-mac.prf, or (unmodified) numeric keypad keys will refuse to work. ---->8------>8------>8------>8------>8------>8------>8------>8-- # # Keypad -- (/,*,7,8,9,-,4,5,6,+,1,2,3,0,.) # A:/ P:^_K/\r A:* P:^_K*\r A:7 P:^_K7\r A:8 P:^_K8\r A:9 P:^_K9\r A:- P:^_K-\r A:4 P:^_K4\r A:5 P:^_K5\r A:6 P:^_K6\r A:+ P:^_K+\r A:1 P:^_K1\r A:2 P:^_K2\r A:3 P:^_K3\r A:0 P:^_K0\r A:. P:^_K.\r ---->8------>8------>8------>8------>8------>8------>8------>8-- // pelpel (pelpel@zak.att.ne.jp)