Latest version of nkpatcher10-vga
I rewrote the RGB output patching code. This fixes blank screen issues with some games with weird video initialization. Now finally Chessmaster works. All my games work perfectly now.
Instead of resetting the gpu always, I'm just writing video registers to reconfigure GPU for RGB output upon exiting AvSetDisplayMode kernel system call.
Also improved force progressive code. Now 480p support doesn't even have to be enabled in msdash video settings. It's still better to have 480p enabled since some old games might freeze. One such instance is Goblin Commander. If 480p is disabled it freezes after loading screen, if 480p is enabled it works perfectly.
I also took advice of The Zep Man and renamed define names to better reflect what's going on.
;;; VIDEO patches:
;;; VIDEO_FORCE_RGB = Patches kernel to output RGsB video signal (RGB with
;;; sync on green). Intended for connecting the Xbox to VGA monitor.
;;; Use HDTV (mode 2+3) video cable and connect Y to monitor green
;;; input, Cr to monitor red input and Cb to monitor blue input. The
;;; monitor must support sync on green.
;;; VIDEO_FORCE_PROGRESSIVE = Patches kernel to convert 480i video modes to
;;; 480p. You must use HDTV (mode 2+3) video cable for this feature
;;; to work properly. Note that this will force Xbox to output
;;; progressive scan video even if 480p video support is disabled
;;; in msdash.
;;; Not enabled by default.
; %define VIDEO_FORCE_RGB
; %define VIDEO_FORCE_PROGRESSIVE
ChangeLog from readme.txt:
From version 10 to version 10-vga5:
* Added force RGB video feature. This will patch kernel system call
AvSetDisplayMode to configure GPU for RGsB signal when video mode
is changed. Intended for connecting the Xbox to VGA monitor. Use
HDTV (mode 2+3) video cable and connect Y to monitor green input,
Cr to monitor red input and Cb to monitor blue input. The monitor
must support sync on green. If your monitor does not support sync
on green you will have to build special special sync separator
* Added feature to convert 480i video modes to 480p. This will patch
kernel system call AvSetDisplayMode to convert 480i video modes to
480p. Enhances graphics quality for games/applications that don't
make use of progressive scan video capability of Xbox. You must use
HDTV (mode 2+3) video cable for this feature to work properly. Note
that this will force Xbox to output progressive scan video even if
480p video support is disabled in msdash.
If you had problems with previous version, try this one.