Wed. Dec 11th, 2024

DKWDRV is here and I’ve waited until it’s been updated a bit more before sharing it with everyone on here. The developer has been pushing updates relatively frequently and I think it’s worth posting about now. Let’s dive into all of the details and what you need to do to get it going.

Description:

DKWDRV is a replacement for the original PS1DRV of PlayStation 2 consoles. The original driver was heavily limited in features (sometimes on purpose and sometimes not) making user experience a real hassle. DKWDRV aims at overcoming these issues and making a much better gaming experience. Built from scratch by reversing both types of original drivers and merging them into one single unified driver. This project is not related in any way with any existing PS1-related PS2 homebrews out there.

At the moment the project can be considered BETA and many issues can come due to the big number of hardware and game differences. Users are welcome to submit issues or request features.

With time more details and documentation about PS1 operation in PS2 mode will be provided.

Features:

  • USB game loading(beta). DECKARD consoles only.
  • Almost exact emulation behavior as the original drivers.
  • Single file for both types of consoles(PGIF and DECKARD) with a reasonable final compressed size of around 70-80kb. PGIF drivers were alone ~120kb and DECKARD compressed drivers were ~180kb.
  • Internal separate game config database for both PGIF and DECKARD. All games from all drivers are included and automatically applied. Previously users would get wrong experience with out-of-region discs because PGIF drivers only had configs for the console version and DECKARD drivers have all regions but again look for the title code only in the table of game configs for the console region.
  • Automatic PS1 video mode change. Another limitation of the original drivers was using one single mode sometimes making the game appear too fast or too slow and off-screen. PS1VmodeNeg was good progress but still limited. Now the driver will auto-adjust to whatever video mode the game requests. Users can also force a mode on purpose. This solves many problems for users of MechaPwn and Tonyhax.
  • PS2HDMI Fix for PS2 HDMI dongles. Despite being called this way it can be used for all cases when component fails to display anything right after PS1 boot logo or right after it.
  • Fix for GPU GP1 reset used a lot in PS1 homebrews making them stop working in PS2. Such as this and many others.
  • Dithering can be forced enabled or disabled. No more need for game patches and cheats.
  • Screen offsets are also an option too.
  • GPU color banding can be also controlled. PS1DRV was applying it on sprites only. More information here.
  • Automatic PS1 license and logo check patching for DECKARD consoles. At the moment is not possible to patch PGIF consoles but perhaps later. PGIF users will still get a warning for such cases so they can know why all they get is a blackscreen. It is still possible to proceed in case the user has some other form of booting games(modchip, swapping, etc).
  • All PS1 config options can be tweaked and saved.
  • More Filtering values possible for Polygon sharpening.
  • Filtering option for sprites. The original driver would only apply sharpening (if selected from the OSDSYS menu) to only textured polygons. Results vary from game to game.
  • Crackto Fix for many patches and trainers/crackto and also homebrews being offscreen.
  • Cheats can be applied on DECKARD consoles only. See Cheats section for more.
  • Custom button combos while can ingame can perfrom specific actions. DECKARD consoles only.
  • Ability to swap X and O buttons. So when X is pressed the game thinks that it’s O and vice-versa. Can be used on all games and homebrew. Useful for users who play Japanese games. DECKARD consoles only.
  • Automatic Libcrypt patching for Libcrypt protected games by setting the final key to Cop registers. All magic words from gamedb.py of sahlberg pop-fe.
  • Users can also control VERSTR letter to make PS1 games think they are running on different region. May be useful for certain games or homebrews. DECKARD consoles only.
  • Analog mapping for games that do not use it like Crash Bandicoot 1 etc. Users can apply specify deadzones for the analog.
  • Useful for PCSX2 users who have only newer DECKARD bios and emulation won’t work for them. Can simply launch the elf directly.
  • Useful for TOOL users with must have switches and properly flashed rom.
  • Many many bugfixes to original code especially those related to interrupts.

A full list of internal configs with proper documentation will be coming in the future.

Instructions:

  1. Make sure that your PS2 is soft modded first.
  2. Download the latest release from the release page.
  3. Put the download on the root of your USB.
  4. Now create a folder called “DKWDRV” in the root of your USB.
  5. Inside it create a folder named “BIN”.
  6. Inside “BIN” create a folder for each game and inside each game put the bin/cue files (merged) (see example below).
  7. If you have any cheats (CHEATS.TXT) for that specific game, you can place it in the game folder with its bin and cue.
  8. Eject the USB drive once you’re done and insert it into the PS2.
  9. Place any PS1 disc you own into the disc drive of your PS2.
  10. Run the ELF files in any way you can (any variant of ulaunchelf works).
  11. Users must configure options for the fixes and features that they want. If they want to save changes they have to use the Save Game Config option in the menu. Most options are easy to understand. Better naming and documentation coming soon.
  12. Selecting “Run” will boot into the game. Do note that modchip CAN and WILL impact the boot sometimes and you might get black screens. Report issues in Github issues and remember to post AS MUCH INFO AS POSSIBLE when you tell them. Include your model, DKWDRV version, type of media, id, ids, redump links, modchip everything you find relevant. “Does not work” and “Black screen” are horrible reports! Remember to also note the information in the “INFO” section of DKWDRV. Make sure to always use the latest version.

 

  File Structure Example:

USB
    /DKWDRV
        /BIN
            /Crash Bandicoot
                Crash Bandicoot.bin
                Crash Bandicoot.cue

            /Crash Bandicoot 2 - Cortex Strikes Back
                Crash Bandicoot 2 - Cortex Strikes Back.bin
                Crash Bandicoot 2 - Cortex Strikes Back.cue
                CHEATS.TXT

For any unanswered questions, go to the SOURCE

By V1RACY