Added emulation of ATI Video Expression (Mach64 VT2).

This commit is contained in:
SarahW 2017-05-02 14:42:41 +01:00
commit b5c11bc981
6 changed files with 889 additions and 102 deletions

View file

@ -442,6 +442,7 @@ enum
GFX_COLORPLUS, /* Plantronics ColorPlus */
GFX_WY700, /* Wyse 700 */
GFX_GENIUS, /* MDSI Genius */
GFX_MACH64VT2, /*ATI Mach64 VT2*/
GFX_MAX
};

File diff suppressed because it is too large Load diff

View file

@ -1 +1,2 @@
extern device_t mach64gx_device;
extern device_t mach64vt2_device;

View file

@ -584,6 +584,8 @@ void svga_poll(void *p)
}
if (svga->vc == svga->dispend)
{
if (svga->vblank_start)
svga->vblank_start(svga);
// pclog("VC dispend\n");
svga->dispon=0;
if (svga->crtc[10] & 0x20) svga->cursoron = 0;

View file

@ -86,8 +86,9 @@ typedef struct svga_t
int ena;
int x, y;
int xoff, yoff;
int ysize;
int xsize, ysize;
uint32_t addr;
uint32_t pitch;
int v_acc, h_acc;
} hwcursor, hwcursor_latch, overlay, overlay_latch;
@ -107,6 +108,8 @@ typedef struct svga_t
void (*overlay_draw)(struct svga_t *svga, int displine);
void (*vblank_start)(struct svga_t *svga);
/*If set then another device is driving the monitor output and the SVGA
card should not attempt to display anything */
int override;

View file

@ -53,6 +53,7 @@ typedef struct
static VIDEO_CARD video_cards[] =
{
{"ATI Graphics Pro Turbo (Mach64 GX)", "mach64gx", &mach64gx_device, GFX_MACH64GX},
{"ATI Video Xpression (Mach64 VT2)", "mach64vt2", &mach64vt2_device, GFX_MACH64VT2},
{"ATI VGA Charger (ATI-28800)", "ati28800", &ati28800_device, GFX_VGACHARGER},
{"ATI VGA Edge-16 (ATI-18800)", "ati18800", &ati18800_device, GFX_VGAEDGE16},
{"CGA", "cga", &cga_device, GFX_CGA},