Beech Changes
=============

0.1 (Darren Izzard)
* Initial release

0.2 (Darren Izzard)
* Added version and build details to window title
* Replaced XAudio2 code in AudioServices.cpp/.h with portaudio
  (should remove the dependency on Windows 8)
* Project settings updated for link/include with portaudio
* Removed extra call to pagedROMinit.push_back() after the AMPLE
  ROM had loaded or failed. If AMPLE failed to load, this would
  have resulted in two copies of DFS or BASIC being loaded in
  separate ROM slots.

0.2.1 (Darren Izzard)
* Switched SDK versions to Windows 7 in the hope of getting rid
  of remaining Win8 dependencies.

0.2.2 (Darren Izzard)
* Explicitly link against Xinput9_1_0.lib instead of Xinput.lib

0.3 (Darren Izzard)
* Fix loading of 8K DFS ROM: Acorn DFS now works.
* Changed VIA latching so reading IRA/IRB correctly reflects any
  changes the VIA has made, e.g. timer pulses. This means Snapper
  works, among others.
* Capture PC feature implemented. Only the most recent 100,000
  instructions are stored, to prevent memory usage getting out of
  control.

0.4 (Darren Izzard)
* Fix hold/release in SAA5050 and a few other teletext rendering
  bugs.
* Fix head select in 8271, so double-sided disks work.
* All builds work on VS2026.

0.5 (Darren Izzard)
* SN76489 now uses the proper 2dB-per-step logarithmic attenuator
  instead of a linear ramp. ENVELOPE decay should sound correct.
* SN76489 noise generator steps once every two ticks, instead of
  every tick. Fixes noise sounding an octave too high.
* SN76489 noise rate 3 counts tone 2's period accurately so it stays
  correct during software such as Speech!
* Music 500/5000: One phase accumulator per channel instead of two
  independent ones. This fixes the click on modulated frequency
  changes. Thanks to hoglet on the stardot.co.uk forums for pointing
  me at a discussion on this and other issues below.
* Music 500/5000: Channel amplitude is done via an 8-bit add of logs
  with signed clamping rather than a multiply to match hardware.
* Music 500/5000: Amplitude is latched only at waveform crossings.
* Music 500/5000: Modulation follows sign bit before inversion, and
  is triggered at a waveform crossing. Inversion does not affect
  modulation on the real thing.
* Music 500/5000: Disabling a channel clears its phase accumulator.
* Music 500/5000: Overflow fix when mixing channels together.
