Skip to content

Commit

Permalink
8255: set default tristate to 0 (nw)
Browse files Browse the repository at this point in the history
  • Loading branch information
happppp committed Dec 14, 2019
1 parent 88c2549 commit 716d063
Show file tree
Hide file tree
Showing 14 changed files with 3 additions and 24 deletions.
1 change: 0 additions & 1 deletion src/devices/bus/s100/polyfdc.cpp
Expand Up @@ -121,5 +121,4 @@ void poly_fdc_device::device_add_mconfig(machine_config &config)
m_pio->out_pa_callback().set(FUNC(poly_fdc_device::pa_w));
m_pio->in_pb_callback().set(FUNC(poly_fdc_device::pb_r));
m_pio->out_pc_callback().set(FUNC(poly_fdc_device::pc_w));
m_pio->tri_pc_callback().set_constant(0xfe);
}
6 changes: 3 additions & 3 deletions src/devices/machine/i8255.cpp
Expand Up @@ -249,9 +249,9 @@ void i8255_device::device_resolve_objects()
m_out_pa_cb.resolve_safe();
m_out_pb_cb.resolve_safe();
m_out_pc_cb.resolve_safe();
m_tri_pa_cb.resolve_safe(0xff);
m_tri_pb_cb.resolve_safe(0xff);
m_tri_pc_cb.resolve_safe(0xff);
m_tri_pa_cb.resolve_safe(0);
m_tri_pb_cb.resolve_safe(0);
m_tri_pc_cb.resolve_safe(0);
}

//-------------------------------------------------
Expand Down
1 change: 0 additions & 1 deletion src/mame/drivers/cabaret.cpp
Expand Up @@ -386,7 +386,6 @@ void cabaret_state::cabaret(machine_config &config)

i8255_device &ppi3(I8255(config, "ppi3"));
ppi3.out_pa_callback().set(FUNC(cabaret_state::nmi_and_coins_w));
ppi3.tri_pa_callback().set_constant(0xf0);
ppi3.in_pb_callback().set_ioport("DSW1");
ppi3.in_pc_callback().set_ioport("DSW2");

Expand Down
1 change: 0 additions & 1 deletion src/mame/drivers/cgang.cpp
Expand Up @@ -414,7 +414,6 @@ void cgang_state::cgang(machine_config &config)
m_ppi[1]->in_pb_callback().set_constant(0);
m_ppi[1]->in_pc_callback().set_ioport("SW4").lshift(4);
m_ppi[1]->out_pc_callback().set(FUNC(cgang_state::ppi2_c_w));
m_ppi[1]->tri_pc_callback().set_constant(0);

I8255(config, m_ppi[2]); // 0x80: all = output
m_ppi[2]->out_pc_callback().set(FUNC(cgang_state::ppi3_c_w));
Expand Down
2 changes: 0 additions & 2 deletions src/mame/drivers/fidel_cc10.cpp
Expand Up @@ -298,10 +298,8 @@ void ccx_state::acr(machine_config &config)

I8255(config, m_ppi8255);
m_ppi8255->out_pa_callback().set(FUNC(ccx_state::ppi_porta_w));
m_ppi8255->tri_pa_callback().set_constant(0);
m_ppi8255->in_pb_callback().set_constant(0);
m_ppi8255->out_pb_callback().set(FUNC(ccx_state::ppi_portb_w));
m_ppi8255->tri_pb_callback().set_constant(0);
m_ppi8255->in_pc_callback().set(FUNC(ccx_state::ppi_portc_r));
m_ppi8255->out_pc_callback().set(FUNC(ccx_state::ppi_portc_w));

Expand Down
2 changes: 0 additions & 2 deletions src/mame/drivers/fidel_elite.cpp
Expand Up @@ -469,10 +469,8 @@ void elite_state::eas(machine_config &config)

I8255(config, m_ppi8255); // port B: input, port A & C: output
m_ppi8255->out_pa_callback().set(FUNC(elite_state::ppi_porta_w));
m_ppi8255->tri_pa_callback().set_constant(0);
m_ppi8255->in_pb_callback().set(FUNC(elite_state::ppi_portb_r));
m_ppi8255->out_pc_callback().set(FUNC(elite_state::ppi_portc_w));
m_ppi8255->tri_pc_callback().set_constant(0);

NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);

Expand Down
2 changes: 0 additions & 2 deletions src/mame/drivers/fidel_vcc.cpp
Expand Up @@ -333,10 +333,8 @@ void vcc_state::vcc(machine_config &config)

I8255(config, m_ppi8255);
m_ppi8255->out_pa_callback().set(FUNC(vcc_state::ppi_porta_w));
m_ppi8255->tri_pa_callback().set_constant(0);
m_ppi8255->in_pb_callback().set(FUNC(vcc_state::ppi_portb_r));
m_ppi8255->out_pb_callback().set(FUNC(vcc_state::ppi_portb_w));
m_ppi8255->tri_pb_callback().set_constant(0);
m_ppi8255->in_pc_callback().set(FUNC(vcc_state::ppi_portc_r));
m_ppi8255->out_pc_callback().set(FUNC(vcc_state::ppi_portc_w));

Expand Down
1 change: 0 additions & 1 deletion src/mame/drivers/intellect02.cpp
Expand Up @@ -239,7 +239,6 @@ void intel02_state::intel02(machine_config &config)
I8255(config, m_ppi8255);
m_ppi8255->in_pa_callback().set(FUNC(intel02_state::input_r));
m_ppi8255->out_pb_callback().set(FUNC(intel02_state::digit_w));
m_ppi8255->tri_pb_callback().set_constant(0);
m_ppi8255->out_pc_callback().set(FUNC(intel02_state::control_w));
m_ppi8255->tri_pc_callback().set_constant(0x80);

Expand Down
2 changes: 0 additions & 2 deletions src/mame/drivers/kingdrby.cpp
Expand Up @@ -995,7 +995,6 @@ void kingdrby_state::kingdrby(machine_config &config)
// 6000-6003 PPI group modes 0/0 - B & C (lower) as input, A & C (upper) as output.
I8255A(config, m_ppi[1]);
m_ppi[1]->out_pa_callback().set(FUNC(kingdrby_state::sound_cmd_w));
m_ppi[1]->tri_pa_callback().set_constant(0x7f);
m_ppi[1]->in_pb_callback().set(FUNC(kingdrby_state::key_matrix_r));
m_ppi[1]->in_pc_callback().set(FUNC(kingdrby_state::input_mux_r));
m_ppi[1]->out_pc_callback().set(FUNC(kingdrby_state::outport2_w));
Expand Down Expand Up @@ -1032,7 +1031,6 @@ void kingdrby_state::kingdrbb(machine_config &config)
/* C as input, (all) as output */
m_ppi[0]->out_pa_callback().set(FUNC(kingdrby_state::sound_cmd_w));
m_ppi[0]->in_pa_callback().set_constant(0);
m_ppi[0]->tri_pa_callback().set_constant(0x7f);
m_ppi[0]->in_pb_callback().set_ioport("IN0");
m_ppi[0]->out_pb_callback().set(FUNC(kingdrby_state::outportb_w));
m_ppi[0]->in_pc_callback().set_ioport("IN1");
Expand Down
4 changes: 0 additions & 4 deletions src/mame/drivers/rotaryf.cpp
Expand Up @@ -123,9 +123,6 @@ WRITE8_MEMBER(rotaryf_state::porta_w)

WRITE8_MEMBER(rotaryf_state::portc_w)
{
if (data == 0xff)
return;

machine().bookkeeping().coin_counter_w(0, BIT(data, 1));

// bit 5 set when game starts, but isn't coin lockout?
Expand Down Expand Up @@ -275,7 +272,6 @@ void rotaryf_state::rotaryf(machine_config &config)
ppi.out_pa_callback().set(FUNC(rotaryf_state::porta_w));
ppi.in_pb_callback().set(FUNC(rotaryf_state::portb_r));
ppi.out_pc_callback().set(FUNC(rotaryf_state::portc_w));
//ppi.tri_pc_callback().set_constant(0);

/* video hardware */
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
Expand Down
1 change: 0 additions & 1 deletion src/mame/drivers/rulechan.cpp
Expand Up @@ -727,7 +727,6 @@ void rulechan_state::rulechan(machine_config &config)
ppi1.in_pa_callback().set(FUNC(rulechan_state::port30_r));
ppi1.out_pb_callback().set(FUNC(rulechan_state::port31_w)); // Must read back as 0x00 at power-up.
ppi1.out_pc_callback().set(FUNC(rulechan_state::port32_w));
ppi1.tri_pc_callback().set_constant(0xf0); // Motor off at startup

/* video hardware */
v9938_device &v9938(V9938(config, "v9938", VID_CLOCK));
Expand Down
1 change: 0 additions & 1 deletion src/mame/drivers/segae.cpp
Expand Up @@ -887,7 +887,6 @@ void systeme_state::systeme(machine_config &config)

I8255(config, m_ppi);
m_ppi->out_pb_callback().set(FUNC(systeme_state::coin_counters_write));
m_ppi->tri_pb_callback().set_constant(0);

screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_raw(XTAL(10'738'635)/2,
Expand Down
2 changes: 0 additions & 2 deletions src/mame/drivers/subsino.cpp
Expand Up @@ -2696,9 +2696,7 @@ void subsino_state::victor21(machine_config &config)

i8255_device &ppi(I8255A(config, "ppi"));
ppi.out_pa_callback().set(FUNC(subsino_state::out_a_w));
ppi.tri_pa_callback().set_constant(0);
ppi.out_pb_callback().set(FUNC(subsino_state::out_b_w));
ppi.tri_pb_callback().set_constant(0);
ppi.in_pc_callback().set_ioport("INC");

TICKET_DISPENSER(config, m_hopper, attotime::from_msec(200), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_LOW);
Expand Down
1 change: 0 additions & 1 deletion src/mame/drivers/suprloco.cpp
Expand Up @@ -178,7 +178,6 @@ void suprloco_state::suprloco(machine_config &config)

i8255_device &ppi(I8255A(config, "ppi"));
ppi.out_pb_callback().set(FUNC(suprloco_state::control_w));
ppi.tri_pb_callback().set_constant(0);
ppi.out_pc_callback().set_output("lamp0").bit(0).invert(); // set by 8255 bit mode when no credits inserted
ppi.out_pc_callback().append_inputline(m_audiocpu, INPUT_LINE_NMI).bit(7).invert();

Expand Down

2 comments on commit 716d063

@Tafoid
Copy link
Contributor

@Tafoid Tafoid commented on 716d063 Dec 17, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some noted Regressions/Changes observed - some I'm unsure if they were made correct or not.

bw2 - bw2.cpp
No longer booting
bw2-diff

fl7_2000, fl7_2k16, fl7_3121, fl7_50, fl7_500, fl7_tw - goldstar.cpp
Loss of serial number?
fl7_2k16-diff
fl7_50-diff
fl7_500-diff
fl7_2000-diff
fl7_3121-diff
fl7_tw-diff
magoddsd - goldstar.cpp
Different visible screen size?
magoddsd-diff

mbossy - gp_2.cpp
Loss of flashing LED
mbossy-diff

ibm5140 - ibmpc.cpp
Loss of audio beeps at beginning. Improvement?

iq151 - iq151.cpp
Loss of audio

All machines in meritum.cpp
No longer boots to prompt
meritum1-diff
meritum2-diff
meritum_net-diff

m86rk - mikrosha.cpp
Changed "m" character
m86rk-diff

All machines in mpf1.cpp
Shows "Err SP"
mpf1-diff
mpf1b-diff
mpf1p-diff

Many machines in norautp.cpp
Loss of lights
bjpoker-diff
norautua-diff
norautub-diff

pmi80.cpp
Loss of all display
pmi80-diff

All machines in rulechan.cpp
rulechan-diff
rulechab-diff

sbrain.cpp
No longer prompting for diskette
sbrain-diff

All machines in sitcom.cpp
Change of states in LED
sitcom-diff
sitcomtmr-diff

turbo and clones - turbo.cpp
Boot sound effect no longer plays

zaxxon, congo, futspy - zaxxon.cpp
Boot sound effect no longer plays

@happppp
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't expect this much to regress! (but probably a couple of them are actually fixes), good to have it reverted now.

Please sign in to comment.