(MESS) mm1: Floppy WIP. (nw)

This commit is contained in:
Curt Coder 2012-12-28 21:49:46 +00:00
parent cdadb9c780
commit 022f1f486f
3 changed files with 30 additions and 10 deletions

View File

@ -41,18 +41,18 @@
TODO:
- fix i8275 DMA timing (full screen is transferred in 1 burst, which kills floppy sector DMA)
- add HRTC/VRTC output to i8275
- NEC uPD7220 GDC
- accurate video timing
- floppy DRQ during RECALL = 0
- PCB layout
- NEC uPD7201 MPSC
- model M7 5MB hard disk
*/
#include "includes/mikromik.h"
#include "formats/mfi_dsk.h"
#include "formats/mm_dsk.h"
//**************************************************************************
@ -486,7 +486,13 @@ static I8212_INTERFACE( iop_intf )
void mm1_state::update_tc()
{
m_fdc->tc_w(m_tc && !m_dack3);
int fdc_tc = m_tc && !m_dack3;
if (m_fdc_tc != fdc_tc)
{
m_fdc_tc = fdc_tc;
m_fdc->tc_w(m_fdc_tc);
}
}
WRITE_LINE_MEMBER( mm1_state::dma_hrq_w )
@ -783,6 +789,18 @@ static MACHINE_CONFIG_DERIVED( mm1m6, mm1 )
MACHINE_CONFIG_END
//-------------------------------------------------
// MACHINE_CONFIG( mm1m7 )
//-------------------------------------------------
static MACHINE_CONFIG_DERIVED( mm1m7, mm1 )
// video hardware
MCFG_FRAGMENT_ADD(mm1m6_video)
// TODO hard disk
MACHINE_CONFIG_END
//**************************************************************************
// ROMS
@ -820,5 +838,5 @@ ROM_END
//**************************************************************************
// YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME FLAGS
COMP( 1981, mm1m6, 0, 0, mm1m6, mm1, driver_device, 0, "Nokia Data", "MikroMikko 1 M6", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND)
COMP( 1981, mm1m7, mm1m6, 0, mm1m6, mm1, driver_device, 0, "Nokia Data", "MikroMikko 1 M7", GAME_NOT_WORKING)
COMP( 1981, mm1m6, 0, 0, mm1m6, mm1, driver_device, 0, "Nokia Data", "MikroMikko 1 M6", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE )
COMP( 1981, mm1m7, mm1m6, 0, mm1m7, mm1, driver_device, 0, "Nokia Data", "MikroMikko 1 M7", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE )

View File

@ -3,18 +3,18 @@
#ifndef __MIKROMIKKO__
#define __MIKROMIKKO__
#include "emu.h"
#include "cpu/i8085/i8085.h"
#include "formats/mm_dsk.h"
#include "machine/am9517a.h"
#include "machine/i8212.h"
#include "machine/pit8253.h"
#include "machine/ram.h"
#include "machine/upd765.h"
#include "machine/upd7201.h"
#include "machine/upd765.h"
#include "sound/speaker.h"
#include "video/i8275.h"
#include "video/upd7220.h"
#include "sound/speaker.h"
#define SCREEN_TAG "screen"
#define I8085A_TAG "ic40"
@ -47,7 +47,8 @@ public:
m_a8(0),
m_recall(0),
m_dack3(1),
m_tc(CLEAR_LINE)
m_tc(CLEAR_LINE),
m_fdc_tc(0)
{ }
required_device<cpu_device> m_maincpu;
@ -116,6 +117,7 @@ public:
int m_recall;
int m_dack3;
int m_tc;
int m_fdc_tc;
TIMER_DEVICE_CALLBACK_MEMBER(kbclk_tick);
DECLARE_FLOPPY_FORMATS( floppy_formats );

View File

@ -151,6 +151,6 @@ MACHINE_CONFIG_FRAGMENT( mm1m6_video )
MCFG_GFXDECODE(mm1)
MCFG_I8275_ADD(I8275_TAG, crtc_intf)
MCFG_I8275_ADD(I8275_TAG, crtc_intf) // XTAL_18_720MHz/8
MCFG_UPD7220_ADD(UPD7220_TAG, XTAL_18_720MHz/8, hgdc_intf, mm1_upd7220_map)
MACHINE_CONFIG_END