summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/video/pc_vga.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/video/pc_vga.h')
-rw-r--r--src/devices/video/pc_vga.h24
1 files changed, 20 insertions, 4 deletions
diff --git a/src/devices/video/pc_vga.h b/src/devices/video/pc_vga.h
index 320da9f2d2a..0b5b9539fd9 100644
--- a/src/devices/video/pc_vga.h
+++ b/src/devices/video/pc_vga.h
@@ -324,7 +324,7 @@ public:
READ16_MEMBER(ibm8514_foremix_r);
WRITE16_MEMBER(ibm8514_foremix_w);
READ16_MEMBER(ibm8514_pixel_xfer_r);
- WRITE16_MEMBER(ibm8514_pixel_xfer_w);
+ virtual WRITE16_MEMBER(ibm8514_pixel_xfer_w);
READ16_MEMBER(ibm8514_read_mask_r);
WRITE16_MEMBER(ibm8514_read_mask_w);
READ16_MEMBER(ibm8514_write_mask_r);
@@ -388,6 +388,10 @@ protected:
virtual void device_start() override;
virtual void device_config_complete() override;
+ void ibm8514_write(uint32_t offset, uint32_t src);
+ void ibm8514_write_fg(uint32_t offset);
+ void ibm8514_write_bg(uint32_t offset);
+
svga_device* m_vga; // for pass-through
std::string m_vga_tag; // pass-through device tag
private:
@@ -395,9 +399,6 @@ private:
void ibm8514_wait_draw_ssv();
void ibm8514_draw_ssv(uint8_t data);
void ibm8514_wait_draw_vector();
- void ibm8514_write_fg(uint32_t offset);
- void ibm8514_write_bg(uint32_t offset);
- void ibm8514_write(uint32_t offset, uint32_t src);
//uint8_t* m_vram; // the original 8514/A has it's own VRAM, but most VGA+8514 combination cards will have
// only one set of VRAM, so this will only be needed in standalone 8514/A cards
@@ -446,6 +447,13 @@ public:
WRITE16_MEMBER(mach8_ext_leftscissor_w);
WRITE16_MEMBER(mach8_ext_topscissor_w);
READ16_MEMBER(mach8_clksel_r) { return mach8.clksel; }
+ WRITE16_MEMBER(mach8_ge_offset_l_w);
+ WRITE16_MEMBER(mach8_ge_offset_h_w);
+ WRITE16_MEMBER(mach8_ge_pitch_w);
+ WRITE16_MEMBER(mach8_scan_x_w);
+ WRITE16_MEMBER(mach8_dp_config_w);
+ READ16_MEMBER(mach8_readonly_r) { return 0; }
+ WRITE16_MEMBER(mach8_pixel_xfer_w);
protected:
mach8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
@@ -456,7 +464,15 @@ protected:
uint16_t scratch1;
uint16_t linedraw;
uint16_t clksel;
+ uint16_t dp_config;
+ uint32_t ge_offset;
+ uint16_t ge_pitch;
+ uint16_t scan_x;
} mach8;
+
+private:
+ void mach8_wait_scan();
+
};
// device type definition