XBMC Screensaver Competition

  Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
forza Offline
Retired Developer
Posts: 293
Joined: Jan 2004
Reputation: 0
Post: #16
it depends on which function it is - all the dx8 calls are emulated by xbmc on your behalf. check the .def file that came with the xbox_dx8.lib to see if your function is listed. if it isn't post the functions (preferably the ouput from the linker error) you are missing here and i'll see if they can be added.

you can see a list of the emulated calls in the xbmc source itself by looking at /xbmc/xbmc/cores/dllloader/directx8.h (cvs version)

hope this helps.

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


[Image: badge.gif]
find quote
malloc Offline
Team-XBMC Developer
Posts: 1,062
Joined: May 2004
Reputation: 0
Post: #17
here are my errors.  also, if you can tell me the steps necessary to make the changes myself, i'd be happy to do that as well.  it would speed up my development time as well as take the load off the developers for such a tedious task.


Quote:linking...
  creating library release/template.lib and object release/template.exp
logoscreensaver.obj : error lnk2019: unresolved external symbol _d3ddevice_settransform@8
logoscreensaver.obj : error lnk2019: unresolved external symbol _d3dxmatrixperspectivefovlh@20
logoscreensaver.obj : error lnk2019: unresolved external symbol _d3dxmatrixlookatlh@16
logoscreensaver.obj : error lnk2019: unresolved external symbol _d3dxmatrixrotationx@8
logoscreensaver.obj : error lnk2019: unresolved external symbol _d3dxcreatetexturefromfilea@12
release/template.xbs : fatal error lnk1120: 5 unresolved externals

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
find quote
forza Offline
Retired Developer
Posts: 293
Joined: Jan 2004
Reputation: 0
Post: #18
the only dx8 call in your list not currently emulated by xbmc is matrixrotationx - all the others are already in place. to get the other function calls into the xbox_dx8.lib edit the xbox_dx8.def file and simply add the missing entries;

d3ddevice_settransform@8
d3dxmatrixperspectivefovlh@20
d3dxmatrixlookatlh@16
d3dxmatrixrotationx@8
d3dxcreatetexturefromfilea@12

then run the makelib batch file to create a new xbox_dx8.lib - note; use the visual studio command prompt option so that the path to libs etc. are set in the environment, this is found in the visual studio .net tools program group on your start menu.

you should then be able to compile your screensaver without the linker errors.

next you will need to add the missing matrixrotationx function to xbmc; edit the xbmc/cores/dllloader/directx8.h file and add;

exp2dll* xbox_dx8_exp93 = new exp2dll("xbox_dx8.dll", "d3dxmatrixrotationx@8", (unsigned long)d3dxmatrixrotationx);

recompile xbmc, copy your screensaver .xbs and .xml config file (if applicable) to the screensaver folder on your xbox and give it a whirl!

[note; i'm typing all this from work without the ability to check if any of it is correct - hopefully i've got it right Smile]

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


[Image: badge.gif]
find quote
malloc Offline
Team-XBMC Developer
Posts: 1,062
Joined: May 2004
Reputation: 0
Post: #19
i haven't been able to get output to print to the log. i've tried both printf and outputdebugstring. i've also tried getting clog to work, but that was too difficult. is output supposed to go to xbmc.log automatically or do i need to open and route it myself?

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
find quote
forza Offline
Retired Developer
Posts: 293
Joined: Jan 2004
Reputation: 0
Post: #20
outputdebugstring will send text to the debug output window when running xbmc from visual studio .net.

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


[Image: badge.gif]
find quote
SiW Offline
Junior Member
Posts: 9
Joined: Jan 2005
Reputation: 0
Post: #21
ah, nevermind, it makes sense now. i was overthinking the problem, not realising that you simply have two include/link paths, one for dx8 on the pc, the other for the xdk.

i tried the wrapper, using pyro to test. when i went to run it, i got "this application has failed to start because xbox_dx8.dll was not found. re-installing the application may fix this problem."

what obvious thing am i missing? (new to xbox, not new to coding)
find quote
SiW Offline
Junior Member
Posts: 9
Joined: Jan 2005
Reputation: 0
Post: #22
i'm having difficulty getting anything working on the xbox. i have a simple example, basically just a slightly modified version of one of the codesampler.com dx8 samples, and it works fine in the test harness but gives a blank screen on the xbox (and usually hangs).

the (17kb) code is here: http://www.coolpowers.com/lab/data/cube.zip

any clues as to what i'm doing wrong?
find quote
Gamester17 Offline
Team-XBMC Forum Moderator
Posts: 10,523
Joined: Sep 2003
Reputation: 10
Location: Sweden
Exclamation   
Post: #23
@siw, you're better off posting your questions either in this thread (link) if related to screensaver-api or create a new topic thread in the development forum

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
find quote
malloc Offline
Team-XBMC Developer
Posts: 1,062
Joined: May 2004
Reputation: 0
Post: #24
(siw @ jan. 31 2005,22:20 Wrote:i'm having difficulty getting anything working on the xbox.  i have a simple example, basically just a slightly modified version of one of the codesampler.com dx8 samples, and it works fine in the test harness but gives a blank screen on the xbox (and usually hangs).

the (17kb) code is here: http://www.coolpowers.com/lab/data/cube.zip

any clues as to what i'm doing wrong?
siw,

i haven't had a chance to look over your code in too much detail but did notice at least one mistake that may be causing problems.  try adding this code:

#ifdef _test
inline void d3dsetrenderstate(dword dwy, dword dwz)
{ m_pd3ddevice->setrenderstate((d3drenderstatetype)dwy,dwz); }
inline void d3dgetrenderstate(dword dwy, dword* dwz)
{ m_pd3ddevice->getrenderstate((d3drenderstatetype)dwy,dwz); }

#else
extern "c" void d3dgetrenderstate(dword dwy, dword* dwz);
extern "c" void d3dsetrenderstate(dword dwy, dword dwz);

#endif

and then change all of your setrenderstate calls to d3dsetrenderstate.

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
find quote
SiW Offline
Junior Member
Posts: 9
Joined: Jan 2005
Reputation: 0
Post: #25
thank you!

this was half of the problem, but it clued me into realising what the other half was. i was linking to the d3dx utility lib, because i didn't realise that all those functions were also emulated by xbmc - i thought it was just for the core d3d lib.

now everything works, and i can get back to making something pretty Smile
find quote
Gamester17 Offline
Team-XBMC Forum Moderator
Posts: 10,523
Joined: Sep 2003
Reputation: 10
Location: Sweden
Star   
Post: #26
xbmc screensaver competition reminder...

we just like remind all xbox developers that the submission dead-line for xbmc screensaver competition is this upcoming monday, (the 28th of february 2005, 24:00 g:mt). if you have not handed in your code/entry yet then please try to do so before the end of the weekend, (remember to include your contact details), don't miss your chance to win a x2vga-adapter.

ps! only have one entry for this contest has been submitted so far.

best wishes / team-xbmc

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
find quote
demitrix Offline
Junior Member
Posts: 11
Joined: Jan 2005
Reputation: 0
Post: #27
since the site is down is there a possibly for the xbs wrapper to be setup on a mirror?
find quote
pike Offline
Project Manager
Posts: 4,849
Joined: Sep 2003
Reputation: 29
Location: Sweden
Post: #28
http://www.seansoria.com/testxbs.zip Confused

i'm no dev so i don't know what you mean exactly, but you don't specify very well (either)

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


[Image: badge.gif]
find quote
Gamester17 Offline
Team-XBMC Forum Moderator
Posts: 10,523
Joined: Sep 2003
Reputation: 10
Location: Sweden
Sad   
Post: #29
(pike @ feb. 26 2005,09:39 Wrote:
(demitrix @ feb. 26 2005,04:19 Wrote:since the site is down is there a possibly for the xbs wrapper to be setup on a mirror?
http://www.seansoria.com/testxbs.zip Confused i'm no dev so i don't know what you mean exactly, but you don't specify very well (either)
@demitrix, or do you mean templatexbs.rar? Confused (i don't know of any screensaver developers files being hosted on .com/.de before it want down)

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
find quote
demitrix Offline
Junior Member
Posts: 11
Joined: Jan 2005
Reputation: 0
Post: #30
well i got the testxbs but it need xbox_dx8.dll and visulization.dll
find quote
Post Reply