diff options
Diffstat (limited to 'src/mame/drivers/bbl380.cpp')
-rw-r--r-- | src/mame/drivers/bbl380.cpp | 31 |
1 files changed, 17 insertions, 14 deletions
diff --git a/src/mame/drivers/bbl380.cpp b/src/mame/drivers/bbl380.cpp index f56bf1edb9e..3ada15a1487 100644 --- a/src/mame/drivers/bbl380.cpp +++ b/src/mame/drivers/bbl380.cpp @@ -24,9 +24,9 @@ public: void bbl380(machine_config &config); private: - void cs3_command_w(u8 data); - u8 cs3_data_r(); - void cs3_data_w(u8 data); + void lcdc_command_w(u8 data); + u8 lcdc_data_r(); + void lcdc_data_w(u8 data); virtual void machine_start() override; virtual void machine_reset() override; @@ -53,28 +53,28 @@ void bbl380_state::machine_reset() { } -void bbl380_state::cs3_command_w(u8 data) +void bbl380_state::lcdc_command_w(u8 data) { - logerror("%s: CS3 command $%02X\n", machine().describe_context(), data); + logerror("%s: LCDC command $%02X\n", machine().describe_context(), data); } -u8 bbl380_state::cs3_data_r() +u8 bbl380_state::lcdc_data_r() { if (!machine().side_effects_disabled()) - logerror("%s: CS3 data read\n", machine().describe_context()); + logerror("%s: LCDC data read\n", machine().describe_context()); return 0; } -void bbl380_state::cs3_data_w(u8 data) +void bbl380_state::lcdc_data_w(u8 data) { - logerror("%s: CS3 data $%02X\n", machine().describe_context(), data); + logerror("%s: LCDC data $%02X\n", machine().describe_context(), data); } void bbl380_state::bbl380_map(address_map &map) { map(0x000000, 0x3fffff).rom().region("maincpu", 0); // not correct - map(0x600000, 0x600000).w(FUNC(bbl380_state::cs3_command_w)); - map(0x604000, 0x604000).rw(FUNC(bbl380_state::cs3_data_r), FUNC(bbl380_state::cs3_data_w)); + map(0x600000, 0x600000).w(FUNC(bbl380_state::lcdc_command_w)); + map(0x604000, 0x604000).rw(FUNC(bbl380_state::lcdc_data_r), FUNC(bbl380_state::lcdc_data_w)); } static INPUT_PORTS_START( bbl380 ) @@ -85,15 +85,18 @@ void bbl380_state::bbl380(machine_config &config) ST2205U(config, m_maincpu, 8000000); // unknown clock; type guessed m_maincpu->set_addrmap(AS_DATA, &bbl380_state::bbl380_map); - SCREEN(config, m_screen, SCREEN_TYPE_LCD); // RGB LCD + SCREEN(config, m_screen, SCREEN_TYPE_LCD); // TFT color LCD m_screen->set_refresh_hz(60); m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(0)); - m_screen->set_size(64*8, 32*8); - m_screen->set_visarea(0*8, 40*8-1, 0*8, 30*8-1); + m_screen->set_size(132, 162); + m_screen->set_visarea(0, 132-1, 0, 162-1); m_screen->set_screen_update(FUNC(bbl380_state::screen_update)); m_screen->set_palette(m_palette); PALETTE(config, m_palette).set_format(palette_device::xBGR_555, 0x200); + + // LCD controller seems to be either Sitronix ST7735R or (if RDDID bytes match) Ilitek ILI9163C + // (unless the SoC's built-in one is used and the routines which program these are leftovers) } ROM_START( bbl380 ) |