I ran my Cosmos operating system in VMWare, But it is not working well. It works well and "stop works". And it doesn't work before restart.(I think it can be memory problem.) There is stoped screen. I don't know where is problem in my source code so I show all the my source code in here.
Source code:
using Cosmos.HAL;
using Cosmos.HAL.Drivers;
using Cosmos.System.FileSystem;
using Cosmos.System.FileSystem.VFS;
using Cosmos.System.Graphics;
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using Sys = Cosmos.System;
namespace CosmosKernel4
{
public class Kernel : Sys.Kernel
{
uint x;
uint y;
Sys.MouseState ms;
Sys.MouseState oldms;
bool menuopened;
Canvas can;
List<Tuple<window, int>> windows;
int celll = 1;
int notepadd = 2;
List<string> programs;
int nowindex;
System.Drawing.Color[] mmmmm;
System.Drawing.Color[][] colorrr;
static string ASC16Base64 = "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AAB4zMzM2MzGxsbMAAAAAAAA/sbGwMDAwMDAwAAAAAAAAAAA/mxsbGxsbGwAAAAAAAAA/sZgMBgwYMb+AAAAAAAAAAAAftjY2NjYcAAAAAAAAAAAZmZmZmZ8YGDAAAAAAAAAAHbcGBgYGBgYAAAAAAAAAH4YPGZmZjwYfgAAAAAAAAA4bMbG/sbGbDgAAAAAAAA4bMbGxmxsbGzuAAAAAAAAHjAYDD5mZmZmPAAAAAAAAAAAAH7b29t+AAAAAAAAAAAAAwZ+29vzfmDAAAAAAAAAHDBgYHxgYGAwHAAAAAAAAAB8xsbGxsbGxsYAAAAAAAAAAP4AAP4AAP4AAAAAAAAAAAAYGH4YGAAA/wAAAAAAAAAwGAwGDBgwAH4AAAAAAAAADBgwYDAYDAB+AAAAAAAADhsbGBgYGBgYGBgYGBgYGBgYGBgYGNjY2HAAAAAAAAAAABgYAH4AGBgAAAAAAAAAAAAAdtwAdtwAAAAAAAAAOGxsOAAAAAAAAAAAAAAAAAAAAAAAABgYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAADwwMDAwM7GxsPBwAAAAAANhsbGxsbAAAAAAAAAAAAABw2DBgyPgAAAAAAAAAAAAAAAAAfHx8fHx8fAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==";
static MemoryStream ASC16FontMS = new MemoryStream(Convert.FromBase64String(ASC16Base64));
//Note: the size of font is 8*16
public void DrawACSIIString(Pen pen, string s, int x, int y)
{
//ASCII
string[] lines = s.Split('\n');
for (int l = 0; l < lines.Length; l++)
{
for (int c = 0; c < lines[l].Length; c++)
{
int offset = (Encoding.ASCII.GetBytes(lines[l][c].ToString())[0] & 0xFF) * 16;
ASC16FontMS.Seek(offset, SeekOrigin.Begin);
byte[] fontbuf = new byte[16];
ASC16FontMS.Read(fontbuf, 0, fontbuf.Length);
for (int i = 0; i < 16; i++)
{
for (int j = 0; j < 8; j++)
{
if ((fontbuf[i] & (0x80 >> j)) != 0)
{
can.DrawPoint(pen, (x + j) + (c * 8), y + i + (l * 16));
}
}
}
}
}
}
protected override void BeforeRun()
{
colorrr = new System.Drawing.Color[7][];
for (int i = 0; i < 7; i++)
{
colorrr[i] = new System.Drawing.Color[7];
}
mmmmm = new System.Drawing.Color[1];
windows = new List<Tuple<window, int>>();
programs = new List<string>();
nowindex = -1;
celll = 1;
notepadd = 2;
can = FullScreenCanvas.GetFullScreenCanvas();
can.Clear(System.Drawing.Color.White);
Sys.MouseManager.ScreenHeight = Convert.ToUInt32(can.Mode.Rows);
Sys.MouseManager.ScreenWidth = Convert.ToUInt32(can.Mode.Columns);
Sys.MouseManager.X = 0;
Sys.MouseManager.Y = 0;
menuopened = false;
ms = Sys.MouseState.None;
oldms = Sys.MouseState.None;
Sys.MouseManager.MouseState = Sys.MouseState.None;
Console.Beep(440, 125);
Console.Beep(38, 125);
Console.Beep(440, 110);
Console.Beep(38, 15);
Console.Beep(440, 125);
Console.Beep(38, 125);
Console.Beep(440, 110);
Console.Beep(38, 15);
Console.Beep(440, 125);
Console.Beep(38, 125);
Console.Beep(440, 400);
resres();
}
void dosmode()
{
can.Disable();
Console.BackgroundColor = ConsoleColor.Black;
Console.ForegroundColor = ConsoleColor.White;
bool isdosmode = true;
string nowdirectory = "0:";
while (isdosmode)
{
Console.Write(nowdirectory + " > ");
string s;
s = Console.ReadLine();
if (s == "GUI Mode") isdosmode = false;
else if (s[0] == 'i' && s[1] == 'n' && s[2] == 't' && s[3] == 'o' && s[4] == ' ')
{
string movedirectory = "";
for (int i = 5; i < s.Length; i++)
{
movedirectory += s[i];
}
if (Directory.Exists(movedirectory) == true)
{
nowdirectory += "\\" + movedirectory;
}
else
{
Console.Write("There isn't directory that " + "\"" + movedirectory + "\"" + "in this directory");
}
}
}
can.Display();
can = FullScreenCanvas.GetFullScreenCanvas();
can.Clear(System.Drawing.Color.White);
}
protected override void Run()
{
try
{
if (Sys.MouseManager.MouseState == Sys.MouseState.None)
{
if ((ms == Sys.MouseState.Left) || (oldms == Sys.MouseState.Left))
{
bool bbb = false;
uint xx = Sys.MouseManager.X;
uint yy = Sys.MouseManager.Y;
if (menuopened == true)
{
if ((xx < 100) && (yy > (can.Mode.Rows - 140)) && ((can.Mode.Rows - 40) > yy))
{
Console.Beep(440, 125);
Console.Beep(38, 125);
Console.Beep(440, 110);
Console.Beep(38, 15);
Console.Beep(440, 125);
Console.Beep(38, 125);
Console.Beep(440, 110);
Console.Beep(38, 15);
Console.Beep(440, 125);
Console.Beep(38, 125);
Console.Beep(440, 400);
Sys.Power.Shutdown();
}
else if ((xx < 100) && (yy > (can.Mode.Rows - 240)) && ((can.Mode.Rows - 140) > yy))
{
Console.Beep(440, 125);
Console.Beep(38, 125);
Console.Beep(440, 110);
Console.Beep(38, 15);
Console.Beep(440, 125);
Console.Beep(38, 125);
Console.Beep(440, 110);
Console.Beep(38, 15);
Console.Beep(440, 125);
Console.Beep(38, 125);
Console.Beep(440, 400);
Sys.Power.Reboot();
}
else if ((xx < 100) && (yy > (can.Mode.Rows - 340)) && ((can.Mode.Rows - 240) > yy))
{
Console.Beep(440, 125);
Console.Beep(38, 125);
Console.Beep(440, 110);
Console.Beep(38, 15);
Console.Beep(440, 125);
Console.Beep(38, 125);
Console.Beep(440, 110);
Console.Beep(38, 15);
Console.Beep(440, 125);
Console.Beep(38, 125);
Console.Beep(440, 400);
dosmode();
}
else
{
menuopened = false;
bbb = true;
}
resres();
}
if (nowindex == -1)
{
if ((xx < 30) && (yy < 30))
{
List<List<string>> lll = new List<List<string>>();
for (int i = 0; i < 10; i++)
{
lll.Add(new List<string>());
for (int j = 0; j < 10; j++)
{
lll[i].Add("cell");
}
}
windows.Add(new Tuple<window, int>(new cell(0, 0, 600, 200, lll), celll));
nowindex = windows.Count - 1;
resres();
}
}
else if (windows[nowindex].Item2 == celll)
{
try
{
int cellwidth = can.Mode.Columns / ((cell)windows[nowindex].Item1).cells[0].Count;
int cellheight = (can.Mode.Rows - 40) / ((cell)windows[nowindex].Item1).cells.Count;
if (((cell)windows[nowindex].Item1).selected_heng != -1)
{
can.DrawRectangle(new Pen(System.Drawing.Color.Green), new Point(((cell)windows[nowindex].Item1).selected_iul * cellwidth, ((cell)windows[nowindex].Item1).selected_heng * cellheight), cellwidth, cellheight);
}
}
catch { }
try
{
int cellwidth = can.Mode.Columns / ((cell)windows[nowindex].Item1).cells[0].Count;
int cellheight = (can.Mode.Rows - 40) / ((cell)windows[nowindex].Item1).cells.Count;
int iul = Convert.ToInt32(xx / cellwidth);
int heng = Convert.ToInt32(yy / cellheight);
((cell)windows[nowindex].Item1).selected_heng = heng;
((cell)windows[nowindex].Item1).selected_iul = iul;
can.DrawRectangle(new Pen(System.Drawing.Color.Red), new Point(iul * cellwidth, heng * cellheight), cellwidth, cellheight);
}
catch { }
}
if (bbb == false)
{
if ((xx <= 100) && (yy >= (can.Mode.Rows - 40)))
{
if (menuopened == true)
{
}
else
{
menuopened = true;
resres();
}
}
}
ms = Sys.MouseState.None;
oldms = Sys.MouseState.None;
}
}
try
{
if ((x != Sys.MouseManager.X) || (y != Sys.MouseManager.Y))
{
for (int xxx = 0; xxx <= 6; xxx++)
{
for (int yyy = 0; yyy <= 6; yyy++)
{
can.DrawFilledRectangle(new Pen(colorrr[xxx][yyy]), new Point(Convert.ToInt32(x + xxx), Convert.ToInt32(y + yyy)), 1, 1); ;
}
}
for (int xxx = 0; xxx <= 6; xxx++)
{
for (int yyy = 0; yyy <= 6; yyy++)
{
colorrr[xxx][yyy] = can.GetPointColor(Convert.ToInt32(Sys.MouseManager.X + xxx), Convert.ToInt32(Sys.MouseManager.Y + yyy));
}
}
if (Sys.MouseManager.MouseState == Sys.MouseState.None)
{
can.DrawFilledRectangle(new Pen(System.Drawing.Color.Blue, 1), new Point(Convert.ToInt32(Sys.MouseManager.X), Convert.ToInt32(Sys.MouseManager.Y)), 5, 5);
}
else
{
can.DrawFilledRectangle(new Pen(System.Drawing.Color.Red, 1), new Point(Convert.ToInt32(Sys.MouseManager.X), Convert.ToInt32(Sys.MouseManager.Y)), 5, 5);
}
x = Sys.MouseManager.X;
y = Sys.MouseManager.Y;
}
}
catch { }
oldms = ms;
ms = Sys.MouseManager.MouseState;
}
catch
{
resres();
}
}
void resres()
{
try
{
can = FullScreenCanvas.GetFullScreenCanvas();
can.Clear(System.Drawing.Color.White);
if (nowindex == -1)
{
DrawACSIIString(new Pen(System.Drawing.Color.Black), "cell", 0, 31);
can.DrawRectangle(new Pen(System.Drawing.Color.Green), new Point(0, 0), 40, 40);
}
#region "draw program GUI"
else if (windows[nowindex].Item2 == celll)
{
cell cell44 = (cell)windows[nowindex].Item1;
List<List<string>> cells = cell44.cells;
int cellwidth = (can.Mode.Columns / cells[0].Count);
int cellheight = (can.Mode.Rows - 40) / cells.Count;
for (int j = 0; j < cells.Count; j++)
{
for (int k = 0; k < cells[j].Count; k++)
{
DrawACSIIString(new Pen(System.Drawing.Color.Black, 2), cells[j][k], k * cellwidth, j * cellheight);
}
}
try
{
for (int j = 0; j <= cells.Count; j++)
{
can.DrawLine(new Pen(System.Drawing.Color.Green, 1), new Point(0, j * cellheight), new Point(cells[j].Count * cellwidth, j * cellheight));
}
}
catch { }
try
{
for (int k = 0; k <= cells[0].Count; k++)
{
can.DrawLine(new Pen(System.Drawing.Color.Green, 1), new Point(k * cellwidth, 0), new Point(k * cellwidth, cells.Count * cellheight));
}
}
catch { }
}
#endregion
#region "draw menu"
if (menuopened == true)
{
can.DrawFilledRectangle(new Pen(System.Drawing.Color.Aqua), 0, can.Mode.Rows - 340, 100, 100);
can.DrawFilledRectangle(new Pen(System.Drawing.Color.Purple), 0, can.Mode.Rows - 240, 100, 100);
can.DrawFilledRectangle(new Pen(System.Drawing.Color.Red), 0, can.Mode.Rows - 140, 100, 100);
can.DrawRectangle(new Pen(System.Drawing.Color.Black), 0, can.Mode.Rows - 340, 100, 300);
DrawACSIIString(new Pen(System.Drawing.Color.Red, 1), "DOS Mode", 1, can.Mode.Rows - 340);
DrawACSIIString(new Pen(System.Drawing.Color.White, 1), "Restart", 1, can.Mode.Rows - 240);
DrawACSIIString(new Pen(System.Drawing.Color.Aqua, 1), "Off", 1, can.Mode.Rows - 140);
}
can.DrawFilledRectangle(new Pen(System.Drawing.Color.Magenta), 0, can.Mode.Rows - 40, 100, 40);
#endregion
#region "draw mouse"
#endregion
}
catch { }
}
}
}
What is problem in my source code? If my English was lack I'm sorry. I'm Korean.