xboxscene.org forums

Author Topic: Smw 1.8-beta 2  (Read 442 times)

xboxmods2977

  • Recovered User
  • Hero Member
  • *
  • Posts: 733
Smw 1.8-beta 2
« on: March 03, 2011, 10:17:00 PM »

Yes, this is my first attempt at compiling anything for the xbox so please bear with me.

I think I have everything I need in the way of development stuff but I am getting a few errors at the end of compilation. I was able to use google to solve the other issues that I had but the buck stopped with these:

C:\Documents and Settings\XPMUser\Desktop\smw-1.8-beta2-src\_src\menu.cpp(2390): error C3861: 'SDL_SetHardwareFilter': identifier not found, even with argument-dependent lookup

C:\Documents and Settings\XPMUser\Desktop\smw-1.8-beta2-src\_src\main.cpp(1490): error C3861: 'SDL_SetHardwareFilter': identifier not found, even with argument-dependent lookup

C:\Documents and Settings\XPMUser\Desktop\smw-1.8-beta2-src\_src\gfx.cpp(167): error C2065: 'SDL_10X11PIXELASPECTRATIO' : undeclared identifier

C:\Documents and Settings\XPMUser\Desktop\smw-1.8-beta2-src\_src\gfx.cpp(169): error C3861: 'SDL_SetVideoModeWithFlickerFilter': identifier not found, even with argument-dependent lookup

Can anyone shed some light on these errors so I can hopefully get this done??
Logged

weinerschnitzel

  • Archived User
  • Full Member
  • *
  • Posts: 218
Smw 1.8-beta 2
« Reply #1 on: March 04, 2011, 10:56:00 AM »

It looks like you aren't linking libSDLx correctly. You can do this a couple of ways.
You can add it to your set of libraries in Visual Studio, or you can add them as an "Additional Dependency" and locate them in "Additional Library Directories" under Project Properties -> Librarian -> General.

I'll link to Hyper_Eye's instructions for including libSDLx the right way:
http://forums.xbox-s...&...t&p=4649051

Also would recommend using Hyper_Eye's work on libSDLx:
http://forums.xbox-s...howtopic=710866



Logged

Hyper_Eye

  • Recovered User
  • Sr. Member
  • *
  • Posts: 366
Smw 1.8-beta 2
« Reply #2 on: March 04, 2011, 01:45:00 PM »

SMW uses some function that are not contained in SDLx. They added them for their purposes but they were not incorporated into SDLx. I asked the SMW guys for those functions so they can be commited to my repository and they have said they would be willing to send them to me but the back-and-forth has been pretty slow (as much my fault as theirs) so I do not have them yet. In the meantime I was able to compile 1.8-beta2 by commenting out the parts with missing API. They are not essential to building and running SMW. You will be missing their filters and the flicker free stuff but most people wouldn't notice the difference. You will only notice on certain televisions. I never made my build available though because I felt it best to wait for those functions so that features are not missing compared to the last build.
Logged

weinerschnitzel

  • Archived User
  • Full Member
  • *
  • Posts: 218
Smw 1.8-beta 2
« Reply #3 on: March 04, 2011, 03:30:00 PM »

Scratch what I said about Additional Library Dependencies. I was referencing a .lib file. You would have to add them in Project Properties -> C++ -> General for the includes and Linker -> General and Linker -> Input for the library dependencies.

Follow Hyper_Eye's instructions though.
Logged

xboxmods2977

  • Recovered User
  • Hero Member
  • *
  • Posts: 733
Smw 1.8-beta 2
« Reply #4 on: March 05, 2011, 10:37:00 AM »

OK, I got a little further. Figured out how to comment out what I needed to and now I think I am having a linker issue because now I have a bunch of "unresolved external symbol" errors when I try to build.

When I go to "Project">"SuperMarioWar Properties", Configuration Properties>Linker>General, the output file name says $(OutDir)/$(ProjectName).exe. I am guessing that isn't right. I have it set to "xbox platform".

I know I am pretty close to getting done tho so can anyone help me set up this (hopefully) last step.

Thanks a bundle for the help thus far.
Logged

Hyper_Eye

  • Recovered User
  • Sr. Member
  • *
  • Posts: 366
Smw 1.8-beta 2
« Reply #5 on: March 05, 2011, 12:32:00 PM »

The output is fine. The way the linker works is it outputs an exe and then it runs a tool to convert that to an xbe. You will find the xbe target filename under the "Xbox Image" section. What are some of the linker errors you are getting?
Logged

xboxmods2977

  • Recovered User
  • Hero Member
  • *
  • Posts: 733
Smw 1.8-beta 2
« Reply #6 on: March 05, 2011, 12:48:00 PM »

I have a long list here but here are just of few of them:

SuperMarioWar error LNK2019: unresolved external symbol "public: bool __thiscall CO_ThrowBox::HasKillVelocity(void)" (?HasKillVelocity@CO_ThrowBox@@QAE_NXZ) referenced in function "public: void __thiscall CPlayerAI::GetNearestObjects(void)" (?GetNearestObjects@CPlayerAI@@QAEXXZ)

SuperMarioWar error LNK2019: unresolved external symbol "public: __thiscall MO_FrenzyCard::MO_FrenzyCard(class gfxSprite *,short)" (??0MO_FrenzyCard@@QAE@PAVgfxSprite@@F@Z) referenced in function "public: virtual void __thiscall CGM_Frenzy::think(void)" (?think@CGM_Frenzy@@UAEXXZ)

SuperMarioWar error LNK2019: unresolved external symbol "public: void __thiscall CO_Flag::placeFlag(void)" (?placeFlag@CO_Flag@@QAEXXZ) referenced in function "public: virtual short __thiscall CGM_CaptureTheFlag::playerkilledself(class CPlayer &,enum killstyle)" (?playerkilledself@CGM_CaptureTheFlag@@UAEFAAVCPlayer@@W4killstyle@@@Z)

SuperMarioWar error LNK2019: unresolved external symbol "class IO_MovingObject * __cdecl createpowerup(short,short,short,bool,bool)" (?createpowerup@@YAPAVIO_MovingObject@@FFF_N0@Z) referenced in function "void __cdecl CheckSecret(short)" (?CheckSecret@@YAXF@Z)

Logged

Hyper_Eye

  • Recovered User
  • Sr. Member
  • *
  • Posts: 366
Smw 1.8-beta 2
« Reply #7 on: March 05, 2011, 12:55:00 PM »

That looks like some object files are missing. That would imply some of the source didn't get compiled. It could be that the profile you are building wasn't kept updated. Try the release profiles or one of the release variants.
Logged