Felix_550 Mingolito
Felix_550 Mingolito

Reputation: 1

Problem is Cosmos oskit (usb mouse on real hardware)

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

Answers (0)

Related Questions