From 5461b8b809b774bc461e3534ec862e03a16f4e30 Mon Sep 17 00:00:00 2001
From: mterwoord_cp <7cd3fd84a0151ea055c2f79e4d2eef9576fe9afesxUZAwxD>
Date: Sat, 19 Sep 2009 13:22:36 +0000
Subject: [PATCH]
---
source/Cosmos/Cosmos.Kernel/Heap.cs | 7 +++++++
source2/IL2PCU/Cosmos.IL2CPU/Assembler/Assembler.cs | 5 +----
source2/Users/Kudzu/HelloWorld/HelloWorld.csproj | 1 +
source2/Users/Kudzu/HelloWorld/Program.cs | 13 +++++++++++--
4 files changed, 20 insertions(+), 6 deletions(-)
diff --git a/source/Cosmos/Cosmos.Kernel/Heap.cs b/source/Cosmos/Cosmos.Kernel/Heap.cs
index 6deb28030..dbcd74b9e 100644
--- a/source/Cosmos/Cosmos.Kernel/Heap.cs
+++ b/source/Cosmos/Cosmos.Kernel/Heap.cs
@@ -151,6 +151,13 @@ namespace Cosmos.Kernel
{
Init();
uint xTemp = mStartAddress;
+ //CPUBus.Write32(0xE9, 0);
+ //CPUBus.Write32(0xE9, mStartAddress);
+ //CPUBus.Write32(0xE9, 0x11111111);
+ //CPUBus.Write32(0xE9, aLength);
+ //CPUBus.Write32(0xE9, 0x22222222);
+ //CPUBus.Write32(0xE9, mStartAddress);
+
if ((xTemp + aLength) > (mStart + mLength))
{
Console.WriteLine("Too large memory block allocated!");
diff --git a/source2/IL2PCU/Cosmos.IL2CPU/Assembler/Assembler.cs b/source2/IL2PCU/Cosmos.IL2CPU/Assembler/Assembler.cs
index ba4dacc91..4095fc2fc 100644
--- a/source2/IL2PCU/Cosmos.IL2CPU/Assembler/Assembler.cs
+++ b/source2/IL2PCU/Cosmos.IL2CPU/Assembler/Assembler.cs
@@ -630,9 +630,6 @@ namespace Cosmos.IL2CPU {
internal void GenerateMethodForward(MethodInfo aFrom, MethodInfo aTo) {
// todo: completely get rid of this kind of trampoline code
- if (MethodInfoLabelGenerator.GenerateLabelName(aFrom.MethodBase) == "System_UInt32__Cosmos_Kernel_CPU_GetAmountOfRAM__") {
- Console.Write("");
- }
MethodBegin(aFrom);
{
var xParams = aTo.MethodBase.GetParameters().AsQueryable();
@@ -650,7 +647,7 @@ namespace Cosmos.IL2CPU {
}
if (xFieldAccessAttrib != null) {
- // field access
+ // field access
new Comment("Loading address of field '" + xFieldAccessAttrib.Name + "'");
Ldarg(aFrom, 0);
Ldflda(aFrom, xFieldAccessAttrib.Name);
diff --git a/source2/Users/Kudzu/HelloWorld/HelloWorld.csproj b/source2/Users/Kudzu/HelloWorld/HelloWorld.csproj
index 7bbf69353..b8b85c4b8 100644
--- a/source2/Users/Kudzu/HelloWorld/HelloWorld.csproj
+++ b/source2/Users/Kudzu/HelloWorld/HelloWorld.csproj
@@ -26,6 +26,7 @@
prompt
4
x86
+ true
pdbonly
diff --git a/source2/Users/Kudzu/HelloWorld/Program.cs b/source2/Users/Kudzu/HelloWorld/Program.cs
index 79f8d5f38..50fcc552a 100644
--- a/source2/Users/Kudzu/HelloWorld/Program.cs
+++ b/source2/Users/Kudzu/HelloWorld/Program.cs
@@ -50,12 +50,21 @@ namespace HelloWorld {
//#endregion
// Main entry point of the kernel
- public static void Init() {
+ public static unsafe void Init() {
var xTempBool = false;
//Console.BackgroundColor = ConsoleColor.Green;
//TODO: What is this next line for?
//S.ReallyClearScreen();
- //Console.WriteLine("Congratulations! You just booted C# code.");
+ //Console.Write("Congratulations! You just booted C# code.");
+
+ byte* xChars = (byte*)0xB8000;
+ xChars[1] = 65;
+ if (true) {
+ xChars[0] = 75;
+ } else {
+ xChars[0] = 78;
+ }
+
//Console.WriteLine("Edit Program.cs to create your own Operating System.");
//Console.WriteLine("Press a key to shutdown...");