Windows DTL-H10030 Driver

Discussion in 'Sony Programming and Development' started by PS2Guy, May 25, 2012.

  1. PS2Guy

    PS2Guy Lost in the neverending abyss.

    Joined:
    Jan 18, 2011
    Messages:
    552
    Likes Received:
    2
    I was just wondering if anyone knew of (or has) a Windows driver for the DTL-H10030 External Hard Drive, or the the SCPH-10390 External Hard Drive. More specifically the PCMCIA Card.

    It's not really a big deal if there wasn't one. Was just wondering.
     
  2. sp193

    sp193 Site Soldier

    Joined:
    Mar 28, 2012
    Messages:
    2,217
    Likes Received:
    1,052
    It doesn't exist. :(

    Few of us ever had access to the PCMCIA Network Adaptor and the HDD unit, so there is almost nobody who can and will code a driver.

    Personally, I would like to do that... but my laptop doesn't have a PCMCIA interface. D:
     
  3. DefectX11

    DefectX11 Familiar Face

    Joined:
    Mar 20, 2012
    Messages:
    1,237
    Likes Received:
    0
    Would be nice, but I can't see the real use of it other than to put files on and off, or to use it as one helluva cool external.
     
  4. PS2Guy

    PS2Guy Lost in the neverending abyss.

    Joined:
    Jan 18, 2011
    Messages:
    552
    Likes Received:
    2
    In theory, you should be able to connect to it through WinHiip and put games on it that way. It's not really a big deal. Was just wondering if one existed. I might try and have a go at it myself. Maybe??
     
    Last edited: May 26, 2012
  5. DefectX11

    DefectX11 Familiar Face

    Joined:
    Mar 20, 2012
    Messages:
    1,237
    Likes Received:
    0
    Have you tried plugging it in and seeing what happens? There's a chance it would detect it as a mass storage device. Maybe the network won't work but it's worth a shot.
    In fact, I'll see if I can find a PCMCIA slot around my house and plug 'er in.
     
  6. PS2Guy

    PS2Guy Lost in the neverending abyss.

    Joined:
    Jan 18, 2011
    Messages:
    552
    Likes Received:
    2
    I'm running Server 2003 R2 (which is XP), and in device manager (under other devices, and showing a big question mark and exclamation mark) it says (c)_Sony_Computer_Entertainment_Inc._All_Rights_Reserved. HDD_&_Ethernet_I/F_for_PS2.

    I've tried right clicking and updating driver. I've also tried searching Google. All with no results.
     
    Last edited: May 26, 2012
  7. sp193

    sp193 Site Soldier

    Joined:
    Mar 28, 2012
    Messages:
    2,217
    Likes Received:
    1,052
    It should be like that.

    Just asking: What resources does the adaptor use? Silverbull mentioned that it used a single memory address range. Even if I can't code a driver for it, stating the resources it uses here will give other developers a better idea on how Windows can access the NA.

    Yes, there won't be any working Windows drivers for it as it's a piece of proprietary Sony hardware. The chips in it (Excluding the PHY chip) are not even existent outside of the PS2 world.

    Yea, it would be a cool external HDD unit. My 10K died not too long ago from thermal shock, so the HDD unit, NA and the console itself are now just for show. :/
     
    Last edited: May 26, 2012
  8. PS2Guy

    PS2Guy Lost in the neverending abyss.

    Joined:
    Jan 18, 2011
    Messages:
    552
    Likes Received:
    2
    I managed to get the Windows Driver Development Kit. Later on today I'll install it on my Server 2003 machine (it has a PCMCIA slot) and following Silverbull's Kermit driver tutorial, I'll see about making one for the card.
     
  9. l_oliveira

    l_oliveira Officer at Arms

    Joined:
    Nov 24, 2007
    Messages:
    3,879
    Likes Received:
    245
    Look at the homebrewn PS2 SDK, DEV9.C, SMAP.C and ATAD.C should give you a good idea of how it works, if you ignore the stuff that is specific to the CXD9566/9611 chips.

    PCMCIA card code is SCPH-10190 btw.
     
    Last edited: May 26, 2012
  10. sp193

    sp193 Site Soldier

    Joined:
    Mar 28, 2012
    Messages:
    2,217
    Likes Received:
    1,052
    If you do successfully build a driver, even one that barely works - please do share it!

    The registers on the SPEED device are the registers on the PCMCIA card.

    FYI, adding on to l_Oliveira's post: The CXD9566 is the controller of the PCMCIA-type DEV9 interface, while the CXD9611 is the controller for the Expansion bay-type DEV9 interface.

    The HDD units for consumer consoles are SCPH-10210 and SCPH-20400. Both are physically identical to the DTL-H10030.

    For initialization code, you should follow code that gets run for the CXD9566's peripherals. Just avoid copying the reads and writes to the DEV9 interface's registers - as those probably have to be replaced with calls to Windows's PCMCIA interface control functions instead.
     
    Last edited: May 26, 2012
  11. Cyberghost

    Cyberghost Peppy Member

    Joined:
    Feb 19, 2010
    Messages:
    378
    Likes Received:
    6
    Wouldn't the driver also theoretically support the internal hard drive/network expansion for scph-30000-55000, assuming you're able to adapt the port? Afaik, those are based on the same bus as the pcmcia cards too, correct?

    Pointless? Maybe, but then again, once adapted, it'd be easier to swap around hard drives.
     
  12. sp193

    sp193 Site Soldier

    Joined:
    Mar 28, 2012
    Messages:
    2,217
    Likes Received:
    1,052
    Yes. However...

    The SCPH-20400 is just a regular IDE disk enclosure, but connects to a proprietary interface. Other than that - it's no different from plugging your internal HDD into a regular IDE disk enclosure.

    In fact, the HDD within the SCPH-20400 is a SCPH-20401 - the exact same HDD that gets inserted into the expansion bay of the newer PS2s.

    It probably makes no sense to adapt the proprietary expansion bay connector to anything standard - since it's probably easier to unplug the HDD from the NA and connect it to the PC via a standard IDE disk enclosure.

    After all, to connect your NA to a PC, you will still have to disconnect the NA from the PS2, won't you?

    A better project for that would probably be to create a TCP/IP server that runs on the PS2 that supports the operations you need, like installing and managing games - at full 100Mbit speed. I'm working on that, but I don't have a working EE-side network stack to complete this dream....
     
    Last edited: May 26, 2012
  13. DefectX11

    DefectX11 Familiar Face

    Joined:
    Mar 20, 2012
    Messages:
    1,237
    Likes Received:
    0
    Mmmm, I enjoy all this talk about making a driver. Taking time to think about it, it would be really easy to add things to the HDD. My current method involves taking the drive out, putting it in a PC, rebooting and then copying files. Not exactly efficient.
     
  14. Lum

    Lum Officer at Arms

    Joined:
    Sep 30, 2010
    Messages:
    3,233
    Likes Received:
    42
    I guess so. Neat to hear there's some use for you guys who have the PCMCIA version PS2.

    Improved transfer rate would be nice. Sure my modchip allows putting imports and even burned (illegal as the idea is) games alike on HDD, without any swap, which is a benefit over normal PS2s. Still that doesn't change how slow it takes.
     
    Last edited: May 27, 2012
  15. l_oliveira

    l_oliveira Officer at Arms

    Joined:
    Nov 24, 2007
    Messages:
    3,879
    Likes Received:
    245
    That exists already. Name: HDLDUMP.

    Edit: Only catch is, it is coded on really old SDK code and is rather slow. It's performance is satisfying for me. Also I have the impression that the PS2 side "will do anything you want" with the harddrive and the side that pulls the strings is the PC side, meaning that to change the behavior of the whole set you just need to mod the PC side client. :)
     
    Last edited: May 27, 2012
  16. SilverBull

    SilverBull Site Supporter 2010,2011,2013,2014,2015.SitePatron

    Joined:
    Jun 12, 2008
    Messages:
    385
    Likes Received:
    6
    I made some experiments today, but so far it doesn't look good. I remember that a Windows 2000 laptop I tried a DTL-H10010 card on recognized it and also assigned resources (it was one memory range if I remember correctly). Unfortunately, my XP SP3 does not assign any resources, although it seemingly recognizes the card just fine.

    What I wanted to do was to write a bus driver on top of the PCMCIA device, with a static list of two children. One for the ATA interface, one for the ethernet. I was hoping we could write an IDE controller minidriver via pciidex.sys. The advantage would be that atapi.sys attached automatically, and if the HDD was attached, it would automatically getting recognized and exported to applications as an ordinary device via the regular API. The same for the ethernet controller via an NDIS miniport driver.

    Now for the bad news: it just plain doesn't work. I started with a KMDF driver, but it gets thrown out of memory after EvtDriverDeviceAdd completes successfully :stupid:. EvtDevicePrepareHardware is never called, which usually means IRP_MN_START_DEVICE fails. Debugging this is tough, as I cannot get the KMDF debugger extensions to work (symbols for my version of wdfldr.sys are missing on the public symbol server, rendering !wdfkd useless). I used DebugView for some quick same-machine debugging (I currently do not have a second machine for real kernel debugging available), and it reports exactly this: EvtDriverDeviceAdd succeeds, but afterwards the system sends IRP_MN_REMOVE_DEVICE and the driver is unloaded again.

    Suspecting KMDF, I also tried a WDM driver instead. I used the Toaster function driver, that now gets loaded for the DTL-H10010 via a patched INF. Unfortunately it shows the same behaviour, but at least allows better debugging. Seems the real culprit is the PCMCIA bus driver, because it fails the IRP_MN_START_DEVICE with STATUS_INSUFFICIENT_RESOURCES. Which brings me to the next observation mentioned above: XP does not assign any resources to the device, the AllocatedResources(Translated) lists passed as part of IRP_MN_START_DEVICE are empty (really, both pointers are NULL, and I'm not sure whether this is even a valid way to invoke IRP_MN_START_DEVICE).

    But there are also some good news, or at least I think they are not that bad: XP can read configuration information from the card. Here's a rundown (sorry for the odd formatting, the forum software removes leading whitespace and does not provide a CODE tag or similar):
    The device node tree is cut down to just the path from the root node to the one for the PCMCIA function. As you can see, it reads configuration tuples from the card. This is the region that is parsed and checked by card_find_manfid in ps2dev9.

    By the way: I wasn't able to read the config space myself in a modified Toaster driver. I got the BUS_INTERFACE_STANDARD, which should allow access via GetBusData, but it always returns a length of zero bytes read. The dump above shows the cache of the configuration space as seen by the pcmcia bus driver.

    As an addition, here is a simple decoding of the configuration tuples. The device exports a single function that requests a single 1024-byte memory range. Unfortunately, it does not give a base address in attribute space, so I'm not sure whether Windows could configure the card: I would think it needed to tell the address decoder where the memory range resides in bus/"logical" address space, which in my opinion is impossible without a configuration tuple. But I may be wrong on this, I don't know PCI or PCMCIA well enough.

     
  17. Tokimemofan

    Tokimemofan Dauntless Member

    Joined:
    Feb 8, 2012
    Messages:
    740
    Likes Received:
    77
    That isn't entirely correct. While the connector is proprietary, the interface itself is ata with a drive enable signal on a separate 2 pin connector. All the magic is done in SCPH-10190, all one would need to do is make a card edge connector and do a pin trace on the connector to match it up
     
  18. l_oliveira

    l_oliveira Officer at Arms

    Joined:
    Nov 24, 2007
    Messages:
    3,879
    Likes Received:
    245
    SP193 was actually referring to the SCPH-10190 as a "proprietary" interface. Anyway, it's a vanilla PCMCIA device with non standard/ non PNP compliant IDs/TAGs, as SilverBull just identified on his analysis... :)

    As complementary information, the SCPH-10281 units marked "SKD" (SONY Kisarasu) and "Made in Japan" are built around the CXD9624AGG which happens to be almost identical to the CXA9624GG you find inside of the SCPH-10190.

    The difference is just that the AGG chip has serial (modem) enabled.

    Also, these network adapters do use a PHY from National Semiconductor (DP83846) instead of the ST Microelectronics PHY found on later models of the Network Adapter.

    I also happen to own a late model of Ethernet only network adapter which has a CXD9731 as SPEED chip, has SERIAL port enabled but has a National Semiconductor PHY... :)

    Oddball stuff ... Did I mention I love oddball stuff ? ;)
     
  19. PS2Guy

    PS2Guy Lost in the neverending abyss.

    Joined:
    Jan 18, 2011
    Messages:
    552
    Likes Received:
    2
    This place (ASSEMblergames) still amazes me. You ask a simple, if not meaningless question like
    and you get so much support and knowledge from all types of people and with all types of post counts. I really appreciate everything that people have shared I always look forward to l_oliveira's exceptionally informative posts and the wealth of knowledge that rattles around in SilverBull's head. I'm glad that he's on the case, as I didn't really know what I was doing.
     
    Last edited: May 28, 2012
  20. DefectX11

    DefectX11 Familiar Face

    Joined:
    Mar 20, 2012
    Messages:
    1,237
    Likes Received:
    0
    I was dumbstruck when I found that with a few PM's, I could buy a PS2 TOOL- something I had been trying to find for YEARS.

    On topic though, the whole conundrum over this is getting bigger than I thought. Then again, I've never made a driver before.
     
sonicdude10
Draft saved Draft deleted
Insert every image as a...
  1.  0%

Share This Page