summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/tlcs900/tlcs900.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/cpu/tlcs900/tlcs900.h')
-rw-r--r--src/devices/cpu/tlcs900/tlcs900.h962
1 files changed, 481 insertions, 481 deletions
diff --git a/src/devices/cpu/tlcs900/tlcs900.h b/src/devices/cpu/tlcs900/tlcs900.h
index 536bc8f99a8..27c3ccdc689 100644
--- a/src/devices/cpu/tlcs900/tlcs900.h
+++ b/src/devices/cpu/tlcs900/tlcs900.h
@@ -44,13 +44,13 @@ DECLARE_DEVICE_TYPE(TMP95C061, tmp95c061_device)
DECLARE_DEVICE_TYPE(TMP95C063, tmp95c063_device)
-#define MCFG_TLCS900H_AM8_16( am8_16 ) tlcs900h_device::set_am8_16( *device, am8_16 );
+#define MCFG_TLCS900H_AM8_16( am8_16 ) downcast<tlcs900h_device &>(*device).set_am8_16(am8_16 );
class tlcs900h_device : public cpu_device
{
public:
- // static configuration helpers
- static void set_am8_16(device_t &device, int am8_16) { downcast<tlcs900h_device &>(device).m_am8_16 = am8_16; }
+ // configuration helpers
+ void set_am8_16(int am8_16) { m_am8_16 = am8_16; }
protected:
// construction/destruction
@@ -229,420 +229,420 @@ protected:
uint32_t div16( uint32_t a, uint16_t b );
uint16_t divs8( int16_t a, int8_t b );
uint32_t divs16( int32_t a, int16_t b );
- void _ADCBMI();
- void _ADCBMR();
- void _ADCBRI();
- void _ADCBRM();
- void _ADCBRR();
- void _ADCWMI();
- void _ADCWMR();
- void _ADCWRI();
- void _ADCWRM();
- void _ADCWRR();
- void _ADCLMR();
- void _ADCLRI();
- void _ADCLRM();
- void _ADCLRR();
- void _ADDBMI();
- void _ADDBMR();
- void _ADDBRI();
- void _ADDBRM();
- void _ADDBRR();
- void _ADDWMI();
- void _ADDWMR();
- void _ADDWRI();
- void _ADDWRM();
- void _ADDWRR();
- void _ADDLMR();
- void _ADDLRI();
- void _ADDLRM();
- void _ADDLRR();
- void _ANDBMI();
- void _ANDBMR();
- void _ANDBRI();
- void _ANDBRM();
- void _ANDBRR();
- void _ANDWMI();
- void _ANDWMR();
- void _ANDWRI();
- void _ANDWRM();
- void _ANDWRR();
- void _ANDLMR();
- void _ANDLRI();
- void _ANDLRM();
- void _ANDLRR();
- void _ANDCFBIM();
- void _ANDCFBIR();
- void _ANDCFBRM();
- void _ANDCFBRR();
- void _ANDCFWIR();
- void _ANDCFWRR();
- void _BITBIM();
- void _BITBIR();
- void _BITWIR();
- void _BS1BRR();
- void _BS1FRR();
- void _CALLI();
- void _CALLM();
- void _CALR();
- void _CCF();
- void _CHGBIM();
- void _CHGBIR();
- void _CHGWIR();
- void _CPBMI();
- void _CPBMR();
- void _CPBRI();
- void _CPBRM();
- void _CPBRR();
- void _CPWMI();
- void _CPWMR();
- void _CPWRI();
- void _CPWRM();
- void _CPWRR();
- void _CPLMR();
- void _CPLRI();
- void _CPLRM();
- void _CPLRR();
- void _CPD();
- void _CPDR();
- void _CPDW();
- void _CPDRW();
- void _CPI();
- void _CPIR();
- void _CPIW();
- void _CPIRW();
- void _CPLBR();
- void _CPLWR();
- void _DAABR();
- void _DB();
- void _DECBIM();
- void _DECBIR();
- void _DECWIM();
- void _DECWIR();
- void _DECLIR();
- void _DECF();
- void _DIVBRI();
- void _DIVBRM();
- void _DIVBRR();
- void _DIVWRI();
- void _DIVWRM();
- void _DIVWRR();
- void _DIVSBRI();
- void _DIVSBRM();
- void _DIVSBRR();
- void _DIVSWRI();
- void _DIVSWRM();
- void _DIVSWRR();
- void _DJNZB();
- void _DJNZW();
- void _EI();
- void _EXBMR();
- void _EXBRR();
- void _EXWMR();
- void _EXWRR();
- void _EXTSWR();
- void _EXTSLR();
- void _EXTZWR();
- void _EXTZLR();
- void _HALT();
- void _INCBIM();
- void _INCBIR();
- void _INCWIM();
- void _INCWIR();
- void _INCLIR();
- void _INCF();
- void _JPI();
- void _JPM();
- void _JR();
- void _JRL();
- void _LDBMI();
- void _LDBMM();
- void _LDBMR();
- void _LDBRI();
- void _LDBRM();
- void _LDBRR();
- void _LDWMI();
- void _LDWMM();
- void _LDWMR();
- void _LDWRI();
- void _LDWRM();
- void _LDWRR();
- void _LDLRI();
- void _LDLRM();
- void _LDLRR();
- void _LDLMR();
- void _LDAW();
- void _LDAL();
- void _LDCBRR();
- void _LDCWRR();
- void _LDCLRR();
- void _LDCFBIM();
- void _LDCFBIR();
- void _LDCFBRM();
- void _LDCFBRR();
- void _LDCFWIR();
- void _LDCFWRR();
- void _LDD();
- void _LDDR();
- void _LDDRW();
- void _LDDW();
- void _LDF();
- void _LDI();
- void _LDIR();
- void _LDIRW();
- void _LDIW();
- void _LDX();
- void _LINK();
- void _MAX();
- void _MDEC1();
- void _MDEC2();
- void _MDEC4();
- void _MINC1();
- void _MINC2();
- void _MINC4();
- void _MIRRW();
- void _MULBRI();
- void _MULBRM();
- void _MULBRR();
- void _MULWRI();
- void _MULWRM();
- void _MULWRR();
- void _MULAR();
- void _MULSBRI();
- void _MULSBRM();
- void _MULSBRR();
- void _MULSWRI();
- void _MULSWRM();
- void _MULSWRR();
- void _NEGBR();
- void _NEGWR();
- void _NOP();
- void _NORMAL();
- void _ORBMI();
- void _ORBMR();
- void _ORBRI();
- void _ORBRM();
- void _ORBRR();
- void _ORWMI();
- void _ORWMR();
- void _ORWRI();
- void _ORWRM();
- void _ORWRR();
- void _ORLMR();
- void _ORLRI();
- void _ORLRM();
- void _ORLRR();
- void _ORCFBIM();
- void _ORCFBIR();
- void _ORCFBRM();
- void _ORCFBRR();
- void _ORCFWIR();
- void _ORCFWRR();
- void _PAAWR();
- void _PAALR();
- void _POPBM();
- void _POPBR();
- void _POPWM();
- void _POPWR();
- void _POPWSR();
- void _POPLR();
- void _PUSHBI();
- void _PUSHBM();
- void _PUSHBR();
- void _PUSHWI();
- void _PUSHWM();
- void _PUSHWR();
- void _PUSHLR();
- void _RCF();
- void _RESBIM();
- void _RESBIR();
- void _RESWIR();
- void _RET();
- void _RETCC();
- void _RETD();
- void _RETI();
- void _RLBM();
- void _RLWM();
- void _RLBIR();
- void _RLBRR();
- void _RLWIR();
- void _RLWRR();
- void _RLLIR();
- void _RLLRR();
- void _RLCBM();
- void _RLCWM();
- void _RLCBIR();
- void _RLCBRR();
- void _RLCWIR();
- void _RLCWRR();
- void _RLCLIR();
- void _RLCLRR();
- void _RLDRM();
- void _RRBM();
- void _RRWM();
- void _RRBIR();
- void _RRBRR();
- void _RRWIR();
- void _RRWRR();
- void _RRLIR();
- void _RRLRR();
- void _RRCBM();
- void _RRCWM();
- void _RRCBIR();
- void _RRCBRR();
- void _RRCWIR();
- void _RRCWRR();
- void _RRCLIR();
- void _RRCLRR();
- void _RRDRM();
- void _SBCBMI();
- void _SBCBMR();
- void _SBCBRI();
- void _SBCBRM();
- void _SBCBRR();
- void _SBCWMI();
- void _SBCWMR();
- void _SBCWRI();
- void _SBCWRM();
- void _SBCWRR();
- void _SBCLMR();
- void _SBCLRI();
- void _SBCLRM();
- void _SBCLRR();
- void _SCCBR();
- void _SCCWR();
- void _SCF();
- void _SETBIM();
- void _SETBIR();
- void _SETWIR();
- void _SLABM();
- void _SLAWM();
- void _SLABIR();
- void _SLABRR();
- void _SLAWIR();
- void _SLAWRR();
- void _SLALIR();
- void _SLALRR();
- void _SLLBM();
- void _SLLWM();
- void _SLLBIR();
- void _SLLBRR();
- void _SLLWIR();
- void _SLLWRR();
- void _SLLLIR();
- void _SLLLRR();
- void _SRABM();
- void _SRAWM();
- void _SRABIR();
- void _SRABRR();
- void _SRAWIR();
- void _SRAWRR();
- void _SRALIR();
- void _SRALRR();
- void _SRLBM();
- void _SRLWM();
- void _SRLBIR();
- void _SRLBRR();
- void _SRLWIR();
- void _SRLWRR();
- void _SRLLIR();
- void _SRLLRR();
- void _STCFBIM();
- void _STCFBIR();
- void _STCFBRM();
- void _STCFBRR();
- void _STCFWIR();
- void _STCFWRR();
- void _SUBBMI();
- void _SUBBMR();
- void _SUBBRI();
- void _SUBBRM();
- void _SUBBRR();
- void _SUBWMI();
- void _SUBWMR();
- void _SUBWRI();
- void _SUBWRM();
- void _SUBWRR();
- void _SUBLMR();
- void _SUBLRI();
- void _SUBLRM();
- void _SUBLRR();
- void _SWI();
- void _TSETBIM();
- void _TSETBIR();
- void _TSETWIR();
- void _UNLK();
- void _XORBMI();
- void _XORBMR();
- void _XORBRI();
- void _XORBRM();
- void _XORBRR();
- void _XORWMI();
- void _XORWMR();
- void _XORWRI();
- void _XORWRM();
- void _XORWRR();
- void _XORLMR();
- void _XORLRI();
- void _XORLRM();
- void _XORLRR();
- void _XORCFBIM();
- void _XORCFBIR();
- void _XORCFBRM();
- void _XORCFBRR();
- void _XORCFWIR();
- void _XORCFWRR();
- void _ZCF();
+ void op_ADCBMI();
+ void op_ADCBMR();
+ void op_ADCBRI();
+ void op_ADCBRM();
+ void op_ADCBRR();
+ void op_ADCWMI();
+ void op_ADCWMR();
+ void op_ADCWRI();
+ void op_ADCWRM();
+ void op_ADCWRR();
+ void op_ADCLMR();
+ void op_ADCLRI();
+ void op_ADCLRM();
+ void op_ADCLRR();
+ void op_ADDBMI();
+ void op_ADDBMR();
+ void op_ADDBRI();
+ void op_ADDBRM();
+ void op_ADDBRR();
+ void op_ADDWMI();
+ void op_ADDWMR();
+ void op_ADDWRI();
+ void op_ADDWRM();
+ void op_ADDWRR();
+ void op_ADDLMR();
+ void op_ADDLRI();
+ void op_ADDLRM();
+ void op_ADDLRR();
+ void op_ANDBMI();
+ void op_ANDBMR();
+ void op_ANDBRI();
+ void op_ANDBRM();
+ void op_ANDBRR();
+ void op_ANDWMI();
+ void op_ANDWMR();
+ void op_ANDWRI();
+ void op_ANDWRM();
+ void op_ANDWRR();
+ void op_ANDLMR();
+ void op_ANDLRI();
+ void op_ANDLRM();
+ void op_ANDLRR();
+ void op_ANDCFBIM();
+ void op_ANDCFBIR();
+ void op_ANDCFBRM();
+ void op_ANDCFBRR();
+ void op_ANDCFWIR();
+ void op_ANDCFWRR();
+ void op_BITBIM();
+ void op_BITBIR();
+ void op_BITWIR();
+ void op_BS1BRR();
+ void op_BS1FRR();
+ void op_CALLI();
+ void op_CALLM();
+ void op_CALR();
+ void op_CCF();
+ void op_CHGBIM();
+ void op_CHGBIR();
+ void op_CHGWIR();
+ void op_CPBMI();
+ void op_CPBMR();
+ void op_CPBRI();
+ void op_CPBRM();
+ void op_CPBRR();
+ void op_CPWMI();
+ void op_CPWMR();
+ void op_CPWRI();
+ void op_CPWRM();
+ void op_CPWRR();
+ void op_CPLMR();
+ void op_CPLRI();
+ void op_CPLRM();
+ void op_CPLRR();
+ void op_CPD();
+ void op_CPDR();
+ void op_CPDW();
+ void op_CPDRW();
+ void op_CPI();
+ void op_CPIR();
+ void op_CPIW();
+ void op_CPIRW();
+ void op_CPLBR();
+ void op_CPLWR();
+ void op_DAABR();
+ void op_DB();
+ void op_DECBIM();
+ void op_DECBIR();
+ void op_DECWIM();
+ void op_DECWIR();
+ void op_DECLIR();
+ void op_DECF();
+ void op_DIVBRI();
+ void op_DIVBRM();
+ void op_DIVBRR();
+ void op_DIVWRI();
+ void op_DIVWRM();
+ void op_DIVWRR();
+ void op_DIVSBRI();
+ void op_DIVSBRM();
+ void op_DIVSBRR();
+ void op_DIVSWRI();
+ void op_DIVSWRM();
+ void op_DIVSWRR();
+ void op_DJNZB();
+ void op_DJNZW();
+ void op_EI();
+ void op_EXBMR();
+ void op_EXBRR();
+ void op_EXWMR();
+ void op_EXWRR();
+ void op_EXTSWR();
+ void op_EXTSLR();
+ void op_EXTZWR();
+ void op_EXTZLR();
+ void op_HALT();
+ void op_INCBIM();
+ void op_INCBIR();
+ void op_INCWIM();
+ void op_INCWIR();
+ void op_INCLIR();
+ void op_INCF();
+ void op_JPI();
+ void op_JPM();
+ void op_JR();
+ void op_JRL();
+ void op_LDBMI();
+ void op_LDBMM();
+ void op_LDBMR();
+ void op_LDBRI();
+ void op_LDBRM();
+ void op_LDBRR();
+ void op_LDWMI();
+ void op_LDWMM();
+ void op_LDWMR();
+ void op_LDWRI();
+ void op_LDWRM();
+ void op_LDWRR();
+ void op_LDLRI();
+ void op_LDLRM();
+ void op_LDLRR();
+ void op_LDLMR();
+ void op_LDAW();
+ void op_LDAL();
+ void op_LDCBRR();
+ void op_LDCWRR();
+ void op_LDCLRR();
+ void op_LDCFBIM();
+ void op_LDCFBIR();
+ void op_LDCFBRM();
+ void op_LDCFBRR();
+ void op_LDCFWIR();
+ void op_LDCFWRR();
+ void op_LDD();
+ void op_LDDR();
+ void op_LDDRW();
+ void op_LDDW();
+ void op_LDF();
+ void op_LDI();
+ void op_LDIR();
+ void op_LDIRW();
+ void op_LDIW();
+ void op_LDX();
+ void op_LINK();
+ void op_MAX();
+ void op_MDEC1();
+ void op_MDEC2();
+ void op_MDEC4();
+ void op_MINC1();
+ void op_MINC2();
+ void op_MINC4();
+ void op_MIRRW();
+ void op_MULBRI();
+ void op_MULBRM();
+ void op_MULBRR();
+ void op_MULWRI();
+ void op_MULWRM();
+ void op_MULWRR();
+ void op_MULAR();
+ void op_MULSBRI();
+ void op_MULSBRM();
+ void op_MULSBRR();
+ void op_MULSWRI();
+ void op_MULSWRM();
+ void op_MULSWRR();
+ void op_NEGBR();
+ void op_NEGWR();
+ void op_NOP();
+ void op_NORMAL();
+ void op_ORBMI();
+ void op_ORBMR();
+ void op_ORBRI();
+ void op_ORBRM();
+ void op_ORBRR();
+ void op_ORWMI();
+ void op_ORWMR();
+ void op_ORWRI();
+ void op_ORWRM();
+ void op_ORWRR();
+ void op_ORLMR();
+ void op_ORLRI();
+ void op_ORLRM();
+ void op_ORLRR();
+ void op_ORCFBIM();
+ void op_ORCFBIR();
+ void op_ORCFBRM();
+ void op_ORCFBRR();
+ void op_ORCFWIR();
+ void op_ORCFWRR();
+ void op_PAAWR();
+ void op_PAALR();
+ void op_POPBM();
+ void op_POPBR();
+ void op_POPWM();
+ void op_POPWR();
+ void op_POPWSR();
+ void op_POPLR();
+ void op_PUSHBI();
+ void op_PUSHBM();
+ void op_PUSHBR();
+ void op_PUSHWI();
+ void op_PUSHWM();
+ void op_PUSHWR();
+ void op_PUSHLR();
+ void op_RCF();
+ void op_RESBIM();
+ void op_RESBIR();
+ void op_RESWIR();
+ void op_RET();
+ void op_RETCC();
+ void op_RETD();
+ void op_RETI();
+ void op_RLBM();
+ void op_RLWM();
+ void op_RLBIR();
+ void op_RLBRR();
+ void op_RLWIR();
+ void op_RLWRR();
+ void op_RLLIR();
+ void op_RLLRR();
+ void op_RLCBM();
+ void op_RLCWM();
+ void op_RLCBIR();
+ void op_RLCBRR();
+ void op_RLCWIR();
+ void op_RLCWRR();
+ void op_RLCLIR();
+ void op_RLCLRR();
+ void op_RLDRM();
+ void op_RRBM();
+ void op_RRWM();
+ void op_RRBIR();
+ void op_RRBRR();
+ void op_RRWIR();
+ void op_RRWRR();
+ void op_RRLIR();
+ void op_RRLRR();
+ void op_RRCBM();
+ void op_RRCWM();
+ void op_RRCBIR();
+ void op_RRCBRR();
+ void op_RRCWIR();
+ void op_RRCWRR();
+ void op_RRCLIR();
+ void op_RRCLRR();
+ void op_RRDRM();
+ void op_SBCBMI();
+ void op_SBCBMR();
+ void op_SBCBRI();
+ void op_SBCBRM();
+ void op_SBCBRR();
+ void op_SBCWMI();
+ void op_SBCWMR();
+ void op_SBCWRI();
+ void op_SBCWRM();
+ void op_SBCWRR();
+ void op_SBCLMR();
+ void op_SBCLRI();
+ void op_SBCLRM();
+ void op_SBCLRR();
+ void op_SCCBR();
+ void op_SCCWR();
+ void op_SCF();
+ void op_SETBIM();
+ void op_SETBIR();
+ void op_SETWIR();
+ void op_SLABM();
+ void op_SLAWM();
+ void op_SLABIR();
+ void op_SLABRR();
+ void op_SLAWIR();
+ void op_SLAWRR();
+ void op_SLALIR();
+ void op_SLALRR();
+ void op_SLLBM();
+ void op_SLLWM();
+ void op_SLLBIR();
+ void op_SLLBRR();
+ void op_SLLWIR();
+ void op_SLLWRR();
+ void op_SLLLIR();
+ void op_SLLLRR();
+ void op_SRABM();
+ void op_SRAWM();
+ void op_SRABIR();
+ void op_SRABRR();
+ void op_SRAWIR();
+ void op_SRAWRR();
+ void op_SRALIR();
+ void op_SRALRR();
+ void op_SRLBM();
+ void op_SRLWM();
+ void op_SRLBIR();
+ void op_SRLBRR();
+ void op_SRLWIR();
+ void op_SRLWRR();
+ void op_SRLLIR();
+ void op_SRLLRR();
+ void op_STCFBIM();
+ void op_STCFBIR();
+ void op_STCFBRM();
+ void op_STCFBRR();
+ void op_STCFWIR();
+ void op_STCFWRR();
+ void op_SUBBMI();
+ void op_SUBBMR();
+ void op_SUBBRI();
+ void op_SUBBRM();
+ void op_SUBBRR();
+ void op_SUBWMI();
+ void op_SUBWMR();
+ void op_SUBWRI();
+ void op_SUBWRM();
+ void op_SUBWRR();
+ void op_SUBLMR();
+ void op_SUBLRI();
+ void op_SUBLRM();
+ void op_SUBLRR();
+ void op_SWI();
+ void op_TSETBIM();
+ void op_TSETBIR();
+ void op_TSETWIR();
+ void op_UNLK();
+ void op_XORBMI();
+ void op_XORBMR();
+ void op_XORBRI();
+ void op_XORBRM();
+ void op_XORBRR();
+ void op_XORWMI();
+ void op_XORWMR();
+ void op_XORWRI();
+ void op_XORWRM();
+ void op_XORWRR();
+ void op_XORLMR();
+ void op_XORLRI();
+ void op_XORLRM();
+ void op_XORLRR();
+ void op_XORCFBIM();
+ void op_XORCFBIR();
+ void op_XORCFBRM();
+ void op_XORCFBRR();
+ void op_XORCFWIR();
+ void op_XORCFWRR();
+ void op_ZCF();
void prepare_operands(const tlcs900inst *inst);
- void _80();
- void _88();
- void _90();
- void _98();
- void _A0();
- void _A8();
- void _B0();
- void _B8();
- void _C0();
+ void op_80();
+ void op_88();
+ void op_90();
+ void op_98();
+ void op_A0();
+ void op_A8();
+ void op_B0();
+ void op_B8();
+ void op_C0();
void oC8();
- void _D0();
+ void op_D0();
void oD8();
- void _E0();
- void _E8();
- void _F0();
+ void op_E0();
+ void op_E8();
+ void op_F0();
};
#define MCFG_TMP95C061_PORT1_READ( _port_read ) \
- devcb = &tmp95c061_device::set_port1_read( *device, DEVCB_##_port_read );
+ devcb = &downcast<tmp95c061_device &>(*device).set_port1_read(DEVCB_##_port_read);
#define MCFG_TMP95C061_PORT1_WRITE( _port_write ) \
- devcb = &tmp95c061_device::set_port1_write( *device, DEVCB_##_port_write );
+ devcb = &downcast<tmp95c061_device &>(*device).set_port1_write(DEVCB_##_port_write);
#define MCFG_TMP95C061_PORT2_WRITE( _port_write ) \
- devcb = &tmp95c061_device::set_port2_write( *device, DEVCB_##_port_write );
+ devcb = &downcast<tmp95c061_device &>(*device).set_port2_write(DEVCB_##_port_write);
#define MCFG_TMP95C061_PORT5_READ( _port_read ) \
- devcb = &tmp95c061_device::set_port5_read( *device, DEVCB_##_port_read );
+ devcb = &downcast<tmp95c061_device &>(*device).set_port5_read(DEVCB_##_port_read);
#define MCFG_TMP95C061_PORT5_WRITE( _port_write ) \
- devcb = &tmp95c061_device::set_port5_write( *device, DEVCB_##_port_write );
+ devcb = &downcast<tmp95c061_device &>(*device).set_port5_write(DEVCB_##_port_write);
#define MCFG_TMP95C061_PORT6_READ( _port_read ) \
- devcb = &tmp95c061_device::set_port6_read( *device, DEVCB_##_port_read );
+ devcb = &downcast<tmp95c061_device &>(*device).set_port6_read(DEVCB_##_port_read);
#define MCFG_TMP95C061_PORT6_WRITE( _port_write ) \
- devcb = &tmp95c061_device::set_port6_write( *device, DEVCB_##_port_write );
+ devcb = &downcast<tmp95c061_device &>(*device).set_port6_write(DEVCB_##_port_write);
#define MCFG_TMP95C061_PORT7_READ( _port_read ) \
- devcb = &tmp95c061_device::set_port7_read( *device, DEVCB_##_port_read );
+ devcb = &downcast<tmp95c061_device &>(*device).set_port7_read(DEVCB_##_port_read);
#define MCFG_TMP95C061_PORT7_WRITE( _port_write ) \
- devcb = &tmp95c061_device::set_port7_write( *device, DEVCB_##_port_write );
+ devcb = &downcast<tmp95c061_device &>(*device).set_port7_write(DEVCB_##_port_write);
#define MCFG_TMP95C061_PORT8_READ( _port_read ) \
- devcb = &tmp95c061_device::set_port8_read( *device, DEVCB_##_port_read );
+ devcb = &downcast<tmp95c061_device &>(*device).set_port8_read(DEVCB_##_port_read);
#define MCFG_TMP95C061_PORT8_WRITE( _port_write ) \
- devcb = &mp95c061_device::set_port8_write( *device, DEVCB_##_port_write );
+ devcb = &downcast<mp95c061_device &>(*device).set_port8_write(DEVCB_##_port_write);
#define MCFG_TMP95C061_PORT9_READ( _port_read ) \
- devcb = &tmp95c061_device::set_port9_read( *device, DEVCB_##_port_read );
+ devcb = &downcast<tmp95c061_device &>(*device).set_port9_read(DEVCB_##_port_read);
#define MCFG_TMP95C061_PORTA_READ( _port_read ) \
- devcb = &tmp95c061_device::set_porta_read( *device, DEVCB_##_port_read );
+ devcb = &downcast<tmp95c061_device &>(*device).set_porta_read(DEVCB_##_port_read);
#define MCFG_TMP95C061_PORTA_WRITE( _port_write ) \
- devcb = &tmp95c061_device::set_porta_write( *device, DEVCB_##_port_write );
+ devcb = &downcast<tmp95c061_device &>(*device).set_porta_write(DEVCB_##_port_write);
#define MCFG_TMP95C061_PORTB_READ( _port_read ) \
- devcb = &tmp95c061_device::set_portb_read( *device, DEVCB_##_port_read );
+ devcb = &downcast<tmp95c061_device &>(*device).set_portb_read(DEVCB_##_port_read);
#define MCFG_TMP95C061_PORTB_WRITE( _port_write ) \
- devcb = &tmp95c061_device::set_portb_write( *device, DEVCB_##_port_write );
+ devcb = &downcast<tmp95c061_device &>(*device).set_portb_write(DEVCB_##_port_write);
class tmp95c061_device : public tlcs900h_device
{
@@ -650,22 +650,22 @@ public:
// construction/destruction
tmp95c061_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- // static configuration helpers
- template <class Object> static devcb_base &set_port1_read(device_t &device, Object &&cb) { return downcast<tmp95c061_device &>(device).m_port1_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port1_write(device_t &device, Object &&cb) { return downcast<tmp95c061_device &>(device).m_port1_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port2_write(device_t &device, Object &&cb) { return downcast<tmp95c061_device &>(device).m_port2_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port5_read(device_t &device, Object &&cb) { return downcast<tmp95c061_device &>(device).m_port5_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port5_write(device_t &device, Object &&cb) { return downcast<tmp95c061_device &>(device).m_port5_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port6_write(device_t &device, Object &&cb) { return downcast<tmp95c061_device &>(device).m_port6_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port7_read(device_t &device, Object &&cb) { return downcast<tmp95c061_device &>(device).m_port7_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port7_write(device_t &device, Object &&cb) { return downcast<tmp95c061_device &>(device).m_port7_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port8_read(device_t &device, Object &&cb) { return downcast<tmp95c061_device &>(device).m_port8_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port8_write(device_t &device, Object &&cb) { return downcast<tmp95c061_device &>(device).m_port8_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port9_read(device_t &device, Object &&cb) { return downcast<tmp95c061_device &>(device).m_port9_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_porta_read(device_t &device, Object &&cb) { return downcast<tmp95c061_device &>(device).m_porta_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_porta_write(device_t &device, Object &&cb) { return downcast<tmp95c061_device &>(device).m_porta_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_portb_read(device_t &device, Object &&cb) { return downcast<tmp95c061_device &>(device).m_portb_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_portb_write(device_t &device, Object &&cb) { return downcast<tmp95c061_device &>(device).m_portb_write.set_callback(std::forward<Object>(cb)); }
+ // configuration helpers
+ template <class Object> devcb_base &set_port1_read(Object &&cb) { return m_port1_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port1_write(Object &&cb) { return m_port1_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port2_write(Object &&cb) { return m_port2_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port5_read(Object &&cb) { return m_port5_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port5_write(Object &&cb) { return m_port5_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port6_write(Object &&cb) { return m_port6_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port7_read(Object &&cb) { return m_port7_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port7_write(Object &&cb) { return m_port7_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port8_read(Object &&cb) { return m_port8_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port8_write(Object &&cb) { return m_port8_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port9_read(Object &&cb) { return m_port9_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_porta_read(Object &&cb) { return m_porta_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_porta_write(Object &&cb) { return m_porta_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_portb_read(Object &&cb) { return m_portb_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_portb_write(Object &&cb) { return m_portb_write.set_callback(std::forward<Object>(cb)); }
DECLARE_READ8_MEMBER( internal_r );
DECLARE_WRITE8_MEMBER( internal_w );
@@ -727,44 +727,44 @@ private:
};
-#define MCFG_TMP95C063_PORT0_READ( _port_read ) tmp95c063_device::set_port0_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_PORT0_WRITE( _port_write ) tmp95c063_device::set_port0_write( *device, DEVCB_##_port_write );
-#define MCFG_TMP95C063_PORT1_READ( _port_read ) tmp95c063_device::set_port1_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_PORT1_WRITE( _port_write ) tmp95c063_device::set_port1_write( *device, DEVCB_##_port_write );
-#define MCFG_TMP95C063_PORT2_READ( _port_read ) tmp95c063_device::set_port2_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_PORT2_WRITE( _port_write ) tmp95c063_device::set_port2_write( *device, DEVCB_##_port_write );
-#define MCFG_TMP95C063_PORT3_READ( _port_read ) tmp95c063_device::set_port3_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_PORT3_WRITE( _port_write ) tmp95c063_device::set_port3_write( *device, DEVCB_##_port_write );
-#define MCFG_TMP95C063_PORT4_READ( _port_read ) tmp95c063_device::set_port4_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_PORT4_WRITE( _port_write ) tmp95c063_device::set_port4_write( *device, DEVCB_##_port_write );
-#define MCFG_TMP95C063_PORT5_READ( _port_read ) tmp95c063_device::set_port5_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_PORT5_WRITE( _port_write ) tmp95c063_device::set_port5_write( *device, DEVCB_##_port_write );
-#define MCFG_TMP95C063_PORT6_READ( _port_read ) tmp95c063_device::set_port6_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_PORT6_WRITE( _port_write ) tmp95c063_device::set_port6_write( *device, DEVCB_##_port_write );
-#define MCFG_TMP95C063_PORT7_READ( _port_read ) tmp95c063_device::set_port7_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_PORT7_WRITE( _port_write ) tmp95c063_device::set_port7_write( *device, DEVCB_##_port_write );
-#define MCFG_TMP95C063_PORT8_READ( _port_read ) tmp95c063_device::set_port8_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_PORT8_WRITE( _port_write ) tmp95c063_device::set_port8_write( *device, DEVCB_##_port_write );
-#define MCFG_TMP95C063_PORT9_READ( _port_read ) tmp95c063_device::set_port9_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_PORT9_WRITE( _port_write ) tmp95c063_device::set_port9_write( *device, DEVCB_##_port_write );
-#define MCFG_TMP95C063_PORTA_READ( _port_read ) tmp95c063_device::set_porta_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_PORTA_WRITE( _port_write ) tmp95c063_device::set_porta_write( *device, DEVCB_##_port_write );
-#define MCFG_TMP95C063_PORTB_READ( _port_read ) tmp95c063_device::set_portb_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_PORTB_WRITE( _port_write ) tmp95c063_device::set_portb_write( *device, DEVCB_##_port_write );
-#define MCFG_TMP95C063_PORTC_READ( _port_read ) tmp95c063_device::set_portc_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_PORTC_WRITE( _port_write ) tmp95c063_device::set_portc_write( *device, DEVCB_##_port_write );
-#define MCFG_TMP95C063_PORTD_READ( _port_read ) tmp95c063_device::set_portd_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_PORTD_WRITE( _port_write ) tmp95c063_device::set_portd_write( *device, DEVCB_##_port_write );
-#define MCFG_TMP95C063_PORTE_READ( _port_read ) tmp95c063_device::set_porte_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_PORTE_WRITE( _port_write ) tmp95c063_device::set_porte_write( *device, DEVCB_##_port_write );
-#define MCFG_TMP95C063_AN0_READ( _port_read ) tmp95c063_device::set_an0_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_AN1_READ( _port_read ) tmp95c063_device::set_an1_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_AN2_READ( _port_read ) tmp95c063_device::set_an2_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_AN3_READ( _port_read ) tmp95c063_device::set_an3_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_AN4_READ( _port_read ) tmp95c063_device::set_an4_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_AN5_READ( _port_read ) tmp95c063_device::set_an5_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_AN6_READ( _port_read ) tmp95c063_device::set_an6_read( *device, DEVCB_##_port_read );
-#define MCFG_TMP95C063_AN7_READ( _port_read ) tmp95c063_device::set_an7_read( *device, DEVCB_##_port_read );
+#define MCFG_TMP95C063_PORT0_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_port0_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_PORT0_WRITE( _port_write ) devcb = &downcast<tmp95c063_device &>(*device).set_port0_write(DEVCB_##_port_write);
+#define MCFG_TMP95C063_PORT1_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_port1_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_PORT1_WRITE( _port_write ) devcb = &downcast<tmp95c063_device &>(*device).set_port1_write(DEVCB_##_port_write);
+#define MCFG_TMP95C063_PORT2_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_port2_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_PORT2_WRITE( _port_write ) devcb = &downcast<tmp95c063_device &>(*device).set_port2_write(DEVCB_##_port_write);
+#define MCFG_TMP95C063_PORT3_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_port3_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_PORT3_WRITE( _port_write ) devcb = &downcast<tmp95c063_device &>(*device).set_port3_write(DEVCB_##_port_write);
+#define MCFG_TMP95C063_PORT4_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_port4_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_PORT4_WRITE( _port_write ) devcb = &downcast<tmp95c063_device &>(*device).set_port4_write(DEVCB_##_port_write);
+#define MCFG_TMP95C063_PORT5_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_port5_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_PORT5_WRITE( _port_write ) devcb = &downcast<tmp95c063_device &>(*device).set_port5_write(DEVCB_##_port_write);
+#define MCFG_TMP95C063_PORT6_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_port6_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_PORT6_WRITE( _port_write ) devcb = &downcast<tmp95c063_device &>(*device).set_port6_write(DEVCB_##_port_write);
+#define MCFG_TMP95C063_PORT7_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_port7_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_PORT7_WRITE( _port_write ) devcb = &downcast<tmp95c063_device &>(*device).set_port7_write(DEVCB_##_port_write);
+#define MCFG_TMP95C063_PORT8_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_port8_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_PORT8_WRITE( _port_write ) devcb = &downcast<tmp95c063_device &>(*device).set_port8_write(DEVCB_##_port_write);
+#define MCFG_TMP95C063_PORT9_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_port9_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_PORT9_WRITE( _port_write ) devcb = &downcast<tmp95c063_device &>(*device).set_port9_write(DEVCB_##_port_write);
+#define MCFG_TMP95C063_PORTA_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_porta_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_PORTA_WRITE( _port_write ) devcb = &downcast<tmp95c063_device &>(*device).set_porta_write(DEVCB_##_port_write);
+#define MCFG_TMP95C063_PORTB_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_portb_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_PORTB_WRITE( _port_write ) devcb = &downcast<tmp95c063_device &>(*device).set_portb_write(DEVCB_##_port_write);
+#define MCFG_TMP95C063_PORTC_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_portc_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_PORTC_WRITE( _port_write ) devcb = &downcast<tmp95c063_device &>(*device).set_portc_write(DEVCB_##_port_write);
+#define MCFG_TMP95C063_PORTD_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_portd_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_PORTD_WRITE( _port_write ) devcb = &downcast<tmp95c063_device &>(*device).set_portd_write(DEVCB_##_port_write);
+#define MCFG_TMP95C063_PORTE_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_porte_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_PORTE_WRITE( _port_write ) devcb = &downcast<tmp95c063_device &>(*device).set_porte_write(DEVCB_##_port_write);
+#define MCFG_TMP95C063_AN0_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_an0_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_AN1_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_an1_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_AN2_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_an2_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_AN3_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_an3_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_AN4_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_an4_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_AN5_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_an5_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_AN6_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_an6_read(DEVCB_##_port_read);
+#define MCFG_TMP95C063_AN7_READ( _port_read ) devcb = &downcast<tmp95c063_device &>(*device).set_an7_read(DEVCB_##_port_read);
class tmp95c063_device : public tlcs900h_device
{
@@ -775,37 +775,37 @@ public:
DECLARE_READ8_MEMBER( internal_r );
DECLARE_WRITE8_MEMBER( internal_w );
- // static configuration helpers
- template <class Object> static devcb_base &set_port1_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_port1_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port1_write(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_port1_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port2_write(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_port2_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port5_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_port5_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port5_write(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_port5_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port6_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_port6_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port6_write(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_port6_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port7_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_port7_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port7_write(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_port7_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port8_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_port8_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port8_write(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_port8_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port9_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_port9_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_port9_write(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_port9_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_porta_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_porta_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_porta_write(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_porta_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_portb_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_portb_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_portb_write(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_portb_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_portc_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_portc_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_portd_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_portd_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_portd_write(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_portd_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_porte_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_porte_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_porte_write(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_porte_write.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_an0_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_an0_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_an1_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_an1_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_an2_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_an2_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_an3_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_an3_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_an4_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_an4_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_an5_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_an5_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_an6_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_an6_read.set_callback(std::forward<Object>(cb)); }
- template <class Object> static devcb_base &set_an7_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_an7_read.set_callback(std::forward<Object>(cb)); }
+ // configuration helpers
+ template <class Object> devcb_base &set_port1_read(Object &&cb) { return m_port1_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port1_write(Object &&cb) { return m_port1_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port2_write(Object &&cb) { return m_port2_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port5_read(Object &&cb) { return m_port5_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port5_write(Object &&cb) { return m_port5_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port6_read(Object &&cb) { return m_port6_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port6_write(Object &&cb) { return m_port6_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port7_read(Object &&cb) { return m_port7_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port7_write(Object &&cb) { return m_port7_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port8_read(Object &&cb) { return m_port8_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port8_write(Object &&cb) { return m_port8_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port9_read(Object &&cb) { return m_port9_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_port9_write(Object &&cb) { return m_port9_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_porta_read(Object &&cb) { return m_porta_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_porta_write(Object &&cb) { return m_porta_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_portb_read(Object &&cb) { return m_portb_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_portb_write(Object &&cb) { return m_portb_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_portc_read(Object &&cb) { return m_portc_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_portd_read(Object &&cb) { return m_portd_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_portd_write(Object &&cb) { return m_portd_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_porte_read(Object &&cb) { return m_porte_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_porte_write(Object &&cb) { return m_porte_write.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_an0_read(Object &&cb) { return m_an0_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_an1_read(Object &&cb) { return m_an1_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_an2_read(Object &&cb) { return m_an2_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_an3_read(Object &&cb) { return m_an3_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_an4_read(Object &&cb) { return m_an4_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_an5_read(Object &&cb) { return m_an5_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_an6_read(Object &&cb) { return m_an6_read.set_callback(std::forward<Object>(cb)); }
+ template <class Object> devcb_base &set_an7_read(Object &&cb) { return m_an7_read.set_callback(std::forward<Object>(cb)); }
void tmp95c063_mem16(address_map &map);
void tmp95c063_mem8(address_map &map);