Mercurial > repos > blastem
changeset 862:a2034b8d7495
Commit of VGM header that was missed previously
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Thu, 05 Nov 2015 19:25:40 -0800 |
parents | 4e394d9a7548 |
children | b6f42044c8a7 |
files | vgm.h |
diffstat | 1 files changed, 74 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vgm.h Thu Nov 05 19:25:40 2015 -0800 @@ -0,0 +1,74 @@ +#ifndef VGM_H_ +#define VGM_H_ + +#pragma pack(push, 1) +typedef struct { + char ident[4]; + uint32_t eof_offset; + uint32_t version; + uint32_t sn76489_clk; + uint32_t ym2413_clk; + uint32_t gd3_offset; + uint32_t num_samples; + uint32_t loop_offset; + uint32_t loop_samples; + uint32_t rate; + uint16_t sn76489_fb; + uint8_t sn76489_shift; + uint8_t sn76489_flags; + uint32_t ym2612_clk; + uint32_t ym2151_clk; + uint32_t data_offset; + uint32_t sega_pcm_clk; + uint32_t sega_pcm_reg; +} vgm_header; + +enum { + CMD_PSG_STEREO = 0x4F, + CMD_PSG, + CMD_YM2413, + CMD_YM2612_0, + CMD_YM2612_1, + CMD_YM2151, + CMD_YM2203, + CMD_YM2608_0, + CMD_YM2608_1, + CMD_YM2610_0, + CMD_YM2610_1, + CMD_YM3812, + CMD_YM3526, + CMD_Y8950, + CMD_YMZ280B, + CMD_YMF262_0, + CMD_YMF262_1, + CMD_WAIT = 0x61, + CMD_WAIT_60, + CMD_WAIT_50, + CMD_END = 0x66, + CMD_DATA, + CMD_PCM_WRITE, + CMD_WAIT_SHORT = 0x70, + CMD_YM2612_DAC = 0x80, + CMD_DAC_STREAM_SETUP = 0x90, + CMD_DAC_STREAM_DATA, + CMD_DAC_STREAM_FREQ, + CMD_DAC_STREAM_START, + CMD_DAC_STREAM_STOP, + CMD_DAC_STREAM_STARTFAST, + CMD_DATA_SEEK = 0xE0 +}; + +enum { + DATA_YM2612_PCM = 0 +}; + +#pragma pack(pop) + +typedef struct { + struct data_block *next; + uint8_t *data; + uint32_t size; + uint8_t type; +} data_block; + +#endif //VGM_H_