OSDN Git Service

[VM][FMTOWNS][MEMORY] Fix setup around memory banks by I/O 0404h and 0480h.
[csp-qt/common_source_project-fm7.git] / source / src / vm / msx / scc.h
index 9b43f06..f282af0 100644 (file)
@@ -23,6 +23,8 @@
 
 #define SCC_MASK_CH(x) (1<<(x))
 
+namespace MSX {
+       
 typedef struct __SCC {
 
   uint32_t clk, rate ,base_incr, quality ;
@@ -81,26 +83,24 @@ private:
        EMU2212 *emu2212;
        int volume_l, volume_r;
        void save_load_state(FILEIO* state_fio, bool is_save);
-       void decl_state_scc();
        
 public:
-       SCC(VM_TEMPLATE* parent_vm, EMU* parent_emu);
+       SCC(VM_TEMPLATE* parent_vm, EMU_TEMPLATE* parent_emu);
        ~SCC() {}
        
        // common functions
-       void write_data8(uint32_t addr, uint32_t data);
-       uint32_t read_data8(uint32_t addr);
+       void __FASTCALL write_data8(uint32_t addr, uint32_t data);
+       uint32_t __FASTCALL read_data8(uint32_t addr);
        void initialize();
        void release();
        void reset();
-       void mix(int32_t* buffer, int cnt);
+       void __FASTCALL mix(int32_t* buffer, int cnt);
        void set_volume(int ch, int decibel_l, int decibel_r);
-       void decl_state();
-       void save_state(FILEIO* state_fio);
-       bool load_state(FILEIO* state_fio);
+       bool process_state(FILEIO* state_fio, bool loading);
        
        // unique functions
        void initialize_sound(int rate, int clock, int samples);
 };
 
+}
 #endif