-/*\r
- SHARP MZ-2500 Emulator 'EmuZ-2500'\r
-\r
- Author : Takeda.Toshiya\r
- Date : 2004.09.10 -\r
-\r
- [ MZ-1E30 (SASI) ]\r
-*/\r
-\r
-#ifndef _MZ1E30_H_\r
-#define _MZ1E30_H_\r
-\r
-#include "../vm.h"\r
-#include "../../emu.h"\r
-#include "../device.h"\r
-\r
-class FILEIO;\r
-\r
-class MZ1E30 : public DEVICE\r
-{\r
-private:\r
- // rom file\r
- uint8 *rom_buffer;\r
- uint32 rom_address, rom_size;\r
- \r
- // sasi\r
- uint8 buffer[256];\r
- int phase;\r
- int sector;\r
- int blocks;\r
- uint8 cmd[6];\r
- int cmd_ptr;\r
- int unit;\r
- int buffer_ptr;\r
- uint8 status;\r
- uint8 status_irq_drq;\r
- uint8 error;\r
- uint8 status_buf[4];\r
- int status_ptr;\r
- uint8 datareg;\r
- \r
- struct {\r
- FILEIO *fio;\r
- bool access;\r
- } drive[2];\r
- \r
- void check_cmd();\r
- void set_status(uint8 err);\r
- void set_drq(bool val);\r
- bool seek(int drv);\r
- bool flush(int drv);\r
- bool format(int drv);\r
- \r
-public:\r
- MZ1E30(VM* parent_vm, EMU* parent_emu) : DEVICE(parent_vm, parent_emu) {}\r
- ~MZ1E30() {}\r
- \r
- // common functions\r
- void initialize();\r
- void release();\r
- void write_io8(uint32 addr, uint32 data);\r
- uint32 read_io8(uint32 addr);\r
- void write_dma_io8(uint32 addr, uint32 data);\r
- uint32 read_dma_io8(uint32 addr);\r
- uint32 read_signal(int ch);\r
- void event_callback(int event_id, int err);\r
- void save_state(FILEIO* state_fio);\r
- bool load_state(FILEIO* state_fio);\r
-};\r
-\r
-#endif\r
-\r
+/*
+ SHARP MZ-2500 Emulator 'EmuZ-2500'
+
+ Author : Takeda.Toshiya
+ Date : 2004.09.10 -
+
+ [ MZ-1E30 (SASI) ]
+*/
+
+#ifndef _MZ1E30_H_
+#define _MZ1E30_H_
+
+#include "../vm.h"
+#include "../../emu.h"
+#include "../device.h"
+
+class FILEIO;
+
+class MZ1E30 : public DEVICE
+{
+private:
+ // rom file
+ uint8 *rom_buffer;
+ uint32 rom_address, rom_size;
+
+ // sasi
+ uint8 buffer[256];
+ int phase;
+ int sector;
+ int blocks;
+ uint8 cmd[6];
+ int cmd_ptr;
+ int unit;
+ int buffer_ptr;
+ uint8 status;
+ uint8 status_irq_drq;
+ uint8 error;
+ uint8 status_buf[4];
+ int status_ptr;
+ uint8 datareg;
+
+ struct {
+ FILEIO *fio;
+ bool access;
+ } drive[2];
+
+ void check_cmd();
+ void set_status(uint8 err);
+ void set_drq(bool val);
+ bool seek(int drv);
+ bool flush(int drv);
+ bool format(int drv);
+
+public:
+ MZ1E30(VM* parent_vm, EMU* parent_emu) : DEVICE(parent_vm, parent_emu) {}
+ ~MZ1E30() {}
+
+ // common functions
+ void initialize();
+ void release();
+ void write_io8(uint32 addr, uint32 data);
+ uint32 read_io8(uint32 addr);
+ void write_dma_io8(uint32 addr, uint32 data);
+ uint32 read_dma_io8(uint32 addr);
+ uint32 read_signal(int ch);
+ void event_callback(int event_id, int err);
+ void save_state(FILEIO* state_fio);
+ bool load_state(FILEIO* state_fio);
+};
+
+#endif
+