summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/x76f100.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/x76f100.h')
-rw-r--r--src/devices/machine/x76f100.h33
1 files changed, 18 insertions, 15 deletions
diff --git a/src/devices/machine/x76f100.h b/src/devices/machine/x76f100.h
index acec66e9c62..a323ff40fa6 100644
--- a/src/devices/machine/x76f100.h
+++ b/src/devices/machine/x76f100.h
@@ -17,22 +17,23 @@ class x76f100_device : public device_t, public device_nvram_interface
{
public:
// construction/destruction
- x76f100_device( const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0);
+ x76f100_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0);
- DECLARE_WRITE_LINE_MEMBER( write_cs );
- DECLARE_WRITE_LINE_MEMBER( write_rst );
- DECLARE_WRITE_LINE_MEMBER( write_scl );
- DECLARE_WRITE_LINE_MEMBER( write_sda );
- DECLARE_READ_LINE_MEMBER( read_sda );
+ void write_cs(int state);
+ void write_rst(int state);
+ void write_scl(int state);
+ void write_sda(int state);
+ int read_sda();
protected:
- // device-level overrides
+ // device_t implementation
virtual void device_start() override;
+ virtual void device_reset() override;
- // device_nvram_interface overrides
+ // device_nvram_interface implementation
virtual void nvram_default() override;
- virtual void nvram_read( emu_file &file ) override;
- virtual void nvram_write( emu_file &file ) override;
+ virtual bool nvram_read(util::read_stream &file) override;
+ virtual bool nvram_write(util::write_stream &file) override;
private:
inline void verboselog(int n_level, const char *s_fmt, ...) ATTR_PRINTF(3,4);
@@ -74,11 +75,13 @@ private:
int m_bit;
int m_byte;
int m_command;
- uint8_t m_write_buffer[ 8 ];
- uint8_t m_response_to_reset[ 4 ];
- uint8_t m_write_password[ 8 ];
- uint8_t m_read_password[ 8 ];
- uint8_t m_data[ 112 ];
+ int m_password_retry_counter;
+ bool m_is_password_accepted;
+ uint8_t m_write_buffer[8];
+ uint8_t m_response_to_reset[4];
+ uint8_t m_write_password[8];
+ uint8_t m_read_password[8];
+ uint8_t m_data[112];
};
// device type definition