- added Suboner@aol.com's xwindows timing patch to patches so I can try it

This commit is contained in:
Bryce Denney 2001-05-03 16:31:26 +00:00
parent 900edff605
commit ff450e8ddc

View File

@ -0,0 +1,85 @@
----------------------------------------------------------------------
Patch name: patch.xwin-timing
Author: Suboner@aol.com
Date: 3/1/2001
Detailed description:
basicly what it does is, it help VGA16 find the syncing, because of the
technique it uses, bochs did not help it figure out the timing diffrences
with its one size fits all timing.
I posted this patch for plex86 a while back, which the vga.cc file is basicly
the same....
Apply patch to:
current CVS
Instructions:
To patch, go to main bochs directory.
Type "patch -p0 < THIS_PATCH_FILE".
----------------------------------------------------------------------
Index: iodev/vga.cc
===================================================================
RCS file: /cvsroot/bochs/bochs/iodev/vga.cc,v
retrieving revision 1.3
diff -u -r1.3 vga.cc
--- iodev/vga.cc 2001/04/10 02:20:00 1.3
+++ iodev/vga.cc 2001/05/03 16:25:57
@@ -352,22 +352,41 @@
// printf("horiz = %d, vert = %d\n", BX_VGA_THIS s.horiz_tick, BX_VGA_THIS s.vert_tick);
- if (BX_VGA_THIS s.horiz_tick >= 100) { // ??? bogus # 100
- BX_VGA_THIS s.horiz_tick = 0;
- horiz_retrace = 1;
- }
- else {
- BX_VGA_THIS s.horiz_tick++;
- horiz_retrace = 0;
- }
- if (BX_VGA_THIS s.vert_tick >= 100) { // ??? bogus # 100
- BX_VGA_THIS s.vert_tick = 0;
- vert_retrace = 1;
- }
- else {
- BX_VGA_THIS s.vert_tick++;
- vert_retrace = 0;
- }
+ if(BX_VGA_THIS s.misc_output.clock_select == 0){ // 25.175 clock 112.5% the length of 28.32
+ if (BX_VGA_THIS s.horiz_tick >= 112) {
+ BX_VGA_THIS s.horiz_tick = 0;
+ horiz_retrace = 1;
+ }
+ else {
+ BX_VGA_THIS s.horiz_tick++;
+ horiz_retrace = 0;
+ }
+ if (BX_VGA_THIS s.vert_tick >= 112) {
+ BX_VGA_THIS s.vert_tick = 0;
+ vert_retrace = 1;
+ }
+ else {
+ BX_VGA_THIS s.vert_tick++;
+ vert_retrace = 0;
+ }
+ }else{ // clock_select 1 is assumed to be the 28.32 clock in XF86_VGA16
+ if (BX_VGA_THIS s.horiz_tick >= 100) { // ??? bogus # 100
+ BX_VGA_THIS s.horiz_tick = 0;
+ horiz_retrace = 1;
+ }
+ else {
+ BX_VGA_THIS s.horiz_tick++;
+ horiz_retrace = 0;
+ }
+ if (BX_VGA_THIS s.vert_tick >= 100) { // ??? bogus # 100
+ BX_VGA_THIS s.vert_tick = 0;
+ vert_retrace = 1;
+ }
+ else {
+ BX_VGA_THIS s.vert_tick++;
+ vert_retrace = 0;
+ }
+ } // probably add more clock modes here for diffrent resolutions
retval = 0;
if (horiz_retrace || vert_retrace)