diff --git a/src/BizHawk.Bizware.Test/BizHawk.Bizware.Test.csproj b/src/BizHawk.Bizware.Test/BizHawk.Bizware.Test.csproj
index 4252cdd5ea..618552def8 100644
--- a/src/BizHawk.Bizware.Test/BizHawk.Bizware.Test.csproj
+++ b/src/BizHawk.Bizware.Test/BizHawk.Bizware.Test.csproj
@@ -1,104 +1,17 @@
-
-
-
- Debug
- x86
- 8.0.30703
- 2.0
- {B9925307-6A8F-4CD0-8EFB-0617FF0AE5AD}
- Exe
- Properties
- BizHawk.Bizware.Test
- BizHawk.Bizware.Test
- v4.0
- Client
- 512
-
-
- x86
- true
- full
- false
- bin\Debug\
- DEBUG;TRACE
- prompt
- 4
- true
-
-
- x86
- pdbonly
- true
- bin\Release\
- TRACE
- prompt
- 4
-
-
-
- False
- ..\..\References\OpenTK.dll
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Form
-
-
- TestForm.cs
-
-
-
-
- {5160CFB1-5389-47C1-B7F6-8A0DC97641EE}
- BizHawk.Bizware.BizwareGL.OpenTK
-
-
- {9F84A0B2-861E-4EF4-B89B-5E2A3F38A465}
- BizHawk.Bizware.BizwareGL
-
-
-
-
- TestForm.cs
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
+
+
+ net48
+
+
+
+ $(DefineConstants);EXE_PROJECT
+ disable
+ $(ProjectDir)bin
+
+
+
+
+
+
+
+
diff --git a/src/BizHawk.Bizware.Test/BizHawk.Bizware.Test.sln b/src/BizHawk.Bizware.Test/BizHawk.Bizware.Test.sln
deleted file mode 100644
index e455cd8008..0000000000
--- a/src/BizHawk.Bizware.Test/BizHawk.Bizware.Test.sln
+++ /dev/null
@@ -1,54 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BizHawk.Bizware.BizwareGL", "BizHawk.Bizware.BizwareGL\BizHawk.Bizware.BizwareGL.csproj", "{9F84A0B2-861E-4EF4-B89B-5E2A3F38A465}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BizHawk.Bizware.Test", "BizHawk.Bizware.Test\BizHawk.Bizware.Test.csproj", "{B9925307-6A8F-4CD0-8EFB-0617FF0AE5AD}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BizHawk.Bizware.BizwareGL.OpenTK", "BizHawk.Bizware.BizwareGL.OpenTK\BizHawk.Bizware.BizwareGL.OpenTK.csproj", "{5160CFB1-5389-47C1-B7F6-8A0DC97641EE}"
-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
- {9F84A0B2-861E-4EF4-B89B-5E2A3F38A465}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {9F84A0B2-861E-4EF4-B89B-5E2A3F38A465}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {9F84A0B2-861E-4EF4-B89B-5E2A3F38A465}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {9F84A0B2-861E-4EF4-B89B-5E2A3F38A465}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {9F84A0B2-861E-4EF4-B89B-5E2A3F38A465}.Debug|x86.ActiveCfg = Debug|Any CPU
- {9F84A0B2-861E-4EF4-B89B-5E2A3F38A465}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {9F84A0B2-861E-4EF4-B89B-5E2A3F38A465}.Release|Any CPU.Build.0 = Release|Any CPU
- {9F84A0B2-861E-4EF4-B89B-5E2A3F38A465}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {9F84A0B2-861E-4EF4-B89B-5E2A3F38A465}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {9F84A0B2-861E-4EF4-B89B-5E2A3F38A465}.Release|x86.ActiveCfg = Release|Any CPU
- {B9925307-6A8F-4CD0-8EFB-0617FF0AE5AD}.Debug|Any CPU.ActiveCfg = Debug|x86
- {B9925307-6A8F-4CD0-8EFB-0617FF0AE5AD}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
- {B9925307-6A8F-4CD0-8EFB-0617FF0AE5AD}.Debug|Mixed Platforms.Build.0 = Debug|x86
- {B9925307-6A8F-4CD0-8EFB-0617FF0AE5AD}.Debug|x86.ActiveCfg = Debug|x86
- {B9925307-6A8F-4CD0-8EFB-0617FF0AE5AD}.Debug|x86.Build.0 = Debug|x86
- {B9925307-6A8F-4CD0-8EFB-0617FF0AE5AD}.Release|Any CPU.ActiveCfg = Release|x86
- {B9925307-6A8F-4CD0-8EFB-0617FF0AE5AD}.Release|Mixed Platforms.ActiveCfg = Release|x86
- {B9925307-6A8F-4CD0-8EFB-0617FF0AE5AD}.Release|Mixed Platforms.Build.0 = Release|x86
- {B9925307-6A8F-4CD0-8EFB-0617FF0AE5AD}.Release|x86.ActiveCfg = Release|x86
- {B9925307-6A8F-4CD0-8EFB-0617FF0AE5AD}.Release|x86.Build.0 = Release|x86
- {5160CFB1-5389-47C1-B7F6-8A0DC97641EE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {5160CFB1-5389-47C1-B7F6-8A0DC97641EE}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {5160CFB1-5389-47C1-B7F6-8A0DC97641EE}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {5160CFB1-5389-47C1-B7F6-8A0DC97641EE}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {5160CFB1-5389-47C1-B7F6-8A0DC97641EE}.Debug|x86.ActiveCfg = Debug|Any CPU
- {5160CFB1-5389-47C1-B7F6-8A0DC97641EE}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {5160CFB1-5389-47C1-B7F6-8A0DC97641EE}.Release|Any CPU.Build.0 = Release|Any CPU
- {5160CFB1-5389-47C1-B7F6-8A0DC97641EE}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {5160CFB1-5389-47C1-B7F6-8A0DC97641EE}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {5160CFB1-5389-47C1-B7F6-8A0DC97641EE}.Release|x86.ActiveCfg = Release|Any CPU
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/src/BizHawk.Bizware.Test/Program.cs b/src/BizHawk.Bizware.Test/Program.cs
index 66243bf523..b442789b6a 100644
--- a/src/BizHawk.Bizware.Test/Program.cs
+++ b/src/BizHawk.Bizware.Test/Program.cs
@@ -1,23 +1,37 @@
using System;
-using System.Windows.Forms;
-using System.Drawing;
using System.Collections.Generic;
-using System.Linq;
-using System.Text;
+using System.Drawing;
+using System.IO;
+using System.Reflection;
+using System.Windows.Forms;
using BizHawk.Bizware.BizwareGL;
-using BizHawk.Bizware.BizwareGL.Drivers.OpenTK;
-
-using OpenTK.Graphics.OpenGL;
+using BizHawk.Bizware.OpenTK3;
+using BizHawk.Client.EmuHawk;
namespace BizHawk.Bizware.Test
{
class Program
{
-
- static unsafe void Main(string[] args)
+ static Program()
{
- BizHawk.Bizware.BizwareGL.IGL igl = new BizHawk.Bizware.BizwareGL.Drivers.OpenTK.IGL_TK();
+ AppDomain.CurrentDomain.AssemblyResolve += (_, args) =>
+ {
+ lock (AppDomain.CurrentDomain)
+ {
+ var firstAsm = Array.Find(AppDomain.CurrentDomain.GetAssemblies(), asm => asm.FullName == args.Name);
+ if (firstAsm is not null) return firstAsm;
+ var guessFilename = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "dll", $"{new AssemblyName(args.Name).Name}.dll");
+ return File.Exists(guessFilename) ? Assembly.LoadFile(guessFilename) : null;
+ }
+ };
+ }
+
+ public static void Main() => RunTest();
+
+ private static void RunTest()
+ {
+ IGL igl = new IGL_TK(2, 0, false);
List testArts = new List();
ArtManager am = new ArtManager(igl);
@@ -54,7 +68,7 @@ namespace BizHawk.Bizware.Test
rt.Bind();
igl.SetClearColor(Color.Blue);
igl.Clear(ClearBufferMask.ColorBufferBit);
- gr.Begin(60, 60, true);
+ gr.Begin(60, 60);
gr.Draw(smile);
gr.End();
rt.Unbind();
@@ -69,7 +83,7 @@ namespace BizHawk.Bizware.Test
RetroShader shader;
using (var stream = typeof(Program).Assembly.GetManifestResourceStream("BizHawk.Bizware.Test.TestImages.4xSoft.glsl"))
shader = new RetroShader(igl, new System.IO.StreamReader(stream).ReadToEnd());
- igl.SetBlendState(igl.BlendNone);
+ igl.SetBlendState(igl.BlendNoneCopy);
shader.Run(rttex2d, new Size(60, 60), new Size(240, 240), true);
@@ -103,15 +117,15 @@ namespace BizHawk.Bizware.Test
gr.SetModulateColor(Color.Green);
gr.RectFill(250, 0, 16, 16);
- gr.SetBlendState(igl.BlendNone);
+ gr.SetBlendState(igl.BlendNoneCopy);
gr.Draw(rttex2d, 0, 20);
gr.SetBlendState(igl.BlendNormal);
sr.RenderString(gr, 0, 0, "?? fps");
gr.SetModulateColor(Color.FromArgb(255, 255, 255, 255));
- gr.SetCornerColor(0, OpenTK.Graphics.Color4.Red);
+ gr.SetCornerColor(0, new(1.0f, 0.0f, 0.0f, 1.0f));
gr.Draw(rt2.Texture2d, 0, 0);
- gr.SetCornerColor(0, OpenTK.Graphics.Color4.White);
+ gr.SetCornerColor(0, new(1.0f, 1.0f, 1.0f, 1.0f));
gr.SetModulateColorWhite();
gr.Modelview.Translate((float)Math.Sin(wobble / 360.0f) * 50, 0);
gr.Modelview.Translate(100, 100);
diff --git a/src/BizHawk.Bizware.Test/build_and_run_debug.sh b/src/BizHawk.Bizware.Test/build_and_run_debug.sh
new file mode 100755
index 0000000000..f6b97f2da1
--- /dev/null
+++ b/src/BizHawk.Bizware.Test/build_and_run_debug.sh
@@ -0,0 +1,6 @@
+#!/bin/sh
+set -e
+cd "$(dirname "$0")"
+dotnet build "$@"
+cd bin
+mono Test.exe