summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/pc8001.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/pc8001.cpp')
-rw-r--r--src/mame/drivers/pc8001.cpp56
1 files changed, 28 insertions, 28 deletions
diff --git a/src/mame/drivers/pc8001.cpp b/src/mame/drivers/pc8001.cpp
index 1e48dde03ac..9e790f900b4 100644
--- a/src/mame/drivers/pc8001.cpp
+++ b/src/mame/drivers/pc8001.cpp
@@ -16,24 +16,24 @@
- PCG-1000;
- Intel 8251;
- cassette;
- - dip-switches;
+ - dip-switches;
- PC-8011 (expansion unit)
- PC-8021;
- PC-8031 (mini disk unit, in progress)
- - pc8001mk2sr: verify how much needs to be ported from pc8801.cpp code
- (Has 3 bitplane GVRAM like PC-8801 V1 mode);
- - waitstates & DMA penalty (some games are suspciously fast);
- - buzzer has pretty ugly aliasing in places;
+ - pc8001mk2sr: verify how much needs to be ported from pc8801.cpp code
+ (Has 3 bitplane GVRAM like PC-8801 V1 mode);
+ - waitstates & DMA penalty (some games are suspciously fast);
+ - buzzer has pretty ugly aliasing in places;
Notes:
- pc8001 v1.01 / v1.02 sports a buggy readout of the expansion ROM at PC=17a1:
It expects an header read of 0x41-0x42 at offset $6000-6001, but second read at
PC=0x17aa is just a comparison to $6000 == 0x42, which is impossible at that point
unless external aid is given. This has been fixed in v1.10;
- - Color Magical (pc8001gp:flop5 option 7) transfers two 8 color screens at
- even/odd frame intervals, effectively boosting the number of available colors to 27.
- This trick is kinda flickery even on real HW, no wonder it looks ugly in MAME,
- can it be improved?
+ - Color Magical (pc8001gp:flop5 option 7) transfers two 8 color screens at
+ even/odd frame intervals, effectively boosting the number of available colors to 27.
+ This trick is kinda flickery even on real HW, no wonder it looks ugly in MAME,
+ can it be improved?
*/
@@ -152,7 +152,7 @@ UPD3301_DRAW_CHARACTER_MEMBER( pc8001_base_state::draw_text )
if (reverse ^ m_screen_reverse)
tile ^= 0xff;
-// if (m_width80)
+// if (m_width80)
{
u8 pen;
@@ -170,7 +170,7 @@ UPD3301_DRAW_CHARACTER_MEMBER( pc8001_base_state::draw_text )
pen = tile;
pen = (pen >> (7 - (xi >> (dot_width - 1)))) & 1;
}
-
+
for (int di = 0; di < dot_width; di++)
bitmap.pix(y, res_x + di) = m_crtc_palette->pen(pen ? color : 0);
}
@@ -237,7 +237,7 @@ void pc8001_base_state::port30_w(uint8_t data)
/* color mode */
m_color = BIT(data, 1);
-
+
m_cassette->change_state(BIT(data, 3) ? CASSETTE_MOTOR_ENABLED : CASSETTE_MOTOR_DISABLED, CASSETTE_MASK_MOTOR);
}
@@ -257,7 +257,7 @@ void pc8001mk2_state::port31_w(uint8_t data)
7 background color
*/
- membank("bank2")->set_entry(data & 1);
+ membank("bank2")->set_entry(data & 1);
}
WRITE_LINE_MEMBER( pc8001_state::write_centronics_busy )
@@ -438,8 +438,8 @@ void pc8001mk2sr_state::port71_w(u8 data)
void pc8001mk2sr_state::pc8001mk2sr_io(address_map &map)
{
- pc8001mk2_io(map);
- map(0x33, 0x33).w(FUNC(pc8001mk2sr_state::port33_w));
+ pc8001mk2_io(map);
+ map(0x33, 0x33).w(FUNC(pc8001mk2sr_state::port33_w));
map(0x71, 0x71).rw(FUNC(pc8001mk2sr_state::port71_r), FUNC(pc8001mk2sr_state::port71_w));
}
@@ -546,13 +546,13 @@ static INPUT_PORTS_START( pc8001 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_KEYBOARD ) PORT_CODE(KEYCODE_SPACE) PORT_CHAR(' ')
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_KEYBOARD ) PORT_CODE(KEYCODE_ESC) PORT_CHAR(27)
-// PORT_START("DSW1")
+// PORT_START("DSW1")
INPUT_PORTS_END
static INPUT_PORTS_START( pc8001mk2 )
- PORT_INCLUDE( pc8001 )
+ PORT_INCLUDE( pc8001 )
- PORT_START("DSW1")
+ PORT_START("DSW1")
PORT_DIPNAME( 0x01, 0x00, "Boot Mode" )
PORT_DIPSETTING( 0x00, "N-BASIC" )
PORT_DIPSETTING( 0x01, "N80-BASIC" )
@@ -606,7 +606,7 @@ static INPUT_PORTS_START( pc8001mk2 )
INPUT_PORTS_END
static INPUT_PORTS_START( pc8001mk2sr )
- PORT_INCLUDE( pc8001mk2 )
+ PORT_INCLUDE( pc8001mk2 )
PORT_MODIFY("DSW1")
// This is really a tri-state dip on front panel
@@ -690,10 +690,10 @@ void pc8001_state::machine_start()
program.install_readwrite_bank(0x0000, 0x5fff, membank("bank1"));
program.install_readwrite_bank(0x6000, 0xbfff, membank("bank2"));
program.install_readwrite_bank(0x8000, 0xffff, membank("bank3"));
-// membank("bank2")->set_entry(0);
+// membank("bank2")->set_entry(0);
break;
}
-
+
// PC8001 is 15KHz only
set_screen_frequency(false);
}
@@ -707,18 +707,18 @@ void pc8001_state::machine_reset()
void pc8001mk2sr_state::machine_start()
{
- pc8001_state::machine_start();
+ pc8001_state::machine_start();
membank("bank1")->configure_entry(2, m_n80sr_rom->base());
membank("bank2")->configure_entry(2, m_n80sr_rom->base() + 0x6000);
membank("bank2")->configure_entry(3, m_n80sr_rom->base() + 0x8000);
-
+
save_item(NAME(m_n80sr_bank));
}
void pc8001mk2sr_state::machine_reset()
{
- pc8001_state::machine_reset();
+ pc8001_state::machine_reset();
//membank("bank1")->set_entry(2);
//membank("bank2")->set_entry(2);
@@ -728,8 +728,8 @@ void pc8001mk2sr_state::machine_reset()
void pc8001_state::pc8001(machine_config &config)
{
- constexpr XTAL MASTER_CLOCK = XTAL(4'000'000);
- constexpr XTAL VIDEO_CLOCK = XTAL(14'318'181);
+ constexpr XTAL MASTER_CLOCK = XTAL(4'000'000);
+ constexpr XTAL VIDEO_CLOCK = XTAL(14'318'181);
/* basic machine hardware */
Z80(config, m_maincpu, MASTER_CLOCK);
@@ -744,7 +744,7 @@ void pc8001_state::pc8001(machine_config &config)
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_raw(VIDEO_CLOCK, 896, 0, 640, 260, 0, 200);
m_screen->set_screen_update(FUNC(pc8001_state::screen_update));
-// m_screen->set_palette(m_crtc_palette);
+// m_screen->set_palette(m_crtc_palette);
PALETTE(config, m_crtc_palette, palette_device::BRG_3BIT);
@@ -783,7 +783,7 @@ void pc8001_state::pc8001(machine_config &config)
/* sound hardware */
SPEAKER(config, "mono").front_center();
- // TODO: unknown clock, is it really a beeper?
+ // TODO: unknown clock, is it really a beeper?
BEEP(config, m_beep, 2400).add_route(ALL_OUTPUTS, "mono", 0.25);
}