mirror of
https://github.com/holub/mame
synced 2025-04-23 00:39:36 +03:00
mc1502: try to work around issues (nw)
This commit is contained in:
parent
194e9f2cb5
commit
916dce9296
@ -1616,6 +1616,30 @@ READ8_MEMBER( isa8_ec1841_0002_device::io_read )
|
||||
|
||||
DEFINE_DEVICE_TYPE(ISA8_CGA_MC1502, isa8_cga_mc1502_device, "cga_mc1502", "MC1502 CGA")
|
||||
|
||||
void isa8_cga_mc1502_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
screen_device &screen(SCREEN(config, CGA_SCREEN_NAME, SCREEN_TYPE_RASTER));
|
||||
screen.set_raw(XTAL(16'000'000), 912, 0, 640, 462, 0, 400);
|
||||
screen.set_screen_update(FUNC(isa8_cga_mc1502_device::screen_update));
|
||||
|
||||
PALETTE(config, m_palette).set_entries(/* CGA_PALETTE_SETS * 16*/ 65536);
|
||||
|
||||
MC6845(config, m_crtc, XTAL(16'000'000)/16); // soviet clone
|
||||
m_crtc->set_screen(nullptr);
|
||||
m_crtc->set_show_border_area(false);
|
||||
m_crtc->set_char_width(8);
|
||||
m_crtc->set_update_row_callback(FUNC(isa8_cga_mc1502_device::crtc_update_row));
|
||||
m_crtc->out_hsync_callback().set(FUNC(isa8_cga_mc1502_device::hsync_changed));
|
||||
m_crtc->out_vsync_callback().set(FUNC(isa8_cga_mc1502_device::vsync_changed));
|
||||
m_crtc->set_reconfigure_callback(FUNC(isa8_cga_mc1502_device::reconfigure));
|
||||
}
|
||||
|
||||
MC6845_RECONFIGURE( isa8_cga_mc1502_device::reconfigure )
|
||||
{
|
||||
// this has a different horiz freq
|
||||
m_screen->configure(width, height, visarea, frame_period);
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// isa8_cga_mc1502_device - constructor
|
||||
//-------------------------------------------------
|
||||
|
@ -263,7 +263,10 @@ public:
|
||||
// construction/destruction
|
||||
isa8_cga_mc1502_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
// optional information overrides
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
private:
|
||||
MC6845_RECONFIGURE(reconfigure);
|
||||
};
|
||||
|
||||
// device type definition
|
||||
|
@ -95,8 +95,9 @@ void mc1502_fdc_device::mc1502_wd17xx_aux_w(uint8_t data)
|
||||
floppy->ss_w((data & 2) ? 1 : 0);
|
||||
|
||||
// bits 2, 3 -- motor on (drive 0, 1)
|
||||
floppy0->mon_w(!(data & 4));
|
||||
floppy1->mon_w(!(data & 8));
|
||||
// the schematic appears to show the motor lines connected, if they aren't then motor_on doesn't work correctly
|
||||
floppy0->mon_w(!(data & 12));
|
||||
floppy1->mon_w(!(data & 12));
|
||||
|
||||
if (data & 12)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user