Giter Site home page Giter Site logo

ps1vmodeneg's Introduction

PS1Drv Video Mode Negater (PS1VModeNeg)

Changelog

Update 2017/08/26: v1.10 released.
Update 2014/07/21: v1.01 released.
Update 2014/05/13: v1.00 released.
Update 2013/08/31: Initial public release

Introduction

The PlayStation driver video mode negater (PS1VModeNeg) is a tool that selects the correct video mode for your imported PlayStation game, regardless of what your PlayStation 2 console's PlayStation driver (PS1DRV) has been fixed to use.

Depending on the boot ROM (aka "BIOS") of the console, one of these two different methods will be used:

  1. Patch the video parameters initialization function.1
  2. Patch the ROMVER string parsing function (Fools the driver to think that your console is from another region).2

The PlayStation drivers of the SCPH-75000 appear to have been coded to be universal, like with the rest of the design of the slimline consoles in general. This means that full compatibility with import games should be achievable with minimal patching.

Older drivers are more difficult to tackle, as they have been hard-coded to work with games from your console's region. e.g. NTSC consoles appear to have a built-in compatibility list and assume that your games will use the NTSC video mode. Code for supporting the video mode from the other region (e.g. NTSC games, for a PAL console) will have to be added.

It's probably also not too surprising if some games work well on only consoles native to the region that they are from due to the region-specific game compatibility list.

Note: On older consoles (SCPH-70000 and older), there is a risk that your TV might blow up or get damaged (worst case) if my code turns out to be faulty.

That hasn't happened to the two TVs I've tested on, but I don't want to guarantee anything because the method I use involves tweaking with the values that the PS1 driver appears to write to the GS's SYNCHV register (One of the undocumented registers that Sony had prohibited external developers from writing to directly).

The code I'm using to calculate the replacement values for SYNCHV has been taken from the PS1 driver of my SCPH-77006 (PS1DRV v1.3.0), and it should be perfectly safe if it was copied properly. However, accidents might happen and something such as mistakes such as typos could exist. :(

Use this tool at your own risk!

Video Mode & Region Detection

There are now two methods used to determine the video mode to use:

  1. Read SYSTEM.CNF from the disc and determine which region it is from. If the console is an SCPH-75000 or newer, the ROM region will be also changed to fit the disc. PS1DRV uses the ROM's region to select the appropriate game compatibility chart.
    • SxPx - Japan (NTSC)
    • SxEx - Europe (PAL)
    • SxUx - USA (NTSC)
  2. If the region cannot be determined in (1), then the video mode selected will be the opposite of your console's. The game compatibility list will hence not apply to US games if this happens. If the console is an SCPH-75000 or newer, the ROM region will be changed to Japan (NTSC) or Europe (PAL).
    • NTSC console ⇒ PAL video mode
    • PAL console ⇒ NTSC video mode.

Known limitations/bugs

  • None

Changelog for v1.10

  1. Bugfix: Video mode not set completely.
  2. Call SetGsCrt with the desired video mode before booting PS1DRV. 3. PS1DRV was made to run off the state that LoadExecPS2 leaves the console in, hence it does not entirely change the video mode on its own.
  3. Updated to build with the modern PS2SDK revision.

Footnotes

  1. is used for consoles belonging to the SCPH-70000 (ROM ≤ v2.00) series and older.

  2. is used for consoles belonging to the SCPH-75000 (ROM > v2.00) series and newer.

ps1vmodeneg's People

Contributors

akuhak avatar

Stargazers

Bailey Fox avatar  avatar

Watchers

 avatar Julian Uy avatar Rick Gaiser avatar dfmuniz74 avatar

Forkers

akuhak

ps1vmodeneg's Issues

Matrix Infinity 1.93 PS2 Screen Fix Options not being overwritten

Checks

  • I have checked existing feature requests for duplicates and found none

Describe the FR

I play my ps1 games on a crt, one that supports pal60 and ntsc signals, but my tv has incorrect colors whenever its forced to ntsc, since all ntsc games use, well an ntsc signal i keep havin incorrect colors, unless i use the color ps2 screen fix option the matrix 1.93 has in its menu, unfortunately ps1vmodeneg overwrites the ps2 screen fix options the modchip has.

Describe the solution you'd like

If its possible, have ps1vmodeneg not overwrite the ps2 screen fix options, that may cause other issues if someone has set the video mode to pal60 or something like that, so maybe leave a disclamer on readme

Describe alternatives you've considered

an odd solution ive found for this issue is on my tv, for some reason whenever its in SAM mode, it has different colors, and they are really good for ntsc signals, just a bit darker than usual.

Additional context

No response

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.