diff --git a/License b/License.md
similarity index 100%
rename from License
rename to License.md
diff --git a/Readme.md b/Readme.md
index 853d542..c6db187 100644
--- a/Readme.md
+++ b/Readme.md
@@ -17,7 +17,6 @@ A midi player for Terrarian instruments such as the Harp and Bell. Terraria Midi
## About
* **Created By:** Robert Jordan
-* **Version:** 1.1.0.1
* **Language:** C#, WPF
## Requirements for Running
diff --git a/Sanford/Sanford.Multimedia.Midi.csproj b/Sanford/Sanford.Multimedia.Midi.csproj
index 370ebe4..6b0dea8 100644
--- a/Sanford/Sanford.Multimedia.Midi.csproj
+++ b/Sanford/Sanford.Multimedia.Midi.csproj
@@ -23,7 +23,7 @@
3.5
false
- v2.0
+ v4.5.2
publish\
true
Disk
@@ -43,6 +43,7 @@
obj\$(Configuration)\
False
C:\Users\TF\AppData\Roaming\ICSharpCode\SharpDevelop5\Settings.SourceAnalysis
+
bin\Debug\
@@ -63,6 +64,7 @@
0
Full
prompt
+ false
bin\Release\
@@ -85,6 +87,7 @@
0
pdbonly
prompt
+ false
AnyCPU
diff --git a/Sanford/Sanford.Multimedia.Midi/Clocks/PpqnClock.cs b/Sanford/Sanford.Multimedia.Midi/Clocks/PpqnClock.cs
index 1b21290..5658ddf 100644
--- a/Sanford/Sanford.Multimedia.Midi/Clocks/PpqnClock.cs
+++ b/Sanford/Sanford.Multimedia.Midi/Clocks/PpqnClock.cs
@@ -209,13 +209,8 @@ public int Ppqn
if(value < PpqnMinValue)
{
throw new ArgumentOutOfRangeException("Ppqn", value,
- "Pulses per quarter note out of range.");
- }
- else if(value % PpqnMinValue != 0)
- {
- throw new ArgumentException(
- "Pulses per quarter note is not a multiple of 24.");
- }
+ "Pulses per quarter note is smaller than 24.");
+ }
#endregion
diff --git a/Sanford/Sanford.Multimedia.Midi/Device Classes/OutputDevice Classes/OutputStream.cs b/Sanford/Sanford.Multimedia.Midi/Device Classes/OutputDevice Classes/OutputStream.cs
index 05ae820..5e265e6 100644
--- a/Sanford/Sanford.Multimedia.Midi/Device Classes/OutputDevice Classes/OutputStream.cs
+++ b/Sanford/Sanford.Multimedia.Midi/Device Classes/OutputDevice Classes/OutputStream.cs
@@ -529,10 +529,11 @@ public int Division
{
throw new ObjectDisposedException("OutputStream");
}
- else if((value % PpqnClock.PpqnMinValue) != 0)
+ else if(value < PpqnClock.PpqnMinValue)
{
- throw new ArgumentException();
- }
+ throw new ArgumentOutOfRangeException("Ppqn", value,
+ "Pulses per quarter note is smaller than 24.");
+ }
#endregion
diff --git a/Sanford/Sanford.Multimedia.Midi/Messages/Message Builders/SongPositionPointerBuilder.cs b/Sanford/Sanford.Multimedia.Midi/Messages/Message Builders/SongPositionPointerBuilder.cs
index 4222db0..a9962b4 100644
--- a/Sanford/Sanford.Multimedia.Midi/Messages/Message Builders/SongPositionPointerBuilder.cs
+++ b/Sanford/Sanford.Multimedia.Midi/Messages/Message Builders/SongPositionPointerBuilder.cs
@@ -193,11 +193,11 @@ public int Ppqn
{
#region Require
- if(value % PpqnClock.PpqnMinValue != 0)
+ if(value < PpqnClock.PpqnMinValue)
{
- throw new ArgumentException(
- "Invalid pulses per quarter note value.");
- }
+ throw new ArgumentOutOfRangeException("Ppqn", value,
+ "Pulses per quarter note is smaller than 24.");
+ }
#endregion
diff --git a/Sanford/Sanford.Multimedia.Midi/Sequencing/MidiFileProperties.cs b/Sanford/Sanford.Multimedia.Midi/Sequencing/MidiFileProperties.cs
index 8eda583..7950fde 100644
--- a/Sanford/Sanford.Multimedia.Midi/Sequencing/MidiFileProperties.cs
+++ b/Sanford/Sanford.Multimedia.Midi/Sequencing/MidiFileProperties.cs
@@ -100,12 +100,22 @@ public void Read(Stream strm)
#endregion
- format = trackCount = division = 0;
+ this.format = this.trackCount = this.division = 0;
- FindHeader(strm);
- Format = (int)ReadProperty(strm);
- TrackCount = (int)ReadProperty(strm);
- Division = (int)ReadProperty(strm);
+
+ FindHeader(strm);
+ int format = (int) ReadProperty(strm);
+ int trackCount = (int) ReadProperty(strm);
+ int division = (int) ReadProperty(strm);
+
+ // Division must be set first if Ppqn
+ Division = division;
+ Format = format;
+ TrackCount = trackCount;
+
+ //Format = (int)ReadProperty(strm);
+ //TrackCount = (int)ReadProperty(strm);
+ //Division = (int)ReadProperty(strm);
#region Invariant
@@ -245,7 +255,7 @@ private void AssertValid()
else
{
Debug.Assert(SequenceType == SequenceType.Ppqn);
- Debug.Assert(Division % PpqnClock.PpqnMinValue == 0);
+ Debug.Assert(Division >= PpqnClock.PpqnMinValue);
}
}
@@ -259,7 +269,7 @@ public int Format
{
#region Require
- if(value < 0 || value > 3)
+ if(value < 0 || value > 2)
{
throw new ArgumentOutOfRangeException("Format", value,
"MIDI file format out of range.");
@@ -347,11 +357,11 @@ public int Division
}
else
{
- if(value % PpqnClock.PpqnMinValue != 0)
+ if(value < PpqnClock.PpqnMinValue)
{
- throw new ArgumentException(
- "Invalid pulses per quarter note value.");
- }
+ throw new ArgumentOutOfRangeException("Ppqn", value,
+ "Pulses per quarter note is smaller than 24.");
+ }
else
{
sequenceType = SequenceType.Ppqn;
diff --git a/TerrariaMidiPlayer.sln b/TerrariaMidiPlayer.sln
index 1496673..2e96180 100644
--- a/TerrariaMidiPlayer.sln
+++ b/TerrariaMidiPlayer.sln
@@ -1,7 +1,7 @@
Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 14
-VisualStudioVersion = 14.0.25420.1
+# Visual Studio 15
+VisualStudioVersion = 15.0.28307.421
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TerrariaMidiPlayer", "TerrariaMidiPlayer\TerrariaMidiPlayer.csproj", "{9562FE49-6292-413D-83DF-005E86AD82AE}"
EndProject
@@ -25,4 +25,7 @@ Global
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {148A791B-DB48-4AAD-B338-818DC3EECFF7}
+ EndGlobalSection
EndGlobal
diff --git a/TerrariaMidiPlayer/Controls/TrackGraph.cs b/TerrariaMidiPlayer/Controls/TrackGraph.cs
index d3d06b0..4614585 100644
--- a/TerrariaMidiPlayer/Controls/TrackGraph.cs
+++ b/TerrariaMidiPlayer/Controls/TrackGraph.cs
@@ -337,9 +337,7 @@ protected override void OnRender(DrawingContext d) {
// Set guidelines for pixel perfection
GuidelineSet guidelines = new GuidelineSet();
guidelines.GuidelinesX.Add(0.5);
- guidelines.GuidelinesX.Add(ActualHeight + 0.5);
guidelines.GuidelinesY.Add(0.5);
- guidelines.GuidelinesY.Add(ActualWidth + 0.5);
d.PushGuidelineSet(guidelines);
// Highlight the midi's octave range
diff --git a/TerrariaMidiPlayer/Properties/AssemblyInfo.cs b/TerrariaMidiPlayer/Properties/AssemblyInfo.cs
index 23447bc..49bf9d7 100644
--- a/TerrariaMidiPlayer/Properties/AssemblyInfo.cs
+++ b/TerrariaMidiPlayer/Properties/AssemblyInfo.cs
@@ -12,7 +12,7 @@
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Trigger's Tools & Games")]
[assembly: AssemblyProduct("TerrariaMidiPlayer")]
-[assembly: AssemblyCopyright("Copyright © Robert Jordan 2017")]
+[assembly: AssemblyCopyright("Copyright © Robert Jordan {YEAR}")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
@@ -51,8 +51,8 @@
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.1.0.1")]
-[assembly: AssemblyFileVersion("1.1.0.1")]
+[assembly: AssemblyVersion("1.1.0.2")]
+[assembly: AssemblyFileVersion("1.1.0.2")]
[assembly: Guid("868163E6-E0A0-4035-AA63-3042476FD242")]
[assembly: NeutralResourcesLanguage("en-US")]
diff --git a/TerrariaMidiPlayer/TerrariaMidiPlayer.csproj b/TerrariaMidiPlayer/TerrariaMidiPlayer.csproj
index abb7b13..ffe824f 100644
--- a/TerrariaMidiPlayer/TerrariaMidiPlayer.csproj
+++ b/TerrariaMidiPlayer/TerrariaMidiPlayer.csproj
@@ -39,10 +39,6 @@
App.ico
-
- ..\packages\MouseKeyHook.5.4.0\lib\net40\Gma.System.MouseKeyHook.dll
- True
-
@@ -59,10 +55,6 @@
-
- ..\packages\Extended.Wpf.Toolkit.3.1\lib\net40\Xceed.Wpf.Toolkit.dll
- True
-
@@ -225,7 +217,6 @@
ResXFileCodeGenerator
Resources.Designer.cs
-
SettingsSingleFileGenerator
Settings.Designer.cs
@@ -346,6 +337,17 @@
+
+
+ 3.1.0
+
+
+ 5.4.0
+
+
+ 1.0.2
+
+