⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 psgintf.h

📁 这个是延伸mame的在wince平台下的游戏模拟器的代码
💻 H
字号:
#ifndef PSGINTF_H
#define PSGINTF_H

#include "ay8910.h"

#define MAX_2203 4

#define YM2203interface AY8910interface

/* volume level for YM2203 */
#define YM2203_VOL(FM_VOLUME,SSG_VOLUME) (((FM_VOLUME)<<16)+(SSG_VOLUME))

int YM2203_status_port_0_r(int offset);
int YM2203_status_port_1_r(int offset);
int YM2203_status_port_2_r(int offset);
int YM2203_status_port_3_r(int offset);
int YM2203_status_port_4_r(int offset);

int YM2203_read_port_0_r(int offset);
int YM2203_read_port_1_r(int offset);
int YM2203_read_port_2_r(int offset);
int YM2203_read_port_3_r(int offset);
int YM2203_read_port_4_r(int offset);

void YM2203_control_port_0_w(int offset,int data);
void YM2203_control_port_1_w(int offset,int data);
void YM2203_control_port_2_w(int offset,int data);
void YM2203_control_port_3_w(int offset,int data);
void YM2203_control_port_4_w(int offset,int data);

void YM2203_write_port_0_w(int offset,int data);
void YM2203_write_port_1_w(int offset,int data);
void YM2203_write_port_2_w(int offset,int data);
void YM2203_write_port_3_w(int offset,int data);
void YM2203_write_port_4_w(int offset,int data);

int YM2203_sh_start(struct YM2203interface *interface);
void YM2203_sh_stop(void);
void YM2203_sh_update(void);

void YM2203UpdateRequest(int chip);

/*-------------------- YM2608 -------------------- */
#define YM2608interface AY8910interface

int YM2608_address0_0_r(int offset); /* OPN Status port */
int YM2608_address0_1_r(int offset);
int YM2608_address1_0_r(int offset); /* SSG Read port   */
int YM2608_address1_1_r(int offset);
int YM2608_address2_0_r(int offset); /* OPNA Status port */
int YM2608_address2_1_r(int offset);
int YM2608_address3_0_r(int offset); /* unknown          */
int YM2608_address3_1_r(int offset);

void YM2608_address0_0_w(int offset,int data); /* Register port0 */
void YM2608_address0_1_w(int offset,int data);
void YM2608_address1_0_w(int offset,int data); /* data port 0    */
void YM2608_address1_1_w(int offset,int data);
void YM2608_address2_0_w(int offset,int data); /* Register port1 */
void YM2608_address2_1_w(int offset,int data);
void YM2608_address3_0_w(int offset,int data); /* data port 1    */
void YM2608_address3_1_w(int offset,int data);

int  YM2608_sh_start(struct YM2608interface *interface);
void YM2608_sh_stop(void);
void YM2608_sh_update(void);

/*-------------------- YM2612 -------------------- */
#define YM2612interface AY8910interface

int YM2612_address0_0_r(int offset); /* OPN Status port */
int YM2612_address0_1_r(int offset);
int YM2612_address1_0_r(int offset); /* SSG Read port   */
int YM2612_address1_1_r(int offset);
int YM2612_address2_0_r(int offset); /* OPNA Status port */
int YM2612_address2_1_r(int offset);
int YM2612_address3_0_r(int offset); /* unknown          */
int YM2612_address3_1_r(int offset);

void YM2612_address0_0_w(int offset,int data); /* Register port0 */
void YM2612_address0_1_w(int offset,int data);
void YM2612_address1_0_w(int offset,int data); /* data port 0    */
void YM2612_address1_1_w(int offset,int data);
void YM2612_address2_0_w(int offset,int data); /* Register port1 */
void YM2612_address2_1_w(int offset,int data);
void YM2612_address3_0_w(int offset,int data); /* data port 1    */
void YM2612_address3_1_w(int offset,int data);

int  YM2612_sh_start(struct YM2612interface *interface);
void YM2612_sh_stop(void);
void YM2612_sh_update(void);

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -