(MESS) vip: Fixed VP-700 Tiny BASIC ROM mapping and VP-620 ASCII keyboard. [Curt Coder]

This commit is contained in:
Curt Coder 2012-08-21 19:50:30 +00:00
parent 2bfb06fde9
commit ba7a9d75ee
4 changed files with 17 additions and 14 deletions

View File

@ -56,7 +56,7 @@ Notes:
TODO:
- Tiny BASIC
- ASCII keyboard
- cassette loading
- 20K RAM for Floating Point BASIC
- VP-111 has 1K RAM, no byte I/O, no expansion
@ -266,16 +266,13 @@ READ8_MEMBER( vip_state::read )
UINT8 data = m_exp->program_r(space, offset, cs, cdef, &minh);
if (!minh)
if (cs)
{
if (cs)
{
data = memregion(CDP1802_TAG)->base()[offset & 0x1ff];
}
else
{
data = m_ram->pointer()[offset & m_ram->mask()];
}
data = memregion(CDP1802_TAG)->base()[offset & 0x1ff];
}
else if (!minh)
{
data = m_ram->pointer()[offset & m_ram->mask()];
}
return data;
@ -708,6 +705,9 @@ void vip_state::machine_reset()
// internal speaker
m_beeper->set_output_gain(0, ioport("BEEPER")->read() ? 0.80 : 0);
// clear byte I/O latch
m_byteio_data = 0;
}

View File

@ -25,7 +25,10 @@ const device_type VP620 = &device_creator<vp620_device>;
WRITE8_MEMBER( vp620_device::kb_w )
{
m_keydata = data;
m_slot->inst_w(0);
m_slot->inst_w(1);
m_keystb = ASSERT_LINE;
}
@ -96,7 +99,7 @@ UINT8 vp620_device::vip_in_r()
// vip_ef3_r - EF3 flag read
//-------------------------------------------------
int vp620_device::vip_ef3_r()
int vp620_device::vip_ef4_r()
{
int state = m_keystb;

View File

@ -44,7 +44,7 @@ protected:
// device_vip_byteio_port_interface overrides
virtual UINT8 vip_in_r();
virtual int vip_ef3_r();
virtual int vip_ef4_r();
private:
UINT8 m_keydata;

View File

@ -72,7 +72,7 @@ UINT8 vp700_device::vip_program_r(address_space &space, offs_t offset, int cs, i
{
UINT8 data = 0xff;
if (cs)
if (offset < 0x1000)
{
*minh = 1;