Jump to content


Photo

Large Openxdk Cvs Patch


  • Please log in to reply
25 replies to this topic

#1 d0wnlab

d0wnlab

    X-S Expert

  • Moderator
  • PipPipPip
  • 557 posts
  • Xbox Version:unk

Posted 18 July 2006 - 05:23 AM

Hello OpenXDK developers!

I have committed to CVS a number of patches that have been supplied to me by members of the scene over the last week or so.

From Guillaume Lamonoca:
480p support! Currently some problems with 780 and 1080, but the groundwork has been done to add those as well.

From Friedgold:
A workaround to the input handling issue that disables interrupts in favor of polling.
A number of other patches as well, see this thread.

Thanks a lot, guys!!

As I said before, with the OpenXDK version from CVS, input works in a stable manner (as far as we have been able to test), so everyone please update and tell us your findings as well.

There is also work being done on finding out why using interrupts for usb handling did not work - if you're interested in helping this effort PM me and I can get you in touch with the related people.

Cheers,
Tom

Edited by d0wnlab, 18 July 2006 - 05:46 AM.


#2 elupus

elupus

    X-S X-perience

  • Members
  • PipPip
  • 480 posts

Posted 22 July 2006 - 03:18 PM

you didn't happen to remove the automatic init of video on startup did you? we kinda don't want video to init with xbmc shortcut xbe. yea i know it's an very easy fix that we could do ourself, but still think that should be default in oxdk.

regards

/elupus


#3 d0wnlab

d0wnlab

    X-S Expert

  • Moderator
  • PipPipPip
  • 557 posts
  • Xbox Version:unk

Posted 23 July 2006 - 06:18 PM

hrm.. we haven't fixed that, I don't think it's my call to take that out, but I'll email the dev's and we'll talk about it.

#4 elupus

elupus

    X-S X-perience

  • Members
  • PipPip
  • 480 posts

Posted 24 July 2006 - 12:08 PM

another minor annoyance in oxdk i found..

#ifdef _MSC_VER
PANSI_STRING imageFileName = (PANSI_STRING)XeImageFileName;
#else
PANSI_STRING imageFileName = (PANSI_STRING)&XeImageFileName;
#endif


think the global LaunchDataPage had the same issue, ie different indirection from xdk. Since those aren't really supposed to be accessed i have a fealing nobody will feel like changing that thou smile.gif

#5 d0wnlab

d0wnlab

    X-S Expert

  • Moderator
  • PipPipPip
  • 557 posts
  • Xbox Version:unk

Posted 24 July 2006 - 04:59 PM

afaik no one has OpenXDK working with MSVC, everyone uses GCC which is recommended.

We're not going to take out the video init because:
- it will break everything that current builds against openxdk
- you can make a rebuild yourself with it removed (if you want I can supply you with the precompiled library)

Let me know if you want me to build a version without it - but really it's pretty simple to do yourself.

Cheers,
Tom

#6 elupus

elupus

    X-S X-perience

  • Members
  • PipPip
  • 480 posts

Posted 26 July 2006 - 12:01 PM

I had a hard time building it last time i tried. Thou I initially tried under mingw, then didn't give it a proper try under cygwin instead. Doubt it'd be any huge problem should i try, (another dev took over dev on shortcut since i was busy with other stuff so i never needed it).

Actually we don't build under msvc, it was just that the code was supposed to work compiled both with oxdk and with xdk wich is why those stuff mattered. anyway it's a small program, so the workarounds isn't any big deal. Just a thought for making porting stuff simpler.

Cheers


#7 d0wnlab

d0wnlab

    X-S Expert

  • Moderator
  • PipPipPip
  • 557 posts
  • Xbox Version:unk

Posted 26 July 2006 - 06:17 PM

My previous post might have been a little premature.. you might get your patch yet smile.gif



#8 mokda

mokda

    X-S Young Member

  • Members
  • Pip
  • 31 posts

Posted 28 July 2006 - 01:31 AM

Forgive me for asking, but how do i go about applying this patch? Also, is it dependant on prior patches?

I have openxdk 0.7 as downloaded clean from Source Forge. I noticed that every time I would have to go back and change a few things that was causing problems.

I see that the patch is Makefile.am....how do I run/execute this? I'm using Windows XP fyi.


#9 TMaul

TMaul

    X-S Senior Member

  • Members
  • PipPip
  • 230 posts
  • Location:Over there --->
  • Xbox Version:v1.2
  • 360 version:v1 (xenon)

Posted 30 July 2006 - 12:14 PM

I have just tried updating my openxdk install to the latest cvs version and I get the following errors when building the samples, d0wnlabs wolf3d port and my own stuff:

QUOTE
/usr/local/openxdk/lib/libSDL.a(SDL_blit.o):SDL_blit.c:(.text+0x734): undefined
reference to `_SDL_CalculateBlit0'
/usr/local/openxdk/lib/libusb.a(misc.o):misc.c:(.text+0xab): undefined reference
to `_IoInputDword'


I've not yet had a look at why this is happening but I assume that something is missing from cvs thats causing linking problems? Or am I just stupid?

Edited by TMaul, 30 July 2006 - 12:23 PM.


#10 friedgold

friedgold

    X-S Expert

  • Moderator
  • PipPipPip
  • 667 posts
  • Location:Bristol, England
  • Xbox Version:v1.1
  • 360 version:none

Posted 30 July 2006 - 04:47 PM

QUOTE(mokda @ Jul 28 2006, 01:38 AM) View Post

Forgive me for asking, but how do i go about applying this patch? Also, is it dependant on prior patches?

I have openxdk 0.7 as downloaded clean from Source Forge. I noticed that every time I would have to go back and change a few things that was causing problems.

I see that the patch is Makefile.am....how do I run/execute this? I'm using Windows XP fyi.

For the moment if you want these changes you'll need to get the latest version from OpenXDK CVS. There's a guide to CVS on the sourceforge site with more info and links to CVS clients. You'll then need to carry out these install steps to configure and install OpenXDK.

The .am files are used by automake to generate the makefiles used in the build process. If you change a .am file you need to rebuild with make distclean followed by the standard install steps (./autogen.sh; ./configure...).

QUOTE
/usr/local/openxdk/lib/libusb.a(misc.o):misc.c:(.text+0xab): undefined reference
to `_IoInputDword'

This should easy to fix. Just add a -lopenxdk after -lusb in the linker options in the makefile.

QUOTE
/usr/local/openxdk/lib/libSDL.a(SDL_blit.o):SDL_blit.c:(.text+0x734): undefined
reference to `_SDL_CalculateBlit0'
Hmm, this is a bit more worrying. I'll try checking out a clean copy of OpenXDK and see if I get the same problem.

#11 friedgold

friedgold

    X-S Expert

  • Moderator
  • PipPipPip
  • 667 posts
  • Location:Bristol, England
  • Xbox Version:v1.1
  • 360 version:none

Posted 30 July 2006 - 06:16 PM

QUOTE
Just add a -lopenxdk after -lusb

Sorry, that should be add a -lhal after -lusb.

Anyway I've just checked out and built OpenXDK from CVS and can build Wolf3d with just that one change to the Wolf3d Makefile so I'm not sure what's happening for you. Did you rebuild OpenXDK completely after doing the CVS update (you need to run make distclean and rerun autogen.sh and configure). Might you have any other copies of the SDL libs or SDL header files in your path?

Edited by friedgold, 30 July 2006 - 06:17 PM.


#12 mokda

mokda

    X-S Young Member

  • Members
  • Pip
  • 31 posts

Posted 30 July 2006 - 10:14 PM

QUOTE(friedgold @ Jul 30 2006, 08:54 AM) View Post

For the moment if you want these changes you'll need to get the latest version from OpenXDK CVS. There's a guide to CVS on the sourceforge site with more info and links to CVS clients. You'll then need to carry out these install steps to configure and install OpenXDK.

The .am files are used by automake to generate the makefiles used in the build process. If you change a .am file you need to rebuild with make distclean followed by the standard install steps (./autogen.sh; ./configure...).


I figured out how to get the latest CVS build using TortoiseCVS. I went to compile the libraries using the steps on [url=http://www.openxdk.org/installing.html] and it gave me the following error:
CODE

ln -fs /usr/bin/strip build/bin/i386-pc-xbox-strip
touch directories-stamp
gunzip -cd ./Archive/newlib-1.12.0.tar.gz | (cd build/newlib; tar -x) && \
                (cd build/newlib;patch -p1) < ./Patches/newlib-1.12.0.diff && \

                mkdir -p build/newlib/newlib-1.12.0/i386-pc-xbox && \
                cp -a ./src/newlib-1.12.0/* build/newlib/newlib-1.12.0/
/bin/sh: line 1: patch: command not found
make[1]: *** [build/newlib/newlib-1.12.0/Makefile] Error 127
make[1]: Leaving directory `/usr/local/openxdk'
make: *** [all-recursive] Error 1


What did I forget to do or get?

Also, I found some errors in the install guide at openxdk.org...
1) Along with gcc, binutils, automake, and autoconf, you will need "make" for cygwin as well.
2) the first command for building the packaged source under cygwin should probably be:
cd /usr/local/openxdk

I think the error above is probably due to me missing a cygwin package I should have but didn't know to get.




#13 friedgold

friedgold

    X-S Expert

  • Moderator
  • PipPipPip
  • 667 posts
  • Location:Bristol, England
  • Xbox Version:v1.1
  • 360 version:none

Posted 30 July 2006 - 11:08 PM

QUOTE
I think the error above is probably due to me missing a cygwin package I should have but didn't know to get.
Yep, you need the patch package too (or whatever cygwin package contains patch).
QUOTE
Also, I found some errors in the install guide at openxdk.org...
1) Along with gcc, binutils, automake, and autoconf, you will need "make" for cygwin as well.
True, I'll try to update the docs sometime (the Input API stuff infomation is also out of date).
QUOTE
2) the first command for building the packaged source under cygwin should probably be:
cd /usr/local/openxdk
Even though you install OpenXDK to /usr/local/openxdk you would normally download and compile it elsewhere and then run make install to move the files to the correct directory. So I think the guide is correct in this instance.

#14 TMaul

TMaul

    X-S Senior Member

  • Members
  • PipPip
  • 230 posts
  • Location:Over there --->
  • Xbox Version:v1.2
  • 360 version:v1 (xenon)

Posted 31 July 2006 - 12:17 AM

QUOTE(friedgold @ Jul 30 2006, 06:23 PM) View Post

Sorry, that should be add a -lhal after -lusb.

Anyway I've just checked out and built OpenXDK from CVS and can build Wolf3d with just that one change to the Wolf3d Makefile so I'm not sure what's happening for you. Did you rebuild OpenXDK completely after doing the CVS update (you need to run make distclean and rerun autogen.sh and configure). Might you have any other copies of the SDL libs or SDL header files in your path?


Thanks, everything is building fine now. I did suspect that it might be something weird going on with the linking. Also, according to my command history I didn't do a make distclean, only make clean, and that seems to have been the cause of the SDL linking problem.

Thanks again!

#15 Carcharius

Carcharius

    X-S Expert

  • Members
  • PipPipPip
  • 635 posts

Posted 31 July 2006 - 07:43 AM

QUOTE(TMaul @ Jul 31 2006, 12:24 AM) View Post

Thanks, everything is building fine now. I did suspect that it might be something weird going on with the linking. Also, according to my command history I didn't do a make distclean, only make clean, and that seems to have been the cause of the SDL linking problem.

Thanks again!

Amateur tongue.gif




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users