mirror of
https://github.com/jkocon/g-helper.git
synced 2026-02-23 13:00:52 +01:00
Merge pull request #375 from IceStormNG/animematrix-for-GU604
Supports AniMeMatrix for Zephyrus M16 2023 (GU604)
This commit is contained in:
@@ -61,7 +61,8 @@ namespace Starlight.AnimeMatrix
|
|||||||
public enum AnimeType
|
public enum AnimeType
|
||||||
{
|
{
|
||||||
GA401,
|
GA401,
|
||||||
GA402
|
GA402,
|
||||||
|
GU604
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -88,6 +89,8 @@ namespace Starlight.AnimeMatrix
|
|||||||
//public int FullEvenRows = -1;
|
//public int FullEvenRows = -1;
|
||||||
|
|
||||||
public int dx = 0;
|
public int dx = 0;
|
||||||
|
//Shifts the whole frame to the left or right to align with the diagonal cut
|
||||||
|
public int frameShiftX = 0;
|
||||||
public int MaxColumns = 34;
|
public int MaxColumns = 34;
|
||||||
|
|
||||||
private int frameIndex = 0;
|
private int frameIndex = 0;
|
||||||
@@ -112,6 +115,16 @@ namespace Starlight.AnimeMatrix
|
|||||||
UpdatePageLength = 410;
|
UpdatePageLength = 410;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (model.Contains("GU604"))
|
||||||
|
{
|
||||||
|
_model = AnimeType.GU604;
|
||||||
|
|
||||||
|
MaxColumns = 39;
|
||||||
|
MaxRows = 92;
|
||||||
|
LedCount = 1711;
|
||||||
|
frameShiftX = -5;
|
||||||
|
UpdatePageLength = 630;
|
||||||
|
}
|
||||||
|
|
||||||
_displayBuffer = new byte[LedCount];
|
_displayBuffer = new byte[LedCount];
|
||||||
|
|
||||||
@@ -173,6 +186,9 @@ namespace Starlight.AnimeMatrix
|
|||||||
{
|
{
|
||||||
return (y + 1) / 2 - 3;
|
return (y + 1) / 2 - 3;
|
||||||
}
|
}
|
||||||
|
case AnimeType.GU604:
|
||||||
|
return (int)Math.Ceiling(Math.Max(0, y - 9) / 2F);
|
||||||
|
|
||||||
default:
|
default:
|
||||||
return (int)Math.Ceiling(Math.Max(0, y - 11) / 2F);
|
return (int)Math.Ceiling(Math.Max(0, y - 11) / 2F);
|
||||||
}
|
}
|
||||||
@@ -184,6 +200,8 @@ namespace Starlight.AnimeMatrix
|
|||||||
{
|
{
|
||||||
case AnimeType.GA401:
|
case AnimeType.GA401:
|
||||||
return 33;
|
return 33;
|
||||||
|
case AnimeType.GU604:
|
||||||
|
return 39;
|
||||||
default:
|
default:
|
||||||
return 34;
|
return 34;
|
||||||
}
|
}
|
||||||
@@ -226,7 +244,7 @@ namespace Starlight.AnimeMatrix
|
|||||||
if (!IsRowInRange(y)) return;
|
if (!IsRowInRange(y)) return;
|
||||||
|
|
||||||
if (x >= FirstX(y) && x < Width(y))
|
if (x >= FirstX(y) && x < Width(y))
|
||||||
SetLedLinear(RowToLinearAddress(y) - FirstX(y) + x + dx, value);
|
SetLedLinear(RowToLinearAddress(y) - FirstX(y) + x + dx + frameShiftX, value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void WakeUp()
|
public void WakeUp()
|
||||||
|
|||||||
Reference in New Issue
Block a user