diff --git a/CHANGELOG.txt b/CHANGELOG.txt index 798419a8f..814f768cd 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -1,5 +1,9 @@ D2X-Rebirth Changelog +20091128 +-------- +main/net_udp.c, d2x-rebirth.xcodeproj, D2X.make, arch/carbon/conf.h: Fixed building error on Windows caused by false socket variable; Fixed compiler Warnings on Mac; Updated Mac build files; Unification in version numbering + 20091124 -------- include/args.h, INSTALL.txt, main/net_udp.c, main/net_udp.h, main/fireball.c, main/multi.c, main/multibot.c, main/multi.h, main/inferno.c, main/menu.c, main/object.c, main/kmatrix.c, main/kmatrix.h, main/newdemo.c, main/config.c, main/net_ipx.c, main/config.h, main/net_ipx.h, main/gamerend.c, main/gameseq.c, main/endlevel.c, main/vers_id.h, main/game.c, main/gauges.c, misc/args.c, SConstruct, d2x.ini, README.txt, arch/linux/ipx.c, arch/linux/ipx_kali.c, arch/win32/ipx.c: Abstracting networking protocols - Step 4: Implemented new UDP layer with Client/Server communication, Packet Loss Prevention and strict Version checking. Netgames list will follow later. diff --git a/D2X.make b/D2X.make index c8e48e9d3..a05341216 100644 --- a/D2X.make +++ b/D2X.make @@ -108,7 +108,7 @@ SrcFiles = :main:hud.c ¶ :main:inferno.c ¶ :main:kconfig.c ¶ -# :main:kmatrix.c ¶ + :main:kmatrix.c ¶ :main:laser.c ¶ :main:lighting.c ¶ :main:menu.c ¶ @@ -116,10 +116,10 @@ SrcFiles = :main:mission.c ¶ :main:morph.c ¶ :main:movie.c ¶ -# :main:multi.c ¶ -# :main:multibot.c ¶ -# :main:netmisc.c ¶ -# :main:network.c ¶ + :main:multi.c ¶ + :main:multibot.c ¶ + :main:net_ipx.c ¶ + :main:net_udp.c ¶ :main:newdemo.c ¶ :main:newmenu.c ¶ :main:object.c ¶ @@ -254,7 +254,7 @@ GeneralObjects = "{ObjDir}hud.c.x" ¶ "{ObjDir}inferno.c.x" ¶ "{ObjDir}kconfig.c.x" ¶ -# "{ObjDir}kmatrix.c.x" ¶ + "{ObjDir}kmatrix.c.x" ¶ "{ObjDir}laser.c.x" ¶ "{ObjDir}lighting.c.x" ¶ "{ObjDir}menu.c.x" ¶ @@ -262,10 +262,10 @@ GeneralObjects = "{ObjDir}mission.c.x" ¶ "{ObjDir}morph.c.x" ¶ "{ObjDir}movie.c.x" ¶ -# "{ObjDir}multi.c.x" ¶ -# "{ObjDir}multibot.c.x" ¶ -# "{ObjDir}netmisc.c.x" ¶ -# "{ObjDir}network.c.x" ¶ + "{ObjDir}multi.c.x" ¶ + "{ObjDir}multibot.c.x" ¶ + "{ObjDir}net_ipx.c.x" ¶ + "{ObjDir}net_udp.c.x" ¶ "{ObjDir}newdemo.c.x" ¶ "{ObjDir}newmenu.c.x" ¶ "{ObjDir}object.c.x" ¶ @@ -450,7 +450,7 @@ directories "{ObjDir}hud.c.x" Ä :main:hud.c "{ObjDir}inferno.c.x" Ä :main:inferno.c "{ObjDir}kconfig.c.x" Ä :main:kconfig.c -#"{ObjDir}kmatrix.c.x" Ä :main:kmatrix.c +"{ObjDir}kmatrix.c.x" Ä :main:kmatrix.c "{ObjDir}laser.c.x" Ä :main:laser.c "{ObjDir}lighting.c.x" Ä :main:lighting.c "{ObjDir}menu.c.x" Ä :main:menu.c @@ -458,10 +458,10 @@ directories "{ObjDir}mission.c.x" Ä :main:mission.c "{ObjDir}morph.c.x" Ä :main:morph.c "{ObjDir}movie.c.x" Ä :main:movie.c -#"{ObjDir}multi.c.x" Ä :main:multi.c -#"{ObjDir}multibot.c.x" Ä :main:multibot.c -#"{ObjDir}netmisc.c.x" Ä :main:netmisc.c -#"{ObjDir}network.c.x" Ä :main:network.c +"{ObjDir}multi.c.x" Ä :main:multi.c +"{ObjDir}multibot.c.x" Ä :main:multibot.c +"{ObjDir}net_ipx.c.x" Ä :main:net_ipx.c +"{ObjDir}net_udp.c.x" Ä :main:net_udp.c "{ObjDir}newdemo.c.x" Ä :main:newdemo.c "{ObjDir}newmenu.c.x" Ä :main:newmenu.c "{ObjDir}object.c.x" Ä :main:object.c diff --git a/arch/carbon/conf.h b/arch/carbon/conf.h index a0eabfd11..496c8c58a 100644 --- a/arch/carbon/conf.h +++ b/arch/carbon/conf.h @@ -9,10 +9,10 @@ #define D2XMAJOR "0" /* d2x minor version */ -#define D2XMINOR "5" +#define D2XMINOR "55" /* d2x micro version */ -#define D2XMICRO "5.1" +#define D2XMICRO "1" /* Define if you want to build the editor */ /* #undef EDITOR */ @@ -105,7 +105,7 @@ #if defined(__APPLE__) && defined(__MACH__) #define __unix__ /* Define if you want a network build */ -//# define NETWORK //FIXME: TURN BACK ON WHEN ZICO FINISHES!!! +# define NETWORK /* Define to 1 if the system has the type `struct timespec'. */ #define HAVE_STRUCT_TIMESPEC 1 diff --git a/d2x-rebirth.xcodeproj/project.pbxproj b/d2x-rebirth.xcodeproj/project.pbxproj index 431504708..537b4f861 100755 --- a/d2x-rebirth.xcodeproj/project.pbxproj +++ b/d2x-rebirth.xcodeproj/project.pbxproj @@ -7,6 +7,13 @@ objects = { /* Begin PBXBuildFile section */ + 17DFA6B710C1A2D100674D11 /* net_udp.c in Sources */ = {isa = PBXBuildFile; fileRef = 17DFA6B510C1A2D100674D11 /* net_udp.c */; }; + 17DFA6B910C1A2D100674D11 /* net_udp.c in Sources */ = {isa = PBXBuildFile; fileRef = 17DFA6B510C1A2D100674D11 /* net_udp.c */; }; + 17DFA6BF10C1A32300674D11 /* net_ipx.c in Sources */ = {isa = PBXBuildFile; fileRef = EBF658A00F936D5300CB5C73 /* net_ipx.c */; }; + 17DFA6C410C1A3BA00674D11 /* multi.c in Sources */ = {isa = PBXBuildFile; fileRef = 676032DC066B399A008A67A3 /* multi.c */; }; + 17DFA6C510C1A3BC00674D11 /* multibot.c in Sources */ = {isa = PBXBuildFile; fileRef = 676032DD066B399A008A67A3 /* multibot.c */; }; + 17DFA6C610C1A3D400674D11 /* kmatrix.c in Sources */ = {isa = PBXBuildFile; fileRef = 676032F9066B39CE008A67A3 /* kmatrix.c */; }; + 17DFA6C810C1A42F00674D11 /* net_ipx.c in Sources */ = {isa = PBXBuildFile; fileRef = EBF658A00F936D5300CB5C73 /* net_ipx.c */; }; 670E39B0066C598A0085B671 /* mve_audio.c in Sources */ = {isa = PBXBuildFile; fileRef = 67B4421406687AD900DF26D8 /* mve_audio.c */; }; 670E39B1066C598A0085B671 /* decoder16.c in Sources */ = {isa = PBXBuildFile; fileRef = 67B4421006687AD900DF26D8 /* decoder16.c */; }; 670E39B3066C598B0085B671 /* decoder8.c in Sources */ = {isa = PBXBuildFile; fileRef = 67B4421106687AD900DF26D8 /* decoder8.c */; }; @@ -336,9 +343,6 @@ EB28D9A30ECEAF1C00E68E9B /* init.c in Sources */ = {isa = PBXBuildFile; fileRef = EB28D9A20ECEAF1C00E68E9B /* init.c */; }; EB28D9A40ECEAF1C00E68E9B /* init.c in Sources */ = {isa = PBXBuildFile; fileRef = EB28D9A20ECEAF1C00E68E9B /* init.c */; }; EB380D360E16886300EBD9AD /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; }; - EB423D220F63FC710082C684 /* noloss.h in Headers */ = {isa = PBXBuildFile; fileRef = EB423D200F63FC710082C684 /* noloss.h */; }; - EB423D230F63FC710082C684 /* noloss.c in Sources */ = {isa = PBXBuildFile; fileRef = EB423D1F0F63FC710082C684 /* noloss.c */; }; - EB423D240F63FC710082C684 /* noloss.h in Headers */ = {isa = PBXBuildFile; fileRef = EB423D200F63FC710082C684 /* noloss.h */; }; EB92BE600CDD693C0045A32C /* digi_audio.c in Sources */ = {isa = PBXBuildFile; fileRef = EB92BE5C0CDD693C0045A32C /* digi_audio.c */; }; EB92BE610CDD693C0045A32C /* digi_mixer_music.c in Sources */ = {isa = PBXBuildFile; fileRef = EB92BE5D0CDD693C0045A32C /* digi_mixer_music.c */; }; EB92BE620CDD693C0045A32C /* digi_mixer.c in Sources */ = {isa = PBXBuildFile; fileRef = EB92BE5E0CDD693C0045A32C /* digi_mixer.c */; }; @@ -375,9 +379,6 @@ EBB9E5350D8E82B3003466E6 /* clip.h in Headers */ = {isa = PBXBuildFile; fileRef = EBB9E5330D8E82B3003466E6 /* clip.h */; }; EBB9E5360D8E82B3003466E6 /* bitmap.h in Headers */ = {isa = PBXBuildFile; fileRef = EBB9E5320D8E82B3003466E6 /* bitmap.h */; }; EBB9E5370D8E82B3003466E6 /* clip.h in Headers */ = {isa = PBXBuildFile; fileRef = EBB9E5330D8E82B3003466E6 /* clip.h */; }; - EBB9E5540D8E8502003466E6 /* netdrv_udp.h in Headers */ = {isa = PBXBuildFile; fileRef = EBB9E54F0D8E8502003466E6 /* netdrv_udp.h */; }; - EBB9E5580D8E8502003466E6 /* netdrv_udp.c in Sources */ = {isa = PBXBuildFile; fileRef = EBB9E54E0D8E8502003466E6 /* netdrv_udp.c */; }; - EBB9E5590D8E8502003466E6 /* netdrv_udp.h in Headers */ = {isa = PBXBuildFile; fileRef = EBB9E54F0D8E8502003466E6 /* netdrv_udp.h */; }; EBC652100890D6B7004FCAA3 /* ui.h in Headers */ = {isa = PBXBuildFile; fileRef = EBC6520F0890D6B7004FCAA3 /* ui.h */; }; EBC652110890D6B7004FCAA3 /* ui.h in Headers */ = {isa = PBXBuildFile; fileRef = EBC6520F0890D6B7004FCAA3 /* ui.h */; }; EBC652130890D6DF004FCAA3 /* func.h in Headers */ = {isa = PBXBuildFile; fileRef = EBC652120890D6DF004FCAA3 /* func.h */; }; @@ -391,6 +392,8 @@ /* Begin PBXFileReference section */ 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + 17DFA6B510C1A2D100674D11 /* net_udp.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = net_udp.c; sourceTree = ""; }; + 17DFA6B610C1A2D100674D11 /* net_udp.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = net_udp.h; sourceTree = ""; }; 670E3796066C50C30085B671 /* CHANGELOG.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = CHANGELOG.txt; sourceTree = ""; }; 670E3867066C571F0085B671 /* MVEPlayer.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MVEPlayer.app; sourceTree = BUILT_PRODUCTS_DIR; }; 670E3869066C571F0085B671 /* MVEPlayer-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = "MVEPlayer-Info.plist"; sourceTree = SOURCE_ROOT; }; @@ -632,8 +635,6 @@ EB0421050A341042002CC961 /* controls.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = controls.h; sourceTree = ""; }; EB0421060A341042002CC961 /* config.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = config.h; sourceTree = ""; }; EB28D9A20ECEAF1C00E68E9B /* init.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = init.c; sourceTree = ""; }; - EB423D1F0F63FC710082C684 /* noloss.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = noloss.c; sourceTree = ""; }; - EB423D200F63FC710082C684 /* noloss.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = noloss.h; sourceTree = ""; }; EB92BE110CDD68200045A32C /* digi_audio.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = digi_audio.h; sourceTree = ""; }; EB92BE120CDD68200045A32C /* digi_mixer_music.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = digi_mixer_music.h; sourceTree = ""; }; EB92BE130CDD68200045A32C /* digi_mixer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = digi_mixer.h; sourceTree = ""; }; @@ -678,8 +679,6 @@ EBB9E54B0D8E8429003466E6 /* decoders.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = decoders.h; sourceTree = ""; }; EBB9E54C0D8E8429003466E6 /* mve_audio.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = mve_audio.h; sourceTree = ""; }; EBB9E54D0D8E8429003466E6 /* mvelib.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = mvelib.h; sourceTree = ""; }; - EBB9E54E0D8E8502003466E6 /* netdrv_udp.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = netdrv_udp.c; sourceTree = ""; }; - EBB9E54F0D8E8502003466E6 /* netdrv_udp.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = netdrv_udp.h; sourceTree = ""; }; EBB9E5620D8E8690003466E6 /* alsadigi.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = alsadigi.c; sourceTree = ""; }; EBB9E5630D8E8691003466E6 /* hmiplay.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = hmiplay.c; sourceTree = ""; }; EBB9E5640D8E8691003466E6 /* hmistub.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = hmistub.c; sourceTree = ""; }; @@ -778,8 +777,6 @@ EBF6589B0F936BA200CB5C73 /* ipx.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ipx.c; sourceTree = ""; }; EBF6589C0F936BA200CB5C73 /* ipx_kali.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ipx_kali.c; sourceTree = ""; }; EBF6589D0F936BD800CB5C73 /* ipx.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ipx.c; sourceTree = ""; }; - EBF6589E0F936C1B00CB5C73 /* ipxdrv.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ipxdrv.h; sourceTree = ""; }; - EBF6589F0F936D5300CB5C73 /* ipxdrv.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ipxdrv.c; sourceTree = ""; }; EBF658A00F936D5300CB5C73 /* net_ipx.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = net_ipx.c; sourceTree = ""; }; EBF658A10F936D5300CB5C73 /* net_ipx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = net_ipx.h; sourceTree = ""; }; /* End PBXFileReference section */ @@ -1104,7 +1101,6 @@ 67B4471706687CF400DF26D8 /* hostage.c */, 67B4471906687CF400DF26D8 /* hud.c */, 67B4471B06687CF400DF26D8 /* inferno.c */, - EBF6589F0F936D5300CB5C73 /* ipxdrv.c */, 67B4472006687CF400DF26D8 /* kconfig.c */, 676032F9066B39CE008A67A3 /* kmatrix.c */, 67B4472506687CF400DF26D8 /* laser.c */, @@ -1117,10 +1113,8 @@ 676032DC066B399A008A67A3 /* multi.c */, 676032DD066B399A008A67A3 /* multibot.c */, EBF658A00F936D5300CB5C73 /* net_ipx.c */, - EBB9E54E0D8E8502003466E6 /* netdrv_udp.c */, 67B4473D06687CF400DF26D8 /* newdemo.c */, 67B4473F06687CF400DF26D8 /* newmenu.c */, - EB423D1F0F63FC710082C684 /* noloss.c */, 67B4474106687CF400DF26D8 /* object.c */, 67B4475906687CF400DF26D8 /* paging.c */, 67B4475B06687CF400DF26D8 /* physics.c */, @@ -1187,10 +1181,10 @@ EB0420B90A341041002CC961 /* multi.h */, EB0420E70A341042002CC961 /* multibot.h */, EBF658A10F936D5300CB5C73 /* net_ipx.h */, - EBB9E54F0D8E8502003466E6 /* netdrv_udp.h */, + 17DFA6B510C1A2D100674D11 /* net_udp.c */, + 17DFA6B610C1A2D100674D11 /* net_udp.h */, EB01AFA90A65323200EA4C7C /* newdemo.h */, EB0420DE0A341042002CC961 /* newmenu.h */, - EB423D200F63FC710082C684 /* noloss.h */, EB0420DD0A341042002CC961 /* object.h */, EB0420DC0A341042002CC961 /* paging.h */, EB0420DB0A341042002CC961 /* physics.h */, @@ -1289,7 +1283,6 @@ 6791D0BD06688AE800056A5A /* iff.h */, EBB9E5480D8E83F2003466E6 /* internal.h */, 6791CFC50668893B00056A5A /* interp.h */, - EBF6589E0F936C1B00CB5C73 /* ipxdrv.h */, 6791D0D106688B1100056A5A /* libmve.h */, EBB9E5490D8E83F2003466E6 /* loadgl.h */, 6791CF2D066887E500056A5A /* makesig.h */, @@ -1517,8 +1510,6 @@ EBC6525C0890F79B004FCAA3 /* nocfile.h in Headers */, EBB9E5360D8E82B3003466E6 /* bitmap.h in Headers */, EBB9E5370D8E82B3003466E6 /* clip.h in Headers */, - EBB9E5590D8E8502003466E6 /* netdrv_udp.h in Headers */, - EB423D240F63FC710082C684 /* noloss.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1569,8 +1560,6 @@ EBC6525D0890F79B004FCAA3 /* nocfile.h in Headers */, EBB9E5340D8E82B3003466E6 /* bitmap.h in Headers */, EBB9E5350D8E82B3003466E6 /* clip.h in Headers */, - EBB9E5540D8E8502003466E6 /* netdrv_udp.h in Headers */, - EB423D220F63FC710082C684 /* noloss.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1638,7 +1627,6 @@ 29B97313FDCFA39411CA2CEA /* Project object */ = { isa = PBXProject; buildConfigurationList = EBBAD49E0B2D0F7E00080BBF /* Build configuration list for PBXProject "d2x-rebirth" */; - compatibilityVersion = "Xcode 2.4"; hasScannedForEncodings = 1; mainGroup = 29B97314FDCFA39411CA2CEA /* d2x */; projectDirPath = ""; @@ -1829,10 +1817,10 @@ EB92BE670CDD693C0045A32C /* jukebox.c in Sources */, EB92BEA80CDD6A570045A32C /* dl_list.c in Sources */, EB92BEA90CDD6A570045A32C /* hmp2mid.c in Sources */, - EBB9E5580D8E8502003466E6 /* netdrv_udp.c in Sources */, EB28D9A40ECEAF1C00E68E9B /* init.c in Sources */, - EB423D230F63FC710082C684 /* noloss.c in Sources */, EBE8D6EC0FC583B4009D181F /* window.c in Sources */, + 17DFA6B910C1A2D100674D11 /* net_udp.c in Sources */, + 17DFA6C810C1A42F00674D11 /* net_ipx.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1970,6 +1958,11 @@ EB92BEA70CDD6A570045A32C /* hmp2mid.c in Sources */, EB28D9A30ECEAF1C00E68E9B /* init.c in Sources */, EBE8D6EB0FC583B4009D181F /* window.c in Sources */, + 17DFA6B710C1A2D100674D11 /* net_udp.c in Sources */, + 17DFA6BF10C1A32300674D11 /* net_ipx.c in Sources */, + 17DFA6C410C1A3BA00674D11 /* multi.c in Sources */, + 17DFA6C510C1A3BC00674D11 /* multibot.c in Sources */, + 17DFA6C610C1A3D400674D11 /* kmatrix.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2182,22 +2175,21 @@ EBBAD49F0B2D0F7E00080BBF /* Development */ = { isa = XCBuildConfiguration; buildSettings = { + ARCHS = "$(NATIVE_ARCH)"; GCC_PREFIX_HEADER = arch/carbon/conf.h; GCC_TREAT_WARNINGS_AS_ERRORS = YES; + MACOSX_DEPLOYMENT_TARGET = ""; }; name = Development; }; EBBAD4A00B2D0F7E00080BBF /* Deployment */ = { isa = XCBuildConfiguration; buildSettings = { - ARCHS = ( - ppc, - i386, - ); + ARCHS = "$(NATIVE_ARCH)"; GCC_PREFIX_HEADER = arch/carbon/conf.h; GCC_VERSION_i386 = 4.0; GCC_VERSION_ppc = 3.3; - MACOSX_DEPLOYMENT_TARGET = 10.1; + MACOSX_DEPLOYMENT_TARGET = ""; MACOSX_DEPLOYMENT_TARGET_i386 = 10.4; MACOSX_DEPLOYMENT_TARGET_ppc = 10.2; SDKROOT = /Developer/SDKs/MacOSX10.3.9.sdk; @@ -2209,7 +2201,9 @@ EBBAD4A10B2D0F7E00080BBF /* Default */ = { isa = XCBuildConfiguration; buildSettings = { + ARCHS = "$(NATIVE_ARCH)"; GCC_PREFIX_HEADER = arch/carbon/conf.h; + MACOSX_DEPLOYMENT_TARGET = ""; SDKROOT_i386 = /Developer/SDKs/MacOSX10.2.8.sdk; SDKROOT_ppc = /Developer/SDKs/MacOSX10.4u.sdk; }; diff --git a/main/net_udp.c b/main/net_udp.c index 834967815..d50a83c1d 100644 --- a/main/net_udp.c +++ b/main/net_udp.c @@ -226,7 +226,7 @@ int udp_open_socket(int socknum, int port) { con_printf(CON_URGENT,"udp_open_socket: bind name to socket failed\n"); nm_messagebox(TXT_ERROR,1,TXT_OK,"Could not bind name to socket"); - udp_close_socket(sock); + udp_close_socket(socknum); return -1; } #else @@ -321,7 +321,7 @@ int udp_receive_packet(int socknum, ubyte *text, int len, struct _sockaddr *send if (udp_general_packet_ready(socknum)) { - msglen = recvfrom (UDP_Socket[socknum], text, len, 0, sender_addr, &clen); + msglen = recvfrom (UDP_Socket[socknum], text, len, 0, (struct sockaddr *)sender_addr, &clen); if (msglen < 0) return 0; @@ -511,7 +511,7 @@ void net_udp_send_sequence_packet(UDP_sequence_packet seq, struct _sockaddr recv buf[len] = seq.player.connected; len++; buf[len] = seq.player.rank; len++; - sendto (UDP_Socket[0], buf, len, 0, (struct _sockaddr *)&recv_addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], buf, len, 0, (struct sockaddr *)&recv_addr, sizeof(struct _sockaddr)); } void net_udp_receive_sequence_packet(ubyte *data, UDP_sequence_packet *seq, struct _sockaddr sender_addr) @@ -1352,7 +1352,7 @@ void net_udp_send_objects(void) Assert(loc <= UPKT_MAX_SIZE); - sendto (UDP_Socket[0], object_buffer, loc, 0, (struct _sockaddr *)&UDP_sync_player.player.protocol.udp.addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], object_buffer, loc, 0, (struct sockaddr *)&UDP_sync_player.player.protocol.udp.addr, sizeof(struct _sockaddr)); } if (i > Highest_object_index) @@ -1373,7 +1373,7 @@ void net_udp_send_objects(void) object_buffer[2] = frame_num; *(short *)(object_buffer+3) = INTEL_SHORT(-2); *(short *)(object_buffer+6) = INTEL_SHORT(obj_count); - sendto (UDP_Socket[0], object_buffer, 8, 0, (struct _sockaddr *)&UDP_sync_player.player.protocol.udp.addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], object_buffer, 8, 0, (struct sockaddr *)&UDP_sync_player.player.protocol.udp.addr, sizeof(struct _sockaddr)); // Send sync packet which tells the player who he is and to start! net_udp_send_rejoin_sync(player_num); @@ -1540,7 +1540,7 @@ void net_udp_dump_player(struct _sockaddr dump_addr, int why) buf[0] = UPID_DUMP; buf[1] = why; - sendto (UDP_Socket[0], buf, sizeof(buf), 0, (struct _sockaddr *)&dump_addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], buf, sizeof(buf), 0, (struct sockaddr *)&dump_addr, sizeof(struct _sockaddr)); } void net_udp_update_netgame(void) @@ -1625,7 +1625,7 @@ void net_udp_send_endlevel_packet(void) } for (i = 1; i < MAX_PLAYERS; i++) - sendto (UDP_Socket[0], buf, len, 0, (struct _sockaddr *)&Netgame.players[i].protocol.udp.addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], buf, len, 0, (struct sockaddr *)&Netgame.players[i].protocol.udp.addr, sizeof(struct _sockaddr)); } else { @@ -1645,7 +1645,7 @@ void net_udp_send_endlevel_packet(void) PUT_INTEL_SHORT(buf + len, kill_matrix[Player_num][i]); len += 2; } - sendto (UDP_Socket[0], buf, len, 0, (struct _sockaddr *)&Netgame.players[0].protocol.udp.addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], buf, len, 0, (struct sockaddr *)&Netgame.players[0].protocol.udp.addr, sizeof(struct _sockaddr)); } } @@ -1656,7 +1656,7 @@ void net_udp_send_version_deny(struct _sockaddr sender_addr) buf[0] = UPID_VERSION_DENY; PUT_INTEL_INT(buf + 1, D2X_IVER); - sendto (UDP_Socket[0], buf, sizeof(buf), 0, (struct _sockaddr *)&sender_addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], buf, sizeof(buf), 0, (struct sockaddr *)&sender_addr, sizeof(struct _sockaddr)); } void net_udp_process_version_deny(ubyte *data, struct _sockaddr sender_addr) @@ -1673,7 +1673,7 @@ void net_udp_request_game_info(struct _sockaddr game_addr, int lite) memcpy(&(buf[1]), UDP_REQ_ID, 4); PUT_INTEL_INT(buf + 5, D2X_IVER); - sendto (UDP_Socket[0], buf, sizeof(buf), 0, (struct _sockaddr *)&game_addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], buf, sizeof(buf), 0, (struct sockaddr *)&game_addr, sizeof(struct _sockaddr)); } // Check request for game info. Return 1 if sucessful; -1 if version mismatch; 0 if wrong game or some other error - do not process @@ -1742,7 +1742,7 @@ void net_udp_send_game_info(struct _sockaddr sender_addr, ubyte info_upid) buf[len] = Netgame.game_flags; len++; buf[len] = Netgame.team_vector; len++; - sendto (UDP_Socket[0], buf, len, 0, (struct _sockaddr *)&sender_addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], buf, len, 0, (struct sockaddr *)&sender_addr, sizeof(struct _sockaddr)); } else { @@ -1836,7 +1836,7 @@ void net_udp_send_game_info(struct _sockaddr sender_addr, ubyte info_upid) PUT_INTEL_SHORT(buf + len, Netgame.PacketsPerSec); len += 2; buf[len] = Netgame.PacketLossPrevention; len++; - sendto (UDP_Socket[0], buf, len, 0, (struct _sockaddr *)&sender_addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], buf, len, 0, (struct sockaddr *)&sender_addr, sizeof(struct _sockaddr)); } } @@ -3830,7 +3830,7 @@ int net_udp_noloss_validate_mdata(uint32_t pkt_num, ubyte sender_pnum, struct _s buf[len] = Player_num; len++; buf[len] = sender_pnum; len++; PUT_INTEL_INT(buf + len, pkt_num); len += 4; - sendto (UDP_Socket[0], buf, len, 0, (struct _sockaddr *)&sender_addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], buf, len, 0, (struct sockaddr *)&sender_addr, sizeof(struct _sockaddr)); for (i = 0; i < UDP_MDATA_STOR_QUEUE_SIZE; i++) { @@ -3939,7 +3939,7 @@ void net_udp_noloss_process_queue(fix time) PUT_INTEL_INT(buf + len, UDP_mdata_queue[queuec].pkt_num); len += 4; memcpy(&buf[len], UDP_mdata_queue[queuec].data, sizeof(char)*UDP_mdata_queue[queuec].data_size); len += UDP_mdata_queue[queuec].data_size; - sendto (UDP_Socket[0], buf, len, 0, (struct _sockaddr *)&Netgame.players[plc].protocol.udp.addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], buf, len, 0, (struct sockaddr *)&Netgame.players[plc].protocol.udp.addr, sizeof(struct _sockaddr)); } resend++; } @@ -3998,7 +3998,7 @@ void net_udp_send_mdata_direct(ubyte *data, int data_len, int pnum, int priority } memcpy(&buf[len], data, sizeof(char)*data_len); len += data_len; - sendto (UDP_Socket[0], buf, len, 0, (struct _sockaddr *)&Netgame.players[pnum].protocol.udp.addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], buf, len, 0, (struct sockaddr *)&Netgame.players[pnum].protocol.udp.addr, sizeof(struct _sockaddr)); if (priority) net_udp_noloss_add_queue_pkt(UDP_MData.pkt_num, timer_get_fixed_seconds(), data, len, Player_num, pack); @@ -4041,14 +4041,14 @@ void net_udp_send_mdata(int priority, fix time) { if (Players[i].connected == CONNECT_PLAYING) { - sendto (UDP_Socket[0], buf, len, 0, (struct _sockaddr *)&Netgame.players[i].protocol.udp.addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], buf, len, 0, (struct sockaddr *)&Netgame.players[i].protocol.udp.addr, sizeof(struct _sockaddr)); pack[i] = 0; } } } else { - sendto (UDP_Socket[0], buf, len, 0, (struct _sockaddr *)&Netgame.players[0].protocol.udp.addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], buf, len, 0, (struct sockaddr *)&Netgame.players[0].protocol.udp.addr, sizeof(struct _sockaddr)); pack[0] = 0; } @@ -4105,7 +4105,7 @@ void net_udp_process_mdata (ubyte *data, int data_len, struct _sockaddr sender_a { if ((i != pnum) && Players[i].connected == CONNECT_PLAYING) { - sendto (UDP_Socket[0], data, data_len, 0, (struct _sockaddr *)&Netgame.players[i].protocol.udp.addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], data, data_len, 0, (struct sockaddr *)&Netgame.players[i].protocol.udp.addr, sizeof(struct _sockaddr)); pack[i] = 0; } } @@ -4180,7 +4180,7 @@ void net_udp_send_pdata() } } - sendto (UDP_Socket[0], buf, len, 0, (struct _sockaddr *)&Netgame.players[i].protocol.udp.addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], buf, len, 0, (struct sockaddr *)&Netgame.players[i].protocol.udp.addr, sizeof(struct _sockaddr)); } } else if (Players[Player_num].connected == CONNECT_PLAYING) @@ -4206,7 +4206,7 @@ void net_udp_send_pdata() PUT_INTEL_SHORT(&buf[len], pos.vely); len += 2; PUT_INTEL_SHORT(&buf[len], pos.velz); len += 2; - sendto (UDP_Socket[0], buf, len, 0, (struct _sockaddr *)&Netgame.players[0].protocol.udp.addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], buf, len, 0, (struct sockaddr *)&Netgame.players[0].protocol.udp.addr, sizeof(struct _sockaddr)); } } @@ -4400,7 +4400,7 @@ void net_udp_ping_frame(fix time) { if (Players[i].connected == CONNECT_DISCONNECTED) continue; - sendto (UDP_Socket[0], buf, sizeof(buf), 0, (struct _sockaddr *)&Netgame.players[i].protocol.udp.addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], buf, sizeof(buf), 0, (struct sockaddr *)&Netgame.players[i].protocol.udp.addr, sizeof(struct _sockaddr)); } PingTime = time; } @@ -4430,7 +4430,7 @@ void net_udp_process_ping(ubyte *data, int data_len, struct _sockaddr sender_add buf[1] = Player_num; PUT_INTEL_INT(buf + 2, host_ping_time); - sendto (UDP_Socket[0], buf, sizeof(buf), 0, (struct _sockaddr *)&sender_addr, sizeof(struct _sockaddr)); + sendto (UDP_Socket[0], buf, sizeof(buf), 0, (struct sockaddr *)&sender_addr, sizeof(struct _sockaddr)); } // Got a PONG from a client. Check the time and add it to our players.