xboxscene.org forums

Pages: [1] 2 3 ... 18

Author Topic: Freestyle Dash V1.10 Final  (Read 2399 times)

JQE

  • Archived User
  • Jr. Member
  • *
  • Posts: 55
Freestyle Dash V1.10 Final
« on: March 12, 2010, 09:08:00 AM »

Freestyle XBOX 360 Dashboard
-------------------------

2010/03/15
Originally Created by axc97c
version 1.10 Final

Changes made by :
HellDoc
Node21
Mattie
JQE
Cr4zi3
Wondro
Equinox

Download: n/a (built with XDK)]FreeStyle Dash v1.10 Final

-------------------------

Once this version is installed you will need to run the New FSDIndexer
and get data for all games, not just incomplete ones or your games may
disappear.


FEATURES:

- List Xbox 360 games, XBLA games, GOD Packages, applications, emulators, and launch them.
- Can move items between menus.
- Browse games by genre.
- Favourite games support.
- View recently played games.
- Game details including no of players, resolution, sound etc.
- Full screenshot viewer.
- Preview video for each game.
- Support for background artwork for each title, including boxart, screenshots and icon.
- Use FSD indexer to download artwork (or add manually) and edit the metadata with each game and upload to Xbox 360 either via USB drive or FTP.
- FTP Passive and Active Support.
- FTP speeds now support 10Mb+ to internal HDD.
- FTP working in many more clients.
- File Browser including copying, moving, renaming and deleting files.
- Copy DVD to USB drive or HDD.
- Sounds within user interface.
- Semi-Transparent menus.
- Shows Gamertag on main screen.
- Shows Date and Time in dashboard.
- Shows free disk space on all drives.
- Shows temperatures.
- Show IP address.
- Parental controls which lock down to only showing XBLA games.
- Fully skinable.
- Customizable overscan.
- Source code released too.


----------------------------------------------------------------------------------------------------------------------------------------------------------

Installation
------------

    * Copy the "freestyle" folder into the root of USB0: or HDD1:

    * If you wish to launch from disc choose and burn the appropriate launch image.
          o freestyle-usb.iso - cd image to boot freestyle from usb0:\freestyle\freestyledash.xex
          o freestyle-hdd.iso - cd image to boot freestyle from hdd1:\freestyle\freestyledash.xex

    * Copy the proper boot package to hdd1:\Content\0000000000000000\C0DE9999\00007000\ to have it show in the NXE Dashboard.
          o freestyle-usb - package to boot freestyle from usb0:\freestyle\freestyledash.xex
          o freestyle-hdd - package to boot freestyle from hdd1:\freestyle\freestyledash.xex



Other Notes
-----------

On first boot you will be asked if you want the dashboard data stored on
the usb drive or xbox hdd. This is where the artwork and program information
will be stored.

The FSDIndexer can be run via ftp to update the xbox while the drives is connected
to it. If the drive is USB you may move it to the PC and run it locally there.


Artwork wise, i have hosted all the icons i have available, so if any are
missing let me know which. For the boxart and screenshots, the indexer
uses the xbox marketplace for most content. Games that arent listed use
an alternate url for the main xbox site, but these need to be added manually
so some may be missing. The file for this is automatically updated so
if games have no info you can either wait for me to add them to the list or
edit the altgames.xml file yourself.

When the dash first scans your content, it takes a while as it extracts any
icons etc it finds. This is all cached though so subsequent launches of the
dashboard are quick.

The first run of the indexer will take quite some time, as it has got a lot
of artwork to get, so please be patient with it.

Video Preview support
---------------------

Plays preview.wmv from the games artwork folder. Larger files seem to crash the
XUI video player, so keep em to a few Mb. In the main skin, the res of the video
object it 354x200. Not sure what to do regarding the indexer and the video files,
they would require quite a bit of bandwidth to host if we started creating a collection
for everyone to download, so im open to suggestions.
At the the moment, some files play and some crash. I have no idea what the cause is
for this, prehaps someone can do some testing? All 3 sample wmv files with the XDK
play properly, and the 720p HD wmv samples from microsofts site done.

Fonts
-----

The dash will look for a file called fonts.xml in your skin folder. The file contains the
typeface names and filenames that will be loaded for use in the skin.

An example file is as follows:

<?xml version="1.0" encoding="utf-8"?>
<fonts>
   <font name="Berlin Sans FB" file="BRLNSR.TTF"/>
   <font name="Constantia" file="CONSTAN.TTF"/>
</fonts>

To load the font "skin\NXE (List)\BRLNSR.TTF" as "Berlin Sans FB"
and "skin\NXE (List)\CONSTAN.TTF" as "Constantia"

The fonts filename and name should be the same as you set up in the XUI Tool.


History
-------

V1.10 Final Bug Fixes

v1.10 RC1    
   Added Display Options
      GamerTag
      GamerScore
      Temperature
      Free Disk Space
      System Info
   Added launching of God Games
       FTP Active mode and speed increases
       Can move Titles to different menus
       Fixed Status code crashes
       Semi-Transparant Menus
   Fan Speed Controls
   LED Light Settings
   

v1.09   Dont download artwork thats already on the hdd
      Support for foreign characters
      Fixed black screen at startup
      No skin changes so 1.08 skins will work ok
v1.08   View favourite games of main menu
      Store recent games and view off main menu
      File manager - copy, move, rename and delete file
      Support custom fonts in skin
v1.07   NON PUBLIC RELEASE
      Copy DVD to HDD or USB drive
      Various fixes
      Cover list has title for games with missing cover
v1.06   NON PUBLIC RELEASE
      Fix for filezilla ftp client (and probably others) Requires your xbox ip
      to be put in the config.xml file in the fsdata folder
      Fix startup crash when no content.xml file was found
v1.05   NON PUBLIC RELEASE
      FTP speed fix, now 10-11MBps, however, copying to usb is still slowish for
      some reason, but then it is in XeXmenu too.
      Fixed render loop to be fixed at 60 FPS instead of using a sleep
      Change video preview to XMediaCreateXmvPlayerFromFile so streams files instead
      of loading into ram
      Add buttons working on indexer, allow you to add custom graphics to a title when
      none have been automatically downloaded
      Pick all/xbox 360/xbla/homebrew/emu on indexer to help sorting out your content.
      Remove deleted stuff from index
      Add background downloading support to indexer
      Save list every 15 games when scanning
v1.04   NON PUBLIC RELEASE
      Fixed emulator button not working
      Added preview.wmv support, with option to disable
      Added background image support, with option to disable
      Added date and time and optional format setting
v1.03   Fixed content saving bug in dash
      XML saving in dash quicker
      Added usb0:\applications and hdd1:\application paths. Please delete your config.xml
      for these to be added to existing installs. (The one in fsdata not base)
v1.02    Runs with cooler cpu/gpu
      FTP speed much quicker
v1.01    Fix to storage selection location
v1.0    Original public version


Download: n/a (built with XDK)]FreeStyle Dash v1.10 Final

This post has been edited by Ranger72: Mar 13 2010, 08:00 PM
Logged

MasterGouken

  • Recovered User
  • Sr. Member
  • *
  • Posts: 299
Freestyle Dash V1.10 Final
« Reply #1 on: March 12, 2010, 09:11:00 AM »

Thanks, will give it a go now smile.gif
Logged

Midnight Tboy

  • Archived User
  • Sr. Member
  • *
  • Posts: 277
Freestyle Dash V1.10 Final
« Reply #2 on: March 12, 2010, 09:29:00 AM »

I dont suppose this one can manage multiple usb drives when swapping?

Last versions, when hold the fsdata on the 360 hdd, everytime you swap a usb hdd, it rewrites the xml and lose all the boxart covers for 360 games on the hdd meaning have to import each time
Logged

max2010

  • Archived User
  • Newbie
  • *
  • Posts: 9
Freestyle Dash V1.10 Final
« Reply #3 on: March 12, 2010, 09:41:00 AM »

add Functions to Launch GOD xbox 1


In ContentList.Cpp Replace
CODE
void ContentList::ScanXBLAPath(int type, wstring path)
{
   WIN32_FIND_DATA findFileData;
   memset(&findFileData,0,sizeof(WIN32_FIND_DATA));
   wstring searchcmd = path + L"\\0000000000000000\\*.*";
   searchcmd = str_replaceall(searchcmd,L"\\\\",L"\\");
   HANDLE hFind = FindFirstFile(wstrtostr(searchcmd).c_str(), &findFileData);
   if (hFind == INVALID_HANDLE_VALUE)
      return;

   int SubDirCount = 0;
   do {
      SubDirCount++;
   } while (FindNextFile(hFind, &findFileData));
   FindClose(hFind);

   hFind = FindFirstFile(wstrtostr(searchcmd).c_str(), &findFileData);

   sub2ProgMax = SubDirCount;
   sub2ProgCur = 0;

   do {
      SetSub2(strtowstr(findFileData.cFileName));
      map::iterator itr;
      wstring thispath = make_lowercase(strtowstr(findFileData.cFileName));
      itr = PathLookup.find(thispath);
      if (itr != PathLookup.end())
      {
         //DebugMsg("Skipping XBLA path %s (%s\\0000000000000000\\%s)",findFileData.cFileName,path.c_str(),findFileData.cFileName);
         (*itr).second->Exist = true;
      } else {
         //DebugMsg("Scanning XBLA path %s (%s\\0000000000000000\\%s)",findFileData.cFileName,path.c_str(),findFileData.cFileName);
         ScanXBLAGame(0,path,strtowstr(findFileData.cFileName));
         ScanGODGame(5,path,strtowstr(findFileData.cFileName));
         ScanXBOXGame(5,path,strtowstr(findFileData.cFileName));
      }
      sub2ProgCur++;

   } while (FindNextFile(hFind, &findFileData));
   FindClose(hFind);
}

In ContentList.CPP Replace
CODE
void ContentList::LaunchGame(ContentItem * item)
{
    LastRecent++;
    item->recent = LastRecent;

    SortMaxRecents();

    DoSaveSettings();

    //Reset LED to factory if in Temp Mode
    if(LedType == 1)
    {
        SetLedState(0);
    }

    wstring filetorun = make_lowercase(item->path);
    wstring ext = FileExt(filetorun);
    if (ext == L"xex")
    {
        //DebugMsg("Launching XEX %s",item->path.c_str());
        XLaunchNewImage(wstrtostr(item->path).c_str(), NULL);
    } else if (ext == L"xbe")
    {
        //DebugMsg("Launching XBE %s",item->path.c_str());
        XLaunchNewImage(wstrtostr(item->path).c_str(), NULL);
    } else {
        //DebugMsg("Launching XBLA %s",item->path.c_str());

        string drive = wstrtostr(item->path.substr(0,item->path.find(L":")+1));
        string folder = wstrtostr(item->path.substr(item->path.find(L":")+2));
        u32 ret;

        //DebugMsg("XBLA : drive : \"%s\"",drive.c_str());
        //DebugMsg("XBLA : folder : \"%s\"",folder.c_str());
        
        char mntpth[] = "dice";
        char drive_s[256];
        strcpy_s(drive_s, 256, drive.c_str());

        char folder_s[1024];
        strcpy_s(folder_s, 1024, folder.c_str());

        ret = mountCon(mntpth, drive_s, folder_s);

        //DebugMsg("Mount XBLA returns %d",ret);
        FILE* fp = NULL;
        fp = fopen( "dice:\\default.xex", "rb" );
    if( fp != NULL )
    {
        fclose( fp );
        XLaunchNewImage("dice:\\default.xex", 0);
}
        XLaunchNewImage("dice:\\default.xbe", 0);
}

    }


In ContentList.CPP Add


CODE
void ContentList::ScanXBOXGame(int type, wstring path, wstring id)
{
   WIN32_FIND_DATA findFileData;
   memset(&findFileData,0,sizeof(WIN32_FIND_DATA));
   wstring searchcmd = path + L"\\0000000000000000\\" + id + L"\\00005000\\*";
   searchcmd = str_replaceall(searchcmd,L"\\\\",L"\\");
      
   HANDLE hFind = FindFirstFile(wstrtostr(searchcmd).c_str(), &findFileData);
   if (hFind == INVALID_HANDLE_VALUE)
      return;
            do {
      if (findFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
      {
      } else {
         wstring s = strtowstr(findFileData.cFileName);
         ContentItem * item = new ContentItem();
         item->path = sprintfa(L"%s0000000000000000\\%s\\00005000\\%s",path.c_str(),id.c_str(),s.c_str());
         //DebugMsg("Adding XBLX %s",item->path.c_str());
         item->type = type;
         item->c_type = type;

         item->id = id;
         item->Exist = true;
         item->source = 3;
         item->imagefolder = id;
         MakeShortPath(item);
         AnyChanged = true;
         XBOXParse(item);
         Content.push_back(item);
      }
      } while (FindNextFile(hFind, &findFileData));

      FindClose(hFind);
   }




In ContentList.CPP Add


CODE
void ContentList::XBOXParse(ContentItem * item)
{
    //DebugMsg("Parsing XBLA %s",item->path.c_str());
    FILE * fp = NULL;
    _wfopen_s(&fp,item->path.c_str(),L"rb");
    if (!fp)
    {
        DebugMsg("Unable to open %S",item->path.c_str());
        return;
    }
    byte k[4];


    fseek(fp,0x344,SEEK_SET);
    fread((void*)(&k),4,1,fp);
    item->packagetype = sprintfa(L"%02x%02x%02x%02x",k[0],k[1],k[2],k[3]);

    if (item->packagetype != L"00050000")
    {
        DebugMsg("Not Arcade game -> %S",item->packagetype.c_str());
        fclose(fp);
        return;
    }

    fseek(fp,0x360,SEEK_SET);
    fread((void*)(&k),4,1,fp);
//    item->id = sprintfa(L"%02x%02x%02x%02x",k[0],k[1],k[2],k[3]);

    WCHAR title[0x400];
    memset(title,0,0x400);
    fseek(fp,0x411,SEEK_SET);
    fread((void*)(&title),2,0xFF,fp);

    item->title = title;
    item->title = str_replaceall(item->title,L"\"",L"");

    fclose(fp);


    if (!FileExists(datapath + L"artwork"))
        _wmkdir(wstring(datapath + L"artwork").c_str());
    if (!FileExists(datapath + L"artwork\\" + item->imagefolder))
        _wmkdir(wstring(datapath + L"artwork\\" + item->imagefolder).c_str());

    wstring outfile = datapath + L"artwork\\" + item->imagefolder + L"\\icon.png";

    if (!FileExists(outfile))
    {
        if (ExtractLiveImage(outfile,item->path,0))
        {
            item->i_Icon = true;
        }
    } else {
        item->i_Icon = true;
    }
}

In ContentList.h add
CODE
void ScanXBOXGame(int type, wstring path, wstring id);
void XBOXParse(ContentItem * item);


This post has been edited by max2010: Mar 12 2010, 05:43 PM
Logged

JQE

  • Archived User
  • Jr. Member
  • *
  • Posts: 55
Freestyle Dash V1.10 Final
« Reply #4 on: March 12, 2010, 10:07:00 AM »

To both the above comment. These are New Features. They will be adressed in 2.0 This is just bug fixes.

To explain the USB part.. we have to re-write the indexing code, this will be done, but it's going to take time. That is why it's in 2.0

As for xbox 1 gods. It's a new feature so will be in 2.0. Enjoy biggrin.gif
Logged

miller420

  • Archived User
  • Newbie
  • *
  • Posts: 31
Freestyle Dash V1.10 Final
« Reply #5 on: March 12, 2010, 10:31:00 AM »

Thanks JQE and the rest of the Freestyle gang for yet another great release. Can't wait for 2.0 for xbox 1 god support! I spent a better part of the day yesterday converting all my xbox1 isos to gods. Keep up the good work guys!

Edit: Looks like the times are a little screwey. Its has 0:42 pm. which i dont believe exists lol.
Also it didnt break my indexed artwork. It all worked first boot. But I am scanning through all games just to be safe, thanks again guys!

This post has been edited by miller420: Mar 12 2010, 06:48 PM
Logged

omega232

  • Archived User
  • Newbie
  • *
  • Posts: 49
Freestyle Dash V1.10 Final
« Reply #6 on: March 12, 2010, 10:37:00 AM »

Any chance you can stop doing whatever it is that breaks the stuff the FSDIndexer gets? It takes a couple of hours for me to grab all that stuff
Logged

Th3James

  • Archived User
  • Newbie
  • *
  • Posts: 18
Freestyle Dash V1.10 Final
« Reply #7 on: March 12, 2010, 10:39:00 AM »

Awesome
Logged

Porta360

  • Archived User
  • Jr. Member
  • *
  • Posts: 66
Freestyle Dash V1.10 Final
« Reply #8 on: March 12, 2010, 11:02:00 PM »

JQE & Team that's whass up. i'm bout to test her out.
Logged

hfmls

  • Archived User
  • Sr. Member
  • *
  • Posts: 347
Freestyle Dash V1.10 Final
« Reply #9 on: March 12, 2010, 11:02:00 PM »

BUG: RELOAD SKIN IN "SETTINGS" DOESN'T WORK ANYMORE.
Logged

Porta360

  • Archived User
  • Jr. Member
  • *
  • Posts: 66
Freestyle Dash V1.10 Final
« Reply #10 on: March 12, 2010, 11:06:00 PM »

QUOTE(hfmls @ Mar 13 2010, 01:02 AM) View Post

BUG: RELOAD SKIN IN "SETTINGS" DOESN'T WORK ANYMORE.

Yeah, it's not working.
But what i did was choose the skin i wanted, then just restart freestyle.
Logged

hfmls

  • Archived User
  • Sr. Member
  • *
  • Posts: 347
Freestyle Dash V1.10 Final
« Reply #11 on: March 12, 2010, 11:23:00 PM »

no. You can choose the skin u want and go to "Utilites" and press restart freestyle.
I'm saying "reload skin" in "settings" menu doesn't work.
Logged

hfmls

  • Archived User
  • Sr. Member
  • *
  • Posts: 347
Freestyle Dash V1.10 Final
« Reply #12 on: March 13, 2010, 12:52:00 AM »

bug 2: i get a lot of permission denied when copying deleting some files in active mode via ftp.
xexmenu works fine. smile.gif
Logged

krizalid

  • Archived User
  • Sr. Member
  • *
  • Posts: 359
Freestyle Dash V1.10 Final
« Reply #13 on: March 13, 2010, 01:46:00 AM »

How about a different mirror other than MegaUpload?


Thanks.
Logged

keine

  • Archived User
  • Full Member
  • *
  • Posts: 190
Freestyle Dash V1.10 Final
« Reply #14 on: March 13, 2010, 03:04:00 AM »

I second the alternate mirror request.

For anyone who does not have their own static IP, megaupload (at least for me) rarely works.

But Thankyou.

This post has been edited by keine: Mar 13 2010, 11:04 AM
Logged
Pages: [1] 2 3 ... 18