Previous 15994 Revisions Next

r13982 Wednesday 11th January, 2012 at 21:50:21 UTC by Angelo Salese
Fixed a VGA line compare bug introduced with Win 98 logo fix, fixes Epic Pinball and Pinball Dreams score display
[src/emu/video]pc_vga.c

src/emu/video/pc_vga.c
r13981r13982
11071107{
11081108   int pos, line, column, c, addr, curr_addr;
11091109   UINT16 *bitmapline;
1110   UINT16 mask_comp;
11101111
1112   mask_comp = 0xff | (LINES & 0x300);
1113
11111114   curr_addr = 0;
11121115   if(vga.sequencer.data[4] & 0x08)
11131116   {
11141117      for (addr = VGA_START_ADDRESS, line=0; line<LINES; line++, addr+=VGA_LINE_LENGTH, curr_addr+=VGA_LINE_LENGTH)
11151118      {
1116         if(line < (vga.line_compare & 0x3ff))
1119         if(line < (vga.line_compare & mask_comp))
11171120            curr_addr = addr;
1118         if(line == (vga.line_compare & 0x3ff))
1121         if(line == (vga.line_compare & mask_comp))
11191122            curr_addr = 0;
11201123         bitmapline = &bitmap.pix16(line);
11211124         addr %= vga.svga_intf.vram_size;
r13981r13982
11381141   {
11391142      for (addr = VGA_START_ADDRESS, line=0; line<LINES; line++, addr+=VGA_LINE_LENGTH/4, curr_addr+=VGA_LINE_LENGTH/4)
11401143      {
1141         if(line < (vga.line_compare & 0x3ff))
1144         if(line < (vga.line_compare & mask_comp))
11421145            curr_addr = addr;
1143         if(line == (vga.line_compare & 0x3ff))
1146         if(line == (vga.line_compare & mask_comp))
11441147            curr_addr = 0;
11451148         bitmapline = &bitmap.pix16(line);
11461149         addr %= vga.svga_intf.vram_size;

Previous 15994 Revisions Next


© 1998-2018 The MESS Team