// --------------------------------------------------------------------------------------------------
// PERSEUS SOFTWARE V2.1F RELEASE NOTES
//
// (c) 2007-2009 Microtelecom s.r.l. - Pavia di Udine, Italy
//
// Date:	24 March 2008
// --------------------------------------------------------------------------------------------------

- MEMORY BANKS WINDOW
  New functions "Sort" and "Browser" added to the memory bank menu.
  The memory menu is accessed clicking the right mouse button when the "Bank" button is selected in the
  MEM window menu bar.
  "Sort" sorts the current memory bank in ascending frequency order.
  "Browser" opens a dialog in which the memory banks can be scrolled, sorted, edited and exported to a
  text file.

  IMPORTANT NOTE: 
  Memory banks are stored in files named membankx.dat ( where x=1,2,...,6) in the same directory where 
  the software is executed.
  When installing this software version on a new directory, remember to copy the membank<x>.dat files 
  from the directory where you installed the previous software versions to the directory where you have 
  installed the new one.
  If these files are not copied in the new install directory, the software will automatically create empty
  memory bank files.
  
  
- AUTO NOTCH AND CW PEAK FILTERS
  A new Auto Notch filter and CW Peak filters have been added in the secondary spectrum window menu bar.
  The "Zoom" button has been relocated in the main spectrum window menu bar and the "AMRej" button has
  been suppressed. An "AMRej" indication will appear directly on the secondary spectrum window when this
  feature is enabled.
  The Auto Notch filter has been thought to suppress interfering CW signals when the receiver is in USB or
  LSB modes. Since this filter operates on the received signals at the IF level and before the demodulator
  it is of no practical use in AM or SAM modes (in these cases it will likely suppress the carrier of any  
  AM signal within the IF filter selectivity mask).
  The Auto Notch filter is an adaptive filter which which tries to suppress the interfering CW signal 
  automatically tracking its carrier frequency. The rate at which the interferer frequency is tracked 
  can be selected with the slider in the dialog window which opens when the Auto Notch filter is enabled.
  For CW interfering signals which are not swept in frequency operating the filter in "slow" mode 
  (slider position near or at "Slow") will produce the better interferer suppression and audio quality.
  If the CW interferer is (more or less) swept in frequency or even keyed, the Auto Notch filter slider should 
  be dragged towards the "Fast" label for the best compromise between notch depth and overall audio quality.
  The CW Peak filter is meant for improving the signal to noise ratio for CW signals and operates at the
  IF level as the Auto Notch filter does.
  The CW Peak filter is an adaptive filter which, unlike the Auto Notch filter, tries to enanche any CW
  signal which is present within the selected IF bandwidth. If more CW signals are present within the
  selected IF bandwidth, the CW Peak filter enanches the strongest one.
  The ability to track different keyed CW signals can be adjusted with the slider contained in the dialog
  which opens when the CW Peak filter is enabled. Setting the slider to "Slow" will produce better noise
  suppression when there is just one CW signal in the selected IF bandwidth. Adjusting the slider towards
  the "Fast" position allows the CW Peak filter to quickly settle to the strongest signal at a given instant.

- DRM AUTOMATIC GAIN CONTROL
  The Automatic Gain Control has been modified to allow a better performance when the software is placed in 
  DRM mode and an external DRM decoder like Dream is used.
  When in DRM mode the "Fast" and the "Med" AGC options are disabled and only the "Slow" or "Off" AGC buttons
  can be activated.
  The "Off" option has been left enabled for test purposes only and might be suppressed in future software 
  versions.


- NEW DDC CORE FOR LINRAD/MAP65-IQ SUPPORT
  A new digital down converter working with an output sample rate of 2/21 MSPS (95.23809... KSPS) has been
  added to the distributed software in order to support Leif Asbrink's (SM5BSZ) Linrad and Joe Taylor's (K1JT)
  MAP65-IQ software for EME digital modes. 
  The new core is named perseus95k24v31.sbs.
  Besides the required output sample rate, this DDC provides a flat in band response with a ripple not
  greater than 0.03 dB and an alias images rejection greater than 125 dB in a 88 kHz bandwdith.
  Please follow the installation instructions provided in the upcoming Linrad versions for more.
  (Thanks to Joe and Leif for the precious suggestions which made easier for me to develop this new DDC. 
   Nico, IV3NWV)


- BUG FIXES

  - VCom: Reversed the Fm/To addresses in the EchoCmd(...) function as this prevented some third party software
    to work as required.


Enjoy this new version,

The Microtelecom team.


// --------------------------------------------------------------------------------------------------
// PERSEUS SOFTWARE V2.1c RELEASE NOTES
//
// (c) 2007, 2008 Microtelecom s.r.l. - Pavia di Udine, Italy
//
// Date:	23 December 2008
// --------------------------------------------------------------------------------------------------

- MEM WINDOW
  A new button (Bank) has been added in the lower right corner of the MEM window. Its purpose is to
  allow the user to store, edit and recall his favourite stations. It's now possible to manage user
  stations using 6 memory banks, with 100 station memories each. Double clicking on an empty memory
  line, frequency, mode, filter settings, time and date will be stored.
  If the double clicked line already had a saved station, it will be recalled, along with the stored 
  demodulator mode and filter settings. Right clicking on any memory line a popup menu will appear,
  allowing to store, recall, edit or delete the highlighted station.
  Once in user memory bank mode, pushing the Bank button again lets you switch through all memory
  banks. As HFCC and EIBI, memory is scrollable using the mouse wheel. Quick parsing of the selected
  bank (5 stations at a time) can be achieved pressing the CTRL key while scrolling. Bank switching
  is also available using the mouse wheel while pressing the SHIFT key.

- USER SOFTWARE SETTINGS
  The user settings stored in the windows registry can now be accessed in a configuration dialong
  accessible from the About button (the Microtelecom logo on the application title bar) cliccking
  the "Settings" button.

- NEW USER CONFIGURABLE SETTINGS STORED IN THE WINDOWS REGISTRY
  All the following settings stored in the windows registry under the folder:
  HKEY_CURRENT_USER/Software/Microtelecom s.r.l./Perseus/v2.1c
  are now configurable by the user.
  All the keys are available for the configuration after the software is run at least once.
  Remember that the keys must be always modified when the application is NOT running (close the
  Perseus application before modifying them).
  Once a new software version is installed, the older versions folders can be deleted from the
  Windows registry. Remember always to edit the keys of the latest software version installed on
  your the system or the changes will not have any effect.

> LevelBarPos - Levels Bar position
  The main window levels bar position can be tweaked upon user preferences. If this registry key is 
  set to 0, the bar will appear on the left side of the spectrum view, while if it's set to 2, the
  bar will be on the right; any other value will set the levels bar to the default position (center).


NOTE: There's no version released from V2.1a to V2.1c. The new subversion number reflects simply minor
changes and fixups. 

Marry Christmas and Happy New Year,

The Microtelecom team



// --------------------------------------------------------------------------------------------------
// PERSEUS SOFTWARE V2.1a RELEASE NOTES
//
// (c) 2007, 2008 Microtelecom s.r.l. - Pavia di Udine, Italy
//
// Date:	11 December 2008
// Author:	Nico Palermo, IV3NWV
// --------------------------------------------------------------------------------------------------

- NEW DIGITAL DOWNCONVERTERS CORES

  The FPGA digital down converters have been further improved.
  a. The alias free bandwidth of the slower cores has been increased as in the following table:

    SR        ALIAS FREE BW   ALIAS REJ  Ripple
    (KSPS)    (kHz)           (dB)        (dB)
    125        119            130         0.1
    250        239            130         0.1
    500        450            130         0.1
    1000       800            128         0.1
    2000      1600            112         0.5

  b. The format of the IQ data stream has been slightly modified to eliminate a residual DC offset
     on the least significant bit of the data samples that was visible as a weak amplitude spectral
     line (-140 dBm) at the center of the spectrum display when the zoom function was activated. 
     The new data format affects the way the ADC_CLIP bit is stored on recorded files. The new
     software versions (>V11C) will read correctly files which has been recorded prior to this
     software release. Old software versions are not forward compatible.
  c. The mirror images problem which randomly appeared when selecting a new DDC sample rate has been fixed.

- SPECTRUM AND WATERFALL DISPLAY
  Waterfall scrolling direction.
  The waterfall display scrolling direction is now user selectable. Click on the "Wfall" button to select
  the preferred scrolling direction. 
  Labels and PeakSrc Buttons.
  The Labels button activate a vertical scale at the center of the spectrum window.
  When the scale is activated, the value of the frequency and of the amplitude of the signal at the 
  frequency pointed by the mouse (indicated by the reference red line) will be shown.
  When the PeakSrc button is activated the frequency and the amplitude of the signal peak nearest to
  the reference line will be shown.

- FM DEMODULATOR
  The FM demodulator has been changed. Its frequency response is now flat from the DC up to the maximum
  audio output frequency.

- PLAYBACK FUNCTION
  The playback function has been completely revised. 
  The bug that rendered impossible to select an audio clip at the end of a long file has been fixed.
  The new playback function consumes very little CPU time (< 15 % of a 3 GHz Dual Core Pentium) and
  should be more reliable than that implemented in the previous software version. Only internal hard
  disks checked, sorry.

- MEM WINDOW
  The stations list in the MEM window is now scrollable with the mouse wheel.
  A button "ALL" has been added. When this button is selected all the records of the selected station
  database will be shown, not only those whose time schedule is within the current UTC time. In this
  case the "Active" stations are evidenced with a brigther yellow colour.
  Please note that the "ALL" button is not meant to merge the records from ALL the databases, but just
  to show all the records matching the current frequency in the selected database.

- MINOR CHANGES
  The audio output processing block now checks for samples which exceed the dynamic range of the audio
  board (saturation logic). This reduces some audio artifacts that were audible when very noisy signals
  were demodulated by the AM/SAM demodulators.

NOTE: There's no version released from V1.1c to V2.1a. The new version number reflects simply major
updates in both the FPGA digital down converters cores and in some important functions in the PC software.


Enjoy this new version,

Nico Palermo - IV3NWV

Microtelecom s.r.l. - Pavia di Udine, Italy


// --------------------------------------------------------------------------------------------------
// PERSEUS SOFTWARE V1.1C RELEASE NOTES
//
// (c) 2007, 2008 Microtelecom s.r.l. - Pavia di Udine, Italy
//
// Date:	22 September 2008
// Author:	Nico Palermo, IV3NWV
// --------------------------------------------------------------------------------------------------

- "DOUBLE RATE CORE" - 2 MS/s DDC Output Sample Rate Added. 
  The new 2 MS/s core allows REC/PLAYBACK operations up to 1600 kHz of alias free bandwidth.
  A top performance PC system with at least a Intel Dual Core Pentium CPU running at 2 GHz 
  and with at least 1 GByte RAM is required. Lower performance systems are not supported.

  Recording at 2 MS/s produces files quantized at 16 bit/sample instead of the usual 24 bit/sample format.
  This feature allows for a reduced hard disk occupation (only 8 MBytes/s instead of the 12 MByte/s
  that would have been required for a 24 bit/sample format) with just a slight degradation of the
  dynamic range of the recorded data (approx. 1 dB loss over the full 24 bit/sample format).
  
- NO RECEIVER CONNECTED
  This version can playback the wav recorded files without the need for the receiver to be connected
  to the PC.
  The software should be run at least once with the receiver connected to the USB port. After this
  first run, it can be used to playback any recorded file without a receiver connected to the USB port.
  When the software starts it checks for a Perseus unit and if it doesn't find one it starts in
  playback mode (only). To operate the software in real-time mode, close the application, connect
  the Perseus receiver to the USB port of the PC and start the Perseus application.

- ZOOM FUNCTION
  A Zoom Button has been added in the secondary (demodulation) window menu bar.
  When the Zoom function is enabled a zoomed view (spectrum or waterfall) of the demodulated signal 
  is displayed in the main spectrum display window with a higher frequency resolution. 
  The frequency resolution can be further increased selecting the appropriate value with the UP/DOWN 
  arrows in the Span/RBW window.

- NEW USER CONFIGURABLE SETTINGS STORED IN THE WINDOWS REGISTRY
  All the following settings stored in the windows registry under the folder:
  HKEY_CURRENT_USER/Software/Microtelecom s.r.l./Perseus/v1.1c
  are now configurable by the user.
  All the keys are available for the configuration after the software is run at least once.
  Remember that the keys must be always modified when the application is NOT running (close the
  Perseus application before modifying them).
  Once a new software version is installed, the older versions folders can be deleted from the
  Windows registry. Remember always to edit the keys of the latest software version installed on
  your the system or the changes will not have any effect.

> AGCThreshold - AGC Threshold Voltage
  This key define the threshold (in microVolt) of the AGC block.
  The threshold can be set from 0 (no threshold ) to 1000 (1000 uV= 1mV).
  The default value is 2 uV.
  Any signal below the AGC Threshold voltage will have an audio output amplitude which is proportional
  to its input level. Above the threshold the audio output amplitude is leveled to a constant value.
  The AGC Threshold is Useful when it is desired that the background noise is not pumped to the full
  output audio level.

> RecTime0125K, RecTime0250K, RecTime0500K, RecTime1000K, RecTime2000K
  These variables define the duration (in minutes) of the recorded files segments accordingly to the 
  selected DDC output sampling rate.
  The default and the maximum supported segment durations are summarized in the following table:

  SampleRate	Variable to set 	Default (min)	MaxLen (min)
   125 KS/s	RecTime0125K		15		80
   250 KS/s	RecTime0250K		15		40
   500 KS/s	RecTime0500K		15		20
   1   MS/s	RecTime1000K		10		10
   2   MS/s	RecTime2000K		5		8

  Values greater than MaxLen are ignored (in this case the software sets the segment length to MaxLen).
  The minimum file segment lenght is 1 minute.

OTHER CHANGES

- Corrected a bug in the S-Meater rms (noise) power reading. 
  The bug affected the rms power reading of (gaussian) noise within the IF selectivity filter, indicating
  a value about 1.8 dB less than the true rms noise power.  


Enjoy this new version,

Nico Palermo - IV3NWV

Microtelecom s.r.l. - Pavia di Udine, Italy

// --------------------------------------------------------------------------------------------------
// PERSEUS SOFTWARE V1.1B RELEASE NOTES
//
// The "Saturday Night Version" 
//
// (c) 2007, 2008 Microtelecom s.r.l. - Pavia di Udine, Italy
//
// Date:	2 August 2008
// Author:	Nico Palermo, IV3NWV
// --------------------------------------------------------------------------------------------------

This software version doesn't expire.

- "DOUBLE RATE CORE" - Designed for operation up to 2 MS/s DDC Output Sample Rate

  The VHDL cores for the highest sample rate have been redesigned to accomodate higher performance
  MAC units. The new MAC units work now at 160 MHz and double the effective processing power of
  the last decimation stage of the Perseus Digital Down Converter and allow REC/PLAYBACK operation
  up to 1600 kHz of alias free bandwidth.
  The 1 MS/s core has increased alias rejection (> 120 dB) and reduced in-band ripple.
  The 2 MS/s core has approx. 113 dB alias rejection and < 1 dB in-band ripple. The 2 MS/s core 
  is still under test and is not enabled in this version (this core will require high performance 
  PC platforms to be operated properly. Minimum requirement are a true Dual Core Pentium with at least
  1.7 GHz clock and 1 GB RAM).

- NEW USER CONFIGURABLE SETTINGS STORED IN THE WINDOWS REGISTRY
  All the following settings stored in the windows registry under the folder:
  HKEY_CURRENT_USER/Software/Microtelecom s.r.l./Perseus/v1.1a
  are now configurable by the user.
  All the keys are available for the configuration after the software is run at least once time.
  Remember that the keys must be always modified when the application is NOT running (close the
  Perseus application before modifying them).

> VBFTaps - VARIABLE BANDWIDTH Filter Taps
  The new key define the number of taps of the variable bandwidth selectivity filter of the receiver.
  The software accepts values in the range 32-512 (decimal). The default value is 128 (decimal).
  The more the filter taps the steepest the filter response and the better the filter form factor
  (but also the highest filter delay). 

- AMPostAGC - AM/SAM audio AGC.
  The SAM/AM demodulators quality has been revised (and hopefully still improved) 
  The SAM/AM audio AGC is now ecxluded from the digital signal processing chain. AMPostAGC=0
  To reenable this feature set AMPostAGC=1

> AMHighPass - High Pass cutoff frequency for the AM/SAM demodulators
  The software accepts values in the range 5-500 Hz (decimal). The default value is 100 Hz.

> CWPitch - Pitch of the CW note
  The software accepts values in the range 300-3000 Hz (decimal). The default value is 600 Hz.

> RTTYPitch - Pitch of the RRTY center frequency
  The software accepts values in the range 300-3000 Hz (decimal). The default value is 1360 Hz.

OTHER CHANGES

- Reduced CPU load (even more than version V11A)

- Bug on playback when VAC not installed fixed.

- Bug on AM Squelch still to be fully fixed 
  (anomalous CPU load when the squelch is operated in AM/SAM mode).

- Major changes to some blocks of the digital signal processing performed in the software
  to balance the performance with the CPUs load up to the fastest rate.

- Digital Filters/Decimators/Interpolators have been further optimized for faster execution.
  (Try the setting VBFTaps = 512!!)

// --------------------------------------------------------------------------------------------------
// PERSEUS SOFTWARE V1.1A RELEASE NOTES
//
// (c) 2007, 2008 Microtelecom s.r.l. - Pavia di Udine, Italy
//
// Date:	31 July 2008
// Author:	Nico Palermo, IV3NWV
// --------------------------------------------------------------------------------------------------

This software version doesn't expire.

- "DOUBLE RATE CORE" - Designed for operation up to 2 MS/s DDC Output Sample Rate

  The VHDL cores for the highest sample rate have been redesigned to accomodate higher performance
  MAC units. The new MAC units work now at 160 MHz and double the effective processing power of
  the last decimation stage of the Perseus Digital Down Converter and allow REC/PLAYBACK operation
  up to 1600 kHz of alias free bandwidth.
  The 1 MS/s core has increased alias rejection (> 120 dB) and reduced in-band ripple.
  The 2 MS/s core has approx. 113 dB alias rejection and < 1 dB in-band ripple. The 2 MS/s core 
  is still under test and is not enabled in this version (this core will require high performance 
  PC platforms to be operated properly. Minimum requirement are a true Dual Core Pentium with at least
  1.7 GHz clock and 1 GB RAM).

- NEW USER CONFIGURABLE SETTINGS STORED IN THE WINDOWS REGISTRY
  All the following settings stored in the windows registry under the folder:
  HKEY_CURRENT_USER/Software/Microtelecom s.r.l./Perseus/v1.1a
  are now configurable by the user.
  All the keys are available for the configuration after the software is run at least once time.
  Remember that the keys must be always modified when the application is NOT running (close the
  Perseus application before modifying them).

> VBFTaps - VARIABLE BANDWIDTH Filter Taps
  The new key define the number of taps of the variable bandwidth selectivity filter of the receiver.
  The software accepts values in the range 32-512 (decimal). The default value is 128 (decimal).
  The more the filter taps the steepest the filter response and the better the filter form factor
  (but also the highest filter delay). 


- AMPostAGC - AM/SAM audio AGC.
  The SAM/AM demodulators quality has been revised (and hopefully still improved) 
  The SAM/AM audio AGC is now ecxluded from the digital signal processing chain. AMPostAGC=0
  To reenable this feature set AMPostAGC=1

> AMHighPass - High Pass cutoff frequency for the AM/SAM demodulators
  The software accepts values in the range 5-500 Hz (decimal). The default value is 100 Hz.

> CWPitch - Pitch of the CW note
  The software accepts values in the range 300-3000 Hz (decimal). The default value is 600 Hz.

> RTTYPitch - Pitch of the RRTY center frequency
  The software accepts values in the range 300-3000 Hz (decimal). The default value is 1360 Hz.

OTHER CHANGES

- Bug on AM Squelch fixed (anomalous CPU load when the squelch was operated in AM/SAM mode).

- Major changes to some blocks of the digital signal processing performed in the software
  to balance the performance with the CPUs load up to the fastest rate.

- Digital Filters/Decimators/Interpolators have been further optimized for faster execution.
  (Try the setting VBFTaps = 512!!)

Enjoy this new version,

Nico Palermo - IV3NWV

Microtelecom s.r.l. - Pavia di Udine, Italy


// --------------------------------------------------------------------------------------------------
// PERSEUS SOFTWARE V1.0G RELEASE NOTES
//
// (c) 2007, 2008 Microtelecom s.r.l. - Pavia di Udine, Italy
//
// Date:	24 June 2008
// Author:	Nico Palermo, IV3NWV
// --------------------------------------------------------------------------------------------------

  Please note that this is an advance software release and will expire on August 1st, 2008.


- NOISE BLANKER
  Narrow band noise blanker added.
  Two noise blankers can be selected with the two buttons "NBW" (Wide) and "NBN" (Narrow).
  The Wide NB operates on all the bandwidth available from the DDC (100 , 200, 400 and 800 kHz, 
  accordingly to the selected DDC sample rate).
  The Narrow NB, instead, operates on the bandwitdh selected with the BW buttons (50 kHz, 25 kHZ, 12.5
  kHz, etc).
  The Wide NB is more effective when there are no strong signals in the bandwidth the DDC is tuned to.
  The Narrow NB is more effective in all other cases.

- AGC Spike Rejection
  A Spike Rekection button as been added among the AGC controls ("SpkRej")
  The Spike Rejection function emulates the behaviour of the AGC of old analog receivers with a relatively
  long attach time constant. When this function is selected the AGC circuit is much less sensistive to 
  impulse noise which can completely close the receiver gain and affect negatively the receiver performance
  (read i.e. Rob Sherwood "Dsp Radio not perfect", http://www.sherweng.com/documents/Dayton2007w.pdf for more).
  The time constant over which the impulse noise power is averaged can be set by the user editing the key
  AGC_RiseTime_ms under the Windows registry entry HKEY_CURRENT_USER/Software/Microtelecom s.r.l./Perseus/v1.0g.
  AGC_RiseTime_ms defaults to 25 (25 ms).
  Values between 5 and 100 (decimal) are accepted.
  NOTES: The Spike rejection function introduces a small amount of (soft) audio distorsion which is tolerable in SSB/CW
  communications and should not be activated for digital modes which may be far more sensitive than human hear
  to non linear distorsions. Use this function only when required.

- 50 kHZ demodulation bandwidth added.
  This bandwidth is required when demodulating the NOAA Weather satellites APT signal which is 30 kHz wide and can't
  be demodulated properly with smaller bandwidth FM demodulator without severe distorsion to the infrared channel.
  Please note that the wider the demodulation bandwidth (and the DDC sample rate), the more the CPU load.
  No single core Pentium or Celeron CPU here, please.

- FM demodulator changes and AFC
  The FM demodulator is now based on a linear phase locked loop and not on a frequency discriminator.
  AFC (automatic frequency control) can be enabled with the button in the main window pane control bar.
  AFC can be enabled only when the FM demodulator is selected.

- AM Splatter Rejection
  This is a trial function that demonstrates how a strong AM interferer signal can be suppressed by digital
  signal processing.
  Please read the notes at: http://microtelecom.it/perseus/amrej.html for more.
  This function is currently available only when the AM or the SAM demodulators are selected.


  Enjoy Perseus
  Nico Palermo, iv3nwv

  Microtelecom s.r.l. - Pavia di Udine, Italy


// --------------------------------------------------------------------------------------------------
// PERSEUS SOFTWARE V1.0F RELEASE NOTES
//
// (c) 2007, 2008 Microtelecom s.r.l. - Pavia di Udine, Italy
//
// Date:	14 April 2008
// Author:	Nico Palermo, IV3NWV
// --------------------------------------------------------------------------------------------------

- Configurable Audio Latency
  The default output audio latency has been doubled to solve problems experienced
  with the playback function in some systems.
  The AudioLatency parameter is stored in the Windows registry and indicates the
  desired fill level of the output audio buffers queue.
  The default value is 9 (nine 512 samples buffers, about 150 ms of audio delay) 
  and should be good for most systems.
  Users suffering interruptions in the audio output (whether in real-time or playback mode) 
  can increment this parameter up to a value of 20 (decimal) until a reliable audio
  output is produced.
  To modify the Audio Latency: 
   1) let the v1.0f Perseus version run once. This will create the "AudioLatency" key 
      in the Windows registry,
   2) close the application,
   3) Open the Windows registry and look for the folder
      HKEY_CURRENT_USER/Software/Microtelecom s.r.l./Perseus/v1.0f
   4) Edit the key "AudioLatency" and assign it a decimal value in the range 4..20

  The Perseus software will constrain values outside the allowed range [4..20] to
  its extremes. 
  The higher the value of the AudioLatency the longer the audio delay, but also the 
  better the performance in terms of audio reliability. 
  In the case the playback should not be satisfactory increase the value up to its maximum.
  Remember to change the key only when the Perseus software is not executing
  (close the application before changing the key in the registry).

  Enjoy Perseus
  Nico Palermo, iv3nwv

  Microtelecom s.r.l. - Pavia di Udine, Italy
  


// --------------------------------------------------------------------------------------------------
// PERSEUS SOFTWARE V1.0E RELEASE NOTES
//
// (c) 2007, 2008 Microtelecom s.r.l. - Pavia di Udine, Italy
//
// Date:	9 April 2008
// Author:	Nico Palermo, IV3NWV
// --------------------------------------------------------------------------------------------------


- Squelch and Auto Mute functions
  Squelch and Auto Mute threshold levels can be controlled clicking the desired value in the S-Meter bar with
  the left button of the mouse.
  The Auto Mute function works in the opposite way of the squelch block. It mutes the audio when the RF input 
  level is GREATER than the desired threshold and can be used to mute the receiver automatically when a
  transmitter or a transceiver (with proper antenna switching circuits) is activated.
  The squelch level is set clicking the S-Meter bar in the S1-S9 zone. A triangle with a left oriented vertical 
  side in the S-Meter bar indicates the selected squelch threshold.
  The Auto Mute level is set clicking the S-Meter bar in the S9 - S9+70 zone. A triangle with a right oriented 
  vertical side in the S-Meter bar indicates the selected Auto Mute threshold.
  To disable the squelch and/or the AutoMute function right click the appropriate S-Meter zone.
  The hysteresis of the squelch and auto mute functions is approximately 6 dB.
  The selected thresholds are peak values. 
  
- Mouse Wheel Direction
  Scrolling of the main display and/or of the frequency pane digits is now possible in the user preferred
  direction.
  To reverse the Perseus scroll direction:
   1) run the Perseus software at least once to let it create the key "MouseWheelReverse" in the Windows
      registry, then open the Windows registry, 
   2) Close the Perseus application
   3) Browse the Windows registry for the folder HKEY_CURRENT_USER/Software/Microtelecom s.r.l./Perseus/v1.0e
   4) Modify the key "MouseWheelReverse" and set it to a non null value.
   5) Rerun the Perseus application
  To reset the mouse wheel scroll direction to its default value, set again the MouseWheelReverse key to 0 when
  the Perseus application is not running.

- Spectrum Waterfall Options
  The spectrum waterfall can now be displayed with some predefined color palettes and with user selectable
  scrool speed, brightness and contrast settings.
  The color palette can be selected from a list clicking the "palette" button in the main display menu bar.
  Three sliders on the right edge of the main display control the scrolling speed, the brightness and the contrast
  of the waterfall (they are active only when the Waterfall mode is selected).
  The brightness and contrast settings are saved in the registry for each color palette.

- Audio Clicks
  Fixed the bug in the variable rate resampler introduced with the version v1.0 which produced audible "clicks"
  on the audio output even if the audio output were muted.

- Variable rate resampler/audio output synchronizer
  The bandwidth of the audio output synchronizer has been widened to allow for faster locking.
  Small variation on the audio pitch can be noted when changing the filter bandwidths and/or the main display 
  FFT resolution depending on the effective CPU load.

- CI-V Interface
  Fixed the bugs which prevented the Perseus software to be interfaced to Simon Brown's Ham Radio Deluxe.
  The COM port the Perseus software listens to for incoming CI-V commands can now be configured via the key 
  "VComPort" in the Windows registry under the folder: 
  HKEY_CURRENT_USER/Software/Microtelecom s.r.l./Perseus/v1.0e
  The key should be always modified when the Perseus application is not running.
  Physical COM ports haven't been tested yet. Please report bugs, if any, at my email address.

- HFCC and EiBi
  HFCC and EiBi databases have been updated to their last publicly available versions (the A08 for the HFCC 
  files and the March 19 2008 version for the EiBi files).
  
  Enjoy Perseus
  Nico Palermo, iv3nwv

  Microtelecom s.r.l. - Pavia di Udine, Italy

// --------------------------------------------------------------------------------------------------
// PERSEUS SOFTWARE V1.0 RELEASE NOTES
//
// (c) 2007, 2008 Microtelecom s.r.l. - Pavia di Udine, Italy
//
// Date:	7 April 2008
// Author:	Nico Palermo, IV3NWV
// --------------------------------------------------------------------------------------------------
  

- 1 MSPS / 800 kHz BANDWIDTH PLAYBACK/RECORDING CAPABILITIES
  The new rate option has been added to the Sampling Rate menu.
  As the processing power is in some way proportional to the data sample rate this option requires
  good CPUs to be run comfortably. 
  For this sample rate a Dual Core Pentium with at least 500 MB RAM and a 2.5 GHz clock is suggested.

  
- NOISE REDUCTION BLOCK ADDED
  The noise reduction dsp block can be operated in all modes but DRM and USER.
  
- USER DEMODULATOR
  When the user demodulator is selected the VAC output is fed with zero-IF IQ samples, filtered with the selected
  bandwidth and normalized in amplitude with the selected AGC setting. 
  This mode is useful when a third party application wishes to process the zero-IF data stream at the
  selected frequency.

- SELECTIVITY FILTERS
  The selectivity filter settings are now saved and remembered for each mode.
  AM and Synchronous AM share the same filter.
  USB and LSB shares the same filter.
  The 6-dB bandwidth of the selectivity filter is now shown near the label BW in the upper-right corner
  of the demodulation window. 
  The Variable Bandwidth (selectivity) Filter form factor has been largely improved. 
  For the SSB filter when a 2400 Hz 6dB bandwidth is selected, the 60dB stop bandwidth is 2600 Hz (F6/60=1:1.08)


- PASS BAND TUNE - NOTCH FUNTIONS
  All the functions already available in the previous software versions are available 
  when the PBT button is selected in the secondary spectrum monitor window, accordingly to
  the following table:

        PBT MODE (PBT selected)

		ACTION											   EFFECT
		Double click of mouse left btn					=> move selected point to 0 Hz offset
		Drag with mouse left btn clicked				=> fine tune
		Drag filter edges with mouse left btn clicked   => adjust selected selectivity filter edge
		Drag with mouse right btn clicked               => shift filter mask left/right
		Mouse wheel                                     => adjust selectivity filter bandwidth

  Actions related to the notch functions can be activated in two way, either performing the action
  with the keyboard CRTL key pressed OR selecting the Notch Button (in this case the CTRL key is not
  required) as listed in the following table:

		NOTCH MODE (PBT selected and Ctrl-key down or NOTCH selected)
		ACTION											   EFFECT
		Double click of mouse left btn					=> place notch at the selected frequency
		Drag with mouse left btn clicked				=> tune notch filter to desired frequency
		Right click                                     => disable notch filter
		Mouse wheel                                     => adjust notch filter width

- WAV FILES PLAYBACK 
  The playback position can now be selected left clicking the record/playback bar in the appropriate point,
  without dragging the mouse. 
  Playback loops are selected in the usual way, dragging the mouse (left button clicked).
  The Playback bar now display the start and stop UTC time of the file played.

- INCREASED PEAK AUDIO LEVEL TO VAC 
  VAC output peak level increased to -6 dBFs

- AUDIO BOARD SAMPLE RATE SYNCHRONIZATION
  Audio output synchronized with input sample rate (only audio board, not VAC)

- AUDIO OUTPUT LATENCY
  Audio output latency set to approx. 200 ms for the 3 kHz filter (about 300 ms for the 0.8 kHz filter)
  Latency can vary accordingly to the selected options. The synchronizer lock time has been kept relatively 
  slow and it may take several seconds for the loop to synchronize. During this lock time audio buffers 
  underruns/overflows may be experienced. 
  NOTE: Do not drive third party software with the audio output (i.e. selecting the default sound board
        as the input source! Third party software should ALWAYS get its input from the Perseus VAC output.


- FREQUENCY SLIDE BAR
  Decimal digits shown on the frequency slidebar labels when they are required

- INCREASED FFT SPECTRAL RESOLUTION 
  On the main display control bar the three buttons "Time", "Mix" and "Freq" allow to select 
  the "sharpness" of the FFT displays to three increasing values at the expense of the display refresh rate.
  This function is particularly useful when analyzing strong carrier signals and carrier feed-through on adjacent
  bins has to be reduced at minimum. For such analysis the "Freq" button offers the best performance at 
  the expense of a slight degradation of the signal amplitude accuracy and refresh rate.
  The "Time" button selects the FFT algorithm of previous software versions (FFT with Hann window)
  The "Mix" and "Freq" buttons select a polyphase FFT analysis with increasing window length (Polyphase FFT
  with quasi-flat-top amplitude response)


  OTHER FEATURES
   
- Minor bugs corrected on perseususb.dll

- Perseus software does not hang anymore when a USB device (ie a USB memory stick) is disconnected
  from the system

- Main window position stored on the registry. Desktop width checked and position
  set to upper-left corner if it is not greater than 1024 pixels (minimum supported screen width).

- Status of AVG and NB buttons stored in the registry and reloaded at the application startup

- AGC not reset when mode/and or AGC constant changed to allow faster audio response.

- Occasional bad IQ data stream fed to the software from the Perseus hardware when reconfiguring its sample rate.
  The bad IQ data stream can be observed like a "mirror like" spectrum on the main spectrum display.
  When this happens, please select again the desired sample rate.

- Main Display Left/Right arrows always blocked when recording a file to prevent that frequency outside
  the allowed range to be selected clicking these arrows.

______________________________________________________________________________________________________
  VIRTUAL CI-V INTERFACE - INTERFACE TO THIRD PARTY APPLICATIONS
______________________________________________________________________________________________________

  Support for controlling the Perseus software (and the receiver itself) with third party
  software has been added via a virtual CI-V interface.
  The Perseus software listen to the COM10 Virtual Com Port for third party commands and
  sets its operating frequency and mode accordingly to the received commands.
  This allow, i.e., to control the Perseus software via an external decoder application like MixW.
  To use such a feature a null modem emulator like com0com has to be installed into the system.
  Com0com is freely available under the GPL license here: http://sourceforge.net/projects/com0com/
  Com0com installs two Virtual Communication ports CNCA0 and CNCB0: one of them is used from 
  the Perseus software to listen to incoming commands, the second one is used by the external 
  application to send commands to and get replies from the Perseus software. 
  Since Perseus listen always on the COM10 port, whether it is a physical or a virtual one,
  it is necessary to rename the default com0com ports to COM10 (used by Perseus) and to COM<xx> 
  (the port that will be used by the third party software) where <xx> is a number which does not 
  conflict with existing physical com ports on your system, i.e. COM11. 
  To rename the two ports run the utility setupc.exe in the directory where com0com has been installed
  and digit the two commands:
	change CNCA0 PortName=COM10
	change CNCB0 PortName=COM11  
  Once the ports have been renamed, the third party software can control the Perseus application
  connecting (as in this example) to the COM11 com port.
  If the Perseus software finds the COM10 port on the system it displays the label "VCom: On" in 
  the low-right corner of the main window. If this label shows "VCom: Off", the Perseus software has not 
  found the COM10 port on the system. In this case the CI-V interface cannot be used.

  The CI-V commands implemented in this software version are:
   CMD-ID	COMMAND
	$00		(Transfer operating frequency)
	$01		(Transfer operating mode)
	$03		(Read operating frequecny)
	$04		(Read mode)
	$05		(Set operating frequency)
	$06		(Set operating mode)
	$11		(Set/Get attenuator settings)
	$15 $02 (Read SMeter Level)
	$16 $02 (Set ADC Preamp and Dither Generator)
	$16 $12 (Set AGC)
	$19	$00	(Read default address)
	
	$70 $01 (Set DDC Output Sample Rate) - Microtelecom extension
	$70 $02 (Start recording) - Microtelecom extension
	$70 $03 (Stop  recording) - Microtelecom extension

  CI-V COMMAND PARAMETERS 

 -SET MODE COMMANDS  (CMD $01 and CMD $06)
  Commands $01 and $06 ignore the filter passband parameter and only set the Perseus receiver 
  to the given mode accordingly to the following table:
   MODE-ID MODE
	$00		LSB
	$01		USB
	$02		AW
	$03		CW
	$04		RTTY
	$05		FM
	$06		SAM
	$07		DRM
	$08		USER (Zero IF, 31.25 KS/s, IQ output to VAC)

 -SET ATTENUATOR COMMAND (CMD $11)
  The set attenuator command recognizes the following data field:
   DATA     ACTION
    $00		Attenuator OFF
	$10     10 dB Attenuator
	$20     20 dB Attenuator
	$30     30 dB Attenuator
     --     Read attenuator settings

 -READ S-METER LEVEL (CMD $15 $02)
  When this command is issued Perseus reply with a 1 or 2 digits bcd value in the range 0-255
  which is a scaled version of the received power.
  0 corresponds to  -140 dBm
  255 corresponds to +30 dBm

  SET ADC PREAMP AND DITHER GENERATOR (CMD $16 $02)
  This command recognize the following data field
  DATA	ACTION
  $00	ADC Preamp OFF/Dither OFF
  $01	ADC Preamp ON/Dither OFF
  $02	ADC Preamp OFF/Dither ON
  $03	ADC Preamp ON/Dither ON

 -SET AGC (CMD $16 $12)
  This command recognize the following data field
  DATA	ACTION
  $00	AGC OFF 
  $01	AGC fast
  $02	AGC medium
  $03	AGC slow

 -READ DEFAULT ADDRESS COMMAND (CMD $19 $00)
  The Perseus receiver replies to this command with the address $E1

 -MICROTELECOM EXTENSIONS TO CI-V Protocol

 -SET DDC OUTPUT SAMPLE RATE ( CMD $70 $01)
  This command accepts the following data field
  DATA	DDC OUT SAMPLE RATE
  $00	125 kS/s
  $01   250 kS/s
  $02   500 kS/s
  $03     1 MS/s
   
 -START RECORDING (CMD $70 $02)
  The data field of this command must contain a null terminated file name to be created.
  The Perseus software returns a NOK reply if the file cannot created (i.e. the path does not exist).
  When a START RECORDING command has been issued some subsequent commands maybe not effective (i.e.
  trying to change the frequency outside the recording bandwidth or to modify attenuator/adc settings).
  Files are recorded in the same Perseus recorder style, with an added suffix _nnn prior to the .wav
  file suffix, where nnn is the sequence number of the current record.


 -STOP RECORDING (CMD $70 $03)
  This command stops the recording.


  NOTES:
  - The Perseus software ignores the "To address" field of the CI-V protocol and responds to 
  any "To address" set in the received CI-V command.
  - The current software version has been tested only with the com0com null modem emulator.

__________________________________________________________________________________________________


(c) 2007, 2008 Microtelecom s.r.l. - Pavia di Udine, Italy - All rights reserved.
