12005-12-18  Russell Marks  <russell.marks@ntlworld.com>
2
3	* Version 0.5.
4
5	* sound.c (sound_start_fade): remembered why fadetime was declared
6	as static - it was a different variable. As such, version 0.4 got
7	released with a zero fade-out time. :-( Fixed again by renaming
8	sound.c's fadetime to sfadetime, which should hopefully avoid
9	future confusion...
10
112005-07-14  Russell Marks  <russell.marks@ntlworld.com>
12
13	* Version 0.4.
14
15	* sound.c: `fadetime' was declared as static when it shouldn't
16	have been. Thanks to Daniel Baumann for pointing this out.
17
182004-05-15  Russell Marks  <russell.marks@ntlworld.com>
19
20	* main.c (action_callback): fixed unhelpful interactive
21	stop-after-setting behaviour when started with stop-after set to
22	something not a multiple of 30 seconds; now the first interactive
23	change will set it to the nearest multiple in the specified
24	direction. Thanks to Bartlomiej Ochman for this.
25
262004-05-01  Russell Marks  <russell.marks@ntlworld.com>
27
28	* main.c: added `-t' option, to play only a given track (actually
29	slightly different, see the man page). Thanks to Bartlomiej Ochman
30	for this.
31
322004-03-26  Russell Marks  <russell.marks@ntlworld.com>
33
34	* Added 16-bit support. Now defaults to this when possible. New
35	option `-e' forces 8-bit playback (even that is improved, due to
36	the 16-bit mixing now done). Thanks to Stuart Brady for inspiring
37	this change.
38
392003-11-30  Russell Marks  <russell.marks@ntlworld.com>
40
41	* aylet.1: fixed typo.
42
432003-11-27  Russell Marks  <russell.marks@ntlworld.com>
44
45	* ui.c (ui_frame): fixed minor bug when checking value of KEY_DC
46	at compile time. Unlikely to affect anything in practice.
47
482002-09-14  Russell Marks  <russell.marks@ntlworld.com>
49
50	* Version 0.3.
51
52	* main.c (out): added partial port-bitmask to allow for certain
53	less-than-ideal .ay conversions. (This is only done when the low
54	byte is FDh, and even then doesn't disable CPC autodetect, so it
55	shouldn't break CPC tunes.) Thanks to V�t Hot�rek for reporting
56	the files that (previously) didn't work.
57
582002-06-24  Russell Marks  <russell.marks@ntlworld.com>
59
60	* z80.c (z80loop): fixed silly typo which meant that L and L'
61	weren't set correctly when starting up the Z80. (Though curiously,
62	this bug didn't seem to break any .ay files.) Thanks to Patrik Rak
63	for spotting this.
64
652002-05-25  Russell Marks  <russell.marks@ntlworld.com>
66
67	* sound.c (sound_frame): previously, when a track stopped and
68	happened to do so leaving high/low level `silence' (e.g. a few AY
69	tracks, and all beeper tracks after the recent beeper-fade
70	removal), if this change happened during a fade the fading level
71	would screw up the silence detection and give (with default
72	settings) up to ten seconds of extra `silence'. Fixed that by
73	detecting silence before fade filter is applied, and overriding
74	the not-silent result if the track has been completely faded out.
75
762002-05-05  Russell Marks  <russell.marks@ntlworld.com>
77
78	* sound.c (sound_frame): removed beeper fading, which wasn't
79	actually necessary and was causing problems with some tracks, most
80	noticeably in Trantor. The rest position is still central for
81	AY-only and CPC tracks, though, so the change shouldn't affect
82	those.
83
84	* uigtk.c (DO_TBL_RIGHT): long file details (e.g. track name) no
85	longer expand the window to fit, but are clipped. You can still
86	manually resize the window to see the rest of the text, if you
87	like.
88
892002-03-16  Russell Marks  <russell.marks@ntlworld.com>
90
91	* sound.c (sound_ay_overlay): now emulates tone counters at all
92	times, rather than just doing it when producing a tone and
93	attempting to compensate later. I'm not sure if this makes any
94	practical difference, but it's a more accurate emulation.
95
962002-02-26  Russell Marks  <russell.marks@ntlworld.com>
97
98	* aylet.1: added explanation of what ACB/ABC actually mean, rather
99	than just pulling the terminology out of thin air. :-)
100
1012001-12-21  Russell Marks  <russell.marks@ntlworld.com>
102
103	* sound.c (sound_ay_init): finally added decent AY levels. Thanks
104	to Matthew Westcott for the measurements these were based on. The
105	change from the previous values isn't all that big to be honest,
106	but we should at least get a faithful `blip' now. :-)
107
1082001-12-11  Russell Marks  <russell.marks@ntlworld.com>
109
110	* Version 0.2.
111
112	* sound.c (sound_ay_init): the calculated AY volume levels used
113	previously were wrong, even though they were based on the levels
114	claimed by official documentation. (!) The new precalculated
115	levels should be a lot more accurate, but don't yet reproduce a
116	curious `blip' in the AY DACs. (I may use values as measured from
117	a speccy in future, in order to do this.)
118
1192001-11-13  Russell Marks  <russell.marks@ntlworld.com>
120
121	* drv-oss.c: the OSS driver has now moved here.
122
123	* drv-obsd.c: OpenBSD sound driver. Thanks to Chris Cox for this,
124	and separating out the OSS code.
125
1262001-11-11  Russell Marks  <russell.marks@ntlworld.com>
127
128	* main.c (out): whoops, no *additional* t-states for OUT... this
129	explains why some beeper tunes with very tight loops over OUT
130	instructions (e.g. Heavy on the Magick) were slow before.
131	(out): ok, we need to disable CPC detection when *any* speccy port
132	is written to.
133
134	* sound.c (sound_ay_overlay): fixed a strange clicking problem;
135	this was probably most noticeable in Defenders of the Earth,
136	especially the drum solo bit, but there were several other cases.
137	I've been struggling with this one for maybe a week now (bleah),
138	but I think I've finally got it. :-)
139	(sound_ay_overlay): ok, that fix wasn't quite right; changed
140	tone_tick workings so it should work properly now.
141
1422001-11-09  Russell Marks  <russell.marks@ntlworld.com>
143
144	* sound.c (sound_ay_overlay): fix for high-frequency noise.
145
1462001-11-04  Russell Marks  <russell.marks@ntlworld.com>
147
148	* sound.c (sound_ay_overlay): rewrote envelope emulation, the
149	old one couldn't be made to cope with high-speed envelopes (as
150	used in some demos, e.g. Binary Love track 2). Also fixes
151	accidental (?) zero-period envelope use with FFh volume (e.g.
152	Afterburner).
153
1542001-11-03  Russell Marks  <russell.marks@ntlworld.com>
155
156	* Changed field label from "Title" to "Misc" throughout. Some
157	files use it for Title, some Copyright, some both. So "Misc" is
158	about the only reasonable label.
159
160	* main.c (out): added support for CPC tunes. Unfortunately these
161	have to be auto-detected (!) so it starts off emulating the usual
162	cut-down speccy, then switches to a cut-down CPC if those ports
163	are used, slowing down the AY and speeding up the Z80. Also, if
164	the (speccy) beeper is used (which could theoretically clash with
165	the CPC stuff) and it's not in the CPC mode, the CPC ports are
166	disabled for the current track.
167
1682001-10-25  Russell Marks  <russell.marks@ntlworld.com>
169
170	* sound.c: beeper tones were *also* upside-down, not just AY -
171	fixed.
172
173	* aylet.1: again, it's 44.1kHz, not 44 (see below).
174
175	* main.c (usage_help): oops... `-s' outputs a stereo sample by
176	default, not mono. Also, it's 44.1kHz not 44.
177
1782001-10-21  Russell Marks  <russell.marks@ntlworld.com>
179
180	* Version 0.1.
181
182	* sound.c (sound_frame): correctly detect silences at a non-zero
183	level - some .ay files have tracks which end like this, most
184	likely due to the original author's misunderstanding/ignoring an
185	AY chip oddity (the whole `turning the channel tone and noise off
186	in the mixer doesn't disable it, you have to zero the volume'
187	thing). Understandable, really, it's not an *audible* problem...
188
1892001-10-17  Russell Marks  <russell.marks@ntlworld.com>
190
191	* sound.c: tweaked beeper/AY volume balance. I decided not to make
192	the beeper the same volume as all 3 AY channels together, it was
193	just annoyingly loud like that. But I did try to give beeper and
194	AY tunes more comparable levels, so the beeper is a bit louder
195	now. Agent X 2 still sounds odd, but I think I may just have to
196	add an option for the proper balance at some point, because it'd
197	be a crazy default for a player given how loud the beeper really
198	is.
199	(sound_ay_overlay): fixed behaviour when neither tone nor noise is
200	selected on a channel, meaning that e.g. Chase HQ's samples work.
201	(sound_ay_overlay): AY tones were upside-down :-), fixed.
202
2032001-10-16  Russell Marks  <russell.marks@ntlworld.com>
204
205	* sound.c: added `-N' option for narrower AY channel stereo
206	positioning.
207	(sound_beeper): fix for slight spikes on ordinary beeper tones.
208
2092001-10-15  Russell Marks  <russell.marks@ntlworld.com>
210
211	* sound.c: improved ACB stereo, and made it the default. (Use `-m'
212	to force mono playback.) Also added a pseudo-stereo option for the
213	beeper sound; not enabled by default (use `-S') as it can make
214	things sound a bit shaky and rough in some cases.
215
216	* main.c: default stopafter reduced from 5 minutes to 3. I think
217	this is probably a decent default, even if it is too short for
218	some things (e.g. Agent X 2).
219
220	* sound.c (sound_ay_overlay): removed tone/noise counter
221	wraparound (inherited from z81), which wasn't necessary and
222	screwed up (e.g.) Marauder and Cybernoid 2.
223
2242001-10-14  Russell Marks  <russell.marks@ntlworld.com>
225
226	* main.c: added `-s', a play-to-stdout option.
227	(do_interrupt): fixed bug in non-UI mode, where it could have been
228	left on a non-existent file.
229	(do_list): added `-l', to list the contents of files rather than
230	playing them.
231
232	* ui.c (ui_frame): fixed backspace/del, which I'd managed to
233	break.
234
2352001-10-13  Russell Marks  <russell.marks@ntlworld.com>
236
237	* main.c (do_interrupt): now returns to first file/track (rather
238	than sticking on the last one) as well as stopping when it's got
239	no more to play.
240
241	* ui.c: added non-UI `UI'. :-) It's a bit like using mpg123. If
242	you press ^C (well, send SIGINT) in the first half-second of a
243	track the program exits, otherwise it starts the next track.
244
245	* main.c (action_callback): prev/next track now cross files.
246
247	* uigtk.c: a GTK+ UI. Probably matches the curses one a bit too
248	closely, making things like tweaking stopafter/fadetime rather
249	clunky, but I think it'll do for now.
250
2512001-10-10  Russell Marks  <russell.marks@ntlworld.com>
252
253	* sound.c (sound_ay_overlay): whoops, get that frequency right -
254	not on a ZX81 any more... :-)
255
256	* main.c (mainloop): now supports prev/next file. Pretty hairy,
257	but it's working. The playlist comes from the command-line at the
258	moment; that behaviour's probably going to stick, but I might add
259	an alternative way of specifying a playlist eventually.
260
2612001-10-09  Russell Marks  <russell.marks@ntlworld.com>
262
263	* sound.c (sound_ay_reset): fixed, previously didn't always reset
264	due to possible non-zero tstates when calling.
265
266	* First essentially working version, based on nc100em and z81.
267	(z81's sound emulation being based on the one I wrote for Fuse.)
268