mbee: fixed unwanted L chrs for mbee -bios 1

This commit is contained in:
Robbbert 2022-06-09 23:59:06 +10:00
parent df182a28b9
commit d98c7ff663
3 changed files with 12 additions and 3 deletions

View File

@ -1050,6 +1050,14 @@ void mc6845_device::assert_light_pen_input()
}
// Microbee requires precise supplied light-pen address
void mc6845_device::assert_light_pen_input(u16 ma)
{
m_light_pen_addr = ma;
m_light_pen_latched = true;
}
void mc6845_device::set_hpixels_per_column(int hpixels_per_column)
{
/* validate arguments */

View File

@ -115,6 +115,7 @@ public:
/* simulates the LO->HI clocking of the light pen pin (pin 3) */
void assert_light_pen_input();
void assert_light_pen_input(u16);
/* set number of pixels per video memory address */
void set_hpixels_per_column(int hpixels_per_column);

View File

@ -140,8 +140,8 @@ void mbee_state::oldkb_matrix_r(u16 offs)
{
if (!BIT(m_features, 2))
{
u8 port = (offs >> 7) & 7;
u8 bit = (offs >> 4) & 7;
u8 port = BIT(offs, 7, 3);
u8 bit = BIT(offs, 4, 3);
u8 extra = 0;
u8 data = m_io_oldkb[port]->read();
bool keydown = BIT(data, bit);
@ -182,7 +182,7 @@ void mbee_state::oldkb_matrix_r(u16 offs)
}
if( keydown )
m_crtc->assert_light_pen_input(); //lpen_strobe
m_crtc->assert_light_pen_input(offs); //lpen_strobe
}
}