Windows CE/CDDA: Need some testers

Discussion in 'Sega Dreamcast Development and Research' started by SiZiOUS, Feb 10, 2018.

  1. SiZiOUS

    SiZiOUS Spirited Member

    Joined:
    Mar 27, 2009
    Messages:
    121
    Likes Received:
    169
    The project I posted on GitHub can be considered as a template program, as the iathook static library is an external project. The gddahook project is the project using all the static libraries but this will show you how to deal with the iathook library to do advanced hooking under Windows CE.

    But you're right maybe I should create just a template project on the GitHub.
     
    fafadou, pool7, pitito and 3 others like this.
  2. yzb37859365

    yzb37859365 Spirited Member

    Joined:
    Jul 14, 2013
    Messages:
    195
    Likes Received:
    136
    Super_Robot_Taisen_α_for_Dreamcast
    HGL.DLL

    I found the original game decompression program, I want to add a custom decompression method, but I can't find the insertion method and space. Wince game is different from KATANA game.
     
    Last edited: Mar 27, 2018
    Mrneo240 likes this.
  3. yzb37859365

    yzb37859365 Spirited Member

    Joined:
    Jul 14, 2013
    Messages:
    195
    Likes Received:
    136
    It looks more troublesome
     
  4. fafadou

    fafadou Enthusiastic Member

    Joined:
    Aug 3, 2016
    Messages:
    551
    Likes Received:
    227
    a template will be appreciate.
    Create .cdi with cdda we games will be great; i'm thinking about sega rally 2 and it's particular format for cdda tracks.

    Your work is amazing like always.
     
  5. SiZiOUS

    SiZiOUS Spirited Member

    Joined:
    Mar 27, 2009
    Messages:
    121
    Likes Received:
    169
    Yes you are right. Katana executable are just raw binaries file where Windows CE binaries are executed through a complete/complex kernel.
    So if I understand well, for Super Robot Taisen α for Dreamcast, you want to hijack a function in the HGL.DLL file? If yes, I think the method I gave here should work. You'll need to patch the HGL.DLL reference in the game's EXE binary, by using a proxy DLL. In clear:

    Before:
    GAME.EXE --> HGL.DLL

    After:
    GAME.EXE --> PROXY.DLL (your DLL) --> HGL.DLL

    By the way, I was using the same method in my wcegdda project, but more complex because I was hijacking API from differents DLL.

    Before:
    PB4.EXE
    |--> MAPLEDEV.DLL (MapleCreateDevice/MapleEnumerateDevices)
    |--> COREDLL.DLL(DeviceIoControl)
    |--> DSOUND.DLL (DirectSoundCreate)


    After:
    PB4.EXE
    |--> GDDAHOOK.DLL (MapleCreateDevice/MapleEnumerateDevices)
    |------> MAPLEDEV.DLL (MapleCreateDevice/MapleEnumerateDevices)
    |------> Custom DeviceIoControl for IOCTL_SEGACD_CD_PLAYTRACK/IOCTL_CDROM_PAUSE_AUDIO/... [COREDLL.DLL for other dwIoControlCodes]
    |------> DSOUND.DLL (DirectSoundCreate)
    Note: DirectSoundCreate and DeviceIoControl hijacked with "iathook" library at runtime, where MapleCreateDevice/MapleEnumerateDevices were physically hijacked by replacing MAPLEDEV.DLL in PB4.EXE with GDDAHOOK.DLL.


    My wcegdda project will be generic, but for now, I must debug it and I will be unavailable for 15 days at least. Plus my Set 5 is currently out-of-order for changing that battery.
     
    Last edited: Mar 28, 2018
    pitito, fafadou and yzb37859365 like this.
  6. yzb37859365

    yzb37859365 Spirited Member

    Joined:
    Jul 14, 2013
    Messages:
    195
    Likes Received:
    136
    Yes
    But I just want to insert a JMP or JSR into my unzip program in an unzipping program in the HGL.DLL file
     
  7. pitito

    pitito Spirited Member

    Joined:
    Mar 8, 2015
    Messages:
    118
    Likes Received:
    96
    Hi Sizious, have you been able to debug the problem with Winceos?
     
  8. pitito

    pitito Spirited Member

    Joined:
    Mar 8, 2015
    Messages:
    118
    Likes Received:
    96
    Hi Sizious, I just discovered another Winceos game in which the CDDA works correctly.

    This is the Rainbow Six, I just did a release of my translation into Spanish, and it is based on the GDI pal FR, and the CDDA works if problems.

    In case it helps you in this project :)
     
    fafadou, Mrneo240 and Anthony817 like this.
  9. fafadou

    fafadou Enthusiastic Member

    Joined:
    Aug 3, 2016
    Messages:
    551
    Likes Received:
    227
    Where do you have release it ? :)
     
  10. pitito

    pitito Spirited Member

    Joined:
    Mar 8, 2015
    Messages:
    118
    Likes Received:
    96
    I still need some things to polish.
    I only have one beta to test in console
     
    fafadou likes this.

Share This Page