summaryrefslogtreecommitdiffstatshomepage
path: root/src/mess/includes/ti85.h
diff options
context:
space:
mode:
author Miodrag Milanovic <mmicko@gmail.com>2012-08-21 10:41:19 +0000
committer Miodrag Milanovic <mmicko@gmail.com>2012-08-21 10:41:19 +0000
commit7285b359d259b2ae0fdf85096571c386ec8c991a (patch)
treea027aff57f1a255f9ec6cfd3b68cabe4b6683998 /src/mess/includes/ti85.h
parent67c425e90757876a6716b7867df30c0149912e74 (diff)
Merge of MESS sources (no whatsnew)
Diffstat (limited to 'src/mess/includes/ti85.h')
-rw-r--r--src/mess/includes/ti85.h121
1 files changed, 121 insertions, 0 deletions
diff --git a/src/mess/includes/ti85.h b/src/mess/includes/ti85.h
new file mode 100644
index 00000000000..f16dcc089da
--- /dev/null
+++ b/src/mess/includes/ti85.h
@@ -0,0 +1,121 @@
+/*****************************************************************************
+ *
+ * includes/ti85.h
+ *
+ ****************************************************************************/
+
+#ifndef TI85_H_
+#define TI85_H_
+
+#include "imagedev/snapquik.h"
+#include "video/t6a04.h"
+#include "sound/speaker.h"
+
+
+class ti85_state : public driver_device
+{
+public:
+ ti85_state(const machine_config &mconfig, device_type type, const char *tag)
+ : driver_device(mconfig, type, tag),
+ m_maincpu(*this, "maincpu"),
+ m_speaker(*this, SPEAKER_TAG),
+// m_serial(*this, "tiserial"),
+ m_nvram(*this, "nvram")
+ { }
+
+ required_device<cpu_device> m_maincpu;
+ optional_device<device_t> m_speaker;
+ //optional_device<device_t> m_serial;
+ optional_shared_ptr<UINT8> m_nvram;
+
+ UINT8 m_LCD_memory_base;
+ UINT8 m_LCD_contrast;
+ UINT8 m_LCD_status;
+ UINT8 m_timer_interrupt_mask;
+ UINT8 m_timer_interrupt_status;
+ UINT8 m_ON_interrupt_mask;
+ UINT8 m_ON_interrupt_status;
+ UINT8 m_ON_pressed;
+ UINT8 m_ti8x_memory_page_1;
+ UINT8 m_ti8x_memory_page_2;
+ UINT8 m_LCD_mask;
+ UINT8 m_power_mode;
+ UINT8 m_keypad_mask;
+ UINT8 m_video_buffer_width;
+ UINT8 m_interrupt_speed;
+ UINT8 m_port4_bit0;
+ UINT8 m_ti81_port_7_data;
+ UINT8 *m_ti8x_ram;
+ UINT8 m_PCR;
+ UINT8 m_red_out;
+ UINT8 m_white_out;
+ UINT8 m_ti8x_port2;
+ UINT8 m_ti83p_port4;
+ int m_ti_video_memory_size;
+ int m_ti_screen_x_size;
+ int m_ti_screen_y_size;
+ int m_ti_number_of_frames;
+ UINT8 * m_frames;
+ UINT8 * m_bios;
+ DECLARE_READ8_MEMBER(ti85_port_0000_r);
+ DECLARE_READ8_MEMBER(ti8x_keypad_r);
+ DECLARE_READ8_MEMBER(ti85_port_0006_r);
+ DECLARE_READ8_MEMBER(ti8x_serial_r);
+ DECLARE_READ8_MEMBER(ti86_port_0005_r);
+ DECLARE_READ8_MEMBER(ti83_port_0000_r);
+ DECLARE_READ8_MEMBER(ti8x_plus_serial_r);
+ DECLARE_WRITE8_MEMBER(ti81_port_0007_w);
+ DECLARE_WRITE8_MEMBER(ti85_port_0000_w);
+ DECLARE_WRITE8_MEMBER(ti8x_keypad_w);
+ DECLARE_WRITE8_MEMBER(ti85_port_0002_w);
+ DECLARE_WRITE8_MEMBER(ti85_port_0003_w);
+ DECLARE_WRITE8_MEMBER(ti85_port_0004_w);
+ DECLARE_WRITE8_MEMBER(ti85_port_0005_w);
+ DECLARE_WRITE8_MEMBER(ti85_port_0006_w);
+ DECLARE_WRITE8_MEMBER(ti8x_serial_w);
+ DECLARE_WRITE8_MEMBER(ti86_port_0005_w);
+ DECLARE_WRITE8_MEMBER(ti86_port_0006_w);
+ DECLARE_WRITE8_MEMBER(ti82_port_0002_w);
+ DECLARE_WRITE8_MEMBER(ti83_port_0000_w);
+ DECLARE_WRITE8_MEMBER(ti83_port_0002_w);
+ DECLARE_WRITE8_MEMBER(ti83_port_0003_w);
+ DECLARE_WRITE8_MEMBER(ti8x_plus_serial_w);
+ DECLARE_WRITE8_MEMBER(ti83p_port_0002_w);
+ DECLARE_WRITE8_MEMBER(ti83p_port_0003_w);
+ DECLARE_WRITE8_MEMBER(ti83p_port_0004_w);
+ DECLARE_WRITE8_MEMBER(ti83p_port_0006_w);
+ DECLARE_WRITE8_MEMBER(ti83p_port_0007_w);
+ DECLARE_READ8_MEMBER( ti85_port_0002_r );
+ DECLARE_READ8_MEMBER( ti85_port_0003_r );
+ DECLARE_READ8_MEMBER( ti85_port_0004_r );
+ DECLARE_READ8_MEMBER( ti85_port_0005_r );
+ DECLARE_READ8_MEMBER( ti86_port_0006_r );
+ DECLARE_READ8_MEMBER( ti82_port_0002_r );
+ DECLARE_READ8_MEMBER( ti83_port_0002_r );
+ DECLARE_READ8_MEMBER( ti83_port_0003_r );
+ DECLARE_READ8_MEMBER( ti83p_port_0002_r );
+};
+
+
+/*----------- defined in machine/ti85.c -----------*/
+
+MACHINE_START( ti81 );
+MACHINE_START( ti83p );
+MACHINE_START( ti86 );
+MACHINE_RESET( ti85 );
+
+NVRAM_HANDLER( ti83p );
+NVRAM_HANDLER( ti86 );
+
+SNAPSHOT_LOAD( ti8x );
+
+
+/*----------- defined in video/ti85.c -----------*/
+
+VIDEO_START( ti85 );
+SCREEN_UPDATE_IND16( ti85 );
+PALETTE_INIT( ti85 );
+PALETTE_INIT( ti82 );
+
+
+#endif /* TI85_H_ */