Previous 199869 Revisions Next

r29185 Wednesday 2nd April, 2014 at 13:30:39 UTC by Curt Coder
i8275x: Cleanup. (nw)
[src/emu/video]i8275x.c i8275x.h
[src/mess/drivers]wicat.c zorba.c
[src/mess/video]mikromik.c

trunk/src/emu/video/i8275x.c
r29184r29185
8888      m_write_drq(*this),
8989      m_write_hrtc(*this),
9090      m_write_vrtc(*this),
91      m_display_pixels(NULL),
91      m_display_cb(NULL),
9292      m_status(0),
9393      m_param_idx(0),
9494      m_param_end(0),
r29184r29185
329329               lc = (lc - 1) & 0x0f;
330330            }
331331
332            if (m_display_pixels)
333            m_display_pixels(this, m_bitmap,
332            if (m_display_cb)
333            m_display_cb(this, m_bitmap,
334334               sx * m_hpixels_per_column, // x position on screen of starting point
335335               m_scanline, // y position on screen
336336               lc, // current line of char
trunk/src/emu/video/i8275x.h
r29184r29185
4545//  INTERFACE CONFIGURATION MACROS
4646//**************************************************************************
4747
48#define MCFG_I8275_ADD(_tag, _clock, _hpixels_per_column, _display_func) \
49   MCFG_DEVICE_ADD(_tag, I8275x, _clock) \
50   downcast<i8275x_device *>(device)->set_hpixels_per_column(_hpixels_per_column); \
51   downcast<i8275x_device *>(device)->set_display_func(_display_func);
48#define MCFG_I8275_CHARACTER_WIDTH(_value) \
49   i8275x_device::static_set_character_width(*device, _value);
5250
51#define MCFG_I8275_DISPLAY_CALLBACK(_func) \
52   i8275x_device::static_set_display_callback(*device, _func);
5353
5454#define MCFG_I8275_DRQ_CALLBACK(_write) \
5555   devcb = &i8275x_device::set_drq_wr_callback(*device, DEVCB2_##_write);
r29184r29185
8888   // construction/destruction
8989   i8275x_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
9090
91   void set_hpixels_per_column(int hpixels_per_column) { m_hpixels_per_column = hpixels_per_column; }
92   void set_display_func(i8275_display_pixels_func func) { m_display_pixels = func; }
91   static void static_set_character_width(device_t &device, int value) { downcast<i8275x_device &>(device).m_hpixels_per_column = value; }
92   static void static_set_display_callback(device_t &device, i8275_display_pixels_func func) { downcast<i8275x_device &>(device).m_display_cb = func; }
9393
9494   template<class _Object> static devcb2_base &set_drq_wr_callback(device_t &device, _Object object) { return downcast<i8275x_device &>(device).m_write_drq.set_callback(object); }
9595   template<class _Object> static devcb2_base &set_irq_wr_callback(device_t &device, _Object object) { return downcast<i8275x_device &>(device).m_write_irq.set_callback(object); }
r29184r29185
178178   devcb2_write_line   m_write_hrtc;
179179   devcb2_write_line   m_write_vrtc;
180180
181   i8275_display_pixels_func m_display_pixels;
181   i8275_display_pixels_func m_display_cb;
182182   int m_hpixels_per_column;
183183
184184   bitmap_rgb32 m_bitmap;
trunk/src/mess/video/mikromik.c
r29184r29185
114114   MCFG_GFXDECODE_ADD("gfxdecode", "palette", mm1)
115115   MCFG_PALETTE_ADD_MONOCHROME_GREEN_HIGHLIGHT("palette")
116116
117   MCFG_I8275_ADD(I8275_TAG, XTAL_18_720MHz/8, 8, crtc_display_pixels)
117   MCFG_DEVICE_ADD(I8275_TAG, I8275x, XTAL_18_720MHz/8)
118   MCFG_I8275_CHARACTER_WIDTH(8)
119   MCFG_I8275_DISPLAY_CALLBACK(crtc_display_pixels)
118120   MCFG_I8275_DRQ_CALLBACK(DEVWRITELINE(I8237_TAG, am9517a_device, dreq0_w))
121   MCFG_I8275_VRTC_CALLBACK(DEVWRITELINE(UPD7220_TAG, upd7220_device, ext_sync_w))
119122   MCFG_VIDEO_SET_SCREEN(SCREEN_TAG)
120123
121124   MCFG_DEVICE_ADD(UPD7220_TAG, UPD7220, XTAL_18_720MHz/8)
trunk/src/mess/drivers/wicat.c
r29184r29185
887887
888888   MCFG_PALETTE_ADD_MONOCHROME_GREEN("palette")
889889
890   MCFG_I8275_ADD("video",XTAL_19_6608MHz/8,9,wicat_display_pixels)
890   MCFG_DEVICE_ADD("video", I8275x, XTAL_19_6608MHz/8)
891   MCFG_I8275_CHARACTER_WIDTH(9)
892   MCFG_I8275_DISPLAY_CALLBACK(wicat_display_pixels)
891893   MCFG_I8275_DRQ_CALLBACK(DEVWRITELINE("videodma",am9517a_device, dreq0_w))
892894   MCFG_I8275_IRQ_CALLBACK(WRITELINE(wicat_state,crtc_cb))
893895   MCFG_VIDEO_SET_SCREEN("screen")
trunk/src/mess/drivers/zorba.c
r29184r29185
394394   MCFG_PIT8253_CLK1(XTAL_24MHz / 3) /* Timer 1: ? */
395395   MCFG_PIT8253_CLK2(XTAL_24MHz / 3) /* Timer 2: ? */
396396
397   MCFG_I8275_ADD("crtc", XTAL_14_31818MHz/7, 8, zorba_update_chr)
397   MCFG_DEVICE_ADD("crtc", I8275x, XTAL_14_31818MHz/7)
398   MCFG_I8275_CHARACTER_WIDTH(8)
399   MCFG_I8275_DISPLAY_CALLBACK(zorba_update_chr)
398400   MCFG_I8275_DRQ_CALLBACK(DEVWRITELINE("dma", z80dma_device, rdy_w))
399401   MCFG_I8275_IRQ_CALLBACK(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
400402   MCFG_FD1793x_ADD("fdc", XTAL_24MHz / 24)

Previous 199869 Revisions Next


© 1997-2024 The MAME Team