XBMC Screensaver Competition - Printable Version
+- XBMC Community Forum (http://forum.xbmc.org)
+-- Forum: Announcements, Info, and General Discussion (/forumdisplay.php?fid=85)
+--- Forum: XBMC General Discussion (/forumdisplay.php?fid=6)
+--- Thread: XBMC Screensaver Competition (/showthread.php?tid=8113)
- jmarshall - 2005-01-09 15:18
thanks warren! that'll be a great help to others.
- Hullebulle - 2005-01-09 16:09
(warren @ jan. 09 2005,10:06 Wrote:i have just posted two files to the 3rd party upload site (they're currently awaiting approval). one of them is a windows dx8 based test harness for xbmc screensaver plugins and the other is a new version of forza's templatexbs which includes a test build target that allows you to make use of testxbs without making any changes to your code.published the files here.
- malloc - 2005-01-11 09:38
this is a great tool. there are a few bugs, however. i fixed a problem with the speed, but i can't figure out how to get initdx8 to work so that it emulates xbmc properly. if you or any of the developers would help, that would be greatly appreciated. atm it doesn't work correctly with pyro, and simply trying to display a rectangle doesn't work either.
alright, i got it to work well enough. it still isn't exactly as xbmc is, but at least pyro works now. rather then upload it to the site and wait for approval i just put it up on my personal website.
- Warren - 2005-01-11 12:45
i forgot to fix the speed issue, but i thought i had the clean exit fixed (error before was due to a double free of directx stuff). it's interesting to know that changing to hw vertex processing fixed some stuff, i threw this together based on some dx8 demos i found on the net.
as for the rectangle thing, i'd been having that problem for days know and just thought it was due to my dx ineptitude - good to hear that its not. i'll try running my demos on the xbox to see if the actually work now
could one of the devs please throw malloc's version of testxbs up on the 3rd party upload site as a new version?
- malloc - 2005-01-12 10:42
so i've gotten some code to work on my pc using the test harness, but when i go to compile it for the xbox i get linking errors. it appears to have to do with the fact that it is being linked against xbox_dx8.lib instead of a real library. i'm pretty sure the funtion it's complaining about exists, i just don't know how to get it to link properly. any help is appreciated.
- forza - 2005-01-12 11:03
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.
- malloc - 2005-01-13 04:43
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.
- forza - 2005-01-13 11:08
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;
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 ]
- malloc - 2005-01-16 23:26
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?
- forza - 2005-01-17 00:18
outputdebugstring will send text to the debug output window when running xbmc from visual studio .net.