1999-04-28  Masanao Izumo <mo@goice.co.jp>

    * Version 2.0.2 released.

1999-04-28  Masanao Izumo <mo@goice.co.jp>

    * README, README.jp, INSTALL, INSTALL.jp: Update

1999-04-27  Masanao Izumo <mo@goice.co.jp>

    * configure.in(*-sgi-irix6.2): Define SGI_OLDAL.
    * timidity/{sndfont.c,sun_a.cwrd_read.c,timidity.c},
      interface/{motif_i.c,x_sherry.c}: Remove c++ comment style "//"

1999-04-26  Masanao Izumo <mo@goice.co.jp>

    * timidity/audriv_a.c: Bug fix.

1999-04-18  Eric A. Welsh <ewelsh@gpc.ibc.wustl.edu>

    * interface/ncurs_c.c (lastbends, ctl_pitch_bend): Bug fix.

1999-04-25  Masanao Izumo <mo@goice.co.jp>

    * Version 2.0.1 released.

1999-04-24  Masanao Izumo <mo@goice.co.jp>

    * configure.in (--enable-dynamic): Bug fix.

1999-04-23  Masanao Izumo <mo@goice.co.jp>

    * interface/server_c.c (cmd_timebase): Bug fix.
    * interface/server_c.c (TMR_TEMPO): Ignore. (What is TMR_TEMPO ?)

1999-04-21  Masanao Izumo <mo@goice.co.jp>

    * configure.in (HAVE_XMUREGISTEREXTERNALAGENT): Test for
      XmuRegisterExternalAgent()
    * configure.in (HAVE_X11_XMU_EXTAGENT_H): Test for <X11/Xmu/ExtAgent.h>
    * interface/xaw_redef.c: Don't use if XmuRegisterExternalAgent is
      not undefined.
    * xaw_i.c: Fix bug about directory browsing.
    * timidity/timidity.c (read_config_file): Avoid compiler warnings.
      timidity/aq.c (do_effect): Likewise.

1999-04-19  Eric A. Welsh <ewelsh@gpc.ibc.wustl.edu>

    * timidity/playmidi.c (play_midi_file): Reset the voice reduction
      variables at the beginning of each midi.

1999-04-18  Masanao Izumo <mo@goice.co.jp>

    * common.makefile interface/Makefile.am doc/Makefile.am:
      Use variable `SUFFIXES', not target `.SUFFIXES' (for automake 1.4)
    * timidity/resample.c (pre_resample): Fixed interger overflow bug.
    * timidity/recache.c (resamp_cache_refer_off): Likewise.

1999-04-17  Masanao Izumo <mo@goice.co.jp>

    * Version 2.0.0 released.

1999-04-17  Masanao Izumo <mo@goice.co.jp>

    * timidity/playmidi.c: Fix portamento controls.

1999-04-16  Masanao Izumo <mo@goice.co.jp>

    * interface/{xaw_c.c,xaw_i.c}: Clean up unused variable.
    * timidity/w32_a.c (output_data): -B 8 in minimum.
    * configure.in: New configure option --enable-esd to configure EsounD
       output.  EsounD is not enabled by default.

1999-04-15  Masanao Izumo <mo@goice.co.jp>

    * timidity/linux_a.c (output_data): Error is ignored.
    * interface/server_c.c timidity/playmidi.c: Re-write the code to play
      streamed MIDI.
    * timidity/playmidi.c: Fixed voice reduction.

1999-04-14  Eric A. Welsh <ewelsh@gpc.ibc.wustl.edu>

    * timidity/playmidi.c (new_chorus_voice): Chose 42 as the maximum
      chorus cutoff level.

1999-04-13  Eric A. Welsh <ewelsh@gpc.ibc.wustl.edu>

    * timidity/w32_a.c timidity/timpp32g.ini interface/w32g_main.c:
      Change default output rate to 33075.
      This rate is supported by most soundcards.
    * timidity/timidity.c (timidity_start_initialize): The first random
      number generated by the generator is often the same number. So
      call it once before using it for any real random numbers.

1999-04-12  Masanao Izumo <mo@goice.co.jp>

    * timidity/aq.c (aq_set_dev_queuesize, max_device_qsize): Obsolete.
    * interface/srever_c.c timidity/playmidi.c timidity/playmidi.h: Change
      some variables, function names, and the implementations.
    * interface/srever_c.c (do_timing): Fix bug.
    * interface/srever_c.c (ctl_pass_playing_list): data-port argument is
      optional.  The port number would be decided by socket driver.

1999-04-14  Eric A. Welsh <ewelsh@gpc.ibc.wustl.edu>

    * timidity/playmidi.c: Improve voice reduction algorithm.

1999-04-11  Eric A. Welsh <ewelsh@gpc.ibc.wustl.edu>

    * interface/ncurs_c.c: Use __W32__ instead of __WIN32__.
    * timidity/sndfont.c timidity/mac_qt_a.c: Remove obsoleted macro __WIN32__.

1999-04-11  Masanao Izumo <mo@goice.co.jp>

    * libarc/url.c (url_close): Don't access free memory.
    * timidity/timidity.c timidity/instrum.c interface/ncurs_c.c:
      Add new feature of soundfont assignment.  New syntax of *.cfg:
      # Syntax:
      # For drumset
      # <keynote> %font <soundfont> 128 <preset> <keynote> [options]
      # For melodic instrument
      # <prog> %font <soundfont> <bank> <preset> [keynote] [options]
      # Note that bank 128 is used for drumset patch in soundfont file.
      #
      # The prefix name "%font" is special to load the patch from
      # soundfont.
      # For example.
      bank 0
      24 %font /usr/local/lib/timidity/sfbank/Nylon_Guita_1.sf2 0 0
    * timidity/linux_a.c (AFMT_S16_NE): Define AFMT_S16_NE if it is not
      defined.
    * timidity/playmidi.c (recompute_freq): Modulation wheel rate was depended
      on vibrato rate in v2 beta-4 and beta-5.  But this dependance causes bad
      detuned note if vibrato rate is slow.  So the dependance is disabled.

1999-04-10  Masanao Izumo <mo@goice.co.jp>

    * interface/server_c.c:  Support interactive mode (non TMR_START mode).
    * timidity/linux_a.c: Define AFMT_S16_NE if it is not defined.
    * timidity/playmidi.c (play_event, play_midi):  Move function call of
      play_mode->acntl(PM_REQ_MIDI) into play_event().

1999-04-09  Albert K T Hui <avatar@deva.net>

    * acinclude.m4, configure.in, timidity/esd_a.c, timidity/output.c:
      Added EsounD output mode (-Oe)

1999-04-07  Masanao Izumo <mo@goice.co.jp>

    * configure.in: The test for <ncurses/curses.h> is failure on Plamo Linux
    1.3/ncurses 1.9.9e in spite of existance of /usr/include/ncurses/curses.h:
    /usr/include/ncurses/curses.h:34: unctrl.h: No such file or directory
    But surely there is unctl.h at /usr/include/ncurses/unctrl.h.
    So I added -I/usr/include/ncurses option to CPPFLAG.

1999-04-07  Masanao Izumo <mo@goice.co.jp>

    * timidity/w32_a.c (acntl):  Support PM_REQ_GETQSIZ request.

1999-04-07  Takaya Nogami <t-nogami@happy.email.ne.jp>

    * timidity/mac_qt_a.c: Function play_midi() renamed to do_event().

1999-04-07  Masanao Izumo <mo@goice.co.jp>

    * ChangeLog: Change this format.

ChangeLog for beta series.
-- beta 5  ('>' prefix for 1.3.8 changes)
Major new features:
    - Supported to play streamed MIDI in realtime.  The stream format is
      same as OSS /dev/sequencer format.  TiMidity read the MIDI events
      via TCP/IP.  See the protocol in the source code
      (interface/server_c.c).
    - Portamento control time is completely adjusted.
    - Expanded playlist files (.m3u, .pls, and .asx).
   

Date: Tue Apr 6 1999
From: Masanao Izumo <mo@goice.co.jp>
Files: timidity/common.c
    Modified expand_file_lists() implementation.

>Date: Sun, 4 Apr 1999 18:14:43 +1000 (EST)
>From: David Gibson <david@gibson.dropbear.id.au>
>Files: timidity/linux_a.c
>    The two bugs are both in the linux audio driver. Firstly, the driver opens
>    /dev/dsp for both reading and writing, where only writing is necessary.
>    Secondly, the code uses hard coded constants 8 and 16 to set the output
>    format on /dev/dsp. This fails on big-endian machines such as the PowerPC.
>    This patch makes the code use constants #defined by glibc.

Date: Sun Apr  4 21:05:37 JST 1999
From: Masanao Izumo <mo@goice.co.jp>
Files: timidity/playmidi.c timidity/readmidi/c timidity/mac_qt_a.c
    Changed ME_PORTAMENTO_TIME to ME_PORTAMENTO_TIME_MSB and
    ME_PORTAMENTO_TIME_LSB.
    Passed the original value of MIDI control to the player.
Files: timidity/nas_a.c
    Enabled to synchronize NAS output tracing.
>Files: interface/x_wrdwindow.c
>   Fixed to change undefined color code to default color (white).

>Date: Sat, 03 Apr 1999 22:07:45 +0900 (JST)
>From: Yoshishige ARAI <ryo2@on.rim.or.jp>
>Files: interface/xaw_i.c doc/C/README.xaw doc/ja_JP.ujis/README.xaw
>    Fixed XAW bug.
>    Chnaged some discriptions for XAW document.

Date: Sat, 3 Apr 1999 19:33:28 +1000 (EST)
From: ggt@netspace.net.au (Glenn Trigg)
Files: interface/gtk_i.c
    The ability to load and save play-lists. It uses the TIMIDITY_PLAYLIST_DIR
    environment variable as a default playlist directory where playlist files
    are saved to and load from. If that variable doesn't exist it just uses
    the current directory. A playlist file is simply a text file which has
    a list of midi filenames.
    A menu item which lets you clear the list of loaded midi files.
    I also changed a bunch of printf's in this file to g_warning's which
    removed the dependancy on stdio.h.

Date: Sat Apr 3 1999
From: Masanao Izumo <mo@goice.co.jp>
Files: interface/server_c.c timidity/playmidi.h timidity/playmidi.c
	timidity/readmidi/c timidity/readmidi.h
    Added TiMidity server interface which is invoked -ir.  And defined some
    new functions.

Date: Wed, 31 Mar 1999 11:47:27 +0900
From KINOSHITA, K.   <kino@krhm.jvc-victor.co.jp>
Files: timidity/mac_qt_a.c
    Changed to the newest Macintosh QuickTime audio driver code.
    (Ported to beta5 by Masanao Izumo)

Date: Wed Mar 31 1999
From: Masanao Izumo <mo@goice.co.jp>
Files: timidity/aq.c timidity/playmidi.c
    Fixed bug of aq_flush().
>Files: timidity/playmidi.c
>    Fixed bug of drumpart recognization.
>Files: interface/ncurs_c.c
>    Fixed bug about buffer over-running of comment_indicator_buffer.

From: Takaya Nogami <t-nogami@happy.email.ne.jp>
Date: Sat, 27 Mar 1999 10:38:11 +0900
Files: timidity/wrd_read.c interface/VTPrsTbl.c timidity/output.c
    Fixed last screen updating for Sherry WRD.
>    Enabled clear screen with @esc(2j) command for MIMPI WRD.
>    Included <string.h> from output.c
Files: libarc/arc_lzh.c libarc/url_dir.c timidity/common.c utils/timer.c
    Patched for Macintosh.
	- Fixed to compile arc_lzh.c and url_dir.c
	- Enabled to read archive files.
	- Implemented get_current_calender_time().

Date: Fri Mar 26 1999
From: Masanao Izumo <mo@goice.co.jp>
    Imported macinotsh sources from the 1999.3.13 of T.Nogami released

Date: Fri Mar 26 1999
From: Masanao Izumo <mo@goice.co.jp>
Files: timidity/playmidi.c timidity/tables.c
    Almost completely adjusted portamento rate.
Files: configure.in interface/Makefile.am
    Changed configure implementations.  Defined INTERFACE_SRCS macro to
    specify TiMidity interface sources.

Date: Thu, 25 Mar 1999 23:41:46 -0600 (CST)
From: "Eric A. Welsh" <ewelsh@gpc.ibc.wustl.edu>
Files: interface/ncurs_c.c
      Changed the 'p' command to restart the current song if looping
    is disable and the current song is the 1st song in the playlist.
Files: timidity/common.c
      Created a expand_names_lists() function in common.c which is used to
    support the use of playlist files.  It checks for the extentions of
    .m3u, .pls, and .asx (extensions supported by WinAMP) to indicate a
    playlist file.  It then reads the files and inserts the file names
    inside the files in to the timidity playlist.  I also let it use any
    file "foo" if it is preceeded by an '@' on the command line arguments.
    `timidity @foo` would use the file "foo" as a playlist file.  This is
    syntax left over from some old MS-DOS system commands that I am used
    to using.

-- beta 4
Date: Wed Mar 24 1999
From: Masanao Izumo <mo@goice.co.jp>
Files: timidity/nas_a.c
    Removed PF_CAN_TRACE flag from NAS PlayMode because NAS can't trace
    playing correctly.
    Fixed NAS encoding to PE_16BIT|PE_SIGNED.

Files: interface/w32*
    In Windows GUI interface, added dialog to setup some option parameters.
Files: configure.in
    Based on autoconf-2.13 and automake-1.4.
    --with-x option is `yes' by default.

Date: Fri Mar 23 1999
From: Masanao Izumo <mo@goice.co.jp>
Files: interface/xaw_i.c interface/xaw_redef.c
    Implemeted re-definition for -lXaw(3d)'s vendorShellWidgetClass
    if Motif interface was linked.

Date: Fri Mar 19 1999
From: Masanao Izumo <mo@goice.co.jp>
Files: timidity/playmidi.c
    Changed calcration parameter of audio reduction for small audio buffer.
Files: interface/ncurs_c.c
    Changed the place of audio queue displaying.

Date: 17 Mar 1999 22:26:32 -0000
From: Michael Haardt <michael@moria.de>
Files: timidity/nas_a.c
    Added audio interface for NAS (Network Audio Sound)

Date: Wed Mar 17 1999
From: Masanao Izumo <mo@goice.co.jp>
Files: timidity/tables.c
    Changed some parameters or implementations:
	- Volume table for GS and XG
	- Modulation wheel rate
	- midi_time_table[]: changes portamento speed and NRPN vibrato delay.
	- Time of aq.c:aq_wait_ticks()

Date: Sat Mar 13 1999
From: Masanao Izumo <mo@goice.co.jp>
Files: timidity/common.c
    Fixed bug about reading WRD MIDI archive via http.

Date: Sat, 13 Mar 1999 15:49:35 +0900
From: Takaya Nogami <t-nogami@happy.email.ne.jp>
Files: interface/x_sherry.c timidity/wrd_read.c
    Fixed bug about Sherry WRD.

-- beta 3
Date: Fri Mar 12 1999
From: Masanao Izumo <mo@goice.co.jp>
Files: interface/{w32g.h,w32g_btn.bmp,w32g_c.c,w32g_c.h,w32g_icon.ico,
	w32g_ini.c,w32g_main.c,w32g_main.h,w32g_res.h,w32g_res.rc,w32g_res.res
	w32g_sleep.bmp,w32g_subbtn.bmp,w32g_utl.c,w32g_utl.h,Makefile.am}
	timidity/{timidity.c,timpp32g.ini,Makefile.am}
	configure.in
    Ported Windows32 GUI from
    http://www2.off.ne.jp/~dai/timidity/files/izumo/timw32gz1c-src.lzh
Files: utils/{support.c,support.h}
    In Windows, modified sleep() and usleep() implementation.
Files: interface/{xaw.h,xaw_c.c,xaw_i.c}
    In XAW interface, modified about implementation for velocity bar updating.
Files: interface/{dumb_c.c,dynamic_c.c,emacs_c.c,gtk_c.c,mac_c.c,motif_c.c
	ncurs_c.c,slang_c.c,tk_c.c,vt100_c.c,w32g_c.c,xaw_c.c,xskin_c.c}
	timidity/{controls.h,playmidi.h,timidity.c}
    Added new member of `flags' to ControlMode structure.
    Added new control option.
	-i?l:	play loop (some interface ignore this option)
	-i?r:	randomize file list arguments
	-i?s:	sorting file list arguments

Thu Mar 11 1999
From: Masanao Izumo <mo@goice.co.jp>
Files: timidity/{wrdt.c,wrd_read.c,wrd.h,readmidi.h,playmidi.h}
	interface/{x_sherry.c,x_sherry.h,wrdt_dumb.c,wrdt_wcon.c,
	wrdt_mac.c,wrdt_x.c,wrdt_tty.c}
    Modified Sherry WRD implementation.

Files: timidity/sndfont.c
    Fixed bug of soundfont.

Date: Wed Mar 10 1999
From: Masanao Izumo <mo@goice.co.jp>
Files: timidity/timidity.c
    Changed signal handling.

Date: Tue, 09 Mar 1999 15:36:44 +0900
From: "KINOSHITA, K." <kino@krhm.jvc-victor.co.jp>
Files: timidity/playmidi.h timidity/readmidi.c
    Added follows MIDI Events (Not play yet. Reading only)
	BREATH, FOOT, BALANCE, SOSTENUTO, SOFT PEDAL,
	TREMOLO EFFECT, CELESTE EFFECT, PHASER EFFECT

Date: Tue, 09 Mar 1999 12:25:11 +0900
From: takawata@shidahara1.planet.sci.kobe-u.ac.jp
Files: configure.in
    Pached for OffiX.

Date: Tue Mar 9 1999
From: Masanao Izumo <mo@goice.co.jp>
Files: interface/x_sherry.c
    Optimized for Sherry WRD on TrueColor visual.

-- beta 2
Date: Mon Mar 8 1999
From: Masanao Izumo <mo@goice.co.jp>
Files: interface/x_sherry.c
    Handled Expose event to redraw the window.
    Optimized for SHM implementation.

Date: Sat Mar 6 1999
From: Masanao Izumo <mo@goice.co.jp>
Files: timidity/{timidity.c,output.c,aq.c,effect.c}
    Added effect.c to implement generic effecters.
    Move the noise shaping filter to effect.c from output.c.
    Obsoleted -n option.  Use -EFns=? instead of -n?.
Files: timidity/wave_a.c
    Fixed bugs.

Date: Tue, 2 Mar 1999 22:08:00 +0900
From: Takaya Nogami <t-nogami@happy.email.ne.jp>
Files: interface/x_sherry.c timidity/linux_a.c
    Fixed bugs.


The implementation notes.
================================
  * timidity/timpp32g.ini
    Sample Ini file for Windows32 GUI

  * common.[ch]
    Added new function:
      randomize_string_list() is used to randomize string array.
      pathcasecmp() is used to compare the path.
      sort_pathname() is used to sort the path.

  * ControlMode:
    Added new member:
      flags:
	#define CTLF_LIST_LOOP		(1u<<0)	/* -i?l */
	#define CTLF_LIST_RANDOM	(1u<<1)	/* -i?r */
	#define CTLF_LIST_SORT		(1u<<2)	/* -i?s */
      This flags are used to tell the user preference to interface.
      Some interfaces (such as XAW) ignore this flags because they
      have own user preference interface.

  * WRDTracer
    Added new member function sherry() to trace Sherry WRD.

  * output.h, output.c
    Obsoleted member functions of PlayMode:
      flush_output()
      purge_output()
      current_samples()
      play_loop()
    New member function of PlayMode:
      acntl() - PlayMode.acntl() performs a variety of control functions for
      PlayMode.
    Changed member function of PlayMode:
      OLD: void (*output_data)(int32 *buf, int32 count);
      NEW: int (* output_data)(char *buf, int32 bytes);
      Now, output_data takes converted audio buffer and number of bytes of it.
      output_data() must write all of `buf'. It returns -1 if error occur,
      otherwise returns zero or positive value.
    About PlayMode.flag:
      Changed the macro name PF_NEED_INSTRUMENTS to PF_PCM_STREAM.
      Added the new flags:
	PF_MIDI_EVENT		- To send MIDI event to PlayMode via acntl().
	PF_BUFF_FRAGM_OPT	- To enable to set extra_param[0] as buffer
				  fragments.
    Added new macro FILE_OUTPUT_MODE to open file for writing.
    FILE_OUTPUT_MODE is defined to
      UNIX:	O_WRONLY|O_CREAT|O_TRUNC, 0644
      Windows:	O_WRONLY|O_CREAT|O_TRUNC|O_BINARY, 0644
      Macintosh:O_WRONLY|O_CREAT|O_TRUNC
    Added new functions:
      int32 general_output_convert(int32 *buf, int32 count);
        Use to convert 32-bit audio wave to output format.
      int validate_encoding(int enc, int include_enc, int exclude_enc);
        Use to convert specified encoding to validate encoding.

  * effect.c:
    Move some effect routins into effect.c.
      Reverb effect (partial)
      Noise shaping filter	(move from output.c)
      L/R delay effect		(move from playmidi.c)

  * do_reverb_flag as opt_reverb_control = 2;
  * play_midi_file() is more simple than that of v1.

Others notes:
automake --gnu interface/Makefile takes long time. why?
NAS: incorrect trace_playing.
