Store settings as ~/.config/MorseRunner.ini instead of in the current directory

--- a/Ini.pas
+++ b/Ini.pas
@@ -64,9 +64,12 @@ uses
 
 procedure FromIni;
 var
+  F: string;
   V: integer;
 begin
-  with TIniFile.Create(ChangeFileExt(ParamStr(0), '.ini')) do
+  F := ChangeFileExt(GetAppConfigFile(false), '.ini');
+  ForceDirectories(F);
+  with TIniFile.Create(F) do
     try
       MainForm.SetMyCall(ReadString(SEC_STN, 'Call', Call));
       MainForm.SetPitch(ReadInteger(SEC_STN, 'Pitch', 3));
@@ -120,9 +123,12 @@ end;
 
 procedure ToIni;
 var
+  F: string;
   V: integer;
 begin
-  with TIniFile.Create(ChangeFileExt(ParamStr(0), '.ini')) do
+  F := ChangeFileExt(GetAppConfigFile(false), '.ini');
+  ForceDirectories(F);
+  with TIniFile.Create(F) do
     try
       WriteString(SEC_STN, 'Call', Call);
       WriteInteger(SEC_STN, 'Pitch', MainForm.ComboBox1.ItemIndex);
--- a/MorseRunner.lpr
+++ b/MorseRunner.lpr
@@ -46,7 +46,7 @@ begin
 
   Application.Scaled:=True;
   Application.Initialize;
-  Application.Title := 'Morse Runner';
+  Application.Title := 'MorseRunner';
   Application.CreateForm(TMainForm, MainForm);
   Application.CreateForm(TScoreDialog, ScoreDialog);
   Application.Run;
--- a/Main.pas
+++ b/Main.pas
@@ -1250,6 +1250,8 @@ end;
 
 
 procedure TMainForm.Operator1Click(Sender: TObject);
+var
+  F: string;
 begin
   HamName := InputBox('HST Operator', 'Enter operator''s name', HamName);
 
@@ -1257,7 +1259,9 @@ begin
     then Caption := 'Morse Runner:  ' + HamName
     else Caption := 'Morse Runner';
 
-  with TIniFile.Create(ChangeFileExt(ParamStr(0), '.ini')) do
+  F := ChangeFileExt(GetAppConfigFile(false), '.ini');
+  ForceDirectories(F);
+  with TIniFile.Create(F) do
     try WriteString(SEC_STN, 'Name', HamName);
     finally Free; end;
 end;
