xboxscene.org forums

Author Topic: Add Any Path To Neighborhood  (Read 901 times)

CLK Rebellion

  • Recovered User
  • Full Member
  • *
  • Posts: 126
Add Any Path To Neighborhood
« on: July 24, 2012, 05:36:00 PM »

I posted this at XboxHacker, but thought it may prove useful to some other people here who don't browse XH.

QUOTE
I made this a few weeks ago, and was going to eventually post the entire (larger) app that it was a part of but decided against it, but wanted to share this code because I think that it may be beneficial to someone out there who's as lazy as I am and doesn't feel like going through a folder chain to get to a directory.

I hope no one has an issue with this since it's 100% SDK code.

Gist link: https://gist.github.com/3168270
The app is pretty much ready to be compiled.  Create a new project and just copy that in your main cpp file.

Description stuff that's in the gist:

QUOTE
/* Things that happen in this app:
 * First, the third parameter (r5) passed to MapDebugDrive is set to 1 (true) for every function call.  This
 * parameter determines whether or not the device is shown in Neighborhood (and I think is what I forgot to add to the DriveName
 * struct!).
 * Second, the MapInternalDrives function gets patched so that the last 8 MapDebugDrive function calls aren't made.
 * These relate to the transfer cable, HDDVD stuff, and USB drive (360-formatted) partitions.  The top four are patched out
 * because they will never be mounted by any sane person anyway, so it makes room for longer strings in the DrivePathTable.
 * Third, patch in the new path addresses
 * Fourth, call MapInternalDrives so that work gets done.
 */


The devices which are mounted by default just never show up in Neighborhood because they're hardcoded as such.  This makes all of those devices visible.

QUOTE
/* Here is a handy list of valid \\Device paths.  Some work all the time, some
    * are only mounted when certain xexs are ran/operations performed:
   Already mounted by default:
   \\Device
   \\Device\\Harddisk0\\SystemPartition
   \\Device\\Harddisk0\\Partition1
   \\Device\\Flash
   \\Device\\Mu0System
   \\Device\\Mu1System
   \\Device\\Mass0
   \\Device\\Mass1
   \\Device\\Mass2
   \\Device\\BuiltInMuSfcSystem
   \\Device\\Harddisk\\SystemExtPartition
   \\Device\\Harddisk\\SystemAuxPartition
   \\Device\\BuiltInMuUsb\\Storage
   \\Device\\BuiltInMuUsb\\StorageSystem
   \\Device\\BuiltInMuUsb\\SystemExtPartition
   \\Device\\BuiltInMuUsb\\SystemAuxPartition
   \\Device\\BuiltInMuMmc\\Storage
   \\Device\\BuiltInMuMmc\\StorageSystem
   \\Device\\BuiltInMuMmc\\SystemExtPartition
   \\Device\\BuiltInMuMmc\\SystemAuxPartition
   Not mounted:
   \\Device\\HdDvdRom
   \\Device\\HdDvdStorage
   \\Device\\HdDvdPlayer
   \\Device\\TransferCable
   \\Device\\Mass0PartitionFile\\Storage
   \\Device\\Mass1PartitionFile\\Storage
   \\Device\\Mass0PartitionFile\\StorageSystem
   \\Device\\Mass1PartitionFile\\StorageSystem
   \\Device\\Harddisk0\\Cache0
   \\Device\\Harddisk0\\Cache1
   \\Device\\NetworkStorageCache
   \\Device\\UpdateStorage
   \\Device\\Harddisk0\\TitleURLCachePartition
   \\Device\\DeviceAuth
   \\Device\\BuiltInMuUsb\\ReservationPartition
   \\Device\\LauncherData
   ^LauncherData is the files mounted from xlaunch.fdf when running xshell
   */


And here is the result:
(IMG:http://clkxu5.com/i/a5aa65.png)

Happy coding,
-CLK
Logged

ddxcb

  • Archived User
  • Sr. Member
  • *
  • Posts: 330
Add Any Path To Neighborhood
« Reply #1 on: July 24, 2012, 06:10:00 PM »

Thanks, most games do not mount cache for neighborhood. Which is annoying as you say, to test a file and have to use dos lol
Logged

CLK Rebellion

  • Recovered User
  • Full Member
  • *
  • Posts: 126
Add Any Path To Neighborhood
« Reply #2 on: July 24, 2012, 06:15:00 PM »

QUOTE(ddxcb @ Jul 24 2012, 05:10 PM) View Post

Thanks, most games do not mount cache for neighborhood. Which is annoying as you say, to test a file and have to use dos lol


This is actually an XBDM limitation, not something that the games fail to do.  XBDM controls what Neighborhood can and can't see.  I lost the IDB with everything labeled (paths), but if memory serves correctly the Cache paths aren't ever mounted by default anyway.
Logged

ddxcb

  • Archived User
  • Sr. Member
  • *
  • Posts: 330
Add Any Path To Neighborhood
« Reply #3 on: July 25, 2012, 12:45:00 AM »

QUOTE(CLK Rebellion @ Jul 24 2012, 04:15 PM) View Post

This is actually an XBDM limitation, not something that the games fail to do.  XBDM controls what Neighborhood can and can't see.  I lost the IDB with everything labeled (paths), but if memory serves correctly the Cache paths aren't ever mounted by default anyway.


The xbdm plugin for the modded xbox, for say halo reach, it map the cache: cache0: and cache1:

but the regular dev did not and had to use xbdir and xbcopy.
Logged

CLK Rebellion

  • Recovered User
  • Full Member
  • *
  • Posts: 126
Add Any Path To Neighborhood
« Reply #4 on: July 25, 2012, 01:32:00 AM »

QUOTE(ddxcb @ Jul 24 2012, 11:45 PM) View Post

The xbdm plugin for the modded xbox, for say halo reach, it map the cache: cache0: and cache1:

That's most likely because Nate made it just map all by default.
Logged