This is a Delphi version of all available calls to/from HQCT.DLL for version 1.0.0.17. Calling conventions: The DLL exports its functions in stdcall = Windows API calls // Init the software/module function InitHQCT : longbool; stdcall; external 'HQCT.DLL' // Stop the software/module procedure FreeHQCT; stdcall; external 'HQCT.DLL' // Change FM frequency procedure HQCTSetFMFrequency(FM_Freq : integer); stdcall; external 'HQCT.DLL' // Change AM frequency procedure HQCTSetAMFrequency(AM_Freq : integer); stdcall; external 'HQCT.DLL' // Switch betweeontn FM/AM band procedure HQCTSwitchBand(FM_On : longbool); stdcall; external 'HQCT.DLL' // Mute - unmute sound procedure HQCTMute(Mute_On : longbool); stdcall; external 'HQCT.DLL' // The THQCTData type in the next function is a simple array of 128 bytes!! function HQCTReadDataBuffer : THQCTData; stdcall; external 'HQCT.DLL' // Search up for next available station function HQCTScanUp : integer; stdcall; external 'HQCT.DLL' // Search down for next available station function HQCTScanDown : integer; stdcall; external 'HQCT.DLL' // Search up for next available station (async method) procedure HQCTScanUpAsync; stdcall; external 'HQCT.DLL' // Search down for next available station (async method) procedure HQCTScanDownAsync; stdcall; external 'HQCT.DLL' // Frequency 1 step higher (step value depends on settings in .ini file!! procedure HQCTStepUp; stdcall; external 'HQCT.DLL' // Frequency 1 step higher (step value depends on settings in .ini file!! procedure HQCTStepDown; stdcall; external 'HQCT.DLL' // Seek sensitivity, 0 = very sensitive seek, 4 = low sensitive seek for up/down scan functions procedure HQCTSetSeekSentive(Sens_Value : integer); stdcall; external 'HQCT.DLL' // Select the sound source for the audio output, 0=Tuner; 1=CD; 2=Phone; 3=Navigation procedure HQCTSetSoundSource(Src_Value : integer); stdcall; external 'HQCT.DLL' // Set the sound volume for the audio output, 0 = low; 68 = high procedure HQCTVolume(Volume_Value : integer); stdcall; external 'HQCT.DLL' // Set the sound loudness for the audio output, 0 = low; 68 = high procedure HQCTLoudness(Loudness_Value : integer); stdcall; external 'HQCT.DLL' // Set the sound bass for the audio output, 0 = low; 7 = high procedure HQCTBass(Bass_Value : integer); stdcall; external 'HQCT.DLL' // Set the sound treble for the audio output, 0 = low; 7 = high procedure HQCTTreble(Treble_Value : integer); stdcall; external 'HQCT.DLL' // Get current frequency function HQCTGetFrequency : integer; stdcall; external 'HQCT.DLL' // Get FMBand function HQCTGetFMBand : longbool; stdcall; external 'HQCT.DLL' New in build 1.0.0.18 // Beep function procedure HQCTBeep; stdcall; external 'HQCT.DLL' // Set traffic info on/off procedure HQCTTP(TPValue : longbool); stdcall; external 'HQCT.DLL' // Get current traffic, on/off? function HQCTGetTP : longbool; stdcall; external 'HQCT.DLL' // Set AF on/off procedure HQCTAF(AFValue : longbool); stdcall; external 'HQCT.DLL' // Get current AF, on/off? function HQCTGetAF : longbool; stdcall; external 'HQCT.DLL' // Set Fader value procedure HQCTFader(FaderValue : integer); stdcall; external 'HQCT.DLL' // Get current Fader value function HQCTGetFader : integer; stdcall; external 'HQCT.DLL' // Set Balance value procedure HQCTBalance(BalanceValue : integer); stdcall; external 'HQCT.DLL' // Get current Balance value function HQCTBalance : integer; stdcall; external 'HQCT.DLL' New in build 1.0.0.21 // Open settings window procedure HQCTSettingsWindow; export; stdcall; The return buffer of the HQCTReadDataBuffer function has the following structure: begin byte end byte format Description - 0 7 char Station name, when in FM mode with RDS () - 8 87 char RDS text, when in FM mode with RDS - 88 91 32 bit integer The actual FM frequency between 8700 and 10800MHz, no decimal point!! - 92 95 32 bit integer The actual AM frequency in KHz - 96 96 byte 0 = mono; 1 = stereo - 97 97 byte 0 = sound; 1 = mute - 98 98 byte Seek sensitivity 0 = very sensitive 4 = least sensitive - 99 99 byte Reception level - 100 100 byte Sound source 0=Tuner; 1=CD; 2=Phone; 3=Navigation - 101 101 byte 0 = AM; 1 = FM band - 102 127 reserved Reserved for future use The following calls are implemented for Radiator but can be used by all other programs as well: (Please look at the Radiator documentation for use/results of these calls) function GetModuleComment: PChar; stdcall; //description, copyright etc. procedure TuneFreq (Freq: LongInt); stdcall; //matches FM_TUNE; //frequency in kHz (88.2 MHz -> 88200 kHz) procedure TuneFreqMuted (Freq: LongInt); stdcall; //matches FM_TUNEMUTED //frequency in kHz (88.2 MHz -> 88200 kHz) procedure SetMute (Mute: Boolean); stdcall; //matches FM_MUTEUNMUTE function ScanStation (DirectionUp:Boolean; FreqToSearchFrom: LongInt): LongInt; stdcall; //matches FM_SCANSTATION //parameters are //direction (up to high range or down to low range //and current frequency to search from //it returns new frequency function GetVolume: Word; stdcall; //matches GETVOLUME procedure SetVolume (Left,Right: Word); stdcall; //matches FM_SETVOLUMEBYVALUE procedure VolumeUpDown(Step: Integer); stdcall; //matches FM_SETVOLUMEBYVALUE procedure SetBass(Bass: Word); stdcall; //matches FM_BASSTREBLE function GetBass: Word; stdcall; //matches FM_BASSTREBLE procedure SetTreble(Treble: Word); stdcall; //matches FM_BASSTREBLE function GetTreble: Word; stdcall; //matches FM_BASSTREBLE function IsStereo: Boolean; stdcall; //matches FM_ISSTEREO procedure SetStereo (Stereo: Boolean); stdcall; //matches FM_SETSTEREO function GetSignal: Word; stdcall; //matches FM_GETSIGNAL procedure ConfigurationDialog; stdcall; //matches FM_CONFIGURATIONDIALOG