Skip to content
This repository has been archived by the owner on Jan 31, 2023. It is now read-only.

Commit

Permalink
Version 1.3.0.0
Browse files Browse the repository at this point in the history
Also: Fixed portable mode.

Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com>
  • Loading branch information
maximilien-noal committed Mar 7, 2021
1 parent d4dc27d commit 2adab70
Show file tree
Hide file tree
Showing 7 changed files with 60 additions and 24 deletions.
6 changes: 3 additions & 3 deletions AmpShell.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@
<!-- https://github.com/dotnet/core/issues/3319 -->
<EmbeddedResourceUseDependentUponConvention>false</EmbeddedResourceUseDependentUponConvention>
<ApplicationIcon>AmpShell.ico</ApplicationIcon>
<Version>1.2.9.0</Version>
<Version>1.3.0.0</Version>
<Authors>Maximilien Noal</Authors>
<Description>This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;.</Description>
<Copyright>(c) 2009 - 2021, Maximilien Noal</Copyright>
<PackageProjectUrl>http://ampshell.tuxfamily.org</PackageProjectUrl>
<RepositoryUrl>https://github.com/maximilien-noal/AmpShell</RepositoryUrl>
<NeutralLanguage></NeutralLanguage>
<AssemblyVersion>1.2.9.0</AssemblyVersion>
<AssemblyVersion>1.3.0.0</AssemblyVersion>
<StartupObject>AmpShell.Program</StartupObject>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
Expand Down Expand Up @@ -73,4 +73,4 @@
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
</ItemGroup>
</Project>
</Project>
8 changes: 6 additions & 2 deletions DAL/UserDataAccessor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -70,11 +70,15 @@ public static string GetDataFilePath()
}
else
{
if (File.Exists(appDataFile))
var portableAppDataFile = Path.Combine(PathFinder.GetStartupPath(), "AmpShell.xml");
if (File.Exists(portableAppDataFile))
{
return portableAppDataFile;
}
else
{
return appDataFile;
}
return Path.Combine(PathFinder.GetStartupPath(), "AmpShell.xml");
}
}

Expand Down
14 changes: 7 additions & 7 deletions Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,14 @@ private static void Main(string[] args)
{
UserDataAccessor.LoadUserSettingsAndRunAutoConfig();

var localDosbox = Path.Combine(Application.StartupPath, "dosbox.exe");
if (UserDataAccessor.UserData.PortableMode && File.Exists(localDosbox))
{
UserDataAccessor.UserData.DBPath = localDosbox;
}

// if DOSBoxPath is still empty, say to the user that dosbox's executable cannot be found
if (StringExt.IsNullOrWhiteSpace(UserDataAccessor.UserData.DBPath) || File.Exists(UserDataAccessor.UserData.DBPath) == false)
else if (StringExt.IsNullOrWhiteSpace(UserDataAccessor.UserData.DBPath) || File.Exists(UserDataAccessor.UserData.DBPath) == false)
{
switch (MessageBox.Show("AmpShell cannot find DOSBox, do you want to indicate DOSBox's executable location now ? Choose 'Cancel' to quit.", "Cannot find DOSBox", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question))
{
Expand Down Expand Up @@ -66,12 +72,6 @@ private static void Main(string[] args)
break;
}
}
else
{
#if NET461
//JumpListUpdater.InitJumpTasks();
#endif
}
if (args is null || args.Any() == false)
{
RunMainForm();
Expand Down
Binary file modified Resources/AmpShell.bmp
Binary file not shown.
6 changes: 3 additions & 3 deletions Views/AboutBox.resx
Original file line number Diff line number Diff line change
Expand Up @@ -112,12 +112,12 @@
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="OKButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
Expand Down
8 changes: 4 additions & 4 deletions Views/PreferencesForm.cs
Original file line number Diff line number Diff line change
Expand Up @@ -449,9 +449,9 @@ private void PortableModeCheckBox_CheckedChanged(object sender, EventArgs e)
this.BrowseCDImageDirButton.Enabled = false;
this.EditorBinaryPathTextBox.Enabled = false;
this.BrowseForEditorButton.Enabled = false;
if (File.Exists(Path.Combine(Application.StartupPath, "\\dosbox.exe")))
if (File.Exists(Path.Combine(Application.StartupPath, "dosbox.exe")))
{
this.DOSBoxPathTextBox.Text = Path.Combine(Application.StartupPath, "\\dosbox.exe");
this.DOSBoxPathTextBox.Text = Path.Combine(Application.StartupPath, "dosbox.exe");
}
else
{
Expand Down Expand Up @@ -480,9 +480,9 @@ private void PortableModeCheckBox_CheckedChanged(object sender, EventArgs e)
{
this.EditorBinaryPathTextBox.Text = Path.Combine(Directory.GetParent(Environment.GetFolderPath(Environment.SpecialFolder.System)).FullName, "notepad.exe");
}
else if (File.Exists(Path.Combine(Application.StartupPath, "\\TextEditor.exe")))
else if (File.Exists(Path.Combine(Application.StartupPath, "TextEditor.exe")))
{
this.EditorBinaryPathTextBox.Text = Path.Combine(Application.StartupPath, "\\TextEditor.exe");
this.EditorBinaryPathTextBox.Text = Path.Combine(Application.StartupPath, "TextEditor.exe");
}
else
{
Expand Down
42 changes: 37 additions & 5 deletions changelog.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,36 @@
Changelog---------
1.3.0 (7 March 2021) 'Back to the roots'
* Jumped to v1.3.0 because this release reintroduces Windows 98SE compatibility.
* Detect if DOSBox executable doesn't exist anymore (at startup) and ask for it if needed.
* Use config file for -c commands (this fixes some DOSBox forks that don't handle it correctly)
* Folder mount labels can have spaces in them now
* Better detection if AUTOEXEC section is used
* Open Game Folder button
* Games: Multi-line additionnal commands textbox. This makes them easier to read and write for the user.
* Don't force a C mount nor executable when we add/modify a game, since it might be specified with -c command or in the config file's AUTOEXEC section
* Bugfix: Saved window location was never used
* Bugfix: Restore XP (and 32-bit Windows) compatibility
* Bugfix: Fixed Portable Mode

1.2.8 (30 May 2020)
* Games can have notes attached to them
* Select the very first Category (Tab) on creation
* Don't crash on very old and invalid UserData
* Removed non-crashing exception on redraw

1.2.7 (21 May 2020)
* Command-line interface (-g to launch a game, -s to launch a game's setup utility, -v for verbose mode)

1.2.6 (23 February 2020)
* Incompatible (read: 10 years old) or malformed user data won't crash AmpShell anymore (BUT it will STILL be ignored, be warned !)
* Removed small non-crashing error when user data was redrawn but there was no focused item to restore focus on.
* On the very first start, we don't erase the window position chosen by Windows, because we have none saved.
* To improve usability on the very first run, we do select the first category (tab) created if there is one automatically
* We use Costura.Fody to embed all the dependencies in a single executable (the old Microsoft.Bcl Nuget package is the cause of this)
* The changes of v1.2.5 were too small so they are released together with this version.

Have fun !

1.2.4.1 (October 28 - 22h15)
- Fixed unability to delete games and related crashes

Expand Down Expand Up @@ -119,7 +151,7 @@ GUI :

1.1.2.1 (January 25 18h00)
Code modifications :
- Minor Bugfix : If AmpShell was closed while being minimized and_ if "Remember window position" was enabled, it would set it's location off-screen on the next run. The workaround was to set it to fullscreen via the context menu of the window's title on the Windows' task bar.
- Minor Bugfix : If AmpShell was closed while being minimized _and_ if "Remember window position" was enabled, it would set it's location off-screen on the next run. The workaround was to set it to fullscreen via the context menu of the window's title on the Windows' task bar.

GUI :
- Added 'Edit default configuration' to the tool bar.
Expand Down Expand Up @@ -189,7 +221,7 @@ They are searched for when the Portable Mode has been activated, or when the use
- Bugfix : The Preferences were not saved. Regression since previous release (v1.1.0.5)

1.1.0.5 (December 1 19h02)
-Bugfix : The "don't save" button did_ save the changes (everywhere)!
-Bugfix : The "don't save" button _did_ save the changes (everywhere)!
-UI fix : The game executable file location dialog display of searched file types ("*.exe;*.bat;*.com") was borked (although it worked!)
-UI fix : The default game icon is now displayed as a 64*64 pixels image in the Add/Edit game window.
-Feature : IOCTL can be used with the CD drive mounted as D: ("-usecd 0 -ioctl" will be used). Or, if it's an image, it can be mounted as A: (floppy disk). Or none of both.
Expand Down Expand Up @@ -292,7 +324,7 @@ Future Plans (v1.1.1.x) :
1.0.2.5 (July 25 2009 01h45)
- Code refactoring : Just an unique string of random numbers is used as a signature now
for games and categories (no longer the MD5 hash of this signature)
- code refactoring / bug prevention : Generation of such signatures are now not_ a .GenerateHash (or .GenerateSignature)
- code refactoring / bug prevention : Generation of such signatures are now _not_ a .GenerateHash (or .GenerateSignature)
method of the class Category, but a lot nicer (and shorter) code in Main.cs : an IsItUnique private method, and do...while loops.
- "titre" XmlAttribute of the class Category replaced by "Title". Conversion (: retro-compatibility) code added on DSF_Load to preserve user data
- Code cleaning : properties-like code remove from the AddChild and RemoveChild method of the class AmpShell
Expand Down Expand Up @@ -363,7 +395,7 @@ New games can be added safely now.
-Bugfix : Error message ("Path cannot be empty or all whitespaces") when the user replies "No" to the question "Do you want to indicate DOSBox' executable location now ?"

1.0.0.7 (June 20 2009 - 11h06)
-Bugfix : "Run Game Setup" button now only available if the selected game has_ a setup executable
-Bugfix : "Run Game Setup" button now only available if the selected game _has_ a setup executable

1.0.0.6 (June 17 2009 - 0h00)
-Bugfix : mount command for the "directory mounted as C:" option not formatted correctly (now works both on Windows and GNU/Linux)
Expand Down Expand Up @@ -394,4 +426,4 @@ New games can be added safely now.
-first ChangeLog (previous numerous changes not logged)
-Bugfix : error message when clicking on "select a default language file..."
-Bugfix : error message when clicking on "select a default dosbox.conf..."
-Bugfix : "edit category", "delete category" buttons not available on first run after the fist category had been created
-Bugfix : "edit category", "delete category" buttons not available on first run after the fist category had been created

0 comments on commit 2adab70

Please sign in to comment.