We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cosmos Inner-code bug.
Identical to .NET Console behavior must be expected just with a 80x25 size.
Proper functioning of placements of text in code
The code is:
public const int CWidth = 80; public const int CHeight = 25; public const string kernelName = "Test"; public const string kernelVersion = "v1.0"; public const ConsoleColor consoleKernelAccentColor = ConsoleColor.DarkCyan; public static int finalSelection = 0; public static void Run() { var disks = new List<string>() { "0:\\", "1:\\", "2:\\" }; Console.BackgroundColor = consoleKernelAccentColor; Console.ForegroundColor = ConsoleColor.White; Console.Clear(); Console.WriteLine(kernelName + " " + kernelVersion + " Installer (via Cosmares)"); Console.CursorLeft = 0; Console.CursorTop = CHeight; Console.BackgroundColor = ConsoleColor.DarkGray; Console.Write(new string(' ', CWidth)); Console.CursorLeft = 0; Console.CursorTop = CHeight; Console.ForegroundColor = ConsoleColor.Black; Console.Write("Use arrow keys to move, space to select and enter to next."); var winX = CWidth / 16; var winY = 3; var winWidth = CWidth - (CWidth / 16) - 5; var winHeight = CHeight - 5; Console.BackgroundColor = ConsoleColor.White; for (var i = 0; i < winHeight; i++) { Console.CursorLeft = winX; Console.CursorTop = winY + i; Console.Write(new string(' ', winWidth)); } Console.CursorLeft = winX + 2; Console.CursorTop = winY + 1; Console.Write("Select a disk:"); var boxX = winX + 4; var boxY = winY + 3; var boxWidth = winWidth - 8; // (winWidth - (4*2)) var boxHeight = winHeight - 6; // (winHeight - (3*2)) Console.BackgroundColor = ConsoleColor.Gray; for (var i = 0; i < boxHeight; i++) { Console.CursorLeft = boxX; Console.CursorTop = boxY + i; Console.Write(new string(' ', boxWidth)); } var selected = 0; var selectedVal = disks[selected]; var hovered = 0; var hoveredVal = disks[hovered]; update: var diskIndex = 0; for (var i = 0; i < disks.Count; i++) { if (i == selected) { Console.BackgroundColor = consoleKernelAccentColor; } else if (i == hovered) { Console.BackgroundColor = ConsoleColor.DarkGray; } Console.CursorLeft = boxX; Console.CursorTop = boxY + i; Console.Write(new string(' ', boxWidth)); Console.CursorLeft = boxX; Console.CursorTop = boxY + i; Console.Write(disks[i]); Console.BackgroundColor = ConsoleColor.Gray; } var key = Console.ReadKey(true); while (key.Modifiers != ConsoleModifiers.Control && key.Modifiers != ConsoleModifiers.Shift && key.Key != ConsoleKey.Escape) { if (key.Key == ConsoleKey.UpArrow && hovered - 1 > -1) { hovered--; goto update; } else if (key.Key == ConsoleKey.DownArrow && hovered + 1 < disks.Count) { hovered++; goto update; } else if (key.Key == ConsoleKey.Enter) { finalSelection = selected; return; } else if (key.Key == ConsoleKey.Spacebar) { selected = hovered; goto update; } key = Console.ReadKey(true); } return; }
It is the latest DevKit and its part of the main cosmos base.
Expected first, and cosmos second
The CWidth and CHeight are used in both code so the 80x25 console can be used in the .NET one
CWidth
CHeight
The text was updated successfully, but these errors were encountered:
just use svgaiiterminal /j
Sorry, something went wrong.
No branches or pull requests
Area of Cosmos - What area of Cosmos are we dealing with?
Cosmos Inner-code bug.
Expected Behaviour - What do you think that should happen?
Identical to .NET Console behavior must be expected just with a 80x25 size.
Actual Behaviour - What unexpectedly happens?
Proper functioning of placements of text in code
Reproduction - How did you get this error to appear?
The code is:
Version - Were you using the User Kit or Dev Kit? And what User Kit version or Dev Kit commit (Cosmos, IL2CPU, X#)?
It is the latest DevKit and its part of the main cosmos base.
Screenshots:
Expected first, and cosmos second
The
CWidth
andCHeight
are used in both code so the 80x25 console can be used in the .NET oneThe text was updated successfully, but these errors were encountered: