Page 2 of 3 FirstFirst 123 LastLast
Results 11 to 20 of 25

Thread: Freepascal on the Original XBox

  1. #11

    Freepascal on the Original XBox

    Stated that the xbox is 99% like a pc (hard drive, cd drive, video card, directx, ...). I think that you could try to start your porting from the win32 rtl. Maybe you will need some fine tuning on prt0 and linker script, but you don't need to strip out anything from the win32 rtl
    Get your fpc4gba copy now!
    Get your fpc4nds copy now!

  2. #12

    Freepascal on the Original XBox

    Just for everyone's info, the Xbox 360 uses the Xenon processor with is essentially a triple core PowerPC processor. There seems to be some high level info about it over @ http://arstechnica.com/articles/paed...box360-2.ars/1
    <br /><br />There are a lot of people who are dead while they are still alive. I want to be alive until the day I die.<br />-= Paulo Coelho =-

  3. #13
    Co-Founder / PGD Elder WILL's Avatar
    Join Date
    Apr 2003
    Location
    Canada
    Posts
    6,107
    Blog Entries
    25

    Freepascal on the Original XBox

    It would be interesting for FPC to have a parallel option to 'compete' with the Chrome/XNA framework route.
    Jason McMillen
    Pascal Game Development
    Co-Founder





  4. #14

    Freepascal on the Original XBox

    Okay, I've been working on importing kernel functions and making a unit xboxutils which currently just adds methods to eject and close the DVD tray. In so doing I am having the same problem of the program not running on the xbox anymore, just like when linking against openxdk. I suspect that the memory locations of the compiled procedures is changed from what is compiled into the code.

    I made a simple program which changes the screen color after each procedure is called and have figured out that using units that are compiled when I compile my program works but using precompiled units like in ones in the rtl/fcl does not always work.

    Andrew

  5. #15
    Co-Founder / PGD Elder WILL's Avatar
    Join Date
    Apr 2003
    Location
    Canada
    Posts
    6,107
    Blog Entries
    25

    Freepascal on the Original XBox

    Ah... here is a tid-bit that I just found online. http://channel9.msdn.com/ShowPost.aspx?PostID=138002

    Perhaps a pat of your problem is the XBox rejecting the signage of your program?
    Jason McMillen
    Pascal Game Development
    Co-Founder





  6. #16

    Freepascal on the Original XBox

    Quote Originally Posted by Drewski
    I made a simple program which changes the screen color after each procedure is called and have figured out that using units that are compiled when I compile my program works but using precompiled units like in ones in the rtl/fcl does not always work.
    Hi Andrew,
    I'm confused. By pre-compiled do you mean .ppu units or something else?
    <br /><br />There are a lot of people who are dead while they are still alive. I want to be alive until the day I die.<br />-= Paulo Coelho =-

  7. #17

    Freepascal on the Original XBox

    @WILL

    my xbox is softmodded so it can run unsigned code.

    For instance the entrypoint of the xbe is _WinMainCRTStartup. This function is implemented in the unit sysinitunit, a precompiled unit in the rtl, all it does is set some booleans and then call PASCAL_MAIN which is the begin end. part of a program unit.

    If I declare this function in my program.pas it seems to work untill it tries to call a method from a unit in the rtl or fcl.

    From my preliminary dissecting of the xbe file the address of the entry point is correct even when the entrypoint is in the sysinitunit unit. perhaps it is having trouble resolving PASCAL_MAIN.

    @savage

    I mean the units that are compiled just after the compiler is built like system, sysutils, classes etc, all the units that are part of the rtl and fcl.

  8. #18

    Freepascal on the Original XBox

    Yes I just added some code so the screen is blanked in the entry point in sysinitunit and the screen is blanked but I guess it's using the wrong address for PASCAL_MAIN

  9. #19

    Freepascal on the Original XBox

    Okay, all I had to do was implement a memorymanager for fpc. The sysutils unit was creating some objects which requires the fpc memory functions to be implemented. It only really needed mapping of the xbox memory functions to the pascal functions we know and love like GetMem FreeMem etc.

    so now my program runs and builds including the sysutils unit. Next I'll see if linking to OpenXDK is working

    Andrew

  10. #20

    Freepascal on the Original XBox

    Way to go Andrew! I look forward to the OpenXDK report.
    <br /><br />There are a lot of people who are dead while they are still alive. I want to be alive until the day I die.<br />-= Paulo Coelho =-

Page 2 of 3 FirstFirst 123 LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •