mirror of
https://github.com/digital-jellyfish/Virtu.git
synced 2024-11-23 03:33:44 +00:00
Upgraded to Visual Studio 2012.
Upgraded Wpf to .NET Framework 4.5. Removed Silverlight.Phone projects. Removed Xna, Xna.Phone and Xna.Xbox projects. RIP. --HG-- rename : Library/AssemblyCommentAttribute.cs => Library/AssemblyMetadataAttribute.cs
This commit is contained in:
parent
c149a7260c
commit
52f3cadfe1
@ -1,15 +0,0 @@
|
||||
using System;
|
||||
|
||||
namespace Jellyfish.Library
|
||||
{
|
||||
[AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true, Inherited = false)]
|
||||
public sealed class AssemblyCommentAttribute : Attribute
|
||||
{
|
||||
public AssemblyCommentAttribute(string comment)
|
||||
{
|
||||
Comment = comment;
|
||||
}
|
||||
|
||||
public string Comment { get; private set; }
|
||||
}
|
||||
}
|
17
Library/AssemblyMetadataAttribute.cs
Normal file
17
Library/AssemblyMetadataAttribute.cs
Normal file
@ -0,0 +1,17 @@
|
||||
using System;
|
||||
|
||||
namespace Jellyfish.Library
|
||||
{
|
||||
[AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true, Inherited = false)]
|
||||
public sealed class AssemblyMetadataAttribute : Attribute
|
||||
{
|
||||
public AssemblyMetadataAttribute(string key, string value)
|
||||
{
|
||||
Key = key;
|
||||
Value = value;
|
||||
}
|
||||
|
||||
public string Key { get; private set; }
|
||||
public string Value { get; private set; }
|
||||
}
|
||||
}
|
@ -2,7 +2,6 @@
|
||||
<Dictionary>
|
||||
<Words>
|
||||
<Recognized>
|
||||
<Word>Alloc</Word>
|
||||
<Word>x</Word>
|
||||
<Word>y</Word>
|
||||
</Recognized>
|
||||
|
@ -1,266 +0,0 @@
|
||||
using System;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Security;
|
||||
using System.Security.AccessControl;
|
||||
using System.Security.Principal;
|
||||
|
||||
namespace Jellyfish.Library
|
||||
{
|
||||
[StructLayout(LayoutKind.Sequential)]
|
||||
public sealed class SecurityAttributes
|
||||
{
|
||||
public SecurityAttributes()
|
||||
{
|
||||
_length = Marshal.SizeOf(typeof(SecurityAttributes));
|
||||
}
|
||||
|
||||
public int Length { get { return _length; } }
|
||||
public IntPtr SecurityDescriptor { get { return _securityDescriptor; } set { _securityDescriptor = value; } }
|
||||
public bool InheritHandle { get { return _inheritHandle; } set { _inheritHandle = value; } }
|
||||
|
||||
private int _length;
|
||||
private IntPtr _securityDescriptor;
|
||||
private bool _inheritHandle;
|
||||
}
|
||||
|
||||
public sealed class GeneralAccessRule : AccessRule
|
||||
{
|
||||
public GeneralAccessRule(IdentityReference identity, int rights, AccessControlType type) :
|
||||
base(identity, rights, false, InheritanceFlags.None, PropagationFlags.None, type)
|
||||
{
|
||||
}
|
||||
|
||||
public GeneralAccessRule(IdentityReference identity, int rights, InheritanceFlags inheritance, PropagationFlags propagation, AccessControlType type) :
|
||||
base(identity, rights, false, inheritance, propagation, type)
|
||||
{
|
||||
}
|
||||
|
||||
public GeneralAccessRule(IdentityReference identity, int rights, bool isInherited, InheritanceFlags inheritance, PropagationFlags propagation, AccessControlType type) :
|
||||
base(identity, rights, isInherited, inheritance, propagation, type)
|
||||
{
|
||||
}
|
||||
|
||||
public int AccessRights { get { return AccessMask; } }
|
||||
}
|
||||
|
||||
public sealed class GeneralAuditRule : AuditRule
|
||||
{
|
||||
public GeneralAuditRule(IdentityReference identity, int rights, AuditFlags audit) :
|
||||
base(identity, rights, false, InheritanceFlags.None, PropagationFlags.None, audit)
|
||||
{
|
||||
}
|
||||
|
||||
public GeneralAuditRule(IdentityReference identity, int rights, InheritanceFlags inheritance, PropagationFlags propagation, AuditFlags audit) :
|
||||
base(identity, rights, false, inheritance, propagation, audit)
|
||||
{
|
||||
}
|
||||
|
||||
public GeneralAuditRule(IdentityReference identity, int rights, bool isInherited, InheritanceFlags inheritance, PropagationFlags propagation, AuditFlags audit) :
|
||||
base(identity, rights, isInherited, inheritance, propagation, audit)
|
||||
{
|
||||
}
|
||||
|
||||
public int AccessRights { get { return AccessMask; } }
|
||||
}
|
||||
|
||||
public sealed class GeneralSecurity : NativeObjectSecurity
|
||||
{
|
||||
public GeneralSecurity(bool isContainer, ResourceType resourceType) :
|
||||
base(isContainer, resourceType)
|
||||
{
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
|
||||
public GeneralSecurity(bool isContainer, ResourceType resourceType, SafeHandle handle, AccessControlSections includeSections = AccessControlSections.Access | AccessControlSections.Group | AccessControlSections.Owner) :
|
||||
base(isContainer, resourceType, handle, includeSections)
|
||||
{
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
|
||||
public GeneralSecurity(bool isContainer, ResourceType resourceType, string name, AccessControlSections includeSections = AccessControlSections.Access | AccessControlSections.Group | AccessControlSections.Owner) :
|
||||
base(isContainer, resourceType, name, includeSections)
|
||||
{
|
||||
}
|
||||
|
||||
public override AccessRule AccessRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AccessControlType type)
|
||||
{
|
||||
return new GeneralAccessRule(identityReference, accessMask, isInherited, inheritanceFlags, propagationFlags, type);
|
||||
}
|
||||
|
||||
public override AuditRule AuditRuleFactory(IdentityReference identityReference, int accessMask, bool isInherited, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, AuditFlags flags)
|
||||
{
|
||||
return new GeneralAuditRule(identityReference, accessMask, isInherited, inheritanceFlags, propagationFlags, flags);
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")]
|
||||
public void AddAccessRule(GeneralAccessRule rule)
|
||||
{
|
||||
base.AddAccessRule(rule);
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")]
|
||||
public void AddAuditRule(GeneralAuditRule rule)
|
||||
{
|
||||
base.AddAuditRule(rule);
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
|
||||
[SecurityCritical]
|
||||
public void GetSecurityAttributes(Action<SecurityAttributes> action, bool inheritable = false)
|
||||
{
|
||||
GetSecurityAttributes(this, action, inheritable);
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
|
||||
[SecurityCritical]
|
||||
public static void GetSecurityAttributes(ObjectSecurity security, Action<SecurityAttributes> action, bool inheritable = false)
|
||||
{
|
||||
if (action == null)
|
||||
{
|
||||
throw new ArgumentNullException("action");
|
||||
}
|
||||
|
||||
if (security != null)
|
||||
{
|
||||
GCHandleHelpers.Pin(security.GetSecurityDescriptorBinaryForm(), securityDescriptor =>
|
||||
{
|
||||
action(new SecurityAttributes() { SecurityDescriptor = securityDescriptor, InheritHandle = inheritable });
|
||||
});
|
||||
}
|
||||
else if (inheritable)
|
||||
{
|
||||
action(new SecurityAttributes() { InheritHandle = inheritable });
|
||||
}
|
||||
else
|
||||
{
|
||||
action(null);
|
||||
}
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")]
|
||||
public bool RemoveAccessRule(GeneralAccessRule rule)
|
||||
{
|
||||
return base.RemoveAccessRule(rule);
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")]
|
||||
public void RemoveAccessRuleAll(GeneralAccessRule rule)
|
||||
{
|
||||
base.RemoveAccessRuleAll(rule);
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")]
|
||||
public void RemoveAccessRuleSpecific(GeneralAccessRule rule)
|
||||
{
|
||||
base.RemoveAccessRuleSpecific(rule);
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")]
|
||||
public bool RemoveAuditRule(GeneralAuditRule rule)
|
||||
{
|
||||
return base.RemoveAuditRule(rule);
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")]
|
||||
public void RemoveAuditRuleAll(GeneralAuditRule rule)
|
||||
{
|
||||
base.RemoveAuditRuleAll(rule);
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")]
|
||||
public void RemoveAuditRuleSpecific(GeneralAuditRule rule)
|
||||
{
|
||||
base.RemoveAuditRuleSpecific(rule);
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")]
|
||||
public void ResetAccessRule(GeneralAccessRule rule)
|
||||
{
|
||||
base.ResetAccessRule(rule);
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")]
|
||||
public void SetAccessRule(GeneralAccessRule rule)
|
||||
{
|
||||
base.SetAccessRule(rule);
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")]
|
||||
public void SetAuditRule(GeneralAuditRule rule)
|
||||
{
|
||||
base.SetAuditRule(rule);
|
||||
}
|
||||
|
||||
public void Persist(SafeHandle handle)
|
||||
{
|
||||
WriteLock();
|
||||
try
|
||||
{
|
||||
var sectionsModified = GetAccessControlSectionsModified();
|
||||
if (sectionsModified != AccessControlSections.None)
|
||||
{
|
||||
Persist(handle, sectionsModified);
|
||||
ResetAccessControlSectionsModified();
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
WriteUnlock();
|
||||
}
|
||||
}
|
||||
|
||||
public void Persist(string name)
|
||||
{
|
||||
WriteLock();
|
||||
try
|
||||
{
|
||||
var sectionsModified = GetAccessControlSectionsModified();
|
||||
if (sectionsModified != AccessControlSections.None)
|
||||
{
|
||||
Persist(name, sectionsModified);
|
||||
ResetAccessControlSectionsModified();
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
WriteUnlock();
|
||||
}
|
||||
}
|
||||
|
||||
private AccessControlSections GetAccessControlSectionsModified()
|
||||
{
|
||||
var sectionsModified = AccessControlSections.None;
|
||||
if (AccessRulesModified)
|
||||
{
|
||||
sectionsModified = AccessControlSections.Access;
|
||||
}
|
||||
if (AuditRulesModified)
|
||||
{
|
||||
sectionsModified |= AccessControlSections.Audit;
|
||||
}
|
||||
if (OwnerModified)
|
||||
{
|
||||
sectionsModified |= AccessControlSections.Owner;
|
||||
}
|
||||
if (GroupModified)
|
||||
{
|
||||
sectionsModified |= AccessControlSections.Group;
|
||||
}
|
||||
|
||||
return sectionsModified;
|
||||
}
|
||||
|
||||
private void ResetAccessControlSectionsModified()
|
||||
{
|
||||
AccessRulesModified = false;
|
||||
AuditRulesModified = false;
|
||||
OwnerModified = false;
|
||||
GroupModified = false;
|
||||
}
|
||||
|
||||
public override Type AccessRightType { get { return typeof(int); } }
|
||||
public override Type AccessRuleType { get { return typeof(GeneralAccessRule); } }
|
||||
public override Type AuditRuleType { get { return typeof(GeneralAuditRule); } }
|
||||
}
|
||||
}
|
@ -1,44 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<FxCopProject Version="10.0" Name="Jellyfish.Library">
|
||||
<ProjectOptions>
|
||||
<SharedProject>True</SharedProject>
|
||||
<Stylesheet Apply="False">$(FxCopDir)\Xml\FxCopReport.xsl</Stylesheet>
|
||||
<SaveMessages>
|
||||
<Project Status="Active, Excluded" NewOnly="False" />
|
||||
<Report Status="Active" NewOnly="False" />
|
||||
</SaveMessages>
|
||||
<ProjectFile Compress="True" DefaultTargetCheck="True" DefaultRuleCheck="True" SaveByRuleGroup="" Deterministic="True" />
|
||||
<EnableMultithreadedLoad>True</EnableMultithreadedLoad>
|
||||
<EnableMultithreadedAnalysis>True</EnableMultithreadedAnalysis>
|
||||
<SourceLookup>True</SourceLookup>
|
||||
<AnalysisExceptionsThreshold>10</AnalysisExceptionsThreshold>
|
||||
<RuleExceptionsThreshold>1</RuleExceptionsThreshold>
|
||||
<Spelling Locale="en-US" />
|
||||
<OverrideRuleVisibilities>False</OverrideRuleVisibilities>
|
||||
<CustomDictionaries SearchFxCopDir="True" SearchUserProfile="True" SearchProjectDir="True" />
|
||||
<SearchGlobalAssemblyCache>True</SearchGlobalAssemblyCache>
|
||||
<DeadlockDetectionTimeout>120</DeadlockDetectionTimeout>
|
||||
<IgnoreGeneratedCode>True</IgnoreGeneratedCode>
|
||||
</ProjectOptions>
|
||||
<Targets>
|
||||
<Target Name="$(ProjectDir)/Wpf/bin/Jellyfish.Library.dll" Analyze="True" AnalyzeAllChildren="True" />
|
||||
<Target Name="$(ProjectDir)/Xna/bin/x86/Jellyfish.Library.dll" Analyze="True" AnalyzeAllChildren="True" />
|
||||
</Targets>
|
||||
<Rules>
|
||||
<RuleFiles>
|
||||
<RuleFile Name="$(FxCopDir)\Rules\DesignRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\GlobalizationRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\InteroperabilityRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\MobilityRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\NamingRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\PerformanceRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\PortabilityRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\SecurityRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\SecurityTransparencyRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\UsageRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
</RuleFiles>
|
||||
<Groups />
|
||||
<Settings />
|
||||
</Rules>
|
||||
<FxCopReport Version="10.0" />
|
||||
</FxCopProject>
|
@ -1,122 +1,24 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2012
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Silverlight", "Silverlight\Jellyfish.Library.Silverlight.csproj", "{99CA7796-B72A-4F8C-BCDB-0D688220A331}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Silverlight.Phone", "Silverlight\Phone\Jellyfish.Library.Silverlight.Phone.csproj", "{D4880706-29A6-449C-A2A6-3058C37583DA}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Wpf", "Wpf\Jellyfish.Library.Wpf.csproj", "{93900841-7250-4D3A-837E-43EE3FD118DC}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Xna", "Xna\Jellyfish.Library.Xna.csproj", "{82F56318-A1FD-4078-A42F-06CAB8B97F63}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Xna.Phone", "Xna\Jellyfish.Library.Xna.Phone.csproj", "{46B2BD23-3D45-4268-9979-B9CF136CC982}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Xna.Xbox", "Xna\Jellyfish.Library.Xna.Xbox.csproj", "{222412EE-A626-493F-AE72-344657A6840D}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Debug|Mixed Platforms = Debug|Mixed Platforms
|
||||
Debug|Windows Phone = Debug|Windows Phone
|
||||
Debug|x86 = Debug|x86
|
||||
Debug|Xbox 360 = Debug|Xbox 360
|
||||
Release|Any CPU = Release|Any CPU
|
||||
Release|Mixed Platforms = Release|Mixed Platforms
|
||||
Release|Windows Phone = Release|Windows Phone
|
||||
Release|x86 = Release|x86
|
||||
Release|Xbox 360 = Release|Xbox 360
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Windows Phone.ActiveCfg = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Xbox 360.ActiveCfg = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Windows Phone.ActiveCfg = Release|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Xbox 360.ActiveCfg = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|Windows Phone.ActiveCfg = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|Xbox 360.ActiveCfg = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|Windows Phone.ActiveCfg = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|Xbox 360.ActiveCfg = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|Windows Phone.ActiveCfg = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|Xbox 360.ActiveCfg = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|Windows Phone.ActiveCfg = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|Xbox 360.ActiveCfg = Release|Any CPU
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Mixed Platforms.Build.0 = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Windows Phone.ActiveCfg = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Windows Phone.Build.0 = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|x86.Build.0 = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Xbox 360.ActiveCfg = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Xbox 360.Build.0 = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Mixed Platforms.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Mixed Platforms.Build.0 = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Windows Phone.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Windows Phone.Build.0 = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|x86.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|x86.Build.0 = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Xbox 360.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Xbox 360.Build.0 = Release|x86
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Any CPU.ActiveCfg = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Mixed Platforms.ActiveCfg = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Mixed Platforms.Build.0 = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Windows Phone.ActiveCfg = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Windows Phone.Build.0 = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|x86.ActiveCfg = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Xbox 360.ActiveCfg = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Xbox 360.Build.0 = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Any CPU.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Mixed Platforms.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Mixed Platforms.Build.0 = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Windows Phone.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Windows Phone.Build.0 = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|x86.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Xbox 360.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Xbox 360.Build.0 = Release|Windows Phone
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Windows Phone.ActiveCfg = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|x86.ActiveCfg = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Xbox 360.Build.0 = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Any CPU.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Mixed Platforms.Build.0 = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Windows Phone.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|x86.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Xbox 360.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Xbox 360.Build.0 = Release|Xbox 360
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
@ -1,35 +0,0 @@
|
||||
using System;
|
||||
|
||||
namespace Jellyfish.Library
|
||||
{
|
||||
public sealed class Lazy<T> where T : class
|
||||
{
|
||||
public Lazy(Func<T> initializer)
|
||||
{
|
||||
_initializer = initializer;
|
||||
}
|
||||
|
||||
public T Value
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_value == null)
|
||||
{
|
||||
lock (_lock)
|
||||
{
|
||||
if (_value == null)
|
||||
{
|
||||
_value = _initializer();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return _value;
|
||||
}
|
||||
}
|
||||
|
||||
private Func<T> _initializer;
|
||||
private readonly object _lock = new object();
|
||||
private volatile T _value;
|
||||
}
|
||||
}
|
@ -1,149 +0,0 @@
|
||||
using System;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Runtime.ConstrainedExecution;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Security;
|
||||
using Microsoft.Win32.SafeHandles;
|
||||
|
||||
namespace Jellyfish.Library
|
||||
{
|
||||
[SecurityCritical]
|
||||
public abstract class SafeAllocHandle : SafeHandleZeroOrMinusOneIsInvalid
|
||||
{
|
||||
[ReliabilityContract(Consistency.WillNotCorruptState, Cer.MayFail)]
|
||||
protected SafeAllocHandle(bool ownsHandle) :
|
||||
base(ownsHandle)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
[SecurityCritical]
|
||||
public sealed class SafeGlobalAllocHandle : SafeAllocHandle
|
||||
{
|
||||
[ReliabilityContract(Consistency.WillNotCorruptState, Cer.MayFail)]
|
||||
public SafeGlobalAllocHandle() :
|
||||
base(ownsHandle: true)
|
||||
{
|
||||
}
|
||||
|
||||
[ReliabilityContract(Consistency.WillNotCorruptState, Cer.MayFail)]
|
||||
public SafeGlobalAllocHandle(IntPtr existingHandle, bool ownsHandle) :
|
||||
base(ownsHandle)
|
||||
{
|
||||
SetHandle(existingHandle);
|
||||
}
|
||||
|
||||
[SecurityCritical]
|
||||
public static SafeGlobalAllocHandle Allocate(byte[] value)
|
||||
{
|
||||
if (value == null)
|
||||
{
|
||||
throw new ArgumentNullException("value");
|
||||
}
|
||||
|
||||
var alloc = Allocate(value.Length);
|
||||
Marshal.Copy(value, 0, alloc.DangerousGetHandle(), value.Length);
|
||||
|
||||
return alloc;
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
|
||||
[SuppressMessage("Microsoft.Naming", "CA1726:UsePreferredTerms", MessageId = "flags")]
|
||||
[SecurityCritical]
|
||||
public static SafeGlobalAllocHandle Allocate(int size, uint flags = 0x0)
|
||||
{
|
||||
var alloc = NativeMethods.GlobalAlloc(flags, (IntPtr)size);
|
||||
if (alloc.IsInvalid)
|
||||
{
|
||||
Marshal.ThrowExceptionForHR(Marshal.GetHRForLastWin32Error());
|
||||
}
|
||||
|
||||
return alloc;
|
||||
}
|
||||
|
||||
[ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
|
||||
[SecurityCritical]
|
||||
protected override bool ReleaseHandle()
|
||||
{
|
||||
return (NativeMethods.GlobalFree(handle) == IntPtr.Zero);
|
||||
}
|
||||
|
||||
[SecurityCritical]
|
||||
[SuppressUnmanagedCodeSecurity]
|
||||
private static class NativeMethods
|
||||
{
|
||||
[SuppressMessage("Microsoft.Security", "CA2118:ReviewSuppressUnmanagedCodeSecurityUsage")]
|
||||
[DllImport("kernel32.dll", SetLastError = true)]
|
||||
public static extern SafeGlobalAllocHandle GlobalAlloc(uint dwFlags, IntPtr sizetBytes);
|
||||
|
||||
[DllImport("kernel32.dll", SetLastError = true)]
|
||||
[ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
|
||||
public static extern IntPtr GlobalFree(IntPtr hMem);
|
||||
}
|
||||
}
|
||||
|
||||
[SecurityCritical]
|
||||
public sealed class SafeLocalAllocHandle : SafeAllocHandle
|
||||
{
|
||||
[ReliabilityContract(Consistency.WillNotCorruptState, Cer.MayFail)]
|
||||
public SafeLocalAllocHandle() :
|
||||
base(ownsHandle: true)
|
||||
{
|
||||
}
|
||||
|
||||
[ReliabilityContract(Consistency.WillNotCorruptState, Cer.MayFail)]
|
||||
public SafeLocalAllocHandle(IntPtr existingHandle, bool ownsHandle) :
|
||||
base(ownsHandle)
|
||||
{
|
||||
SetHandle(existingHandle);
|
||||
}
|
||||
|
||||
[SecurityCritical]
|
||||
public static SafeLocalAllocHandle Allocate(byte[] value)
|
||||
{
|
||||
if (value == null)
|
||||
{
|
||||
throw new ArgumentNullException("value");
|
||||
}
|
||||
|
||||
var alloc = Allocate(value.Length);
|
||||
Marshal.Copy(value, 0, alloc.DangerousGetHandle(), value.Length);
|
||||
|
||||
return alloc;
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
|
||||
[SuppressMessage("Microsoft.Naming", "CA1726:UsePreferredTerms", MessageId = "flags")]
|
||||
[SecurityCritical]
|
||||
public static SafeLocalAllocHandle Allocate(int size, uint flags = 0x0)
|
||||
{
|
||||
var alloc = NativeMethods.LocalAlloc(flags, (IntPtr)size);
|
||||
if (alloc.IsInvalid)
|
||||
{
|
||||
Marshal.ThrowExceptionForHR(Marshal.GetHRForLastWin32Error());
|
||||
}
|
||||
|
||||
return alloc;
|
||||
}
|
||||
|
||||
[ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
|
||||
[SecurityCritical]
|
||||
protected override bool ReleaseHandle()
|
||||
{
|
||||
return (NativeMethods.LocalFree(handle) == IntPtr.Zero);
|
||||
}
|
||||
|
||||
[SecurityCritical]
|
||||
[SuppressUnmanagedCodeSecurity]
|
||||
private static class NativeMethods
|
||||
{
|
||||
[SuppressMessage("Microsoft.Security", "CA2118:ReviewSuppressUnmanagedCodeSecurityUsage")]
|
||||
[DllImport("kernel32.dll", SetLastError = true)]
|
||||
public static extern SafeLocalAllocHandle LocalAlloc(uint dwFlags, IntPtr sizetBytes);
|
||||
|
||||
[DllImport("kernel32.dll", SetLastError = true)]
|
||||
[ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
|
||||
public static extern IntPtr LocalFree(IntPtr hMem);
|
||||
}
|
||||
}
|
||||
}
|
@ -1,97 +0,0 @@
|
||||
using System;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.IO;
|
||||
using System.Runtime.ConstrainedExecution;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Security;
|
||||
using System.Security.AccessControl;
|
||||
using Microsoft.Win32.SafeHandles;
|
||||
|
||||
namespace Jellyfish.Library
|
||||
{
|
||||
[SecurityCritical]
|
||||
public sealed class SafeFileHandle : SafeHandleZeroOrMinusOneIsInvalid
|
||||
{
|
||||
[ReliabilityContract(Consistency.WillNotCorruptState, Cer.MayFail)]
|
||||
public SafeFileHandle() :
|
||||
base(ownsHandle: true)
|
||||
{
|
||||
}
|
||||
|
||||
[ReliabilityContract(Consistency.WillNotCorruptState, Cer.MayFail)]
|
||||
public SafeFileHandle(IntPtr existingHandle, bool ownsHandle) :
|
||||
base(ownsHandle)
|
||||
{
|
||||
SetHandle(existingHandle);
|
||||
}
|
||||
|
||||
[SecurityCritical]
|
||||
public static SafeFileHandle CreateFile(string fileName, FileAccess fileAccess, FileShare fileShare, FileMode fileMode, GeneralSecurity fileSecurity)
|
||||
{
|
||||
if (fileMode == FileMode.Append)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
bool inheritable = ((fileShare & FileShare.Inheritable) != 0);
|
||||
fileShare &= ~FileShare.Inheritable;
|
||||
|
||||
return CreateFile(fileName, (uint)fileAccess, (uint)fileShare, (uint)fileMode, 0x0, fileSecurity, inheritable);
|
||||
}
|
||||
|
||||
[ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
|
||||
[SecurityCritical]
|
||||
protected override bool ReleaseHandle()
|
||||
{
|
||||
return NativeMethods.CloseHandle(handle);
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate")]
|
||||
public GeneralSecurity GetAccessControl()
|
||||
{
|
||||
return new GeneralSecurity(false, ResourceType.FileObject, this);
|
||||
}
|
||||
|
||||
public void SetAccessControl(GeneralSecurity fileSecurity)
|
||||
{
|
||||
if (fileSecurity == null)
|
||||
{
|
||||
throw new ArgumentNullException("fileSecurity");
|
||||
}
|
||||
|
||||
fileSecurity.Persist(this);
|
||||
}
|
||||
|
||||
[SecurityCritical]
|
||||
private static SafeFileHandle CreateFile(string fileName, uint fileAccess, uint fileShare, uint fileMode, uint fileOptions, GeneralSecurity fileSecurity,
|
||||
bool inheritable = false)
|
||||
{
|
||||
var file = new SafeFileHandle();
|
||||
|
||||
GeneralSecurity.GetSecurityAttributes(fileSecurity, securityAttributes =>
|
||||
{
|
||||
file = NativeMethods.CreateFile(fileName, fileAccess, fileShare, securityAttributes, fileMode, fileOptions, IntPtr.Zero);
|
||||
if (file.IsInvalid)
|
||||
{
|
||||
Marshal.ThrowExceptionForHR(Marshal.GetHRForLastWin32Error());
|
||||
}
|
||||
}, inheritable);
|
||||
|
||||
return file;
|
||||
}
|
||||
|
||||
[SecurityCritical]
|
||||
[SuppressUnmanagedCodeSecurity]
|
||||
private static class NativeMethods
|
||||
{
|
||||
[DllImport("kernel32.dll", SetLastError = true)]
|
||||
[ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
|
||||
[return: MarshalAs(UnmanagedType.Bool)]
|
||||
public static extern bool CloseHandle(IntPtr handle);
|
||||
|
||||
[DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)]
|
||||
public static extern SafeFileHandle CreateFile(string lpFileName, uint dwDesiredAccess, uint dwShareMode, SecurityAttributes lpSecurityAttributes,
|
||||
uint dwCreationDisposition, uint dwFlagsAndAttributes, IntPtr hTemplateFile);
|
||||
}
|
||||
}
|
||||
}
|
@ -2,11 +2,6 @@
|
||||
using System.Diagnostics;
|
||||
using System.Text;
|
||||
using System.Windows;
|
||||
#if WINDOWS_PHONE
|
||||
using System.Windows.Navigation;
|
||||
using Microsoft.Phone.Controls;
|
||||
using Microsoft.Phone.Shell;
|
||||
#endif
|
||||
|
||||
namespace Jellyfish.Library
|
||||
{
|
||||
@ -33,7 +28,6 @@ protected ApplicationBase(string name)
|
||||
}
|
||||
}
|
||||
|
||||
#if !WINDOWS_PHONE
|
||||
protected void InitializeOutOfBrowserUpdate()
|
||||
{
|
||||
if (IsRunningOutOfBrowser)
|
||||
@ -42,20 +36,6 @@ protected void InitializeOutOfBrowserUpdate()
|
||||
CheckAndDownloadUpdateAsync();
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
#if WINDOWS_PHONE
|
||||
protected void InitializePhoneApplication()
|
||||
{
|
||||
if (!_phoneApplicationInitialized)
|
||||
{
|
||||
RootFrame = new PhoneApplicationFrame();
|
||||
RootFrame.Navigated += OnRootFrameNavigated;
|
||||
RootFrame.NavigationFailed += OnRootFrameNavigationFailed;
|
||||
_phoneApplicationInitialized = true;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
private string GetExceptionCaption(string title, bool isTerminating = false)
|
||||
{
|
||||
@ -73,7 +53,6 @@ private string GetExceptionCaption(string title, bool isTerminating = false)
|
||||
return caption.ToString();
|
||||
}
|
||||
|
||||
#if !WINDOWS_PHONE
|
||||
private void OnApplicationCheckAndDownloadUpdateCompleted(object sender, CheckAndDownloadUpdateCompletedEventArgs e)
|
||||
{
|
||||
if (e.Error != null)
|
||||
@ -92,7 +71,6 @@ private void OnApplicationCheckAndDownloadUpdateCompleted(object sender, CheckAn
|
||||
MessageBox.Show("An application update was downloaded. Restart the application to run the latest version.");
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
private void OnApplicationUnhandledException(object sender, ApplicationUnhandledExceptionEventArgs e)
|
||||
{
|
||||
@ -112,30 +90,6 @@ private void OnApplicationUnhandledException(object sender, ApplicationUnhandled
|
||||
// }
|
||||
//}
|
||||
|
||||
#if WINDOWS_PHONE
|
||||
private void OnRootFrameNavigated(object sender, NavigationEventArgs e)
|
||||
{
|
||||
if (RootVisual != RootFrame)
|
||||
{
|
||||
RootVisual = RootFrame;
|
||||
}
|
||||
RootFrame.Navigated -= OnRootFrameNavigated;
|
||||
}
|
||||
|
||||
private void OnRootFrameNavigationFailed(object sender, NavigationFailedEventArgs e)
|
||||
{
|
||||
if (Debugger.IsAttached)
|
||||
{
|
||||
Debugger.Break();
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
public string Name { get; private set; }
|
||||
#if WINDOWS_PHONE
|
||||
public PhoneApplicationFrame RootFrame { get; private set; }
|
||||
|
||||
private bool _phoneApplicationInitialized;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
@ -68,8 +68,8 @@
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\AssemblyCommentAttribute.cs">
|
||||
<Link>AssemblyCommentAttribute.cs</Link>
|
||||
<Compile Include="..\AssemblyMetadataAttribute.cs">
|
||||
<Link>AssemblyMetadataAttribute.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\DispatcherExtensions.cs">
|
||||
<Link>DispatcherExtensions.cs</Link>
|
||||
@ -90,9 +90,6 @@
|
||||
<Compile Include="..\MathHelpers.cs">
|
||||
<Link>MathHelpers.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\SingletonFactory.cs">
|
||||
<Link>SingletonFactory.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\StreamExtensions.cs">
|
||||
<Link>StreamExtensions.cs</Link>
|
||||
</Compile>
|
||||
|
@ -1,10 +1,8 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2012
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Silverlight", "Jellyfish.Library.Silverlight.csproj", "{99CA7796-B72A-4F8C-BCDB-0D688220A331}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Silverlight.Phone", "Phone\Jellyfish.Library.Silverlight.Phone.csproj", "{D4880706-29A6-449C-A2A6-3058C37583DA}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
@ -15,10 +13,6 @@ Global
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
@ -1,13 +0,0 @@
|
||||
<UserControl x:Class="Jellyfish.Library.FrameRateCounter" x:Name="frameRateControl"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:jl="clr-namespace:Jellyfish.Library;assembly=Jellyfish.Library">
|
||||
<UserControl.Resources>
|
||||
<jl:StringFormatConverter x:Key="StringFormatConverter"/>
|
||||
</UserControl.Resources>
|
||||
<TextBlock FontFamily="Consolas" FontSize="12" Foreground="White">
|
||||
<TextBlock.Text>
|
||||
<Binding Path="FrameRate" ElementName="frameRateControl" Converter="{StaticResource StringFormatConverter}" ConverterParameter="{}{0:D} fps"/>
|
||||
</TextBlock.Text>
|
||||
</TextBlock>
|
||||
</UserControl>
|
@ -1,42 +0,0 @@
|
||||
using System;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Media;
|
||||
|
||||
namespace Jellyfish.Library
|
||||
{
|
||||
public sealed partial class FrameRateCounter : UserControl
|
||||
{
|
||||
public FrameRateCounter()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
CompositionTarget.Rendering += OnCompositionTargetRendering;
|
||||
}
|
||||
|
||||
private void OnCompositionTargetRendering(object sender, EventArgs e)
|
||||
{
|
||||
_frameCount++;
|
||||
|
||||
long time = DateTime.UtcNow.Ticks;
|
||||
if (time - _lastTime >= TimeSpan.TicksPerSecond)
|
||||
{
|
||||
_lastTime = time;
|
||||
FrameRate = _frameCount;
|
||||
_frameCount = 0;
|
||||
}
|
||||
}
|
||||
|
||||
public static readonly DependencyProperty FrameRateProperty = DependencyProperty.Register("FrameRate", typeof(int), typeof(FrameRateCounter),
|
||||
new PropertyMetadata(0));
|
||||
|
||||
public int FrameRate
|
||||
{
|
||||
get { return (int)GetValue(FrameRateProperty); }
|
||||
set { SetValue(FrameRateProperty, value); }
|
||||
}
|
||||
|
||||
private int _frameCount;
|
||||
private long _lastTime;
|
||||
}
|
||||
}
|
@ -1,131 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProductVersion>10.0.20506</ProductVersion>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>{D4880706-29A6-449C-A2A6-3058C37583DA}</ProjectGuid>
|
||||
<ProjectTypeGuids>{C089C8C0-30E0-4E22-80C0-CE093F111A43};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>Jellyfish.Library</RootNamespace>
|
||||
<AssemblyName>Jellyfish.Library</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<SilverlightVersion>$(TargetFrameworkVersion)</SilverlightVersion>
|
||||
<TargetFrameworkProfile>WindowsPhone</TargetFrameworkProfile>
|
||||
<TargetFrameworkIdentifier>Silverlight</TargetFrameworkIdentifier>
|
||||
<SilverlightApplication>false</SilverlightApplication>
|
||||
<ValidateXaml>true</ValidateXaml>
|
||||
<ThrowErrorsInValidation>true</ThrowErrorsInValidation>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE;SILVERLIGHT;WINDOWS_PHONE;CODE_ANALYSIS</DefineConstants>
|
||||
<NoStdLib>true</NoStdLib>
|
||||
<NoConfig>true</NoConfig>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\</OutputPath>
|
||||
<DefineConstants>TRACE;SILVERLIGHT;WINDOWS_PHONE;CODE_ANALYSIS</DefineConstants>
|
||||
<NoStdLib>true</NoStdLib>
|
||||
<NoConfig>true</NoConfig>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<SignAssembly>false</SignAssembly>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\..\Jellyfish\StrongName.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.Phone" />
|
||||
<Reference Include="mscorlib" />
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Net" />
|
||||
<Reference Include="System.Windows" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\..\AssemblyCommentAttribute.cs">
|
||||
<Link>AssemblyCommentAttribute.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\DispatcherExtensions.cs">
|
||||
<Link>DispatcherExtensions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\DisposableBase.cs">
|
||||
<Link>DisposableBase.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GlobalSuppressions.cs">
|
||||
<Link>GlobalSuppressions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\IEnumerableExtensions.cs">
|
||||
<Link>IEnumerableExtensions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Lazy.cs">
|
||||
<Link>Lazy.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\MathHelpers.cs">
|
||||
<Link>MathHelpers.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\SingletonFactory.cs">
|
||||
<Link>SingletonFactory.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\StreamExtensions.cs">
|
||||
<Link>StreamExtensions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\StringBuilderExtensions.cs">
|
||||
<Link>StringBuilderExtensions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\WaveFormat.cs">
|
||||
<Link>WaveFormat.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\ApplicationBase.cs">
|
||||
<Link>ApplicationBase.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\WaveMediaStreamSource.cs">
|
||||
<Link>WaveMediaStreamSource.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="FrameRateCounter.xaml.cs">
|
||||
<DependentUpon>FrameRateCounter.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="StringFormatConverter.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Page Include="FrameRateCounter.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<CodeAnalysisDictionary Include="..\..\CustomDictionary.xml">
|
||||
<Link>CustomDictionary.xml</Link>
|
||||
</CodeAnalysisDictionary>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\Microsoft\Silverlight for Phone\$(TargetFrameworkVersion)\Microsoft.Silverlight.$(TargetFrameworkProfile).Overrides.targets" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Microsoft\Silverlight for Phone\$(TargetFrameworkVersion)\Microsoft.Silverlight.CSharp.targets" />
|
||||
<ProjectExtensions />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
@ -1,22 +0,0 @@
|
||||
using System;
|
||||
using System.Reflection;
|
||||
using System.Resources;
|
||||
using System.Runtime.InteropServices;
|
||||
using Jellyfish.Library;
|
||||
|
||||
[assembly: AssemblyTitle("Library")]
|
||||
[assembly: AssemblyDescription("Common Library")]
|
||||
[assembly: AssemblyProduct("Jellyfish.Library.Silverlight.Phone")]
|
||||
[assembly: AssemblyCompany("Digital Jellyfish Design Ltd")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2009-2012 Digital Jellyfish Design Ltd")]
|
||||
[assembly: AssemblyComment("Developed by Sean Fausett")]
|
||||
|
||||
[assembly: AssemblyVersion("0.3.0.0")]
|
||||
[assembly: AssemblyFileVersion("0.3.0.0")]
|
||||
[assembly: AssemblyInformationalVersion("0.3.0.0")]
|
||||
|
||||
[assembly: CLSCompliant(false)]
|
||||
[assembly: ComVisible(false)]
|
||||
[assembly: Guid("66034b9e-9f0b-47b0-aac4-cade9a748891")]
|
||||
|
||||
[assembly: NeutralResourcesLanguage("en")]
|
@ -1,41 +0,0 @@
|
||||
using System;
|
||||
using System.Globalization;
|
||||
using System.Windows;
|
||||
using System.Windows.Data;
|
||||
|
||||
namespace Jellyfish.Library
|
||||
{
|
||||
public sealed class StringFormatConverter : IValueConverter // SL is missing Binding.StringFormat
|
||||
{
|
||||
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
if (targetType != typeof(string))
|
||||
{
|
||||
return DependencyProperty.UnsetValue;
|
||||
}
|
||||
|
||||
if (value == null)
|
||||
{
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
string format = parameter as string;
|
||||
if (!string.IsNullOrEmpty(format))
|
||||
{
|
||||
if (format.IndexOf('{') < 0)
|
||||
{
|
||||
format = "{0:" + format + "}";
|
||||
}
|
||||
|
||||
return string.Format(culture, format, value);
|
||||
}
|
||||
|
||||
return value.ToString();
|
||||
}
|
||||
|
||||
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
return DependencyProperty.UnsetValue; // one way only
|
||||
}
|
||||
}
|
||||
}
|
@ -9,11 +9,11 @@
|
||||
[assembly: AssemblyProduct("Jellyfish.Library.Silverlight")]
|
||||
[assembly: AssemblyCompany("Digital Jellyfish Design Ltd")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2009-2012 Digital Jellyfish Design Ltd")]
|
||||
[assembly: AssemblyComment("Developed by Sean Fausett")]
|
||||
[assembly: AssemblyMetadata("Developer", "Sean Fausett")]
|
||||
|
||||
[assembly: AssemblyVersion("0.3.0.0")]
|
||||
[assembly: AssemblyFileVersion("0.3.0.0")]
|
||||
[assembly: AssemblyInformationalVersion("0.3.0.0")]
|
||||
[assembly: AssemblyVersion("0.4.0.0")]
|
||||
[assembly: AssemblyFileVersion("0.4.0.0")]
|
||||
[assembly: AssemblyInformationalVersion("0.4.0.0")]
|
||||
|
||||
[assembly: CLSCompliant(false)]
|
||||
[assembly: ComVisible(false)]
|
||||
|
@ -1,18 +0,0 @@
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
|
||||
namespace Jellyfish.Library
|
||||
{
|
||||
public static class SingletonFactory<T> where T : class, new()
|
||||
{
|
||||
[SuppressMessage("Microsoft.Design", "CA1000:DoNotDeclareStaticMembersOnGenericTypes")]
|
||||
public static T Create()
|
||||
{
|
||||
return _instance;
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1000:DoNotDeclareStaticMembersOnGenericTypes")]
|
||||
public static T Instance { get { return _instance; } }
|
||||
|
||||
private static readonly T _instance = new T();
|
||||
}
|
||||
}
|
@ -49,20 +49,6 @@ public static StringBuilder AppendWithoutGarbage(this StringBuilder builder, int
|
||||
return builder;
|
||||
}
|
||||
|
||||
#if WINDOWS_PHONE || XBOX
|
||||
public static StringBuilder Clear(this StringBuilder builder)
|
||||
{
|
||||
if (builder == null)
|
||||
{
|
||||
throw new ArgumentNullException("builder");
|
||||
}
|
||||
|
||||
builder.Length = 0;
|
||||
|
||||
return builder;
|
||||
}
|
||||
#endif
|
||||
|
||||
private static readonly char[] Digits = new char[] { '9', '8', '7', '6', '5', '4', '3', '2', '1', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };
|
||||
}
|
||||
}
|
||||
|
@ -10,9 +10,8 @@
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>Jellyfish.Library</RootNamespace>
|
||||
<AssemblyName>Jellyfish.Library</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
@ -54,9 +53,6 @@
|
||||
<Reference Include="WindowsBase" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\AssemblyCommentAttribute.cs">
|
||||
<Link>AssemblyCommentAttribute.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\DirectSound.cs">
|
||||
<Link>DirectSound.cs</Link>
|
||||
</Compile>
|
||||
@ -76,9 +72,6 @@
|
||||
<Compile Include="..\GCHandleHelpers.cs">
|
||||
<Link>GCHandleHelpers.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\GeneralSecurity.cs">
|
||||
<Link>GeneralSecurity.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\GlobalSuppressions.cs">
|
||||
<Link>GlobalSuppressions.cs</Link>
|
||||
</Compile>
|
||||
@ -91,15 +84,6 @@
|
||||
<Compile Include="..\MathHelpers.cs">
|
||||
<Link>MathHelpers.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\SafeAllocHandle.cs">
|
||||
<Link>SafeAllocHandle.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\SafeFileHandle.cs">
|
||||
<Link>SafeFileHandle.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\SingletonFactory.cs">
|
||||
<Link>SingletonFactory.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\StreamExtensions.cs">
|
||||
<Link>StreamExtensions.cs</Link>
|
||||
</Compile>
|
||||
|
@ -1,6 +1,6 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2012
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Wpf", "Jellyfish.Library.Wpf.csproj", "{93900841-7250-4D3A-837E-43EE3FD118DC}"
|
||||
EndProject
|
||||
Global
|
||||
|
@ -9,11 +9,11 @@
|
||||
[assembly: AssemblyProduct("Jellyfish.Library.Wpf")]
|
||||
[assembly: AssemblyCompany("Digital Jellyfish Design Ltd")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2009-2012 Digital Jellyfish Design Ltd")]
|
||||
[assembly: AssemblyComment("Developed by Sean Fausett")]
|
||||
[assembly: AssemblyMetadata("Developer", "Sean Fausett")]
|
||||
|
||||
[assembly: AssemblyVersion("0.3.0.0")]
|
||||
[assembly: AssemblyFileVersion("0.3.0.0")]
|
||||
[assembly: AssemblyInformationalVersion("0.3.0.0")]
|
||||
[assembly: AssemblyVersion("0.4.0.0")]
|
||||
[assembly: AssemblyFileVersion("0.4.0.0")]
|
||||
[assembly: AssemblyInformationalVersion("0.4.0.0")]
|
||||
|
||||
[assembly: CLSCompliant(false)]
|
||||
[assembly: ComVisible(false)]
|
||||
|
@ -1,31 +0,0 @@
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.IO;
|
||||
using System.Xml;
|
||||
using System.Xml.Serialization;
|
||||
|
||||
namespace Jellyfish.Library
|
||||
{
|
||||
public static class XmlSerializerHelpers
|
||||
{
|
||||
[SuppressMessage("Microsoft.Design", "CA1004:GenericMethodsShouldProvideTypeParameter")]
|
||||
[SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
|
||||
public static T Deserialize<T>(Stream stream, string defaultNamespace = null)
|
||||
{
|
||||
using (var reader = XmlReader.Create(stream))
|
||||
{
|
||||
var serializer = new XmlSerializer(typeof(T), defaultNamespace);
|
||||
return (T)serializer.Deserialize(reader);
|
||||
}
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
|
||||
public static void Serialize<T>(Stream stream, T instance, string defaultNamespace = null)
|
||||
{
|
||||
using (var writer = XmlWriter.Create(stream))
|
||||
{
|
||||
var serializer = new XmlSerializer(typeof(T), defaultNamespace);
|
||||
serializer.Serialize(writer, instance);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -1,72 +0,0 @@
|
||||
using System;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Text;
|
||||
using Microsoft.Xna.Framework;
|
||||
using Microsoft.Xna.Framework.Graphics;
|
||||
|
||||
namespace Jellyfish.Library
|
||||
{
|
||||
public sealed class FrameRateCounter : DrawableGameComponent
|
||||
{
|
||||
public FrameRateCounter(GameBase game) :
|
||||
base(game)
|
||||
{
|
||||
FontColor = Color.White;
|
||||
FontName = "Default";
|
||||
}
|
||||
|
||||
protected override void LoadContent()
|
||||
{
|
||||
_spriteBatch = new SpriteBatch(GraphicsDevice);
|
||||
_spriteFont = Game.Content.Load<SpriteFont>(FontName);
|
||||
|
||||
var titleSafeArea = Game.GraphicsDevice.Viewport.TitleSafeArea;
|
||||
Position = new Vector2(titleSafeArea.X, titleSafeArea.Y);
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")]
|
||||
public override void Draw(GameTime gameTime)
|
||||
{
|
||||
_frameCount++;
|
||||
|
||||
_frameRateBuilder.Clear().AppendWithoutGarbage(_frameRate).Append(" fps");
|
||||
|
||||
_spriteBatch.Begin();
|
||||
//_spriteBatch.DrawString(_spriteFont, _frameRateBuilder, Position - Vector2.UnitX, Color.Black); // rough outline
|
||||
//_spriteBatch.DrawString(_spriteFont, _frameRateBuilder, Position + Vector2.UnitX, Color.Black);
|
||||
//_spriteBatch.DrawString(_spriteFont, _frameRateBuilder, Position - Vector2.UnitY, Color.Black);
|
||||
//_spriteBatch.DrawString(_spriteFont, _frameRateBuilder, Position + Vector2.UnitY, Color.Black);
|
||||
_spriteBatch.DrawString(_spriteFont, _frameRateBuilder, Position, FontColor);
|
||||
_spriteBatch.End();
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")]
|
||||
public override void Update(GameTime gameTime)
|
||||
{
|
||||
if (gameTime == null)
|
||||
{
|
||||
throw new ArgumentNullException("gameTime");
|
||||
}
|
||||
|
||||
_elapsedTime += gameTime.ElapsedGameTime.Ticks;
|
||||
|
||||
if (_elapsedTime >= TimeSpan.TicksPerSecond)
|
||||
{
|
||||
_elapsedTime -= TimeSpan.TicksPerSecond;
|
||||
_frameRate = _frameCount;
|
||||
_frameCount = 0;
|
||||
}
|
||||
}
|
||||
|
||||
public Color FontColor { get; set; }
|
||||
public string FontName { get; set; }
|
||||
public Vector2 Position { get; set; }
|
||||
|
||||
private SpriteBatch _spriteBatch;
|
||||
private SpriteFont _spriteFont;
|
||||
private long _elapsedTime;
|
||||
private int _frameCount;
|
||||
private int _frameRate;
|
||||
private StringBuilder _frameRateBuilder = new StringBuilder(); // cache builder; avoids garbage
|
||||
}
|
||||
}
|
@ -1,45 +0,0 @@
|
||||
using System;
|
||||
using System.Threading;
|
||||
using Microsoft.Xna.Framework;
|
||||
#if XBOX
|
||||
using Microsoft.Xna.Framework.GamerServices;
|
||||
#endif
|
||||
using Microsoft.Xna.Framework.Graphics;
|
||||
using Microsoft.Xna.Framework.Input;
|
||||
|
||||
namespace Jellyfish.Library
|
||||
{
|
||||
public abstract class GameBase : Game
|
||||
{
|
||||
protected GameBase(string name)
|
||||
{
|
||||
Name = name;
|
||||
|
||||
Content.RootDirectory = "Content";
|
||||
GraphicsDeviceManager = new GraphicsDeviceManager(this);
|
||||
#if WINDOWS_PHONE
|
||||
GraphicsDeviceManager.IsFullScreen = true;
|
||||
GraphicsDeviceManager.SupportedOrientations = DisplayOrientation.LandscapeLeft | DisplayOrientation.LandscapeRight;
|
||||
TargetElapsedTime = TimeSpan.FromTicks(333333); // 30 fps
|
||||
#elif XBOX
|
||||
GraphicsDeviceManager.IsFullScreen = true;
|
||||
Components.Add(new GamerServicesComponent(this));
|
||||
#elif WINDOWS
|
||||
SynchronizationContext = new System.Windows.Forms.WindowsFormsSynchronizationContext();
|
||||
#endif
|
||||
GraphicsDeviceService = (IGraphicsDeviceService)Services.GetService(typeof(IGraphicsDeviceService));
|
||||
|
||||
if (!string.IsNullOrEmpty(Name))
|
||||
{
|
||||
Window.Title = Name;
|
||||
}
|
||||
}
|
||||
|
||||
public string Name { get; private set; }
|
||||
public GraphicsDeviceManager GraphicsDeviceManager { get; private set; }
|
||||
public IGraphicsDeviceService GraphicsDeviceService { get; private set; }
|
||||
#if WINDOWS
|
||||
public SynchronizationContext SynchronizationContext { get; private set; }
|
||||
#endif
|
||||
}
|
||||
}
|
@ -1,138 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<ProjectGuid>{46B2BD23-3D45-4268-9979-B9CF136CC982}</ProjectGuid>
|
||||
<ProjectTypeGuids>{6D335F3A-9D43-41b4-9D22-F6F17C4BE596};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">Windows Phone</Platform>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>Jellyfish.Library</RootNamespace>
|
||||
<AssemblyName>Jellyfish.Library</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
|
||||
<XnaFrameworkVersion>v4.0</XnaFrameworkVersion>
|
||||
<XnaPlatform>Windows Phone</XnaPlatform>
|
||||
<XnaProfile>Reach</XnaProfile>
|
||||
<XnaCrossPlatformGroupID>f1d4203f-e8dd-43ff-81b2-e4562d3ae0b6</XnaCrossPlatformGroupID>
|
||||
<XnaOutputType>Library</XnaOutputType>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|Windows Phone' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Windows Phone\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE;WINDOWS_PHONE;CODE_ANALYSIS</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<NoStdLib>true</NoStdLib>
|
||||
<UseVSHostingProcess>false</UseVSHostingProcess>
|
||||
<XnaCompressContent>true</XnaCompressContent>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<LangVersion>default</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|Windows Phone' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Windows Phone\</OutputPath>
|
||||
<DefineConstants>TRACE;WINDOWS_PHONE;CODE_ANALYSIS</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<NoStdLib>true</NoStdLib>
|
||||
<UseVSHostingProcess>false</UseVSHostingProcess>
|
||||
<XnaCompressContent>true</XnaCompressContent>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<LangVersion>default</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<SignAssembly>false</SignAssembly>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\Jellyfish\StrongName.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.Xna.Framework">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Game">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Graphics">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.GamerServices">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Input.Touch">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="mscorlib">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Core">
|
||||
<RequiredTargetFramework>4.0</RequiredTargetFramework>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\AssemblyCommentAttribute.cs">
|
||||
<Link>AssemblyCommentAttribute.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\DisposableBase.cs">
|
||||
<Link>DisposableBase.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\GlobalSuppressions.cs">
|
||||
<Link>GlobalSuppressions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\IEnumerableExtensions.cs">
|
||||
<Link>IEnumerableExtensions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Lazy.cs">
|
||||
<Link>Lazy.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\MathHelpers.cs">
|
||||
<Link>MathHelpers.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\SingletonFactory.cs">
|
||||
<Link>SingletonFactory.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\StreamExtensions.cs">
|
||||
<Link>StreamExtensions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\StringBuilderExtensions.cs">
|
||||
<Link>StringBuilderExtensions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="FrameRateCounter.cs" />
|
||||
<Compile Include="GameBase.cs" />
|
||||
<Compile Include="TouchButton.cs" />
|
||||
<Compile Include="TouchJoystick.cs" />
|
||||
<Compile Include="TouchRegion.cs" />
|
||||
<Compile Include="TouchRegionCollection.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<CodeAnalysisDictionary Include="..\CustomDictionary.xml">
|
||||
<Link>CustomDictionary.xml</Link>
|
||||
</CodeAnalysisDictionary>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\Microsoft.Xna.GameStudio.targets" />
|
||||
<!--
|
||||
To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
@ -1,153 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<ProjectGuid>{222412EE-A626-493F-AE72-344657A6840D}</ProjectGuid>
|
||||
<ProjectTypeGuids>{6D335F3A-9D43-41b4-9D22-F6F17C4BE596};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">Xbox 360</Platform>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>Jellyfish.Library</RootNamespace>
|
||||
<AssemblyName>Jellyfish.Library</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
|
||||
<XnaFrameworkVersion>v4.0</XnaFrameworkVersion>
|
||||
<XnaPlatform>Xbox 360</XnaPlatform>
|
||||
<XnaProfile>Reach</XnaProfile>
|
||||
<XnaCrossPlatformGroupID>f1d4203f-e8dd-43ff-81b2-e4562d3ae0b6</XnaCrossPlatformGroupID>
|
||||
<XnaOutputType>Library</XnaOutputType>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|Xbox 360' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Xbox 360\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE;XBOX;XBOX360;CODE_ANALYSIS</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<NoStdLib>true</NoStdLib>
|
||||
<UseVSHostingProcess>false</UseVSHostingProcess>
|
||||
<XnaCompressContent>true</XnaCompressContent>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<LangVersion>default</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|Xbox 360' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Xbox 360\</OutputPath>
|
||||
<DefineConstants>TRACE;XBOX;XBOX360;CODE_ANALYSIS</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<NoStdLib>true</NoStdLib>
|
||||
<UseVSHostingProcess>false</UseVSHostingProcess>
|
||||
<XnaCompressContent>true</XnaCompressContent>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<LangVersion>default</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<SignAssembly>false</SignAssembly>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\Jellyfish\StrongName.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.Xna.Framework">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Game">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Graphics">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.GamerServices">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Input.Touch">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Xact">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Video">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Avatar">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Net">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Storage">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="mscorlib">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Core">
|
||||
<RequiredTargetFramework>4.0</RequiredTargetFramework>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\AssemblyCommentAttribute.cs">
|
||||
<Link>AssemblyCommentAttribute.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\DisposableBase.cs">
|
||||
<Link>DisposableBase.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\GlobalSuppressions.cs">
|
||||
<Link>GlobalSuppressions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\IEnumerableExtensions.cs">
|
||||
<Link>IEnumerableExtensions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Lazy.cs">
|
||||
<Link>Lazy.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\MathHelpers.cs">
|
||||
<Link>MathHelpers.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\SingletonFactory.cs">
|
||||
<Link>SingletonFactory.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\StreamExtensions.cs">
|
||||
<Link>StreamExtensions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\StringBuilderExtensions.cs">
|
||||
<Link>StringBuilderExtensions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="FrameRateCounter.cs" />
|
||||
<Compile Include="GameBase.cs" />
|
||||
<Compile Include="TouchButton.cs" />
|
||||
<Compile Include="TouchJoystick.cs" />
|
||||
<Compile Include="TouchRegion.cs" />
|
||||
<Compile Include="TouchRegionCollection.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<CodeAnalysisDictionary Include="..\CustomDictionary.xml">
|
||||
<Link>CustomDictionary.xml</Link>
|
||||
</CodeAnalysisDictionary>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\Microsoft.Xna.GameStudio.targets" />
|
||||
<!--
|
||||
To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
@ -1,168 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<ProjectGuid>{82F56318-A1FD-4078-A42F-06CAB8B97F63}</ProjectGuid>
|
||||
<ProjectTypeGuids>{6D335F3A-9D43-41b4-9D22-F6F17C4BE596};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>Jellyfish.Library</RootNamespace>
|
||||
<AssemblyName>Jellyfish.Library</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
|
||||
<XnaFrameworkVersion>v4.0</XnaFrameworkVersion>
|
||||
<XnaPlatform>Windows</XnaPlatform>
|
||||
<XnaProfile>Reach</XnaProfile>
|
||||
<XnaCrossPlatformGroupID>f1d4203f-e8dd-43ff-81b2-e4562d3ae0b6</XnaCrossPlatformGroupID>
|
||||
<XnaOutputType>Library</XnaOutputType>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\x86\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE;WINDOWS;CODE_ANALYSIS</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<NoStdLib>true</NoStdLib>
|
||||
<UseVSHostingProcess>false</UseVSHostingProcess>
|
||||
<PlatformTarget>x86</PlatformTarget>
|
||||
<XnaCompressContent>true</XnaCompressContent>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\x86\</OutputPath>
|
||||
<DefineConstants>TRACE;WINDOWS;CODE_ANALYSIS</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<NoStdLib>true</NoStdLib>
|
||||
<UseVSHostingProcess>false</UseVSHostingProcess>
|
||||
<PlatformTarget>x86</PlatformTarget>
|
||||
<XnaCompressContent>true</XnaCompressContent>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<SignAssembly>false</SignAssembly>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\Jellyfish\StrongName.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.Xna.Framework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Game, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Graphics, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.GamerServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Input.Touch, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Xact, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Video, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Avatar, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Net, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Storage, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="mscorlib">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Core">
|
||||
<RequiredTargetFramework>4.0</RequiredTargetFramework>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Windows.Forms">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\AssemblyCommentAttribute.cs">
|
||||
<Link>AssemblyCommentAttribute.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\DisposableBase.cs">
|
||||
<Link>DisposableBase.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\GCHandleHelpers.cs">
|
||||
<Link>GCHandleHelpers.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\GeneralSecurity.cs">
|
||||
<Link>GeneralSecurity.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\GlobalSuppressions.cs">
|
||||
<Link>GlobalSuppressions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\IEnumerableExtensions.cs">
|
||||
<Link>IEnumerableExtensions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\MarshalHelpers.cs">
|
||||
<Link>MarshalHelpers.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\MathHelpers.cs">
|
||||
<Link>MathHelpers.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\SafeAllocHandle.cs">
|
||||
<Link>SafeAllocHandle.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\SafeFileHandle.cs">
|
||||
<Link>SafeFileHandle.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\SingletonFactory.cs">
|
||||
<Link>SingletonFactory.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\StreamExtensions.cs">
|
||||
<Link>StreamExtensions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\StringBuilderExtensions.cs">
|
||||
<Link>StringBuilderExtensions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="FrameRateCounter.cs" />
|
||||
<Compile Include="GameBase.cs" />
|
||||
<Compile Include="TouchButton.cs" />
|
||||
<Compile Include="TouchJoystick.cs" />
|
||||
<Compile Include="TouchRegion.cs" />
|
||||
<Compile Include="TouchRegionCollection.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<CodeAnalysisDictionary Include="..\CustomDictionary.xml">
|
||||
<Link>CustomDictionary.xml</Link>
|
||||
</CodeAnalysisDictionary>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\Microsoft.Xna.GameStudio.targets" />
|
||||
<!--
|
||||
To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
@ -1,62 +0,0 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Xna", "Jellyfish.Library.Xna.csproj", "{82F56318-A1FD-4078-A42F-06CAB8B97F63}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Xna.Phone", "Jellyfish.Library.Xna.Phone.csproj", "{46B2BD23-3D45-4268-9979-B9CF136CC982}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Xna.Xbox", "Jellyfish.Library.Xna.Xbox.csproj", "{222412EE-A626-493F-AE72-344657A6840D}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Mixed Platforms = Debug|Mixed Platforms
|
||||
Debug|Windows Phone = Debug|Windows Phone
|
||||
Debug|x86 = Debug|x86
|
||||
Debug|Xbox 360 = Debug|Xbox 360
|
||||
Release|Mixed Platforms = Release|Mixed Platforms
|
||||
Release|Windows Phone = Release|Windows Phone
|
||||
Release|x86 = Release|x86
|
||||
Release|Xbox 360 = Release|Xbox 360
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Mixed Platforms.Build.0 = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Windows Phone.ActiveCfg = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|x86.Build.0 = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Xbox 360.ActiveCfg = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Mixed Platforms.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Mixed Platforms.Build.0 = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Windows Phone.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|x86.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|x86.Build.0 = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Xbox 360.ActiveCfg = Release|x86
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Mixed Platforms.ActiveCfg = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Mixed Platforms.Build.0 = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Windows Phone.ActiveCfg = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Windows Phone.Build.0 = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|x86.ActiveCfg = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Xbox 360.ActiveCfg = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Mixed Platforms.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Mixed Platforms.Build.0 = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Windows Phone.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Windows Phone.Build.0 = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|x86.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Xbox 360.ActiveCfg = Release|Windows Phone
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Windows Phone.ActiveCfg = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|x86.ActiveCfg = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Xbox 360.Build.0 = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Mixed Platforms.Build.0 = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Windows Phone.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|x86.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Xbox 360.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Xbox 360.Build.0 = Release|Xbox 360
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
@ -1,28 +0,0 @@
|
||||
using System;
|
||||
using System.Reflection;
|
||||
using System.Resources;
|
||||
using System.Runtime.InteropServices;
|
||||
using Jellyfish.Library;
|
||||
|
||||
[assembly: AssemblyTitle("Library")]
|
||||
[assembly: AssemblyDescription("Common Library")]
|
||||
#if WINDOWS_PHONE
|
||||
[assembly: AssemblyProduct("Jellyfish.Library.Xna.Phone")]
|
||||
#elif XBOX
|
||||
[assembly: AssemblyProduct("Jellyfish.Library.Xna.Xbox")]
|
||||
#else
|
||||
[assembly: AssemblyProduct("Jellyfish.Library.Xna")]
|
||||
#endif
|
||||
[assembly: AssemblyCompany("Digital Jellyfish Design Ltd")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2009-2012 Digital Jellyfish Design Ltd")]
|
||||
[assembly: AssemblyComment("Developed by Sean Fausett")]
|
||||
|
||||
[assembly: AssemblyVersion("0.3.0.0")]
|
||||
[assembly: AssemblyFileVersion("0.3.0.0")]
|
||||
[assembly: AssemblyInformationalVersion("0.3.0.0")]
|
||||
|
||||
[assembly: CLSCompliant(false)]
|
||||
[assembly: ComVisible(false)]
|
||||
[assembly: Guid("66034b9e-9f0b-47b0-aac4-cade9a748891")]
|
||||
|
||||
[assembly: NeutralResourcesLanguage("en")]
|
@ -1,12 +0,0 @@
|
||||
using Microsoft.Xna.Framework;
|
||||
using Microsoft.Xna.Framework.Input.Touch;
|
||||
|
||||
namespace Jellyfish.Library
|
||||
{
|
||||
public sealed class TouchButton : TouchRegion
|
||||
{
|
||||
public bool HasValue { get { return Touch.HasValue; } }
|
||||
public bool IsButtonDown { get { var touch = Touch.Value; return ((touch.State == TouchLocationState.Pressed) || (touch.State == TouchLocationState.Moved)); } }
|
||||
public Vector2 Position { get { return Touch.Value.Position; } }
|
||||
}
|
||||
}
|
@ -1,51 +0,0 @@
|
||||
using System;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using Microsoft.Xna.Framework;
|
||||
using Microsoft.Xna.Framework.Input.Touch;
|
||||
|
||||
namespace Jellyfish.Library
|
||||
{
|
||||
public sealed class TouchJoystick : TouchRegion
|
||||
{
|
||||
[SuppressMessage("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate")]
|
||||
public Vector2 GetJoystick()
|
||||
{
|
||||
TouchLocation touch;
|
||||
bool isValid;
|
||||
if (KeepLast && LastTouch.HasValue)
|
||||
{
|
||||
touch = LastTouch.Value;
|
||||
isValid = (touch.State != TouchLocationState.Invalid);
|
||||
}
|
||||
else
|
||||
{
|
||||
touch = Touch.Value;
|
||||
isValid = (touch.State == TouchLocationState.Pressed) || (touch.State == TouchLocationState.Moved);
|
||||
}
|
||||
if (isValid)
|
||||
{
|
||||
var center = Center;
|
||||
var joystick = new Vector2((touch.Position.X - center.X) / Radius, (center.Y - touch.Position.Y) / Radius);
|
||||
if (joystick.LengthSquared() > 1)
|
||||
{
|
||||
joystick.Normalize();
|
||||
}
|
||||
return joystick;
|
||||
}
|
||||
|
||||
return Vector2.Zero;
|
||||
}
|
||||
|
||||
public void SetRadius(float radius) // scaled
|
||||
{
|
||||
Radius = (int)(radius * Math.Min(TouchPanel.DisplayWidth, TouchPanel.DisplayHeight));
|
||||
}
|
||||
|
||||
public int Radius { get; set; }
|
||||
public bool KeepLast { get; set; }
|
||||
|
||||
public Vector2 Center { get { return FirstTouch.Value.Position; } }
|
||||
public bool HasValue { get { return ((KeepLast && LastTouch.HasValue) || Touch.HasValue); } }
|
||||
public Vector2 Position { get { return (KeepLast && LastTouch.HasValue) ? LastTouch.Value.Position : Touch.Value.Position; } }
|
||||
}
|
||||
}
|
@ -1,20 +0,0 @@
|
||||
using Microsoft.Xna.Framework;
|
||||
using Microsoft.Xna.Framework.Input.Touch;
|
||||
|
||||
namespace Jellyfish.Library
|
||||
{
|
||||
public class TouchRegion
|
||||
{
|
||||
public void SetBounds(float x, float y, float width, float height) // scaled
|
||||
{
|
||||
Bounds = new Rectangle((int)(x * TouchPanel.DisplayWidth), (int)(y * TouchPanel.DisplayHeight), (int)(width * TouchPanel.DisplayWidth), (int)(height * TouchPanel.DisplayHeight));
|
||||
}
|
||||
|
||||
public Rectangle Bounds { get; set; }
|
||||
public int Order { get; set; }
|
||||
|
||||
internal TouchLocation? Touch { get; set; }
|
||||
internal TouchLocation? FirstTouch { get; set; }
|
||||
internal TouchLocation? LastTouch { get; set; }
|
||||
}
|
||||
}
|
@ -1,81 +0,0 @@
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using Microsoft.Xna.Framework.Input.Touch;
|
||||
|
||||
namespace Jellyfish.Library
|
||||
{
|
||||
public sealed class TouchRegionCollection : Collection<TouchRegion>
|
||||
{
|
||||
public TouchRegionCollection()
|
||||
{
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1045:DoNotPassTypesByReference")]
|
||||
public void Update(ref TouchCollection touches)
|
||||
{
|
||||
for (int i = 0; i < base.Count; i++)
|
||||
{
|
||||
base[i].Touch = null;
|
||||
}
|
||||
|
||||
for (int i = 0; i < touches.Count; i++)
|
||||
{
|
||||
var touch = touches[i];
|
||||
if (UpdateById(ref touch))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
TouchLocation prevTouch;
|
||||
if (touch.TryGetPreviousLocation(out prevTouch))
|
||||
{
|
||||
UpdateByPosition(ref prevTouch);
|
||||
}
|
||||
else
|
||||
{
|
||||
UpdateByPosition(ref touch);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private bool UpdateById(ref TouchLocation touch)
|
||||
{
|
||||
for (int i = 0; i < base.Count; i++)
|
||||
{
|
||||
var region = base[i];
|
||||
if (region.LastTouch.HasValue && (region.LastTouch.Value.Id == touch.Id))
|
||||
{
|
||||
region.Touch = touch;
|
||||
region.LastTouch = touch;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private void UpdateByPosition(ref TouchLocation touch)
|
||||
{
|
||||
if ((touch.State == TouchLocationState.Pressed) || (touch.State == TouchLocationState.Moved))
|
||||
{
|
||||
TouchRegion topMostRegion = null;
|
||||
|
||||
for (int i = 0; i < base.Count; i++)
|
||||
{
|
||||
var region = base[i];
|
||||
if (region.Bounds.Contains((int)touch.Position.X, (int)touch.Position.Y) && ((topMostRegion == null) || (topMostRegion.Order < region.Order)))
|
||||
{
|
||||
topMostRegion = region;
|
||||
}
|
||||
}
|
||||
|
||||
if ((topMostRegion != null) && !topMostRegion.Touch.HasValue)
|
||||
{
|
||||
topMostRegion.Touch = touch;
|
||||
topMostRegion.FirstTouch = touch;
|
||||
topMostRegion.LastTouch = touch;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -9,6 +9,7 @@
|
||||
<Words>
|
||||
<Recognized>
|
||||
<Word>Annunciator</Word>
|
||||
<Word>Cpu</Word>
|
||||
<Word>Dsk</Word>
|
||||
<Word>Prg</Word>
|
||||
<Word>Unpause</Word>
|
||||
|
@ -6,7 +6,7 @@ namespace Jellyfish.Virtu
|
||||
{
|
||||
public enum SectorSkew { None = 0, Dos, ProDos };
|
||||
|
||||
public class DiskDsk : Disk525
|
||||
public sealed class DiskDsk : Disk525
|
||||
{
|
||||
public DiskDsk(string name, byte[] data, bool isWriteProtected, SectorSkew sectorSkew) :
|
||||
base(name, data, isWriteProtected)
|
||||
|
@ -23,9 +23,7 @@ public override void Initialize()
|
||||
_gamePortService = Machine.Services.GetService<GamePortService>();
|
||||
|
||||
JoystickDeadZone = 0.4f;
|
||||
#if WINDOWS_PHONE
|
||||
UseTouch = true;
|
||||
#endif
|
||||
|
||||
InvertPaddles = true; // Raster Blaster
|
||||
SwapPaddles = true;
|
||||
Joystick0TouchX = 0.35f;
|
||||
|
@ -1,44 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<FxCopProject Version="10.0" Name="Jellyfish.Virtu">
|
||||
<ProjectOptions>
|
||||
<SharedProject>True</SharedProject>
|
||||
<Stylesheet Apply="False">$(FxCopDir)\Xml\FxCopReport.xsl</Stylesheet>
|
||||
<SaveMessages>
|
||||
<Project Status="Active, Excluded" NewOnly="False" />
|
||||
<Report Status="Active" NewOnly="False" />
|
||||
</SaveMessages>
|
||||
<ProjectFile Compress="True" DefaultTargetCheck="True" DefaultRuleCheck="True" SaveByRuleGroup="" Deterministic="True" />
|
||||
<EnableMultithreadedLoad>True</EnableMultithreadedLoad>
|
||||
<EnableMultithreadedAnalysis>True</EnableMultithreadedAnalysis>
|
||||
<SourceLookup>True</SourceLookup>
|
||||
<AnalysisExceptionsThreshold>10</AnalysisExceptionsThreshold>
|
||||
<RuleExceptionsThreshold>1</RuleExceptionsThreshold>
|
||||
<Spelling Locale="en-US" />
|
||||
<OverrideRuleVisibilities>False</OverrideRuleVisibilities>
|
||||
<CustomDictionaries SearchFxCopDir="True" SearchUserProfile="True" SearchProjectDir="True" />
|
||||
<SearchGlobalAssemblyCache>True</SearchGlobalAssemblyCache>
|
||||
<DeadlockDetectionTimeout>120</DeadlockDetectionTimeout>
|
||||
<IgnoreGeneratedCode>True</IgnoreGeneratedCode>
|
||||
</ProjectOptions>
|
||||
<Targets>
|
||||
<Target Name="$(ProjectDir)/Wpf/bin/Jellyfish.Virtu.exe" Analyze="True" AnalyzeAllChildren="True" />
|
||||
<Target Name="$(ProjectDir)/Xna/bin/x86/Jellyfish.Virtu.exe" Analyze="True" AnalyzeAllChildren="True" />
|
||||
</Targets>
|
||||
<Rules>
|
||||
<RuleFiles>
|
||||
<RuleFile Name="$(FxCopDir)\Rules\DesignRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\GlobalizationRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\InteroperabilityRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\MobilityRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\NamingRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\PerformanceRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\PortabilityRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\SecurityRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\SecurityTransparencyRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
<RuleFile Name="$(FxCopDir)\Rules\UsageRules.dll" Enabled="True" AllRulesEnabled="True" />
|
||||
</RuleFiles>
|
||||
<Groups />
|
||||
<Settings />
|
||||
</Rules>
|
||||
<FxCopReport Version="10.0" />
|
||||
</FxCopProject>
|
@ -1,228 +1,36 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2012
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Silverlight", "..\Library\Silverlight\Jellyfish.Library.Silverlight.csproj", "{99CA7796-B72A-4F8C-BCDB-0D688220A331}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Silverlight.Phone", "..\Library\Silverlight\Phone\Jellyfish.Library.Silverlight.Phone.csproj", "{D4880706-29A6-449C-A2A6-3058C37583DA}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Wpf", "..\Library\Wpf\Jellyfish.Library.Wpf.csproj", "{93900841-7250-4D3A-837E-43EE3FD118DC}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Xna", "..\Library\Xna\Jellyfish.Library.Xna.csproj", "{82F56318-A1FD-4078-A42F-06CAB8B97F63}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Xna.Phone", "..\Library\Xna\Jellyfish.Library.Xna.Phone.csproj", "{46B2BD23-3D45-4268-9979-B9CF136CC982}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Xna.Xbox", "..\Library\Xna\Jellyfish.Library.Xna.Xbox.csproj", "{222412EE-A626-493F-AE72-344657A6840D}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Virtu.Silverlight", "Silverlight\Jellyfish.Virtu.Silverlight.csproj", "{F8DB6D3A-807D-4E2D-92D5-469273E088DA}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Virtu.Silverlight.Phone", "Silverlight\Phone\Jellyfish.Virtu.Silverlight.Phone.csproj", "{9F1025D2-E23B-4CDC-AC63-150941013963}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Virtu.Wpf", "Wpf\Jellyfish.Virtu.Wpf.csproj", "{C152D47E-BBC1-4C35-8646-465180720A72}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Virtu.Xna", "Xna\Jellyfish.Virtu.Xna.csproj", "{3D0AE444-357F-4986-859F-602CC9BB4EF6}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Virtu.Xna.Content", "Xna\Content\Jellyfish.Virtu.Xna.Content.contentproj", "{C138ADC9-8F2B-414A-930D-12B489A96BBB}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Virtu.Xna.Phone", "Xna\Jellyfish.Virtu.Xna.Phone.csproj", "{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Virtu.Xna.Xbox", "Xna\Jellyfish.Virtu.Xna.Xbox.csproj", "{1400371E-AC2E-4BC5-8A52-077616F716C4}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Debug|Mixed Platforms = Debug|Mixed Platforms
|
||||
Debug|Windows Phone = Debug|Windows Phone
|
||||
Debug|x86 = Debug|x86
|
||||
Debug|Xbox 360 = Debug|Xbox 360
|
||||
Release|Any CPU = Release|Any CPU
|
||||
Release|Mixed Platforms = Release|Mixed Platforms
|
||||
Release|Windows Phone = Release|Windows Phone
|
||||
Release|x86 = Release|x86
|
||||
Release|Xbox 360 = Release|Xbox 360
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Windows Phone.ActiveCfg = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Xbox 360.ActiveCfg = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Windows Phone.ActiveCfg = Release|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Xbox 360.ActiveCfg = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|Windows Phone.ActiveCfg = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|Xbox 360.ActiveCfg = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|Windows Phone.ActiveCfg = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|Xbox 360.ActiveCfg = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|Windows Phone.ActiveCfg = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|Xbox 360.ActiveCfg = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|Windows Phone.ActiveCfg = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|Xbox 360.ActiveCfg = Release|Any CPU
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Mixed Platforms.Build.0 = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Windows Phone.ActiveCfg = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|x86.Build.0 = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Xbox 360.ActiveCfg = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Mixed Platforms.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Mixed Platforms.Build.0 = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Windows Phone.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|x86.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|x86.Build.0 = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Xbox 360.ActiveCfg = Release|x86
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Any CPU.ActiveCfg = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Mixed Platforms.ActiveCfg = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Mixed Platforms.Build.0 = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Windows Phone.ActiveCfg = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Windows Phone.Build.0 = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|x86.ActiveCfg = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Xbox 360.ActiveCfg = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Any CPU.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Mixed Platforms.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Mixed Platforms.Build.0 = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Windows Phone.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Windows Phone.Build.0 = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|x86.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Xbox 360.ActiveCfg = Release|Windows Phone
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Windows Phone.ActiveCfg = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|x86.ActiveCfg = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Xbox 360.Build.0 = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Any CPU.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Mixed Platforms.Build.0 = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Windows Phone.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|x86.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Xbox 360.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Xbox 360.Build.0 = Release|Xbox 360
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Debug|Windows Phone.ActiveCfg = Debug|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Debug|Xbox 360.ActiveCfg = Debug|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Release|Windows Phone.ActiveCfg = Release|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Release|Xbox 360.ActiveCfg = Release|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Debug|Windows Phone.ActiveCfg = Debug|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Debug|Xbox 360.ActiveCfg = Debug|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Release|Windows Phone.ActiveCfg = Release|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Release|Xbox 360.ActiveCfg = Release|Any CPU
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Debug|Mixed Platforms.Build.0 = Debug|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Debug|Windows Phone.ActiveCfg = Debug|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Debug|x86.Build.0 = Debug|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Debug|Xbox 360.ActiveCfg = Debug|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Release|Mixed Platforms.ActiveCfg = Release|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Release|Mixed Platforms.Build.0 = Release|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Release|Windows Phone.ActiveCfg = Release|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Release|x86.ActiveCfg = Release|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Release|x86.Build.0 = Release|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Release|Xbox 360.ActiveCfg = Release|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Debug|Mixed Platforms.Build.0 = Debug|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Debug|Windows Phone.ActiveCfg = Debug|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Debug|x86.Build.0 = Debug|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Debug|Xbox 360.ActiveCfg = Debug|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Release|Mixed Platforms.ActiveCfg = Release|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Release|Mixed Platforms.Build.0 = Release|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Release|Windows Phone.ActiveCfg = Release|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Release|x86.ActiveCfg = Release|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Release|x86.Build.0 = Release|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Release|Xbox 360.ActiveCfg = Release|x86
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Debug|Windows Phone.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Debug|Xbox 360.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Release|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Release|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Release|Windows Phone.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Release|x86.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Release|Xbox 360.ActiveCfg = Debug|Any CPU
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Debug|Any CPU.ActiveCfg = Debug|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Debug|Mixed Platforms.ActiveCfg = Debug|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Debug|Mixed Platforms.Build.0 = Debug|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Debug|Windows Phone.ActiveCfg = Debug|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Debug|Windows Phone.Build.0 = Debug|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Debug|Windows Phone.Deploy.0 = Debug|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Debug|x86.ActiveCfg = Debug|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Debug|Xbox 360.ActiveCfg = Debug|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Release|Any CPU.ActiveCfg = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Release|Mixed Platforms.ActiveCfg = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Release|Mixed Platforms.Build.0 = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Release|Windows Phone.ActiveCfg = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Release|Windows Phone.Build.0 = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Release|Windows Phone.Deploy.0 = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Release|x86.ActiveCfg = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Release|Xbox 360.ActiveCfg = Release|Windows Phone
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Debug|Windows Phone.ActiveCfg = Debug|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Debug|x86.ActiveCfg = Debug|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Debug|Xbox 360.Build.0 = Debug|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Release|Any CPU.ActiveCfg = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Release|Mixed Platforms.Build.0 = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Release|Windows Phone.ActiveCfg = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Release|x86.ActiveCfg = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Release|Xbox 360.ActiveCfg = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Release|Xbox 360.Build.0 = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Release|Xbox 360.Deploy.0 = Release|Xbox 360
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
@ -230,7 +230,7 @@ private void Run() // machine thread
|
||||
Uninitialize();
|
||||
}
|
||||
|
||||
public const string Version = "0.9.3.0";
|
||||
public const string Version = "0.9.4.0";
|
||||
|
||||
public MachineEvents Events { get; private set; }
|
||||
public MachineServices Services { get; private set; }
|
||||
|
2
Virtu/Properties/Strings.Designer.cs
generated
2
Virtu/Properties/Strings.Designer.cs
generated
@ -1,7 +1,7 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:4.0.30319.544
|
||||
// Runtime Version:4.0.30319.17626
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
|
@ -26,7 +26,7 @@ public void WriteMessage(string format, params object[] args)
|
||||
|
||||
protected virtual void OnWriteMessage(string message)
|
||||
{
|
||||
#if SILVERLIGHT || WINDOWS_PHONE || XBOX
|
||||
#if SILVERLIGHT
|
||||
Debug.WriteLine(message);
|
||||
#else
|
||||
Trace.WriteLine(message);
|
||||
@ -45,11 +45,7 @@ private string FormatMessage(string format, params object[] args)
|
||||
}
|
||||
catch (FormatException ex)
|
||||
{
|
||||
#if WINDOWS_PHONE || XBOX
|
||||
WriteMessage("[DebugService.FormatMessage] format: {0}; exception: {1}", format, ex.Message);
|
||||
#else
|
||||
WriteMessage("[DebugService.FormatMessage] format: {0}; args: {1}; exception: {2}", format, string.Join(", ", args), ex.Message);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -1,14 +1,10 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2012
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Silverlight", "..\..\Library\Silverlight\Jellyfish.Library.Silverlight.csproj", "{99CA7796-B72A-4F8C-BCDB-0D688220A331}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Silverlight.Phone", "..\..\Library\Silverlight\Phone\Jellyfish.Library.Silverlight.Phone.csproj", "{D4880706-29A6-449C-A2A6-3058C37583DA}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Virtu.Silverlight", "Jellyfish.Virtu.Silverlight.csproj", "{F8DB6D3A-807D-4E2D-92D5-469273E088DA}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Virtu.Silverlight.Phone", "Phone\Jellyfish.Virtu.Silverlight.Phone.csproj", "{9F1025D2-E23B-4CDC-AC63-150941013963}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
@ -19,18 +15,10 @@ Global
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{99CA7796-B72A-4F8C-BCDB-0D688220A331}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{D4880706-29A6-449C-A2A6-3058C37583DA}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F8DB6D3A-807D-4E2D-92D5-469273E088DA}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{9F1025D2-E23B-4CDC-AC63-150941013963}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 1.8 KiB |
Binary file not shown.
Before Width: | Height: | Size: 4.7 KiB |
@ -1,262 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProductVersion>10.0.20506</ProductVersion>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>{9F1025D2-E23B-4CDC-AC63-150941013963}</ProjectGuid>
|
||||
<ProjectTypeGuids>{C089C8C0-30E0-4E22-80C0-CE093F111A43};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>Jellyfish.Virtu</RootNamespace>
|
||||
<AssemblyName>Jellyfish.Virtu</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<SilverlightVersion>$(TargetFrameworkVersion)</SilverlightVersion>
|
||||
<TargetFrameworkProfile>WindowsPhone</TargetFrameworkProfile>
|
||||
<TargetFrameworkIdentifier>Silverlight</TargetFrameworkIdentifier>
|
||||
<SilverlightApplication>true</SilverlightApplication>
|
||||
<SupportedCultures>
|
||||
</SupportedCultures>
|
||||
<XapOutputs>true</XapOutputs>
|
||||
<GenerateSilverlightManifest>true</GenerateSilverlightManifest>
|
||||
<XapFilename>Jellyfish.Virtu.xap</XapFilename>
|
||||
<SilverlightManifestTemplate>Properties\AppManifest.xml</SilverlightManifestTemplate>
|
||||
<SilverlightAppEntry>Jellyfish.Virtu.MainApp</SilverlightAppEntry>
|
||||
<ValidateXaml>true</ValidateXaml>
|
||||
<ThrowErrorsInValidation>true</ThrowErrorsInValidation>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE;SILVERLIGHT;WINDOWS_PHONE;CODE_ANALYSIS</DefineConstants>
|
||||
<NoStdLib>true</NoStdLib>
|
||||
<NoConfig>true</NoConfig>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\</OutputPath>
|
||||
<DefineConstants>TRACE;SILVERLIGHT;WINDOWS_PHONE;CODE_ANALYSIS</DefineConstants>
|
||||
<NoStdLib>true</NoStdLib>
|
||||
<NoConfig>true</NoConfig>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<SignAssembly>false</SignAssembly>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\..\Jellyfish\StrongName.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<SignManifests>false</SignManifests>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ManifestTimestampUrl>http://timestamp.verisign.com/scripts/timestamp.dll</ManifestTimestampUrl>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ManifestCertificateThumbprint>462E2816DD15CF75ED0DB781E8C7AD957C048679</ManifestCertificateThumbprint>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ManifestKeyFile>..\..\..\..\Jellyfish\CodeSign.pfx</ManifestKeyFile>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.Phone" />
|
||||
<Reference Include="mscorlib" />
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Net" />
|
||||
<Reference Include="System.Windows" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ApplicationDefinition Include="MainApp.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</ApplicationDefinition>
|
||||
<Page Include="MainPage.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Compile Include="MainApp.xaml.cs">
|
||||
<DependentUpon>MainApp.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="MainPage.xaml.cs">
|
||||
<DependentUpon>MainPage.xaml</DependentUpon>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\..\Cassette.cs">
|
||||
<Link>Core\Cassette.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Cpu.cs">
|
||||
<Link>Core\Cpu.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\CpuData.cs">
|
||||
<Link>Core\CpuData.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Disk525.cs">
|
||||
<Link>Core\Disk525.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\DiskDsk.cs">
|
||||
<Link>Core\DiskDsk.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\DiskIIController.cs">
|
||||
<Link>Core\DiskIIController.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\DiskIIDrive.cs">
|
||||
<Link>Core\DiskIIDrive.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\DiskNib.cs">
|
||||
<Link>Core\DiskNib.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GamePort.cs">
|
||||
<Link>Core\GamePort.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GlobalSuppressions.cs">
|
||||
<Link>GlobalSuppressions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Keyboard.cs">
|
||||
<Link>Core\Keyboard.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Machine.cs">
|
||||
<Link>Core\Machine.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\MachineComponent.cs">
|
||||
<Link>Core\MachineComponent.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\MachineEvents.cs">
|
||||
<Link>Core\MachineEvents.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Memory.cs">
|
||||
<Link>Core\Memory.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\MemoryData.cs">
|
||||
<Link>Core\MemoryData.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\NoSlotClock.cs">
|
||||
<Link>Core\NoSlotClock.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\PeripheralCard.cs">
|
||||
<Link>Core\PeripheralCard.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Properties\Strings.Designer.cs">
|
||||
<Link>Properties\Strings.Designer.cs</Link>
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Strings.resx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Services\AudioService.cs">
|
||||
<Link>Services\AudioService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Services\DebugService.cs">
|
||||
<Link>Services\DebugService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Services\GamePortService.cs">
|
||||
<Link>Services\GamePortService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Services\IsolatedStorageService.cs">
|
||||
<Link>Services\IsolatedStorageService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Services\KeyboardService.cs">
|
||||
<Link>Services\KeyboardService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Services\MachineService.cs">
|
||||
<Link>Services\MachineService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Services\MachineServices.cs">
|
||||
<Link>Services\MachineServices.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Services\StorageService.cs">
|
||||
<Link>Services\StorageService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Services\VideoService.cs">
|
||||
<Link>Services\VideoService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Speaker.cs">
|
||||
<Link>Core\Speaker.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\Video.cs">
|
||||
<Link>Core\Video.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\VideoData.cs">
|
||||
<Link>Core\VideoData.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\SilverlightAudioService.cs">
|
||||
<Link>Services\SilverlightAudioService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\SilverlightDebugService.cs">
|
||||
<Link>Services\SilverlightDebugService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\SilverlightKeyboardService.cs">
|
||||
<Link>Services\SilverlightKeyboardService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\SilverlightVideoService.cs">
|
||||
<Link>Services\SilverlightVideoService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Properties\AppManifest.xml" />
|
||||
<None Include="Properties\WMAppManifest.xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="AppIcon.png">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="Background.png">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="SplashScreenImage.jpg" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="..\..\Properties\Strings.resx">
|
||||
<Link>Properties\Strings.resx</Link>
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Strings.Designer.cs</LastGenOutput>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="..\..\Disks\Default.dsk">
|
||||
<Link>Disks\Default.dsk</Link>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="..\..\Roms\AppleIIe.rom">
|
||||
<Link>Roms\AppleIIe.rom</Link>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="..\..\Roms\DiskII.rom">
|
||||
<Link>Roms\DiskII.rom</Link>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<CodeAnalysisDictionary Include="..\..\CustomDictionary.xml">
|
||||
<Link>CustomDictionary.xml</Link>
|
||||
</CodeAnalysisDictionary>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\..\Library\Silverlight\Phone\Jellyfish.Library.Silverlight.Phone.csproj">
|
||||
<Project>{D4880706-29A6-449C-A2A6-3058C37583DA}</Project>
|
||||
<Name>Jellyfish.Library.Silverlight.Phone</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\Microsoft\Silverlight for Phone\$(TargetFrameworkVersion)\Microsoft.Silverlight.$(TargetFrameworkProfile).Overrides.targets" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Microsoft\Silverlight for Phone\$(TargetFrameworkVersion)\Microsoft.Silverlight.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
<ProjectExtensions />
|
||||
</Project>
|
@ -1,13 +0,0 @@
|
||||
<jl:ApplicationBase x:Class="Jellyfish.Virtu.MainApp"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
|
||||
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
|
||||
xmlns:jl="clr-namespace:Jellyfish.Library;assembly=Jellyfish.Library">
|
||||
<Application.Resources>
|
||||
</Application.Resources>
|
||||
|
||||
<Application.ApplicationLifetimeObjects>
|
||||
<shell:PhoneApplicationService />
|
||||
</Application.ApplicationLifetimeObjects>
|
||||
</jl:ApplicationBase>
|
@ -1,14 +0,0 @@
|
||||
using Jellyfish.Library;
|
||||
|
||||
namespace Jellyfish.Virtu
|
||||
{
|
||||
public sealed partial class MainApp : ApplicationBase
|
||||
{
|
||||
public MainApp() :
|
||||
base("Virtu")
|
||||
{
|
||||
InitializeComponent();
|
||||
InitializePhoneApplication();
|
||||
}
|
||||
}
|
||||
}
|
@ -1,32 +0,0 @@
|
||||
<phone:PhoneApplicationPage
|
||||
x:Class="Jellyfish.Virtu.MainPage"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
|
||||
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:jl="clr-namespace:Jellyfish.Library;assembly=Jellyfish.Library"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="480"
|
||||
FontFamily="{StaticResource PhoneFontFamilyNormal}" FontSize="{StaticResource PhoneFontSizeNormal}"
|
||||
Foreground="{StaticResource PhoneForegroundBrush}"
|
||||
Orientation="Landscape" SupportedOrientations="Landscape" Title="Virtu">
|
||||
<Grid Background="Black">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition />
|
||||
</Grid.RowDefinitions>
|
||||
<!--<StackPanel Orientation="Horizontal">
|
||||
<Button x:Name="_disk1Button" Content="Disk 1" IsTabStop="False" Margin="4,4,0,4" />
|
||||
<Button x:Name="_disk2Button" Content="Disk 2" IsTabStop="False" Margin="4,4,0,4" />
|
||||
</StackPanel>-->
|
||||
<jl:FrameRateCounter Margin="0,0,4,0" HorizontalAlignment="Right" VerticalAlignment="Center" />
|
||||
<Grid Grid.Row="1">
|
||||
<Image x:Name="_image" MinWidth="560" MinHeight="384" HorizontalAlignment="Center" VerticalAlignment="Center" />
|
||||
<MediaElement x:Name="_media" />
|
||||
<ScrollViewer x:Name="_debugScrollViewer" BorderThickness="0" IsTabStop="False" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto">
|
||||
<TextBlock x:Name="_debugText" FontFamily="Consolas" FontSize="12" Foreground="White" />
|
||||
</ScrollViewer>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</phone:PhoneApplicationPage>
|
@ -1,87 +0,0 @@
|
||||
using System;
|
||||
using System.ComponentModel;
|
||||
using System.Windows;
|
||||
using System.Windows.Media;
|
||||
using Jellyfish.Virtu.Services;
|
||||
using Microsoft.Phone.Controls;
|
||||
|
||||
namespace Jellyfish.Virtu
|
||||
{
|
||||
public sealed partial class MainPage : PhoneApplicationPage, IDisposable
|
||||
{
|
||||
public MainPage()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
if (!DesignerProperties.IsInDesignTool)
|
||||
{
|
||||
_debugService = DebugService.Default;
|
||||
_storageService = new IsolatedStorageService(_machine);
|
||||
_keyboardService = new SilverlightKeyboardService(_machine, this);
|
||||
_gamePortService = new GamePortService(_machine); // not connected
|
||||
_audioService = new SilverlightAudioService(_machine, this, _media);
|
||||
_videoService = new SilverlightVideoService(_machine, this, _image);
|
||||
|
||||
_machine.Services.AddService(typeof(DebugService), _debugService);
|
||||
_machine.Services.AddService(typeof(StorageService), _storageService);
|
||||
_machine.Services.AddService(typeof(KeyboardService), _keyboardService);
|
||||
_machine.Services.AddService(typeof(GamePortService), _gamePortService);
|
||||
_machine.Services.AddService(typeof(AudioService), _audioService);
|
||||
_machine.Services.AddService(typeof(VideoService), _videoService);
|
||||
|
||||
Loaded += (sender, e) => _machine.Start();
|
||||
CompositionTarget.Rendering += OnCompositionTargetRendering;
|
||||
Application.Current.Exit += (sender, e) => _machine.Stop();
|
||||
|
||||
//_disk1Button.Click += (sender, e) => OnDiskButtonClick(0); // TODO
|
||||
//_disk2Button.Click += (sender, e) => OnDiskButtonClick(1);
|
||||
}
|
||||
}
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
_machine.Dispose();
|
||||
_debugService.Dispose();
|
||||
_storageService.Dispose();
|
||||
_keyboardService.Dispose();
|
||||
_gamePortService.Dispose();
|
||||
_audioService.Dispose();
|
||||
_videoService.Dispose();
|
||||
}
|
||||
|
||||
public void WriteMessage(string message)
|
||||
{
|
||||
_debugText.Text += message + Environment.NewLine;
|
||||
_debugScrollViewer.UpdateLayout();
|
||||
_debugScrollViewer.ScrollToVerticalOffset(double.MaxValue);
|
||||
}
|
||||
|
||||
private void OnCompositionTargetRendering(object sender, EventArgs e)
|
||||
{
|
||||
_keyboardService.Update();
|
||||
_gamePortService.Update();
|
||||
_videoService.Update();
|
||||
}
|
||||
|
||||
//private void OnDiskButtonClick(int drive) // TODO
|
||||
//{
|
||||
// var dialog = new OpenFileDialog() { Filter = "Disk Files (*.do;*.dsk;*.nib;*.po)|*.do;*.dsk;*.nib;*.po|All Files (*.*)|*.*" };
|
||||
// bool? result = dialog.ShowDialog();
|
||||
// if (result.HasValue && result.Value)
|
||||
// {
|
||||
// _machine.Pause();
|
||||
// StorageService.LoadFile(dialog.File, stream => _machine.BootDiskII.Drives[drive].InsertDisk(dialog.File.Name, stream, false));
|
||||
// _machine.Unpause();
|
||||
// }
|
||||
//}
|
||||
|
||||
private Machine _machine = new Machine();
|
||||
|
||||
private DebugService _debugService;
|
||||
private StorageService _storageService;
|
||||
private KeyboardService _keyboardService;
|
||||
private GamePortService _gamePortService;
|
||||
private AudioService _audioService;
|
||||
private VideoService _videoService;
|
||||
}
|
||||
}
|
@ -1,5 +0,0 @@
|
||||
<Deployment xmlns="http://schemas.microsoft.com/client/2007/deployment"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||
<Deployment.Parts>
|
||||
</Deployment.Parts>
|
||||
</Deployment>
|
@ -1,23 +0,0 @@
|
||||
using System;
|
||||
using System.Reflection;
|
||||
using System.Resources;
|
||||
using System.Runtime.InteropServices;
|
||||
using Jellyfish.Library;
|
||||
using Jellyfish.Virtu;
|
||||
|
||||
[assembly: AssemblyTitle("Virtu")]
|
||||
[assembly: AssemblyDescription("Apple IIe Emulator")]
|
||||
[assembly: AssemblyProduct("Jellyfish.Virtu.Silverlight.Phone")]
|
||||
[assembly: AssemblyCompany("Digital Jellyfish Design Ltd")]
|
||||
[assembly: AssemblyCopyright("Copyright © 1995-2012 Digital Jellyfish Design Ltd")]
|
||||
[assembly: AssemblyComment("Developed by Sean Fausett & Nick Westgate")]
|
||||
|
||||
[assembly: AssemblyVersion(Machine.Version)]
|
||||
[assembly: AssemblyFileVersion(Machine.Version)]
|
||||
[assembly: AssemblyInformationalVersion(Machine.Version)]
|
||||
|
||||
[assembly: CLSCompliant(false)]
|
||||
[assembly: ComVisible(false)]
|
||||
[assembly: Guid("89a50370-1ed9-4cf1-ad08-043b6e6f3c90")]
|
||||
|
||||
[assembly: NeutralResourcesLanguage("en")]
|
@ -1,31 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Deployment xmlns="http://schemas.microsoft.com/windowsphone/2009/deployment" AppPlatformVersion="7.0">
|
||||
<App xmlns="" ProductID="{89a50370-1ed9-4cf1-ad08-043b6e6f3c90}" Title="Virtu" RuntimeType="Silverlight" Version="1.0.0.0" Genre="Apps.Normal" Author="Sean Fausett & Nick Westgate" Description="Apple IIe Emulator" Publisher="Digital Jellyfish Design Ltd">
|
||||
<IconPath IsRelative="true" IsResource="false">AppIcon.png</IconPath>
|
||||
<Capabilities>
|
||||
<Capability Name="ID_CAP_GAMERSERVICES"/>
|
||||
<Capability Name="ID_CAP_IDENTITY_DEVICE"/>
|
||||
<Capability Name="ID_CAP_IDENTITY_USER"/>
|
||||
<Capability Name="ID_CAP_LOCATION"/>
|
||||
<Capability Name="ID_CAP_MEDIALIB"/>
|
||||
<Capability Name="ID_CAP_MICROPHONE"/>
|
||||
<Capability Name="ID_CAP_NETWORKING"/>
|
||||
<Capability Name="ID_CAP_PHONEDIALER"/>
|
||||
<Capability Name="ID_CAP_PUSH_NOTIFICATION"/>
|
||||
<Capability Name="ID_CAP_SENSORS"/>
|
||||
<Capability Name="ID_CAP_WEBBROWSERCOMPONENT"/>
|
||||
</Capabilities>
|
||||
<Tasks>
|
||||
<DefaultTask Name="_default" NavigationPage="MainPage.xaml"/>
|
||||
</Tasks>
|
||||
<Tokens>
|
||||
<PrimaryToken TokenID="Jellyfish.Virtu.Silverlight.Phone.Token" TaskName="_default">
|
||||
<TemplateType5>
|
||||
<BackgroundImageURI IsRelative="true" IsResource="false">Background.png</BackgroundImageURI>
|
||||
<Count>0</Count>
|
||||
<Title>Virtu</Title>
|
||||
</TemplateType5>
|
||||
</PrimaryToken>
|
||||
</Tokens>
|
||||
</App>
|
||||
</Deployment>
|
Binary file not shown.
Before Width: | Height: | Size: 9.2 KiB |
@ -10,7 +10,7 @@
|
||||
[assembly: AssemblyProduct("Jellyfish.Virtu.Silverlight")]
|
||||
[assembly: AssemblyCompany("Digital Jellyfish Design Ltd")]
|
||||
[assembly: AssemblyCopyright("Copyright © 1995-2012 Digital Jellyfish Design Ltd")]
|
||||
[assembly: AssemblyComment("Developed by Sean Fausett & Nick Westgate")]
|
||||
[assembly: AssemblyMetadata("Developers", "Sean Fausett & Nick Westgate")]
|
||||
|
||||
[assembly: AssemblyVersion(Machine.Version)]
|
||||
[assembly: AssemblyFileVersion(Machine.Version)]
|
||||
|
@ -23,9 +23,7 @@ public SilverlightAudioService(Machine machine, UserControl page, MediaElement m
|
||||
_media.SetSource(_mediaSource);
|
||||
|
||||
page.Loaded += (sender, e) => _media.Play();
|
||||
#if !WINDOWS_PHONE
|
||||
page.Unloaded += (sender, e) => _media.Stop();
|
||||
#endif
|
||||
}
|
||||
|
||||
public override void SetVolume(float volume)
|
||||
|
@ -99,12 +99,10 @@ private void OnPageKeyUp(object sender, KeyEventArgs e)
|
||||
{
|
||||
Machine.Video.IsMonochrome ^= true;
|
||||
}
|
||||
#if !WINDOWS_PHONE
|
||||
else if (control && (e.Key == Key.Subtract))
|
||||
{
|
||||
Machine.Video.IsFullScreen ^= true;
|
||||
}
|
||||
#endif
|
||||
Update();
|
||||
}
|
||||
|
||||
@ -303,7 +301,7 @@ private int GetAsciiKey(Key key, int platformKeyCode)
|
||||
return shift ? '>' : '.';
|
||||
}
|
||||
break;
|
||||
#if !WINDOWS_PHONE
|
||||
|
||||
case PlatformID.MacOSX:
|
||||
switch (platformKeyCode)
|
||||
{
|
||||
@ -341,7 +339,7 @@ private int GetAsciiKey(Key key, int platformKeyCode)
|
||||
return shift ? '>' : '.';
|
||||
}
|
||||
break;
|
||||
#endif
|
||||
|
||||
case PlatformID.Unix:
|
||||
switch (platformKeyCode)
|
||||
{
|
||||
|
@ -4,9 +4,6 @@
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Media.Imaging;
|
||||
using Jellyfish.Library;
|
||||
#if WINDOWS_PHONE
|
||||
using Microsoft.Phone.Controls;
|
||||
#endif
|
||||
|
||||
namespace Jellyfish.Virtu.Services
|
||||
{
|
||||
@ -28,17 +25,12 @@ public SilverlightVideoService(Machine machine, UserControl page, Image image) :
|
||||
_image = image;
|
||||
_image.Source = _bitmap;
|
||||
|
||||
#if !WINDOWS_PHONE
|
||||
_page.LayoutUpdated += (sender, e) => SetWindowSizeToContent();
|
||||
#else
|
||||
((PhoneApplicationPage)_page).OrientationChanged += (sender, e) => SetImageSize(swapOrientation: (e.Orientation & PageOrientation.Landscape) != 0);
|
||||
#endif
|
||||
_page.SizeChanged += (sender, e) => SetImageSize();
|
||||
}
|
||||
|
||||
public override void SetFullScreen(bool isFullScreen)
|
||||
{
|
||||
#if !WINDOWS_PHONE
|
||||
_page.Dispatcher.Send(() =>
|
||||
{
|
||||
var application = Application.Current;
|
||||
@ -51,7 +43,6 @@ public override void SetFullScreen(bool isFullScreen)
|
||||
}
|
||||
}
|
||||
});
|
||||
#endif
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Usage", "CA2233:OperationsShouldNotOverflow")]
|
||||
@ -82,7 +73,6 @@ private void SetImageSize(bool swapOrientation = false)
|
||||
_image.Height = uniformScale * BitmapHeight;
|
||||
}
|
||||
|
||||
#if !WINDOWS_PHONE
|
||||
private void SetWindowSizeToContent()
|
||||
{
|
||||
var application = Application.Current;
|
||||
@ -95,7 +85,6 @@ private void SetWindowSizeToContent()
|
||||
window.Height = size.Height;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
private const int BitmapWidth = 560;
|
||||
private const int BitmapHeight = 384;
|
||||
@ -105,8 +94,6 @@ private void SetWindowSizeToContent()
|
||||
private WriteableBitmap _bitmap = new WriteableBitmap(BitmapWidth, BitmapHeight);
|
||||
private int[] _pixels = new int[BitmapWidth * BitmapHeight];
|
||||
private bool _pixelsDirty;
|
||||
#if !WINDOWS_PHONE
|
||||
private bool _sizedToContent;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
@ -16,11 +16,7 @@ public override void Initialize()
|
||||
{
|
||||
_audioService = Machine.Services.GetService<AudioService>();
|
||||
|
||||
#if WINDOWS_PHONE
|
||||
Volume = 0.85f;
|
||||
#else
|
||||
Volume = 0.5f;
|
||||
#endif
|
||||
Machine.Events.AddEvent(CyclesPerFlush * Machine.Cpu.Multiplier, _flushOutputEvent);
|
||||
}
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProductVersion>8.0.30703</ProductVersion>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>{C152D47E-BBC1-4C35-8646-465180720A72}</ProjectGuid>
|
||||
@ -10,15 +10,14 @@
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>Jellyfish.Virtu</RootNamespace>
|
||||
<AssemblyName>Jellyfish.Virtu</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
|
||||
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<ApplicationIcon>AppIcon.ico</ApplicationIcon>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
|
||||
<PlatformTarget>x86</PlatformTarget>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
@ -29,11 +28,9 @@
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<NoWarn>
|
||||
</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
|
||||
<PlatformTarget>x86</PlatformTarget>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\</OutputPath>
|
||||
@ -43,8 +40,6 @@
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<NoWarn>
|
||||
</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<StartupObject>Jellyfish.Virtu.MainApp</StartupObject>
|
||||
|
@ -1,6 +1,6 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2012
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Wpf", "..\..\Library\Wpf\Jellyfish.Library.Wpf.csproj", "{93900841-7250-4D3A-837E-43EE3FD118DC}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Virtu.Wpf", "Jellyfish.Virtu.Wpf.csproj", "{C152D47E-BBC1-4C35-8646-465180720A72}"
|
||||
@ -8,33 +8,17 @@ EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Debug|Mixed Platforms = Debug|Mixed Platforms
|
||||
Debug|x86 = Debug|x86
|
||||
Release|Any CPU = Release|Any CPU
|
||||
Release|Mixed Platforms = Release|Mixed Platforms
|
||||
Release|x86 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{93900841-7250-4D3A-837E-43EE3FD118DC}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Debug|Mixed Platforms.Build.0 = Debug|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Debug|x86.Build.0 = Debug|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Release|Mixed Platforms.ActiveCfg = Release|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Release|Mixed Platforms.Build.0 = Release|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Release|x86.ActiveCfg = Release|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Release|x86.Build.0 = Release|x86
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{C152D47E-BBC1-4C35-8646-465180720A72}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
@ -1,11 +1,11 @@
|
||||
using System.Security.Permissions;
|
||||
using System.Security;
|
||||
using Jellyfish.Library;
|
||||
|
||||
namespace Jellyfish.Virtu
|
||||
{
|
||||
public sealed partial class MainApp : ApplicationBase
|
||||
{
|
||||
[SecurityPermission(SecurityAction.LinkDemand, UnmanagedCode = true)]
|
||||
[SecurityCritical]
|
||||
public MainApp() :
|
||||
base("Virtu")
|
||||
{
|
||||
|
@ -11,7 +11,7 @@
|
||||
[assembly: AssemblyProduct("Jellyfish.Virtu.Wpf")]
|
||||
[assembly: AssemblyCompany("Digital Jellyfish Design Ltd")]
|
||||
[assembly: AssemblyCopyright("Copyright © 1995-2012 Digital Jellyfish Design Ltd")]
|
||||
[assembly: AssemblyComment("Developed by Sean Fausett & Nick Westgate")]
|
||||
[assembly: AssemblyMetadata("Developers", "Sean Fausett & Nick Westgate")]
|
||||
|
||||
[assembly: AssemblyVersion(Machine.Version)]
|
||||
[assembly: AssemblyFileVersion(Machine.Version)]
|
||||
|
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<configuration>
|
||||
<startup useLegacyV2RuntimeActivationPolicy="true">
|
||||
<supportedRuntime version="v4.0"/>
|
||||
</startup>
|
||||
</configuration>
|
Binary file not shown.
Before Width: | Height: | Size: 22 KiB |
Binary file not shown.
Before Width: | Height: | Size: 1.8 KiB |
Binary file not shown.
Before Width: | Height: | Size: 4.7 KiB |
@ -1,17 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<XnaContent xmlns:Graphics="Microsoft.Xna.Framework.Content.Pipeline.Graphics">
|
||||
<Asset Type="Graphics:FontDescription">
|
||||
<FontName>Consolas</FontName>
|
||||
<Size>12</Size>
|
||||
<Spacing>0</Spacing>
|
||||
<UseKerning>true</UseKerning>
|
||||
<Style>Regular</Style>
|
||||
<DefaultCharacter>*</DefaultCharacter>
|
||||
<CharacterRegions>
|
||||
<CharacterRegion>
|
||||
<Start> </Start>
|
||||
<End>~</End>
|
||||
</CharacterRegion>
|
||||
</CharacterRegions>
|
||||
</Asset>
|
||||
</XnaContent>
|
@ -1,56 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
|
||||
<PropertyGroup>
|
||||
<ProjectGuid>{C138ADC9-8F2B-414A-930D-12B489A96BBB}</ProjectGuid>
|
||||
<ProjectTypeGuids>{96E2B04D-8817-42c6-938A-82C39BA4D311};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<XnaFrameworkVersion>v4.0</XnaFrameworkVersion>
|
||||
<OutputPath>bin\$(Platform)\$(Configuration)</OutputPath>
|
||||
<ContentRootDirectory>Content</ContentRootDirectory>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<RootNamespace>Jellyfish.Virtu.Xna.Content</RootNamespace>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.EffectImporter, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.FBXImporter, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.TextureImporter, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.XImporter, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.AudioImporters, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.VideoImporters, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Consolas.spritefont">
|
||||
<Name>Consolas</Name>
|
||||
<Importer>FontDescriptionImporter</Importer>
|
||||
<Processor>FontDescriptionProcessor</Processor>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
@ -1,270 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<ProjectGuid>{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}</ProjectGuid>
|
||||
<ProjectTypeGuids>{6D335F3A-9D43-41b4-9D22-F6F17C4BE596};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">Windows Phone</Platform>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>Jellyfish.Virtu</RootNamespace>
|
||||
<AssemblyName>Jellyfish.Virtu</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
|
||||
<XnaFrameworkVersion>v4.0</XnaFrameworkVersion>
|
||||
<XnaPlatform>Windows Phone</XnaPlatform>
|
||||
<XnaProfile>Reach</XnaProfile>
|
||||
<XnaCrossPlatformGroupID>48ae3b16-efe9-4694-85f0-23da456b4bc4</XnaCrossPlatformGroupID>
|
||||
<XnaOutputType>Game</XnaOutputType>
|
||||
<XapFilename>$(AssemblyName).xap</XapFilename>
|
||||
<SilverlightManifestTemplate>Properties\AppManifest.xml</SilverlightManifestTemplate>
|
||||
<XnaWindowsPhoneManifestTemplate>Properties\WMAppManifest.xml</XnaWindowsPhoneManifestTemplate>
|
||||
<ApplicationIcon>AppIcon.ico</ApplicationIcon>
|
||||
<Thumbnail>AppThumbnail.png</Thumbnail>
|
||||
<GameStartupType>Jellyfish.Virtu.MainGame</GameStartupType>
|
||||
<TileImage>Background.png</TileImage>
|
||||
<TileTitle>Virtu</TileTitle>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|Windows Phone' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Windows Phone\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE;XNA;WINDOWS_PHONE;CODE_ANALYSIS</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<NoStdLib>true</NoStdLib>
|
||||
<UseVSHostingProcess>false</UseVSHostingProcess>
|
||||
<XnaCompressContent>true</XnaCompressContent>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<LangVersion>default</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|Windows Phone' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Windows Phone\</OutputPath>
|
||||
<DefineConstants>TRACE;XNA;WINDOWS_PHONE;CODE_ANALYSIS</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<NoStdLib>true</NoStdLib>
|
||||
<UseVSHostingProcess>false</UseVSHostingProcess>
|
||||
<XnaCompressContent>true</XnaCompressContent>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<LangVersion>default</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<SignAssembly>false</SignAssembly>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\Jellyfish\StrongName.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<SignManifests>false</SignManifests>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ManifestTimestampUrl>http://timestamp.verisign.com/scripts/timestamp.dll</ManifestTimestampUrl>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ManifestCertificateThumbprint>462E2816DD15CF75ED0DB781E8C7AD957C048679</ManifestCertificateThumbprint>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ManifestKeyFile>..\..\..\Jellyfish\CodeSign.pfx</ManifestKeyFile>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.Xna.Framework">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Game">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Graphics">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.GamerServices">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Input.Touch">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="mscorlib">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Core">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\Cassette.cs">
|
||||
<Link>Core\Cassette.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Cpu.cs">
|
||||
<Link>Core\Cpu.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\CpuData.cs">
|
||||
<Link>Core\CpuData.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Disk525.cs">
|
||||
<Link>Core\Disk525.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\DiskDsk.cs">
|
||||
<Link>Core\DiskDsk.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\DiskIIController.cs">
|
||||
<Link>Core\DiskIIController.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\DiskIIDrive.cs">
|
||||
<Link>Core\DiskIIDrive.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\DiskNib.cs">
|
||||
<Link>Core\DiskNib.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\GamePort.cs">
|
||||
<Link>Core\GamePort.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\GlobalSuppressions.cs">
|
||||
<Link>GlobalSuppressions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Keyboard.cs">
|
||||
<Link>Core\Keyboard.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Machine.cs">
|
||||
<Link>Core\Machine.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\MachineComponent.cs">
|
||||
<Link>Core\MachineComponent.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\MachineEvents.cs">
|
||||
<Link>Core\MachineEvents.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Memory.cs">
|
||||
<Link>Core\Memory.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\MemoryData.cs">
|
||||
<Link>Core\MemoryData.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\NoSlotClock.cs">
|
||||
<Link>Core\NoSlotClock.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\PeripheralCard.cs">
|
||||
<Link>Core\PeripheralCard.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Properties\Strings.Designer.cs">
|
||||
<Link>Properties\Strings.Designer.cs</Link>
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Strings.resx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\AudioService.cs">
|
||||
<Link>Services\AudioService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\DebugService.cs">
|
||||
<Link>Services\DebugService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\GamePortService.cs">
|
||||
<Link>Services\GamePortService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\IsolatedStorageService.cs">
|
||||
<Link>Services\IsolatedStorageService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\KeyboardService.cs">
|
||||
<Link>Services\KeyboardService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\MachineService.cs">
|
||||
<Link>Services\MachineService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\MachineServices.cs">
|
||||
<Link>Services\MachineServices.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\StorageService.cs">
|
||||
<Link>Services\StorageService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\VideoService.cs">
|
||||
<Link>Services\VideoService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Speaker.cs">
|
||||
<Link>Core\Speaker.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Video.cs">
|
||||
<Link>Core\Video.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\VideoData.cs">
|
||||
<Link>Core\VideoData.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Services\XnaAudioService.cs" />
|
||||
<Compile Include="Services\XnaGamePortService.cs" />
|
||||
<Compile Include="Services\XnaKeyboardService.cs" />
|
||||
<Compile Include="Services\XnaVideoService.cs" />
|
||||
<Compile Include="MainApp.cs" />
|
||||
<Compile Include="MainGame.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Properties\AppManifest.xml">
|
||||
<XnaPlatformSpecific>true</XnaPlatformSpecific>
|
||||
</None>
|
||||
<None Include="Properties\WMAppManifest.xml">
|
||||
<XnaPlatformSpecific>true</XnaPlatformSpecific>
|
||||
</None>
|
||||
<None Include="App.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="AppIcon.ico" />
|
||||
<Content Include="AppThumbnail.png" />
|
||||
<Content Include="Background.png">
|
||||
<XnaPlatformSpecific>true</XnaPlatformSpecific>
|
||||
</Content>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="..\Properties\Strings.resx">
|
||||
<Link>Properties\Strings.resx</Link>
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Strings.Designer.cs</LastGenOutput>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="..\Disks\Default.dsk">
|
||||
<Link>Disks\Default.dsk</Link>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="..\Roms\AppleIIe.rom">
|
||||
<Link>Roms\AppleIIe.rom</Link>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="..\Roms\DiskII.rom">
|
||||
<Link>Roms\DiskII.rom</Link>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<CodeAnalysisDictionary Include="..\CustomDictionary.xml">
|
||||
<Link>CustomDictionary.xml</Link>
|
||||
</CodeAnalysisDictionary>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\Library\Xna\Jellyfish.Library.Xna.Phone.csproj">
|
||||
<Project>{46B2BD23-3D45-4268-9979-B9CF136CC982}</Project>
|
||||
<Name>Jellyfish.Library.Xna.Phone</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="Content\Jellyfish.Virtu.Xna.Content.contentproj">
|
||||
<Name>Jellyfish.Virtu.Xna.Content</Name>
|
||||
<XnaReferenceType>Content</XnaReferenceType>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\Microsoft.Xna.GameStudio.targets" />
|
||||
<!--
|
||||
To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
@ -1,268 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<ProjectGuid>{1400371E-AC2E-4BC5-8A52-077616F716C4}</ProjectGuid>
|
||||
<ProjectTypeGuids>{6D335F3A-9D43-41b4-9D22-F6F17C4BE596};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">Xbox 360</Platform>
|
||||
<OutputType>Exe</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>Jellyfish.Virtu</RootNamespace>
|
||||
<AssemblyName>Jellyfish.Virtu</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
|
||||
<XnaFrameworkVersion>v4.0</XnaFrameworkVersion>
|
||||
<XnaPlatform>Xbox 360</XnaPlatform>
|
||||
<XnaProfile>Reach</XnaProfile>
|
||||
<XnaCrossPlatformGroupID>48ae3b16-efe9-4694-85f0-23da456b4bc4</XnaCrossPlatformGroupID>
|
||||
<XnaOutputType>Game</XnaOutputType>
|
||||
<ApplicationIcon>AppIcon.ico</ApplicationIcon>
|
||||
<Thumbnail>AppThumbnail.png</Thumbnail>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|Xbox 360' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Xbox 360\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE;XNA;XBOX;XBOX360;CODE_ANALYSIS</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<NoStdLib>true</NoStdLib>
|
||||
<UseVSHostingProcess>false</UseVSHostingProcess>
|
||||
<XnaCompressContent>true</XnaCompressContent>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<LangVersion>default</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|Xbox 360' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Xbox 360\</OutputPath>
|
||||
<DefineConstants>TRACE;XNA;XBOX;XBOX360;CODE_ANALYSIS</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<NoStdLib>true</NoStdLib>
|
||||
<UseVSHostingProcess>false</UseVSHostingProcess>
|
||||
<XnaCompressContent>true</XnaCompressContent>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<LangVersion>default</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<SignAssembly>false</SignAssembly>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\Jellyfish\StrongName.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<SignManifests>false</SignManifests>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ManifestTimestampUrl>http://timestamp.verisign.com/scripts/timestamp.dll</ManifestTimestampUrl>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ManifestCertificateThumbprint>462E2816DD15CF75ED0DB781E8C7AD957C048679</ManifestCertificateThumbprint>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ManifestKeyFile>..\..\..\Jellyfish\CodeSign.pfx</ManifestKeyFile>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.Xna.Framework">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Game">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Graphics">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.GamerServices">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Input.Touch">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Xact">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Video">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Avatar">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Net">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Storage">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="mscorlib">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Core">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\Cassette.cs">
|
||||
<Link>Core\Cassette.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Cpu.cs">
|
||||
<Link>Core\Cpu.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\CpuData.cs">
|
||||
<Link>Core\CpuData.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Disk525.cs">
|
||||
<Link>Core\Disk525.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\DiskDsk.cs">
|
||||
<Link>Core\DiskDsk.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\DiskIIController.cs">
|
||||
<Link>Core\DiskIIController.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\DiskIIDrive.cs">
|
||||
<Link>Core\DiskIIDrive.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\DiskNib.cs">
|
||||
<Link>Core\DiskNib.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\GamePort.cs">
|
||||
<Link>Core\GamePort.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\GlobalSuppressions.cs">
|
||||
<Link>GlobalSuppressions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Keyboard.cs">
|
||||
<Link>Core\Keyboard.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Machine.cs">
|
||||
<Link>Core\Machine.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\MachineComponent.cs">
|
||||
<Link>Core\MachineComponent.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\MachineEvents.cs">
|
||||
<Link>Core\MachineEvents.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Memory.cs">
|
||||
<Link>Core\Memory.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\MemoryData.cs">
|
||||
<Link>Core\MemoryData.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\NoSlotClock.cs">
|
||||
<Link>Core\NoSlotClock.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\PeripheralCard.cs">
|
||||
<Link>Core\PeripheralCard.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Properties\Strings.Designer.cs">
|
||||
<Link>Properties\Strings.Designer.cs</Link>
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Strings.resx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\AudioService.cs">
|
||||
<Link>Services\AudioService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\DebugService.cs">
|
||||
<Link>Services\DebugService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\GamePortService.cs">
|
||||
<Link>Services\GamePortService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\KeyboardService.cs">
|
||||
<Link>Services\KeyboardService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\MachineService.cs">
|
||||
<Link>Services\MachineService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\MachineServices.cs">
|
||||
<Link>Services\MachineServices.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\StorageService.cs">
|
||||
<Link>Services\StorageService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\VideoService.cs">
|
||||
<Link>Services\VideoService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Speaker.cs">
|
||||
<Link>Core\Speaker.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Video.cs">
|
||||
<Link>Core\Video.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\VideoData.cs">
|
||||
<Link>Core\VideoData.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Services\XnaAudioService.cs" />
|
||||
<Compile Include="Services\XnaGamePortService.cs" />
|
||||
<Compile Include="Services\XnaKeyboardService.cs" />
|
||||
<Compile Include="Services\XnaStorageService.cs" />
|
||||
<Compile Include="Services\XnaVideoService.cs" />
|
||||
<Compile Include="MainApp.cs" />
|
||||
<Compile Include="MainGame.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="AppIcon.ico" />
|
||||
<Content Include="AppThumbnail.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="..\Properties\Strings.resx">
|
||||
<Link>Properties\Strings.resx</Link>
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Strings.Designer.cs</LastGenOutput>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="..\Disks\Default.dsk">
|
||||
<Link>Disks\Default.dsk</Link>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="..\Roms\AppleIIe.rom">
|
||||
<Link>Roms\AppleIIe.rom</Link>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="..\Roms\DiskII.rom">
|
||||
<Link>Roms\DiskII.rom</Link>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<CodeAnalysisDictionary Include="..\CustomDictionary.xml">
|
||||
<Link>CustomDictionary.xml</Link>
|
||||
</CodeAnalysisDictionary>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\Library\Xna\Jellyfish.Library.Xna.Xbox.csproj">
|
||||
<Project>{222412EE-A626-493F-AE72-344657A6840D}</Project>
|
||||
<Name>Jellyfish.Library.Xna.Xbox</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="Content\Jellyfish.Virtu.Xna.Content.contentproj">
|
||||
<Name>Jellyfish.Virtu.Xna.Content</Name>
|
||||
<XnaReferenceType>Content</XnaReferenceType>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\Microsoft.Xna.GameStudio.targets" />
|
||||
<!--
|
||||
To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
@ -1,272 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<ProjectGuid>{3D0AE444-357F-4986-859F-602CC9BB4EF6}</ProjectGuid>
|
||||
<ProjectTypeGuids>{6D335F3A-9D43-41b4-9D22-F6F17C4BE596};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>Jellyfish.Virtu</RootNamespace>
|
||||
<AssemblyName>Jellyfish.Virtu</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
|
||||
<XnaFrameworkVersion>v4.0</XnaFrameworkVersion>
|
||||
<XnaPlatform>Windows</XnaPlatform>
|
||||
<XnaProfile>Reach</XnaProfile>
|
||||
<XnaCrossPlatformGroupID>48ae3b16-efe9-4694-85f0-23da456b4bc4</XnaCrossPlatformGroupID>
|
||||
<XnaOutputType>Game</XnaOutputType>
|
||||
<ApplicationIcon>AppIcon.ico</ApplicationIcon>
|
||||
<Thumbnail>AppThumbnail.png</Thumbnail>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\x86\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE;XNA;WINDOWS;CODE_ANALYSIS</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<NoStdLib>true</NoStdLib>
|
||||
<UseVSHostingProcess>false</UseVSHostingProcess>
|
||||
<PlatformTarget>x86</PlatformTarget>
|
||||
<XnaCompressContent>true</XnaCompressContent>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\x86\</OutputPath>
|
||||
<DefineConstants>TRACE;XNA;WINDOWS;CODE_ANALYSIS</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<NoStdLib>true</NoStdLib>
|
||||
<UseVSHostingProcess>false</UseVSHostingProcess>
|
||||
<PlatformTarget>x86</PlatformTarget>
|
||||
<XnaCompressContent>true</XnaCompressContent>
|
||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<StartupObject>Jellyfish.Virtu.MainApp</StartupObject>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<SignAssembly>false</SignAssembly>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<AssemblyOriginatorKeyFile>..\..\..\Jellyfish\StrongName.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<SignManifests>false</SignManifests>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ManifestTimestampUrl>http://timestamp.verisign.com/scripts/timestamp.dll</ManifestTimestampUrl>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ManifestCertificateThumbprint>462E2816DD15CF75ED0DB781E8C7AD957C048679</ManifestCertificateThumbprint>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ManifestKeyFile>..\..\..\Jellyfish\CodeSign.pfx</ManifestKeyFile>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.Xna.Framework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Game, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Graphics, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.GamerServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Input.Touch, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Xact, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Video, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Avatar, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Net, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Xna.Framework.Storage, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="mscorlib">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="PresentationFramework" />
|
||||
<Reference Include="System">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Core">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml">
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\Cassette.cs">
|
||||
<Link>Core\Cassette.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Cpu.cs">
|
||||
<Link>Core\Cpu.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\CpuData.cs">
|
||||
<Link>Core\CpuData.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Disk525.cs">
|
||||
<Link>Core\Disk525.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\DiskDsk.cs">
|
||||
<Link>Core\DiskDsk.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\DiskIIController.cs">
|
||||
<Link>Core\DiskIIController.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\DiskIIDrive.cs">
|
||||
<Link>Core\DiskIIDrive.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\DiskNib.cs">
|
||||
<Link>Core\DiskNib.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\GamePort.cs">
|
||||
<Link>Core\GamePort.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\GlobalSuppressions.cs">
|
||||
<Link>GlobalSuppressions.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Keyboard.cs">
|
||||
<Link>Core\Keyboard.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Machine.cs">
|
||||
<Link>Core\Machine.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\MachineComponent.cs">
|
||||
<Link>Core\MachineComponent.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\MachineEvents.cs">
|
||||
<Link>Core\MachineEvents.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Memory.cs">
|
||||
<Link>Core\Memory.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\MemoryData.cs">
|
||||
<Link>Core\MemoryData.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\NoSlotClock.cs">
|
||||
<Link>Core\NoSlotClock.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\PeripheralCard.cs">
|
||||
<Link>Core\PeripheralCard.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Properties\Strings.Designer.cs">
|
||||
<Link>Properties\Strings.Designer.cs</Link>
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Strings.resx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\AudioService.cs">
|
||||
<Link>Services\AudioService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\DebugService.cs">
|
||||
<Link>Services\DebugService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\GamePortService.cs">
|
||||
<Link>Services\GamePortService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\KeyboardService.cs">
|
||||
<Link>Services\KeyboardService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\MachineService.cs">
|
||||
<Link>Services\MachineService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\MachineServices.cs">
|
||||
<Link>Services\MachineServices.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\StorageService.cs">
|
||||
<Link>Services\StorageService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Services\VideoService.cs">
|
||||
<Link>Services\VideoService.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Speaker.cs">
|
||||
<Link>Core\Speaker.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\Video.cs">
|
||||
<Link>Core\Video.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\VideoData.cs">
|
||||
<Link>Core\VideoData.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Services\XnaAudioService.cs" />
|
||||
<Compile Include="Services\XnaGamePortService.cs" />
|
||||
<Compile Include="Services\XnaKeyboardService.cs" />
|
||||
<Compile Include="Services\XnaStorageService.cs" />
|
||||
<Compile Include="Services\XnaVideoService.cs" />
|
||||
<Compile Include="MainApp.cs" />
|
||||
<Compile Include="MainGame.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="AppIcon.ico" />
|
||||
<Content Include="AppThumbnail.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="..\Properties\Strings.resx">
|
||||
<Link>Properties\Strings.resx</Link>
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Strings.Designer.cs</LastGenOutput>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="..\Disks\Default.dsk">
|
||||
<Link>Disks\Default.dsk</Link>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="..\Roms\AppleIIe.rom">
|
||||
<Link>Roms\AppleIIe.rom</Link>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="..\Roms\DiskII.rom">
|
||||
<Link>Roms\DiskII.rom</Link>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<CodeAnalysisDictionary Include="..\CustomDictionary.xml">
|
||||
<Link>CustomDictionary.xml</Link>
|
||||
</CodeAnalysisDictionary>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\Library\Xna\Jellyfish.Library.Xna.csproj">
|
||||
<Project>{82F56318-A1FD-4078-A42F-06CAB8B97F63}</Project>
|
||||
<Name>Jellyfish.Library.Xna</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="Content\Jellyfish.Virtu.Xna.Content.contentproj">
|
||||
<Name>Jellyfish.Virtu.Xna.Content</Name>
|
||||
<XnaReferenceType>Content</XnaReferenceType>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\Microsoft.Xna.GameStudio.targets" />
|
||||
<!--
|
||||
To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
@ -1,134 +0,0 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Xna", "..\..\Library\Xna\Jellyfish.Library.Xna.csproj", "{82F56318-A1FD-4078-A42F-06CAB8B97F63}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Xna.Phone", "..\..\Library\Xna\Jellyfish.Library.Xna.Phone.csproj", "{46B2BD23-3D45-4268-9979-B9CF136CC982}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Library.Xna.Xbox", "..\..\Library\Xna\Jellyfish.Library.Xna.Xbox.csproj", "{222412EE-A626-493F-AE72-344657A6840D}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Virtu.Xna", "Jellyfish.Virtu.Xna.csproj", "{3D0AE444-357F-4986-859F-602CC9BB4EF6}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Virtu.Xna.Content", "Content\Jellyfish.Virtu.Xna.Content.contentproj", "{C138ADC9-8F2B-414A-930D-12B489A96BBB}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Virtu.Xna.Phone", "Jellyfish.Virtu.Xna.Phone.csproj", "{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfish.Virtu.Xna.Xbox", "Jellyfish.Virtu.Xna.Xbox.csproj", "{1400371E-AC2E-4BC5-8A52-077616F716C4}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Debug|Mixed Platforms = Debug|Mixed Platforms
|
||||
Debug|Windows Phone = Debug|Windows Phone
|
||||
Debug|x86 = Debug|x86
|
||||
Debug|Xbox 360 = Debug|Xbox 360
|
||||
Release|Any CPU = Release|Any CPU
|
||||
Release|Mixed Platforms = Release|Mixed Platforms
|
||||
Release|Windows Phone = Release|Windows Phone
|
||||
Release|x86 = Release|x86
|
||||
Release|Xbox 360 = Release|Xbox 360
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Mixed Platforms.Build.0 = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Windows Phone.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|x86.Build.0 = Debug|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Debug|Xbox 360.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Mixed Platforms.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Mixed Platforms.Build.0 = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Windows Phone.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|x86.ActiveCfg = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|x86.Build.0 = Release|x86
|
||||
{82F56318-A1FD-4078-A42F-06CAB8B97F63}.Release|Xbox 360.ActiveCfg = Release|x86
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Any CPU.ActiveCfg = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Mixed Platforms.ActiveCfg = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Mixed Platforms.Build.0 = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Windows Phone.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Windows Phone.Build.0 = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|x86.ActiveCfg = Debug|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Debug|Xbox 360.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Any CPU.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Mixed Platforms.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Mixed Platforms.Build.0 = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Windows Phone.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Windows Phone.Build.0 = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|x86.ActiveCfg = Release|Windows Phone
|
||||
{46B2BD23-3D45-4268-9979-B9CF136CC982}.Release|Xbox 360.ActiveCfg = Release|Windows Phone
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Windows Phone.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|x86.ActiveCfg = Debug|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Xbox 360.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Debug|Xbox 360.Build.0 = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Any CPU.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Mixed Platforms.Build.0 = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Windows Phone.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|x86.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Xbox 360.ActiveCfg = Release|Xbox 360
|
||||
{222412EE-A626-493F-AE72-344657A6840D}.Release|Xbox 360.Build.0 = Release|Xbox 360
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Debug|Mixed Platforms.Build.0 = Debug|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Debug|Windows Phone.ActiveCfg = Release|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Debug|x86.Build.0 = Debug|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Debug|Xbox 360.ActiveCfg = Release|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Release|Mixed Platforms.ActiveCfg = Release|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Release|Mixed Platforms.Build.0 = Release|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Release|Windows Phone.ActiveCfg = Release|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Release|x86.ActiveCfg = Release|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Release|x86.Build.0 = Release|x86
|
||||
{3D0AE444-357F-4986-859F-602CC9BB4EF6}.Release|Xbox 360.ActiveCfg = Release|x86
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Debug|Windows Phone.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Debug|Xbox 360.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Release|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Release|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Release|Windows Phone.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Release|x86.ActiveCfg = Debug|Any CPU
|
||||
{C138ADC9-8F2B-414A-930D-12B489A96BBB}.Release|Xbox 360.ActiveCfg = Debug|Any CPU
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Debug|Any CPU.ActiveCfg = Debug|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Debug|Mixed Platforms.ActiveCfg = Debug|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Debug|Mixed Platforms.Build.0 = Debug|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Debug|Windows Phone.ActiveCfg = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Debug|Windows Phone.Build.0 = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Debug|Windows Phone.Deploy.0 = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Debug|x86.ActiveCfg = Debug|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Debug|Xbox 360.ActiveCfg = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Release|Any CPU.ActiveCfg = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Release|Mixed Platforms.ActiveCfg = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Release|Mixed Platforms.Build.0 = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Release|Windows Phone.ActiveCfg = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Release|Windows Phone.Build.0 = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Release|Windows Phone.Deploy.0 = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Release|x86.ActiveCfg = Release|Windows Phone
|
||||
{AE4C0489-3A21-4264-BE20-EA6C72B24B2C}.Release|Xbox 360.ActiveCfg = Release|Windows Phone
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Debug|Windows Phone.ActiveCfg = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Debug|x86.ActiveCfg = Debug|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Debug|Xbox 360.ActiveCfg = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Debug|Xbox 360.Build.0 = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Debug|Xbox 360.Deploy.0 = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Release|Any CPU.ActiveCfg = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Release|Mixed Platforms.Build.0 = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Release|Windows Phone.ActiveCfg = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Release|x86.ActiveCfg = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Release|Xbox 360.ActiveCfg = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Release|Xbox 360.Build.0 = Release|Xbox 360
|
||||
{1400371E-AC2E-4BC5-8A52-077616F716C4}.Release|Xbox 360.Deploy.0 = Release|Xbox 360
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
@ -1,15 +0,0 @@
|
||||
namespace Jellyfish.Virtu
|
||||
{
|
||||
#if WINDOWS || XBOX
|
||||
static class MainApp
|
||||
{
|
||||
static void Main()
|
||||
{
|
||||
using (var game = new MainGame())
|
||||
{
|
||||
game.Run();
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
@ -1,102 +0,0 @@
|
||||
using Jellyfish.Library;
|
||||
using Jellyfish.Virtu.Services;
|
||||
using Microsoft.Xna.Framework;
|
||||
using Microsoft.Xna.Framework.Graphics;
|
||||
using Microsoft.Xna.Framework.Input;
|
||||
using Microsoft.Xna.Framework.Input.Touch;
|
||||
|
||||
namespace Jellyfish.Virtu
|
||||
{
|
||||
public sealed class MainGame : GameBase
|
||||
{
|
||||
public MainGame() :
|
||||
base("Virtu")
|
||||
{
|
||||
#if WINDOWS
|
||||
IsMouseVisible = true;
|
||||
#endif
|
||||
var frameRateCounter = new FrameRateCounter(this); // no initializers; avoids CA2000
|
||||
Components.Add(frameRateCounter);
|
||||
frameRateCounter.DrawOrder = 1;
|
||||
frameRateCounter.FontName = "Consolas";
|
||||
|
||||
_debugService = DebugService.Default;
|
||||
#if WINDOWS_PHONE
|
||||
_storageService = new IsolatedStorageService(_machine);
|
||||
#else
|
||||
_storageService = new XnaStorageService(_machine, this);
|
||||
#endif
|
||||
_keyboardService = new XnaKeyboardService(_machine);
|
||||
_gamePortService = new XnaGamePortService(_machine);
|
||||
_audioService = new XnaAudioService(_machine, this);
|
||||
_videoService = new XnaVideoService(_machine, this);
|
||||
|
||||
_machine.Services.AddService(typeof(DebugService), _debugService);
|
||||
_machine.Services.AddService(typeof(StorageService), _storageService);
|
||||
_machine.Services.AddService(typeof(KeyboardService), _keyboardService);
|
||||
_machine.Services.AddService(typeof(GamePortService), _gamePortService);
|
||||
_machine.Services.AddService(typeof(AudioService), _audioService);
|
||||
_machine.Services.AddService(typeof(VideoService), _videoService);
|
||||
}
|
||||
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing)
|
||||
{
|
||||
_machine.Dispose();
|
||||
_debugService.Dispose();
|
||||
_storageService.Dispose();
|
||||
_keyboardService.Dispose();
|
||||
_gamePortService.Dispose();
|
||||
_audioService.Dispose();
|
||||
_videoService.Dispose();
|
||||
}
|
||||
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
protected override void BeginRun()
|
||||
{
|
||||
_machine.Start();
|
||||
}
|
||||
|
||||
protected override void Update(GameTime gameTime)
|
||||
{
|
||||
var keyboardState = Microsoft.Xna.Framework.Input.Keyboard.GetState();
|
||||
var gamePadState = GamePad.GetState(PlayerIndex.One);
|
||||
var touches = TouchPanel.GetState();
|
||||
|
||||
if (gamePadState.Buttons.Back == ButtonState.Pressed)
|
||||
{
|
||||
Exit();
|
||||
}
|
||||
|
||||
_keyboardService.Update(ref keyboardState, ref gamePadState);
|
||||
_gamePortService.Update(ref gamePadState, ref touches);
|
||||
|
||||
base.Update(gameTime);
|
||||
}
|
||||
|
||||
protected override void Draw(GameTime gameTime)
|
||||
{
|
||||
GraphicsDevice.Clear(Color.Black);
|
||||
_videoService.Update();
|
||||
|
||||
base.Draw(gameTime);
|
||||
}
|
||||
|
||||
protected override void EndRun()
|
||||
{
|
||||
_machine.Stop();
|
||||
}
|
||||
|
||||
private Machine _machine = new Machine();
|
||||
|
||||
private DebugService _debugService;
|
||||
private StorageService _storageService;
|
||||
private XnaKeyboardService _keyboardService;
|
||||
private XnaGamePortService _gamePortService;
|
||||
private AudioService _audioService;
|
||||
private VideoService _videoService;
|
||||
}
|
||||
}
|
@ -1,5 +0,0 @@
|
||||
<Deployment xmlns="http://schemas.microsoft.com/client/2007/deployment"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||
<Deployment.Parts>
|
||||
</Deployment.Parts>
|
||||
</Deployment>
|
@ -1,29 +0,0 @@
|
||||
using System;
|
||||
using System.Reflection;
|
||||
using System.Resources;
|
||||
using System.Runtime.InteropServices;
|
||||
using Jellyfish.Library;
|
||||
using Jellyfish.Virtu;
|
||||
|
||||
[assembly: AssemblyTitle("Virtu")]
|
||||
[assembly: AssemblyDescription("Apple IIe Emulator")]
|
||||
#if WINDOWS_PHONE
|
||||
[assembly: AssemblyProduct("Jellyfish.Virtu.Xna.Phone")]
|
||||
#elif XBOX
|
||||
[assembly: AssemblyProduct("Jellyfish.Virtu.Xna.Xbox")]
|
||||
#else
|
||||
[assembly: AssemblyProduct("Jellyfish.Virtu.Xna")]
|
||||
#endif
|
||||
[assembly: AssemblyCompany("Digital Jellyfish Design Ltd")]
|
||||
[assembly: AssemblyCopyright("Copyright © 1995-2012 Digital Jellyfish Design Ltd")]
|
||||
[assembly: AssemblyComment("Developed by Sean Fausett & Nick Westgate")]
|
||||
|
||||
[assembly: AssemblyVersion(Machine.Version)]
|
||||
[assembly: AssemblyFileVersion(Machine.Version)]
|
||||
[assembly: AssemblyInformationalVersion(Machine.Version)]
|
||||
|
||||
[assembly: CLSCompliant(false)]
|
||||
[assembly: ComVisible(false)]
|
||||
[assembly: Guid("89a50370-1ed9-4cf1-ad08-043b6e6f3c90")]
|
||||
|
||||
[assembly: NeutralResourcesLanguage("en")]
|
@ -1,31 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<Deployment xmlns="http://schemas.microsoft.com/windowsphone/2009/deployment" AppPlatformVersion="7.0">
|
||||
<App xmlns="" ProductID="{89a50370-1ed9-4cf1-ad08-043b6e6f3c90}" Title="Virtu" RuntimeType="XNA" Version="1.0.0.0" Genre="Apps.Normal" Author="Sean Fausett & Nick Westgate" Description="Apple IIe Emulator" Publisher="Digital Jellyfish Design Ltd">
|
||||
<IconPath IsRelative="true" IsResource="false">AppThumbnail.png</IconPath>
|
||||
<Capabilities>
|
||||
<Capability Name="ID_CAP_GAMERSERVICES"/>
|
||||
<Capability Name="ID_CAP_IDENTITY_DEVICE"/>
|
||||
<Capability Name="ID_CAP_IDENTITY_USER"/>
|
||||
<Capability Name="ID_CAP_LOCATION"/>
|
||||
<Capability Name="ID_CAP_MEDIALIB"/>
|
||||
<Capability Name="ID_CAP_MICROPHONE"/>
|
||||
<Capability Name="ID_CAP_NETWORKING"/>
|
||||
<Capability Name="ID_CAP_PHONEDIALER"/>
|
||||
<Capability Name="ID_CAP_PUSH_NOTIFICATION"/>
|
||||
<Capability Name="ID_CAP_SENSORS"/>
|
||||
<Capability Name="ID_CAP_WEBBROWSERCOMPONENT"/>
|
||||
</Capabilities>
|
||||
<Tasks>
|
||||
<DefaultTask Name="_default"/>
|
||||
</Tasks>
|
||||
<Tokens>
|
||||
<PrimaryToken TokenID="Jellyfish.Virtu.Xna.Phone.Token" TaskName="_default">
|
||||
<TemplateType5>
|
||||
<BackgroundImageURI IsRelative="true" IsResource="false">AppThumbnail.png</BackgroundImageURI>
|
||||
<Count>0</Count>
|
||||
<Title>Virtu</Title>
|
||||
</TemplateType5>
|
||||
</PrimaryToken>
|
||||
</Tokens>
|
||||
</App>
|
||||
</Deployment>
|
@ -1,56 +0,0 @@
|
||||
using System;
|
||||
using Jellyfish.Library;
|
||||
using Microsoft.Xna.Framework.Audio;
|
||||
|
||||
namespace Jellyfish.Virtu.Services
|
||||
{
|
||||
public sealed class XnaAudioService : AudioService
|
||||
{
|
||||
public XnaAudioService(Machine machine, GameBase game) :
|
||||
base(machine)
|
||||
{
|
||||
if (game == null)
|
||||
{
|
||||
throw new ArgumentNullException("game");
|
||||
}
|
||||
|
||||
_game = game;
|
||||
|
||||
_dynamicSoundEffect.BufferNeeded += OnDynamicSoundEffectBufferNeeded;
|
||||
_game.Exiting += (sender, e) => _dynamicSoundEffect.Stop();
|
||||
|
||||
_dynamicSoundEffect.SubmitBuffer(SampleZero);
|
||||
_dynamicSoundEffect.Play();
|
||||
}
|
||||
|
||||
public override void SetVolume(float volume)
|
||||
{
|
||||
_dynamicSoundEffect.Volume = volume;
|
||||
}
|
||||
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing)
|
||||
{
|
||||
_dynamicSoundEffect.Dispose();
|
||||
}
|
||||
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
private void OnDynamicSoundEffectBufferNeeded(object sender, EventArgs e) // audio thread
|
||||
{
|
||||
//if (_count++ % (1000 / SampleLatency) == 0)
|
||||
//{
|
||||
// DebugService.WriteLine("OnDynamicSoundEffectBufferNeeded");
|
||||
//}
|
||||
|
||||
_dynamicSoundEffect.SubmitBuffer(Source, 0, SampleSize);
|
||||
Update();
|
||||
}
|
||||
|
||||
private GameBase _game;
|
||||
private DynamicSoundEffectInstance _dynamicSoundEffect = new DynamicSoundEffectInstance(SampleRate, (AudioChannels)SampleChannels);
|
||||
//private int _count;
|
||||
}
|
||||
}
|
@ -1,127 +0,0 @@
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using Jellyfish.Library;
|
||||
using Microsoft.Xna.Framework.Input;
|
||||
using Microsoft.Xna.Framework.Input.Touch;
|
||||
|
||||
namespace Jellyfish.Virtu.Services
|
||||
{
|
||||
public sealed class XnaGamePortService : GamePortService
|
||||
{
|
||||
public XnaGamePortService(Machine machine) :
|
||||
base(machine)
|
||||
{
|
||||
_touchRegions = new TouchRegionCollection { _touchJoystick0, _touchJoystick1, _touchButton0, _touchButton1, _touchButton2 };
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1045:DoNotPassTypesByReference")]
|
||||
public void Update(ref GamePadState gamePadState, ref TouchCollection touches) // main thread
|
||||
{
|
||||
_lastState = _state;
|
||||
_state = gamePadState;
|
||||
|
||||
var gamePort = Machine.GamePort;
|
||||
|
||||
if (_state.IsConnected && (_state != _lastState))
|
||||
{
|
||||
var left = _state.ThumbSticks.Left;
|
||||
var right = _state.ThumbSticks.Right;
|
||||
var dpad = _state.DPad;
|
||||
var buttons = _state.Buttons;
|
||||
|
||||
Paddle0 = (int)((1 + left.X) * GamePort.PaddleScale);
|
||||
Paddle1 = (int)((1 - left.Y) * GamePort.PaddleScale); // invert y
|
||||
Paddle2 = (int)((1 + right.X) * GamePort.PaddleScale);
|
||||
Paddle3 = (int)((1 - right.Y) * GamePort.PaddleScale); // invert y
|
||||
|
||||
IsJoystick0Up = ((left.Y > gamePort.JoystickDeadZone) || (dpad.Up == ButtonState.Pressed));
|
||||
IsJoystick0Left = ((left.X < -gamePort.JoystickDeadZone) || (dpad.Left == ButtonState.Pressed));
|
||||
IsJoystick0Right = ((left.X > gamePort.JoystickDeadZone) || (dpad.Right == ButtonState.Pressed));
|
||||
IsJoystick0Down = ((left.Y < -gamePort.JoystickDeadZone) || (dpad.Down == ButtonState.Pressed));
|
||||
|
||||
IsJoystick1Up = (right.Y > gamePort.JoystickDeadZone);
|
||||
IsJoystick1Left = (right.X < -gamePort.JoystickDeadZone);
|
||||
IsJoystick1Right = (right.X > gamePort.JoystickDeadZone);
|
||||
IsJoystick1Down = (right.Y < -gamePort.JoystickDeadZone);
|
||||
|
||||
IsButton0Down = ((buttons.A == ButtonState.Pressed) || (buttons.LeftShoulder == ButtonState.Pressed));
|
||||
IsButton1Down = ((buttons.B == ButtonState.Pressed) || (buttons.RightShoulder == ButtonState.Pressed));
|
||||
IsButton2Down = (buttons.X == ButtonState.Pressed);
|
||||
}
|
||||
|
||||
if (gamePort.UseTouch) // override
|
||||
{
|
||||
UpdateTouch(ref touches);
|
||||
}
|
||||
|
||||
base.Update();
|
||||
}
|
||||
|
||||
private void UpdateTouch(ref TouchCollection touches)
|
||||
{
|
||||
var gamePort = Machine.GamePort;
|
||||
|
||||
_touchJoystick0.SetBounds(gamePort.Joystick0TouchX, gamePort.Joystick0TouchY, gamePort.Joystick0TouchWidth, gamePort.Joystick0TouchHeight);
|
||||
_touchJoystick0.SetRadius(gamePort.Joystick0TouchRadius);
|
||||
_touchJoystick0.KeepLast = gamePort.Joystick0TouchKeepLast;
|
||||
_touchJoystick0.Order = gamePort.Joystick0TouchOrder;
|
||||
_touchJoystick1.SetBounds(gamePort.Joystick1TouchX, gamePort.Joystick1TouchY, gamePort.Joystick1TouchWidth, gamePort.Joystick1TouchHeight);
|
||||
_touchJoystick1.SetRadius(gamePort.Joystick1TouchRadius);
|
||||
_touchJoystick1.KeepLast = gamePort.Joystick1TouchKeepLast;
|
||||
_touchJoystick1.Order = gamePort.Joystick1TouchOrder;
|
||||
_touchButton0.SetBounds(gamePort.Button0TouchX, gamePort.Button0TouchY, gamePort.Button0TouchWidth, gamePort.Button0TouchHeight);
|
||||
_touchButton0.Order = gamePort.Button0TouchOrder;
|
||||
_touchButton1.SetBounds(gamePort.Button1TouchX, gamePort.Button1TouchY, gamePort.Button1TouchWidth, gamePort.Button1TouchHeight);
|
||||
_touchButton1.Order = gamePort.Button1TouchOrder;
|
||||
_touchButton2.SetBounds(gamePort.Button2TouchX, gamePort.Button2TouchY, gamePort.Button2TouchWidth, gamePort.Button2TouchHeight);
|
||||
_touchButton2.Order = gamePort.Button2TouchOrder;
|
||||
|
||||
_touchRegions.Update(ref touches);
|
||||
|
||||
if (_touchJoystick0.HasValue)
|
||||
{
|
||||
var joystick = _touchJoystick0.GetJoystick();
|
||||
|
||||
Paddle0 = (int)((1 + joystick.X) * GamePort.PaddleScale);
|
||||
Paddle1 = (int)((1 - joystick.Y) * GamePort.PaddleScale); // invert y
|
||||
|
||||
IsJoystick0Up = (joystick.Y > gamePort.JoystickDeadZone);
|
||||
IsJoystick0Left = (joystick.X < -gamePort.JoystickDeadZone);
|
||||
IsJoystick0Right = (joystick.X > gamePort.JoystickDeadZone);
|
||||
IsJoystick0Down = (joystick.Y < -gamePort.JoystickDeadZone);
|
||||
}
|
||||
if (_touchJoystick1.HasValue)
|
||||
{
|
||||
var joystick = _touchJoystick1.GetJoystick();
|
||||
|
||||
Paddle2 = (int)((1 + joystick.X) * GamePort.PaddleScale);
|
||||
Paddle3 = (int)((1 - joystick.Y) * GamePort.PaddleScale); // invert y
|
||||
|
||||
IsJoystick1Up = (joystick.Y > gamePort.JoystickDeadZone);
|
||||
IsJoystick1Left = (joystick.X < -gamePort.JoystickDeadZone);
|
||||
IsJoystick1Right = (joystick.X > gamePort.JoystickDeadZone);
|
||||
IsJoystick1Down = (joystick.Y < -gamePort.JoystickDeadZone);
|
||||
}
|
||||
if (_touchButton0.HasValue)
|
||||
{
|
||||
IsButton0Down = _touchButton0.IsButtonDown;
|
||||
}
|
||||
if (_touchButton1.HasValue)
|
||||
{
|
||||
IsButton1Down = _touchButton1.IsButtonDown;
|
||||
}
|
||||
if (_touchButton2.HasValue)
|
||||
{
|
||||
IsButton2Down = _touchButton2.IsButtonDown;
|
||||
}
|
||||
}
|
||||
|
||||
private GamePadState _state;
|
||||
private GamePadState _lastState;
|
||||
private TouchJoystick _touchJoystick0 = new TouchJoystick();
|
||||
private TouchJoystick _touchJoystick1 = new TouchJoystick();
|
||||
private TouchButton _touchButton0 = new TouchButton();
|
||||
private TouchButton _touchButton1 = new TouchButton();
|
||||
private TouchButton _touchButton2 = new TouchButton();
|
||||
private TouchRegionCollection _touchRegions;
|
||||
}
|
||||
}
|
@ -1,332 +0,0 @@
|
||||
using System;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Linq;
|
||||
using Microsoft.Xna.Framework;
|
||||
using Microsoft.Xna.Framework.Input;
|
||||
|
||||
namespace Jellyfish.Virtu.Services
|
||||
{
|
||||
public sealed class XnaKeyboardService : KeyboardService
|
||||
{
|
||||
public XnaKeyboardService(Machine machine) :
|
||||
base(machine)
|
||||
{
|
||||
}
|
||||
|
||||
public override bool IsKeyDown(int key)
|
||||
{
|
||||
return IsKeyDown((Keys)key);
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1045:DoNotPassTypesByReference")]
|
||||
public void Update(ref KeyboardState keyboardState, ref GamePadState gamePadState) // main thread
|
||||
{
|
||||
_lastState = _state;
|
||||
_state = keyboardState;
|
||||
|
||||
var gamePadButtons = gamePadState.Buttons;
|
||||
bool gamePadControl = (gamePadButtons.LeftStick == ButtonState.Pressed);
|
||||
|
||||
if (_state != _lastState)
|
||||
{
|
||||
IsAnyKeyDown = false;
|
||||
for (int i = 0; i < KeyValues.Length; i++) // xna doesn't support buffered input; loses input order and could lose keys between updates
|
||||
{
|
||||
var key = KeyValues[i];
|
||||
if (_state.IsKeyDown(key))
|
||||
{
|
||||
IsAnyKeyDown = true;
|
||||
if (!_lastState.IsKeyDown(key))
|
||||
{
|
||||
_lastKey = key;
|
||||
_lastTime = DateTime.UtcNow.Ticks;
|
||||
_repeatTime = RepeatDelay;
|
||||
OnKeyDown(key, gamePadControl);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (key == _lastKey)
|
||||
{
|
||||
_lastKey = Keys.None;
|
||||
}
|
||||
if (_lastState.IsKeyDown(key))
|
||||
{
|
||||
OnKeyUp(key, gamePadControl);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (_lastKey != Keys.None) // repeat last key
|
||||
{
|
||||
long time = DateTime.UtcNow.Ticks;
|
||||
if (time - _lastTime >= _repeatTime)
|
||||
{
|
||||
_lastTime = time;
|
||||
_repeatTime = RepeatSpeed;
|
||||
OnKeyDown(_lastKey, gamePadControl);
|
||||
}
|
||||
}
|
||||
|
||||
IsControlKeyDown = IsKeyDown(Keys.LeftControl) || IsKeyDown(Keys.RightControl);
|
||||
IsShiftKeyDown = IsKeyDown(Keys.LeftShift) || IsKeyDown(Keys.RightShift);
|
||||
|
||||
IsOpenAppleKeyDown = IsKeyDown(Keys.LeftAlt) || IsKeyDown(Keys.NumPad0) || (gamePadButtons.LeftShoulder == ButtonState.Pressed);
|
||||
IsCloseAppleKeyDown = IsKeyDown(Keys.RightAlt) || IsKeyDown(Keys.Decimal) || (gamePadButtons.RightShoulder == ButtonState.Pressed);
|
||||
IsResetKeyDown = (IsControlKeyDown && IsKeyDown(Keys.Back)) || (gamePadControl && (gamePadButtons.Start == ButtonState.Pressed));
|
||||
|
||||
base.Update();
|
||||
}
|
||||
|
||||
private bool IsKeyDown(Keys key)
|
||||
{
|
||||
return _state.IsKeyDown(key);
|
||||
}
|
||||
|
||||
private void OnKeyDown(Keys key, bool gamePadControl)
|
||||
{
|
||||
//DebugService.WriteLine("OnKeyDn: Key='{0}'", key);
|
||||
|
||||
int asciiKey = GetAsciiKey(key, gamePadControl);
|
||||
if (asciiKey >= 0)
|
||||
{
|
||||
Machine.Keyboard.Latch = asciiKey;
|
||||
}
|
||||
}
|
||||
|
||||
private void OnKeyUp(Keys key, bool gamePadControl)
|
||||
{
|
||||
//DebugService.WriteLine("OnKeyUp: Key='{0}'", key);
|
||||
|
||||
bool control = IsKeyDown(Keys.LeftControl) || IsKeyDown(Keys.RightControl);
|
||||
|
||||
if (key == Keys.CapsLock)
|
||||
{
|
||||
_capsLock ^= true;
|
||||
}
|
||||
else if ((control && (key == Keys.Divide)) || (gamePadControl && (key == Keys.D8)))
|
||||
{
|
||||
Machine.Cpu.IsThrottled ^= true;
|
||||
}
|
||||
else if ((control && (key == Keys.Multiply)) || (gamePadControl && (key == Keys.D9)))
|
||||
{
|
||||
Machine.Video.IsMonochrome ^= true;
|
||||
}
|
||||
#if WINDOWS
|
||||
else if ((control && (key == Keys.Subtract)) || (gamePadControl && (key == Keys.D0)))
|
||||
{
|
||||
Machine.Video.IsFullScreen ^= true;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
|
||||
[SuppressMessage("Microsoft.Maintainability", "CA1505:AvoidUnmaintainableCode")]
|
||||
private int GetAsciiKey(Keys key, bool gamePadControl)
|
||||
{
|
||||
bool control = IsKeyDown(Keys.LeftControl) || IsKeyDown(Keys.RightControl) || gamePadControl;
|
||||
bool shift = IsKeyDown(Keys.LeftShift) || IsKeyDown(Keys.RightShift);
|
||||
bool capsLock = shift ^ _capsLock;
|
||||
bool green = IsKeyDown(Keys.ChatPadGreen);
|
||||
bool orange = IsKeyDown(Keys.ChatPadOrange);
|
||||
|
||||
switch (key)
|
||||
{
|
||||
case Keys.Left:
|
||||
return 0x08;
|
||||
|
||||
case Keys.Tab:
|
||||
return 0x09;
|
||||
|
||||
case Keys.Down:
|
||||
return 0x0A;
|
||||
|
||||
case Keys.Up:
|
||||
return 0x0B;
|
||||
|
||||
case Keys.Enter:
|
||||
return 0x0D;
|
||||
|
||||
case Keys.Right:
|
||||
return 0x15;
|
||||
|
||||
case Keys.Escape:
|
||||
return 0x1B;
|
||||
|
||||
case Keys.Back:
|
||||
return control ? -1 : 0x7F;
|
||||
|
||||
case Keys.Space:
|
||||
return ' ';
|
||||
|
||||
case Keys.D1:
|
||||
return shift ? '!' : '1';
|
||||
|
||||
case Keys.D2:
|
||||
return control ? 0x00 : shift ? '@' : '2';
|
||||
|
||||
case Keys.D3:
|
||||
return shift ? '#' : '3';
|
||||
|
||||
case Keys.D4:
|
||||
return shift ? '$' : '4';
|
||||
|
||||
case Keys.D5:
|
||||
return shift ? '%' : '5';
|
||||
|
||||
case Keys.D6:
|
||||
return control ? 0x1E : shift ? '^' : '6';
|
||||
|
||||
case Keys.D7:
|
||||
return shift ? '&' : '7';
|
||||
|
||||
case Keys.D8:
|
||||
return gamePadControl ? -1 : shift ? '*' : '8';
|
||||
|
||||
case Keys.D9:
|
||||
return gamePadControl ? -1 : shift ? '(' : '9';
|
||||
|
||||
case Keys.D0:
|
||||
return gamePadControl ? -1 : shift ? ')' : '0';
|
||||
|
||||
case Keys.A:
|
||||
return control ? 0x01 : green ? '~' : capsLock ? 'A' : 'a';
|
||||
|
||||
case Keys.B:
|
||||
return control ? 0x02 : green ? '|' : orange ? '+' : capsLock ? 'B' : 'b';
|
||||
|
||||
case Keys.C:
|
||||
return control ? 0x03 : capsLock ? 'C' : 'c';
|
||||
|
||||
case Keys.D:
|
||||
return control ? 0x04 : green ? '{' : capsLock ? 'D' : 'd';
|
||||
|
||||
case Keys.E:
|
||||
return control ? 0x05 : capsLock ? 'E' : 'e';
|
||||
|
||||
case Keys.F:
|
||||
return control ? 0x06 : green ? '}' : capsLock ? 'F' : 'f';
|
||||
|
||||
case Keys.G:
|
||||
return control ? 0x07 : capsLock ? 'G' : 'g';
|
||||
|
||||
case Keys.H:
|
||||
return control ? 0x08 : green ? '/' : orange ? '\\' : capsLock ? 'H' : 'h';
|
||||
|
||||
case Keys.I:
|
||||
return control ? 0x09 : green ? '*' : capsLock ? 'I' : 'i';
|
||||
|
||||
case Keys.J:
|
||||
return control ? 0x0A : green ? '\'' : orange ? '"' : capsLock ? 'J' : 'j';
|
||||
|
||||
case Keys.K:
|
||||
return control ? 0x0B : green ? '[' : capsLock ? 'K' : 'k';
|
||||
|
||||
case Keys.L:
|
||||
return control ? 0x0C : green ? ']' : capsLock ? 'L' : 'l';
|
||||
|
||||
case Keys.M:
|
||||
return control ? 0x0D : green ? '>' : capsLock ? 'M' : 'm';
|
||||
|
||||
case Keys.N:
|
||||
return control ? 0x0E : green ? '<' : capsLock ? 'N' : 'n';
|
||||
|
||||
case Keys.O:
|
||||
return control ? 0x0F : green ? '(' : capsLock ? 'O' : 'o';
|
||||
|
||||
case Keys.P:
|
||||
return control ? 0x10 : green ? ')' : orange ? '=' : capsLock ? 'P' : 'p';
|
||||
|
||||
case Keys.Q:
|
||||
return control ? 0x11 : green ? '!' : capsLock ? 'Q' : 'q';
|
||||
|
||||
case Keys.R:
|
||||
return control ? 0x12 : green ? '#' : orange ? '$' : capsLock ? 'R' : 'r';
|
||||
|
||||
case Keys.S:
|
||||
return control ? 0x13 : capsLock ? 'S' : 's';
|
||||
|
||||
case Keys.T:
|
||||
return control ? 0x14 : green ? '%' : capsLock ? 'T' : 't';
|
||||
|
||||
case Keys.U:
|
||||
return control ? 0x15 : green ? '&' : capsLock ? 'U' : 'u';
|
||||
|
||||
case Keys.V:
|
||||
return control ? 0x16 : green ? '-' : orange ? '_' : capsLock ? 'V' : 'v';
|
||||
|
||||
case Keys.W:
|
||||
return control ? 0x17 : green ? '@' : capsLock ? 'W' : 'w';
|
||||
|
||||
case Keys.X:
|
||||
return control ? 0x18 : capsLock ? 'X' : 'x';
|
||||
|
||||
case Keys.Y:
|
||||
return control ? 0x19 : green ? '^' : capsLock ? 'Y' : 'y';
|
||||
|
||||
case Keys.Z:
|
||||
return control ? 0x1A : green ? '`' : capsLock ? 'Z' : 'z';
|
||||
|
||||
case Keys.OemSemicolon:
|
||||
return shift ? ':' : ';';
|
||||
|
||||
case Keys.OemQuestion:
|
||||
return shift ? '?' : '/';
|
||||
|
||||
case Keys.OemTilde:
|
||||
return shift ? '~' : '`';
|
||||
|
||||
case Keys.OemOpenBrackets:
|
||||
return shift ? '{' : '[';
|
||||
|
||||
case Keys.OemBackslash:
|
||||
case Keys.OemPipe:
|
||||
return control ? 0x1C : shift ? '|' : '\\';
|
||||
|
||||
case Keys.OemCloseBrackets:
|
||||
return control ? 0x1D : shift ? '}' : ']';
|
||||
|
||||
case Keys.OemQuotes:
|
||||
return shift ? '"' : '\'';
|
||||
|
||||
case Keys.OemMinus:
|
||||
return control ? 0x1F : shift ? '_' : '-';
|
||||
|
||||
case Keys.OemPlus:
|
||||
return shift ? '+' : '=';
|
||||
|
||||
case Keys.OemComma:
|
||||
return shift ? '<' : green ? ':' : orange ? ';' : ',';
|
||||
|
||||
case Keys.OemPeriod:
|
||||
return shift ? '>' : green ? '?' : '.';
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
private static readonly Keys[] KeyValues =
|
||||
#if WINDOWS_PHONE || XBOX
|
||||
(from key in
|
||||
(from field in typeof(Keys).GetFields() // missing Enum.GetValues; use reflection
|
||||
where field.IsLiteral
|
||||
select (Keys)field.GetValue(typeof(Keys)))
|
||||
where (key != Keys.None) // filter Keys.None
|
||||
select key).ToArray();
|
||||
#else
|
||||
(from key in (Keys[])Enum.GetValues(typeof(Keys))
|
||||
where (key != Keys.None) // filter Keys.None
|
||||
select key).ToArray();
|
||||
#endif
|
||||
private static readonly long RepeatDelay = TimeSpan.FromMilliseconds(500).Ticks;
|
||||
private static readonly long RepeatSpeed = TimeSpan.FromMilliseconds(32).Ticks;
|
||||
|
||||
private KeyboardState _state;
|
||||
private KeyboardState _lastState;
|
||||
private bool _capsLock;
|
||||
private Keys _lastKey;
|
||||
private long _lastTime;
|
||||
private long _repeatTime;
|
||||
}
|
||||
}
|
@ -1,61 +0,0 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using Jellyfish.Library;
|
||||
using Microsoft.Xna.Framework.Storage;
|
||||
|
||||
namespace Jellyfish.Virtu.Services
|
||||
{
|
||||
public sealed class XnaStorageService : StorageService
|
||||
{
|
||||
public XnaStorageService(Machine machine, GameBase game) :
|
||||
base(machine)
|
||||
{
|
||||
if (game == null)
|
||||
{
|
||||
throw new ArgumentNullException("game");
|
||||
}
|
||||
|
||||
_game = game;
|
||||
}
|
||||
|
||||
protected override void OnLoad(string fileName, Action<Stream> reader)
|
||||
{
|
||||
if (reader == null)
|
||||
{
|
||||
throw new ArgumentNullException("reader");
|
||||
}
|
||||
|
||||
using (var storageContainer = OpenContainer())
|
||||
{
|
||||
using (var stream = storageContainer.OpenFile(fileName, FileMode.Open, FileAccess.Read, FileShare.Read))
|
||||
{
|
||||
reader(stream);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected override void OnSave(string fileName, Action<Stream> writer)
|
||||
{
|
||||
if (writer == null)
|
||||
{
|
||||
throw new ArgumentNullException("writer");
|
||||
}
|
||||
|
||||
using (var storageContainer = OpenContainer())
|
||||
{
|
||||
using (var stream = storageContainer.OpenFile(fileName, FileMode.Create, FileAccess.Write, FileShare.None))
|
||||
{
|
||||
writer(stream);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private StorageContainer OpenContainer()
|
||||
{
|
||||
return _storageDevice.Value.EndOpenContainer(_storageDevice.Value.BeginOpenContainer(_game.Name, null, null));
|
||||
}
|
||||
|
||||
private GameBase _game;
|
||||
private Lazy<StorageDevice> _storageDevice = new Lazy<StorageDevice>(() => StorageDevice.EndShowSelector(StorageDevice.BeginShowSelector(null, null)));
|
||||
}
|
||||
}
|
@ -1,115 +0,0 @@
|
||||
using System;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
#if WINDOWS
|
||||
using System.Windows;
|
||||
#endif
|
||||
using Jellyfish.Library;
|
||||
using Microsoft.Xna.Framework;
|
||||
using Microsoft.Xna.Framework.Graphics;
|
||||
|
||||
namespace Jellyfish.Virtu.Services
|
||||
{
|
||||
public sealed class XnaVideoService : VideoService
|
||||
{
|
||||
public XnaVideoService(Machine machine, GameBase game) :
|
||||
base(machine)
|
||||
{
|
||||
if (game == null)
|
||||
{
|
||||
throw new ArgumentNullException("game");
|
||||
}
|
||||
|
||||
_game = game;
|
||||
#if WINDOWS || XBOX
|
||||
_game.GraphicsDeviceManager.PreparingDeviceSettings += OnGraphicsDeviceManagerPreparingDeviceSettings;
|
||||
#endif
|
||||
_game.GraphicsDeviceService.DeviceCreated += OnGraphicsDeviceServiceDeviceCreated;
|
||||
}
|
||||
|
||||
#if WINDOWS
|
||||
public override void SetFullScreen(bool isFullScreen)
|
||||
{
|
||||
var graphicsDeviceManager = _game.GraphicsDeviceManager;
|
||||
if (graphicsDeviceManager.IsFullScreen != isFullScreen)
|
||||
{
|
||||
graphicsDeviceManager.IsFullScreen = isFullScreen;
|
||||
_game.SynchronizationContext.Send(state => graphicsDeviceManager.ApplyChanges(), null);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
[SuppressMessage("Microsoft.Usage", "CA2233:OperationsShouldNotOverflow")]
|
||||
public override void SetPixel(int x, int y, uint color)
|
||||
{
|
||||
_pixels[y * TextureWidth + x] = color;
|
||||
_pixelsDirty = true;
|
||||
}
|
||||
|
||||
public override void Update() // main thread
|
||||
{
|
||||
if (_pixelsDirty)
|
||||
{
|
||||
_pixelsDirty = false;
|
||||
_texture.SetData(_pixels);
|
||||
}
|
||||
|
||||
var viewport = _graphicsDevice.Viewport;
|
||||
int scale = Math.Max(1, Math.Min(viewport.Width / TextureWidth, viewport.Height / TextureHeight));
|
||||
var position = new Vector2((viewport.Width - scale * TextureWidth) / 2, (viewport.Height - scale * TextureHeight) / 2);
|
||||
|
||||
_spriteBatch.Begin(SpriteSortMode.Deferred, BlendState.Opaque, SamplerState.PointClamp, null, null);
|
||||
_spriteBatch.Draw(_texture, position, null, Color.White, 0, Vector2.Zero, scale, SpriteEffects.None, 0);
|
||||
_spriteBatch.End();
|
||||
}
|
||||
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing)
|
||||
{
|
||||
_spriteBatch.Dispose();
|
||||
_texture.Dispose();
|
||||
}
|
||||
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#if WINDOWS || XBOX
|
||||
private void OnGraphicsDeviceManagerPreparingDeviceSettings(object sender, PreparingDeviceSettingsEventArgs e)
|
||||
{
|
||||
var presentationParameters = e.GraphicsDeviceInformation.PresentationParameters;
|
||||
#if WINDOWS
|
||||
if (!presentationParameters.IsFullScreen)
|
||||
{
|
||||
var maxScale = Math.Max(1, Math.Min((int)SystemParameters.FullPrimaryScreenWidth / TextureWidth, (int)SystemParameters.FullPrimaryScreenHeight / TextureHeight));
|
||||
presentationParameters.BackBufferWidth = maxScale * TextureWidth;
|
||||
presentationParameters.BackBufferHeight = maxScale * TextureHeight;
|
||||
}
|
||||
else
|
||||
#endif
|
||||
{
|
||||
var displayMode = e.GraphicsDeviceInformation.Adapter.CurrentDisplayMode; // use display mode
|
||||
presentationParameters.BackBufferWidth = displayMode.Width;
|
||||
presentationParameters.BackBufferHeight = displayMode.Height;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
private void OnGraphicsDeviceServiceDeviceCreated(object sender, EventArgs e)
|
||||
{
|
||||
_graphicsDevice = _game.GraphicsDevice;
|
||||
_spriteBatch = new SpriteBatch(_graphicsDevice);
|
||||
_texture = new Texture2D(_graphicsDevice, TextureWidth, TextureHeight, false, SurfaceFormat.Color);
|
||||
}
|
||||
|
||||
private const int TextureWidth = 560;
|
||||
private const int TextureHeight = 384;
|
||||
|
||||
private GameBase _game;
|
||||
private GraphicsDevice _graphicsDevice;
|
||||
private SpriteBatch _spriteBatch;
|
||||
private Texture2D _texture;
|
||||
|
||||
private uint[] _pixels = new uint[TextureWidth * TextureHeight];
|
||||
private bool _pixelsDirty;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user