1 /* 2 * libdi - CD Audio Device Interface Library 3 * 4 * Copyright (C) 1993-2004 Ti Kan 5 * E-mail: xmcd@amb.org 6 * 7 * This program is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation; either version 2 of the License, or 10 * (at your option) any later version. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with this program; if not, write to the Free Software 19 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 20 */ 21 22 /* 23 * Panasonic/Matsushita vendor-qunie support 24 * 25 * The name "Panasonic" is a trademark of Matsushita Electric 26 * Corporation, and is used here for identification purposes only. 27 */ 28 #ifndef __VU_PANA_H__ 29 #define __VU_PANA_H__ 30 31 #ifdef VENDOR_PANASONIC 32 33 #ifndef lint 34 static char *_vu_pana_h_ident_ = "@(#)vu_pana.h 6.23 03/12/12"; 35 #endif 36 37 38 /* Panasonic/Matsushita vendor-unique commands */ 39 #define OP_VM_RDSUBQ 0xc2 /* Read subchannel */ 40 #define OP_VM_RDTOC 0xc3 /* Read TOC */ 41 #define OP_VM_PLAY 0xc5 /* Play audio */ 42 #define OP_VM_PLAYMSF 0xc7 /* Play audio MSF */ 43 #define OP_VM_PAUSE 0xcb /* Pause/Resume */ 44 45 46 /* Return data lengths */ 47 #define SZ_VM_RDSUBQ 16 /* Read subchannel data size */ 48 #define SZ_VM_RDTOC 804 /* Read TOC data size */ 49 #define SZ_VM_TOCHDR 4 /* Read TOC header data size */ 50 #define SZ_VM_TOCENT 8 /* Read TOC per-track entry size */ 51 #define SZ_VM_AUDCTL 16 /* Audio control page size */ 52 53 54 /* Mode Sense/Mode Select page code */ 55 #define PG_VM_AUDCTL 0x2e /* Audio control page */ 56 57 58 /* Public function prototypes */ 59 extern bool_t pana_playaudio(byte_t, sword32_t, sword32_t, msf_t *, msf_t *, 60 byte_t, byte_t); 61 extern bool_t pana_pause_resume(bool_t); 62 extern bool_t pana_get_playstatus(cdstat_t *); 63 extern bool_t pana_get_toc(curstat_t *); 64 extern int pana_volume(int, curstat_t *, bool_t); 65 extern bool_t pana_route(curstat_t *); 66 extern void pana_init(void); 67 68 #else 69 70 #define pana_init NULL 71 72 #endif /* VENDOR_PANASONIC */ 73 74 #endif /* __VU_PANA_H__ */ 75 76