1 /* 2 * Copyright (C) 2002-2010 The DOSBox Team 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License as published by 6 * the Free Software Foundation; either version 2 of the License, or 7 * (at your option) any later version. 8 * 9 * This program is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 * GNU General Public License for more details. 13 * 14 * You should have received a copy of the GNU General Public License 15 * along with this program; if not, write to the Free Software 16 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 17 */ 18 19 /* $Id: hardware.h,v 1.17 2009-06-23 17:46:05 c2woody Exp $ */ 20 21 #ifndef DOSBOX_HARDWARE_H 22 #define DOSBOX_HARDWARE_H 23 24 #include <stdio.h> 25 26 class Section; 27 enum OPL_Mode { 28 OPL_none,OPL_cms,OPL_opl2,OPL_dualopl2,OPL_opl3 29 }; 30 #define CAPTURE_WAVE 0x01 31 #define CAPTURE_OPL 0x02 32 #define CAPTURE_MIDI 0x04 33 #define CAPTURE_IMAGE 0x08 34 #define CAPTURE_VIDEO 0x10 35 36 extern Bitu CaptureState; 37 38 void OPL_Init(Section* sec,OPL_Mode mode); 39 void CMS_Init(Section* sec); 40 void OPL_ShutDown(Section* sec); 41 void CMS_ShutDown(Section* sec); 42 43 bool SB_Get_Address(Bitu& sbaddr, Bitu& sbirq, Bitu& sbdma); 44 bool TS_Get_Address(Bitu& tsaddr, Bitu& tsirq, Bitu& tsdma); 45 46 extern Bit8u adlib_commandreg; 47 FILE * OpenCaptureFile(const char * type,const char * ext); 48 49 void CAPTURE_AddWave(Bit32u freq, Bit32u len, Bit16s * data); 50 #define CAPTURE_FLAG_DBLW 0x1 51 #define CAPTURE_FLAG_DBLH 0x2 52 void CAPTURE_AddImage(Bitu width, Bitu height, Bitu bpp, Bitu pitch, Bitu flags, float fps, Bit8u * data, Bit8u * pal); 53 void CAPTURE_AddMidi(bool sysex, Bitu len, Bit8u * data); 54 55 #endif 56