Previous 199869 Revisions Next

r21196 Tuesday 19th February, 2013 at 23:54:26 UTC by Barry Rodewald
svga_s3: just a few minor updates (no whatsnew)
[src/emu/video]pc_vga.c

trunk/src/emu/video/pc_vga.c
r21195r21196
26762676            res = s3.reg_lock2;
26772677            break;
26782678         case 0x42: // CR42 Mode Control
2679            res = 0x0d; // hardcode to non-interlace
2679            res = s3.cr42 & 0x0f; // bit 5 set if interlaced, leave it unset for now.
26802680            break;
26812681         case 0x45:
26822682            res = s3.cursor_mode;
r21195r21196
27192719         case 0x55:
27202720            res = s3.extended_dac_ctrl;
27212721            break;
2722         case 0x5c:
2723            // if VGA dot clock is set to 3 (misc reg bits 2-3), then selected dot clock is read, otherwise read VGA clock select
2724            if((vga.miscellaneous_output & 0xc) == 0x0c)
2725               res = s3.cr42 & 0x0f;
2726            else
2727               res = (vga.miscellaneous_output & 0xc) >> 2;
2728            break;
27222729         case 0x67:
27232730            res = s3.ext_misc_ctrl_2;
27242731            break;
r21195r21196
28372844            s3.memory_config = data;
28382845            vga.crtc.start_addr_latch &= ~0x30000;
28392846            vga.crtc.start_addr_latch |= ((data & 0x30) << 12);
2840            //popmessage("%02x",data);
28412847            s3_define_video_mode();
28422848            break;
28432849         case 0x35:
r21195r21196
29872993            vga.crtc.start_addr_latch &= ~0xc0000;
29882994            vga.crtc.start_addr_latch |= ((data & 0x3) << 18);
29892995            svga.bank_w = (svga.bank_w & 0xcf) | ((data & 0x0c) << 2);
2990            svga.bank_r = svga.bank_r;
2996            svga.bank_r = svga.bank_w;
29912997            s3_define_video_mode();
29922998            break;
29932999         case 0x53:
r21195r21196
30423048            vga.crtc.horz_total = (vga.crtc.horz_total & 0xfeff) | ((data & 0x01) << 8);
30433049            vga.crtc.horz_disp_end = (vga.crtc.horz_disp_end & 0xfeff) | ((data & 0x02) << 7);
30443050            vga.crtc.horz_blank_start = (vga.crtc.horz_blank_start & 0xfeff) | ((data & 0x04) << 6);
3051            vga.crtc.horz_blank_end = (vga.crtc.horz_blank_end & 0xffbf) | ((data & 0x08) << 3);
30453052            vga.crtc.horz_retrace_start = (vga.crtc.horz_retrace_start & 0xfeff) | ((data & 0x10) << 4);
3053            vga.crtc.horz_retrace_end = (vga.crtc.horz_retrace_end & 0xffdf) | (data & 0x20);
30463054            s3_define_video_mode();
30473055            break;
30483056/*

Previous 199869 Revisions Next


© 1997-2024 The MAME Team