Reputation: 1
I coded a simple OS in cosmos c# nad on VM and it works fine. When I build it on a real hardware, the mouse does not move. I discovered that cosmos does not support USB mouses and Keyboards. Did someone have a driver that works?
using Cosmos.Core.Memory;
using Cosmos.System.Graphics;
using IL2CPU.API.Attribs;
using System;
using System.Drawing;
using Sys = Cosmos.System;
namespace OS_test
{
public class Kernel : Sys.Kernel
{
//public static VBECanvas canvas = new VBECanvas(new Mode(1920, 1080, ColorDepth.ColorDepth32));
Canvas canvas;
[ManifestResourceStream(ResourceName = "OS_test.cursor.bmp")] public static byte[] cursor_byte;
public static Bitmap cursor_bmp;
[ManifestResourceStream(ResourceName = "OS_test.desktop.bmp")] public static byte[] desktop_byte;
public static Bitmap desktop_bmp;
protected override void BeforeRun()
{
Console.WriteLine("Cosmos booted successfully. Starting GUI.");
canvas = FullScreenCanvas.GetCurrentFullScreenCanvas();
canvas.Mode = new Mode(1920, 1080, ColorDepth.ColorDepth32);
Sys.MouseManager.ScreenWidth = canvas.Mode.Width;
Sys.MouseManager.ScreenHeight = canvas.Mode.Height;
Sys.MouseManager.X = 1920 / 2;
Sys.MouseManager.Y = 1080 / 2;
cursor_bmp = new Bitmap(cursor_byte);
desktop_bmp = new Bitmap(desktop_byte);
}
protected override void Run()
{
canvas.Clear(Color.Blue);
canvas.DrawImage(desktop_bmp,0,0);
Explorer.Explorer.Start(canvas);
//canvas.DrawFilledCircle(Color.Red, (int)Sys.MouseManager.X, (int)Sys.MouseManager.Y, 5);
canvas.DrawImageAlpha(cursor_bmp, (int)Sys.MouseManager.X, (int)Sys.MouseManager.Y);
Heap.Collect();
canvas.Display();
}
}
}
I tried to use HID Library but cosmos say it is missing a PLUG.
Upvotes: 0
Views: 49