summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/machine/6525tpi.c
diff options
context:
space:
mode:
author Miodrag Milanovic <mmicko@gmail.com>2012-02-13 07:58:10 +0000
committer Miodrag Milanovic <mmicko@gmail.com>2012-02-13 07:58:10 +0000
commit65392a213581931850fb0f891453851d5576acdb (patch)
tree95f29b04776602ca71fa9d085fd2601e7bbcd897 /src/emu/machine/6525tpi.c
parent534416655539c77a6817cc3a3fd5352389997b39 (diff)
Sync with MESS (no whatsnew)
Diffstat (limited to 'src/emu/machine/6525tpi.c')
-rw-r--r--src/emu/machine/6525tpi.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/emu/machine/6525tpi.c b/src/emu/machine/6525tpi.c
index db0709fc7fc..12a0f76f952 100644
--- a/src/emu/machine/6525tpi.c
+++ b/src/emu/machine/6525tpi.c
@@ -535,37 +535,36 @@ WRITE8_DEVICE_HANDLER( tpi6525_w )
{
case 0:
tpi6525->port_a = data;
- tpi6525->out_pa_func(0, tpi6525->port_a & tpi6525->ddr_a);
+ tpi6525->out_pa_func(0, (tpi6525->port_a & tpi6525->ddr_a) | (tpi6525->ddr_a ^ 0xff));
break;
case 1:
tpi6525->port_b = data;
- tpi6525->out_pb_func(0, tpi6525->port_b & tpi6525->ddr_b);
+ tpi6525->out_pb_func(0, (tpi6525->port_b & tpi6525->ddr_b) | (tpi6525->ddr_b ^ 0xff));
break;
case 2:
tpi6525->port_c = data;
if (!INTERRUPT_MODE)
- tpi6525->out_pc_func(0, tpi6525->port_c & tpi6525->ddr_c);
+ tpi6525->out_pc_func(0, (tpi6525->port_c & tpi6525->ddr_c) | (tpi6525->ddr_c ^ 0xff));
break;
case 3:
tpi6525->ddr_a = data;
- tpi6525->out_pa_func(0, tpi6525->port_a & tpi6525->ddr_a);
-
+ tpi6525->out_pa_func(0, (tpi6525->port_a & tpi6525->ddr_a) | (tpi6525->ddr_a ^ 0xff));
break;
case 4:
tpi6525->ddr_b = data;
- tpi6525->out_pb_func(0, tpi6525->port_b & tpi6525->ddr_b);
+ tpi6525->out_pb_func(0, (tpi6525->port_b & tpi6525->ddr_b) | (tpi6525->ddr_b ^ 0xff));
break;
case 5:
tpi6525->ddr_c = data;
if (!INTERRUPT_MODE)
- tpi6525->out_pc_func(0, tpi6525->port_c & tpi6525->ddr_c);
+ tpi6525->out_pc_func(0, (tpi6525->port_c & tpi6525->ddr_c) | (tpi6525->ddr_c ^ 0xff));
break;
case 6: