/* read status port */ static int I8741_status_r(const address_space *space, int num) { I8741 *st = &taito8741[num]; taito8741_update(space, num); LOG(("%s:8741-%d ST Read %02x\n",cpuexec_describe_context(space->machine),num,st->status)); return st->status; }
/* read status port */ static int I8741_status_r(address_space &space, int num) { I8741 *st = &taito8741[num]; taito8741_update(space, num); LOG(("%s:8741-%d ST Read %02x\n",space.machine().describe_context(),num,st->status)); return st->status; }
/* read status port */ static int I8741_status_r(int num) { I8741 *st = &taito8741[num]; taito8741_update(num); #if __log__ logerror("8741-%d ST Read %02x PC=%04x\n",num,st->status,activecpu_get_pc()); #endif return st->status; }
/* Write command port */ static void I8741_command_w(const address_space *space, int num, int data) { I8741 *st = &taito8741[num]; LOG(("%s:8741-%d CMD Write %02x\n",cpuexec_describe_context(space->machine),num,data)); st->fromCmd = data; st->status |= 0x04; /* update chip */ taito8741_update(space,num); }
/* Write data port */ static void I8741_data_w(address_space &space, int num, int data) { I8741 *st = &taito8741[num]; LOG(("%s:8741-%d DATA Write %02x\n",space.machine().describe_context(),num,data)); st->fromData = data; st->status |= 0x02; /* update chip */ taito8741_update(space, num); }
/* Write command port */ static void I8741_command_w(int num, int data) { I8741 *st = &taito8741[num]; #if __log__ logerror("8741-%d CMD Write %02x PC=%04x\n",num,data,activecpu_get_pc()); #endif st->fromCmd = data; st->status |= 0x04; /* update chip */ taito8741_update(num); }
/* Write data port */ static void I8741_data_w(int num, int data) { I8741 *st = &taito8741[num]; #if __log__ if(errorlog) fprintf(errorlog,"8741-%d DATA Write %02x PC=%04x\n",num,data,cpu_get_pc()); #endif st->fromData = data; st->status |= 0x02; /* update chip */ taito8741_update(num); }
/* read data port */ static int I8741_data_r(const address_space *space, int num) { I8741 *st = &taito8741[num]; int ret = st->toData; st->status &= 0xfe; LOG(("%s:8741-%d DATA Read %02x\n",cpuexec_describe_context(space->machine),num,ret)); /* update chip */ taito8741_update(space, num); switch( st->mode ) { case TAITO8741_PORT: /* parallel data */ taito8741_hostdata_w(st,st->portHandler ? st->portHandler(space, st->parallelselect) : st->portName ? input_port_read(space->machine, st->portName) : 0); break; } return ret; }
/* read data port */ static int I8741_data_r(address_space &space, int num) { I8741 *st = &taito8741[num]; int ret = st->toData; st->status &= 0xfe; LOG(("%s:8741-%d DATA Read %02x\n",space.machine().describe_context(),num,ret)); /* update chip */ taito8741_update(space, num); switch( st->mode ) { case TAITO8741_PORT: /* parallel data */ taito8741_hostdata_w(st,st->portHandler ? st->portHandler(space, st->parallelselect, 0xff) : st->portName ? space.machine().root_device().ioport(st->portName)->read() : 0); break; } return ret; }
/* read data port */ static int I8741_data_r(int num) { I8741 *st = &taito8741[num]; int ret = st->toData; st->status &= 0xfe; #if __log__ logerror("8741-%d DATA Read %02x PC=%04x\n",num,ret,activecpu_get_pc()); #endif /* update chip */ taito8741_update(num); switch( st->mode ) { case TAITO8741_PORT: /* parallel data */ taito8741_hostdata_w(st,st->portHandler ? st->portHandler(st->parallelselect) : 0); break; } return ret; }