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