From fa56f2abef339b203651ec9326f4d2951c5b5aeb Mon Sep 17 00:00:00 2001 From: YoshiRulz Date: Sun, 8 Sep 2024 07:04:35 +1000 Subject: [PATCH] Better document genericisation of virtual CPU classes fixes f3ea6fe02 (#1189), 84f4d6ae2, and 666cb3939 --- src/BizHawk.Emulation.Cores/CPUs/FairchildF8/F3850.cs | 5 +++++ src/BizHawk.Emulation.Cores/CPUs/MOS 6502X/MOS6502X.cs | 5 +++++ src/BizHawk.Emulation.Cores/CPUs/Z80A/Z80A.cs | 5 +++++ 3 files changed, 15 insertions(+) diff --git a/src/BizHawk.Emulation.Cores/CPUs/FairchildF8/F3850.cs b/src/BizHawk.Emulation.Cores/CPUs/FairchildF8/F3850.cs index c799cd0667..4958d7a669 100644 --- a/src/BizHawk.Emulation.Cores/CPUs/FairchildF8/F3850.cs +++ b/src/BizHawk.Emulation.Cores/CPUs/FairchildF8/F3850.cs @@ -29,6 +29,11 @@ namespace BizHawk.Emulation.Cores.Components.FairchildF8 /// /// Note: Programmable timer and interrupt logic from the F3851 is not currently emulated /// + /// + /// this type parameter might look useless—and it is—but after monomorphisation, + /// this way happens to perform better than the alternative + /// + /// public sealed partial class F3850 where TLink : IF3850Link { // operations that can take place in an instruction diff --git a/src/BizHawk.Emulation.Cores/CPUs/MOS 6502X/MOS6502X.cs b/src/BizHawk.Emulation.Cores/CPUs/MOS 6502X/MOS6502X.cs index deb90fe66d..9884a1fcf7 100644 --- a/src/BizHawk.Emulation.Cores/CPUs/MOS 6502X/MOS6502X.cs +++ b/src/BizHawk.Emulation.Cores/CPUs/MOS 6502X/MOS6502X.cs @@ -5,6 +5,11 @@ using BizHawk.Emulation.Common; namespace BizHawk.Emulation.Cores.Components.M6502 { + /// + /// this type parameter might look useless—and it is—but after monomorphisation, + /// this way happens to perform better than the alternative + /// + /// public sealed partial class MOS6502X where TLink : IMOS6502XLink { private readonly TLink _link; diff --git a/src/BizHawk.Emulation.Cores/CPUs/Z80A/Z80A.cs b/src/BizHawk.Emulation.Cores/CPUs/Z80A/Z80A.cs index 0ac66eec22..ecd548c333 100644 --- a/src/BizHawk.Emulation.Cores/CPUs/Z80A/Z80A.cs +++ b/src/BizHawk.Emulation.Cores/CPUs/Z80A/Z80A.cs @@ -7,6 +7,11 @@ using BizHawk.Common.NumberExtensions; // Z80A CPU namespace BizHawk.Emulation.Cores.Components.Z80A { + /// + /// this type parameter might look useless—and it is—but after monomorphisation, + /// this way happens to perform better than the alternative + /// + /// public sealed partial class Z80A where TLink : IZ80ALink { // operations that can take place in an instruction