---------------------------------*-text-*--------------------------------- TiMidity -- Experimental MIDI to WAVE converter Copyright (C) 1995 Tuukka Toivonen This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -------------------------------------------------------------------------- win95 GUI port of timidity Nicolas Witczak october 1996 -------------------------------------------------------------------------- win95 port description ====================== features of windows95 version: ------------------------------ * all configurations through dialog boxes * source in standard C , should compile with any C compiler. stand alone executable * real time control for play, stop, volume ... * play list with explorer like open dialogue, multi drag&drop or command line ( great to use with Netscape or MS Explorer ) . missing features and known bugs ------------------------------- * This port won't work on win32s plateforme user (sorry for you) because of thread use. last update 16 september 1996 ----------------------------- * fixed some bugs - windows behave correctly compiled on borland c++ 4.0 - trackbar is shown correctly - protection fault corrected while playing forward (well I think so) - output and control structure completely rewritten and optimized * prevent several instances from being launched * added an option "trust win audio sample rate value" the reason : many cheap sound card can not reproduce any sample rate exactly. For instance a sound baster with a 1Mhz quartz won't reproduce 44100 Hz but 43478 Hz = 1.000.000 / (int(1.000.000 / 44100) ). The linux driver will return this exact value after an ioctl() call, but not WaveOutOpen() under windows . Checking this option off recalculate the exact value assuming a 1Mhz quartz * added a window support for output mode future plan ----------- * improve output debug window * support for win32s additionnal files ----------------- list of files I added for the win95 port * resources files + button.bmp : drawing of the buttons stop play ... + resource.h : #define directives for naming menu, controls id used both in resource editor and in C code + timidity.rc : standart resource script for menu, dialog and icon + timidity.ico : large and mini icon for the application in this file * C source files + guimain.c .h : winmain entry point (replace main function) main window creation and message map + guitimid.c .h : midi player configuration and lauching replace timidity.c file + timiddlg.c .h : dialog proc definition + win_inc.h : common include file joined here + winhelp.c .h : various generic helper function + win95_a.c : PlayMode struct redefined to conform to windows audio API + win95ctl.c .h : ControlMode struct redefined to support graphical interface under windows * build file + timid95.ide : borland build file + timid95.mak , timid95.mdp microsoft build file * binary file : timid95.exe stand alone executable * text file README.w95 : this readme modified files from unix version -------------------------------- slightely modified files from UNIX's Tuukka Toivonen implementation doesn't prevent these file to be compiled under UNIX + controls.c : added entry extern ControlMode win95_control_mode ; # ifndef DEFAULT_CONTROL_MODE # define DEFAULT_CONTROL_MODE &win95_control_mode # endif set it to default control mode + output.c : added entry extern PlayMode win95_play_mode; set it to default output mode + timidity.c fixed conflict with RC_NONE symbol both defined (with different meaning) in resource editor and in timidty programm added preprocessor statement for winmain function insersion + wave_a.c added the line #include needed for mscc symbols to define ----------------- AU_WIN95 , IA_WIN95 , __WIN32__ installation =========== Run it from anywhere , the program will complain it can't find its instrument config file : this should be fixed in configure / general menu. That's all compilation =========== This distribution contain a prebuilt executable to run on win32 intel plateforms and sources C code . To recompile it untar the entiere distribution. A makefile and specialized project file are included for borland and microsoft C .Any compiler that can also compile resources file should also work. Nicolas Witczak 5 october 1996 .