// external funcs for Sega/Mega CD\r
int mp3_get_bitrate(FILE *f, int size);\r
void mp3_start_play(FILE *f, int pos);\r
-int mp3_get_offset(void); // 0-1023\r
void mp3_update(int *buffer, int length, int stereo);\r
\r
\r
extern int (*PicoMCDcloseTray)(void);\r
extern int PicoCDBuffers;\r
\r
+// Pico/Pico.c\r
+#define XPCM_BUFFER_SIZE (320+32)\r
+typedef struct\r
+{\r
+ int pen_pos[2];\r
+ int page;\r
+ // internal\r
+ int fifo_bytes; // free bytes in FIFO\r
+ int fifo_line_bytes; // float part, << 16\r
+ int line_counter;\r
+ unsigned short r1, r12;\r
+ unsigned char xpcm_buffer[XPCM_BUFFER_SIZE+4];\r
+ unsigned char *xpcm_ptr;\r
+} picohw_state;\r
+extern picohw_state PicoPicohw;\r
+\r
// Area.c\r
typedef size_t (arearw)(void *p, size_t _size, size_t _n, void *file);\r
typedef size_t (areaeof)(void *file);\r
// cd/buffering.c\r
void PicoCDBufferInit(void);\r
void PicoCDBufferFree(void);\r
+void PicoCDBufferFlush(void);\r
\r
// cd/cd_sys.c\r
int Insert_CD(char *iso_name, int is_bin);\r