Louis Watson | 16 Apr 20:25 2014
Picon

FAT Bug

Man that’s been a long day never mind another dollar ;)

 

Ok so I loaded up Breakpoints kernel to test the filesystem, which is working as expected  and showing me the contents of the iso after executing TestATA.

 

Could I have some more info on the bug please since I cannot seem to find anything on CodePlex.

 

Btw am on irc as well atm.

 

From: Cosmos-Dev-hHKSG33TihhbjbujkaE4pw@public.gmane.org [mailto:Cosmos-Dev-hHKSG33TihhbjbujkaE4pw@public.gmane.org] On Behalf Of Matthijs ter Woord
Sent: 16 April 2014 07:15
To: Cosmos-Dev
Subject: Re: [Cosmos-Dev] Multi-Dimensional Array Issue.

 

 

Multidimensional arrays is not working. Like you said, jagged arrays work fine as a work around, and give other positive possibilities as well.

Would you be interested in diving into the current compiler bug, which blocks the FAT implementation Chad's been working on?

 

2014-04-16 5:36 GMT+02:00 Louis Watson <lcr_watson-/E1597aS9LQAvxtiuMwx3w@public.gmane.org>:

 

I investigated this further and found that this is due to the following situation.

 

Int[] array = new int[1]; Instead of calling Array.CreateInstance(Type,  1) is inlined by csc to use arrnew OpCode.

 

but int[,] array = new int[1, 1] calls Array.CreateInstance which in turn calls mscorlib.

 

Suggested Workaround:

 

List<int[]> list = new List<int[]>(1);

list.Add(new int[1]);

 

Access element using list[0][0].

 

Have tested this in a kernel and works as expected.

 

Most Likely Resolution:

 

Plugging Array.CreateInstance would obviously need to be done but Compiler MAY need to include a check for type names containing [0…,0…] as emitted by csc.exe and replacing it with [,] to correctly identify the type on build.

 

Also means Array methods including GetValue and SetValue  would need to be updated to support multi dimensions.

 

 

From: Cosmos-Dev-hHKSG33TihhbjbujkaE4pw@public.gmane.org [mailto:Cosmos-Dev-hHKSG33TihhbjbujkaE4pw@public.gmane.org] On Behalf Of Louis Watson
Sent: 15 April 2014 22:14
To: Cosmos-Dev-hHKSG33TihhbjbujkaE4pw@public.gmane.org
Subject: [Cosmos-Dev] Multi-Dimensional Array Issue.

 



__._,_.___


--------------------------------------------------
More things to join for Cosmos!

1) Cosmos chat room:
http://tinyurl.com/pc7bds

2) Please add yourself to the map:
http://tinyurl.com/qhttde

3) Help publicity and join our Facebook page:
http://tinyurl.com/plrloa

--------------------------------------------------






__,_._,___
Louis Watson | 15 Apr 23:13 2014
Picon

Multi-Dimensional Array Issue.

Looks like it relates to [This active issue](https://connect.microsoft.com/VisualStudio/feedback/details/472621/reflection-emit-produces-invalid-siagnatures-of-methods-with-multidimensional-arrays#)



__._,_.___

--------------------------------------------------
More things to join for Cosmos!

1) Cosmos chat room:
http://tinyurl.com/pc7bds

2) Please add yourself to the map:
http://tinyurl.com/qhttde

3) Help publicity and join our Facebook page:
http://tinyurl.com/plrloa

--------------------------------------------------






__,_._,___
trivalik | 14 Apr 20:19 2014
Picon

VMware lib guid

I want to check by you if the GUID in registry is existing, I want to add check for this key to prevent COM exception.
HKEY_CLASSES_ROOT\CLSID\{6874E949-7186-4308-A1B9-D55A91F60728}


__._,_.___

--------------------------------------------------
More things to join for Cosmos!

1) Cosmos chat room:
http://tinyurl.com/pc7bds

2) Please add yourself to the map:
http://tinyurl.com/qhttde

3) Help publicity and join our Facebook page:
http://tinyurl.com/plrloa

--------------------------------------------------






__,_._,___
Louis Watson | 13 Apr 20:38 2014
Picon

Intro Louis Watson

Hi All,

 

                Would just like to say thanks for allowing me to join so I thought I better post something about me and my agenda with cosmos.

 

I’m in my thirties and live in the UK. I have been programming for most of it starting on a Amstrad 6128 in the early 80’s lol.

I’ve used too many languages to count over the time but I’ve worked as VB programmer, web designer, server administrator to name a few.

I like using c# as it’s a comfortable language although I do like to use C++ now and again.

 

Anyhow to Cosmos and some of my thoughts:

 

l  Would anyone else like to see the IL Interpreter/Compiler separated out from the build task so that you could have a “build to native” project template.

o   A possible implementation could include a config file for “Queuing” Build items.

 

l  Memory Management needs to be setup as a stack in my opinion else it interferes with users defining static classes.

o   Implementation to include double linked list and safe handle to allow for GC.

 

Personally the second is higher priority and could be done in a few days with my timeframe atm.

 

Any thoughts or criticism are welcome.

 

 



__._,_.___

--------------------------------------------------
More things to join for Cosmos!

1) Cosmos chat room:
http://tinyurl.com/pc7bds

2) Please add yourself to the map:
http://tinyurl.com/qhttde

3) Help publicity and join our Facebook page:
http://tinyurl.com/plrloa

--------------------------------------------------






__,_._,___
trivalik | 5 Apr 07:45 2014
Picon

our GDB GUI, and about ELF [1 Attachment]

I want to find an issue, and get that our GDB GUI is not working to show the current line.
I found that the objdump of .obj, and .bin file shows the problem. On attached picture left is from .obj, Right from .bin which is working, if GDB GUI load this as symbols. So should I change to .bin file in source code, or is there something that have changed? Cause the code generation code of nasm was not touched for years.

Whats about the ELF support? Is it still wanted? Was the GDB GUI working with it?
Error 1428 The "Cosmos.Build.MSBuild.ReadNAsmMapToCosmosMap" task could not be loaded from the assembly C:\Users\xx x\AppData\Roaming\Cosmos User Kit\Build\VSIP\Cosmos.Build.MSBuild.dll.  Confirm that the <UsingTask> declaration is correct, that the assembly and all its dependencies are available, and that the task contains a public class that implements Microsoft.Build.Framework.ITask. C:\Program Files (x86)\MSBuild\Cosmos\Cosmos.targets 69 6 CosmosKernel2Boot




__._,_.___

Attachment(s) from trivalik-/E1597aS9LQAvxtiuMwx3w@public.gmane.org | View attachments on the web

1 of 1 Photo(s)



--------------------------------------------------
More things to join for Cosmos!

1) Cosmos chat room:
http://tinyurl.com/pc7bds

2) Please add yourself to the map:
http://tinyurl.com/qhttde

3) Help publicity and join our Facebook page:
http://tinyurl.com/plrloa

--------------------------------------------------






__,_._,___
Matthijs ter Woord | 31 Mar 11:02 2014
Picon

New release?

Maybe we should do a new release? I think we have made some significant changes....


__._,_.___

--------------------------------------------------
More things to join for Cosmos!

1) Cosmos chat room:
http://tinyurl.com/pc7bds

2) Please add yourself to the map:
http://tinyurl.com/qhttde

3) Help publicity and join our Facebook page:
http://tinyurl.com/plrloa

--------------------------------------------------






__,_._,___
Matthijs ter Woord | 1 Mar 11:59 2014
Picon

Task for grabbing (2)

Another task for grabbing:

We currently hit a compiler bug with the ATA code. However debugging this deep inside the ATA code is difficult. Try to reproduce it in a simple kernel.

(Sidenote: I might have some time soon to work on it, but no guarantees)



__._,_.___

--------------------------------------------------
More things to join for Cosmos!

1) Cosmos chat room:
http://tinyurl.com/pc7bds

2) Please add yourself to the map:
http://tinyurl.com/qhttde

3) Help publicity and join our Facebook page:
http://tinyurl.com/plrloa

--------------------------------------------------






__,_._,___
Matthijs ter Woord | 1 Mar 11:58 2014
Picon

Task for grabbing (1)

If someone's interested in helping out:

We want to have bochs support. Instead of using vmware (which will be an installatino requirement for a while), a compiler dev/debugger dev should be able to use bochs without having to manually start it.

Any takers?



__._,_.___

--------------------------------------------------
More things to join for Cosmos!

1) Cosmos chat room:
http://tinyurl.com/pc7bds

2) Please add yourself to the map:
http://tinyurl.com/qhttde

3) Help publicity and join our Facebook page:
http://tinyurl.com/plrloa

--------------------------------------------------






__,_._,___
edwardnutting | 5 Jan 20:10 2014

Breakpoints and Stepping

Hi,


So I've been discussing recently with various people about the Cosmos debugging system as it currently is and what needs doing. Our current issue is ASM Step but also I saw listed the slowness/heavy-weight of debug stub. We reckon the two are related.

So first looking at how I think Cosmos debugging currently works:
1) C#-level debugging
 - Compiler inserts INT3's into code at compile-time 
 - When an INT3 is raised, debug stub checks list of VS C# breakpoints to see if one has been set at this point
 - If it has, notifies VS
 - If it hasn't, continues current code

2) ASM Breakpoints
 - ASM Breakpoint can be set on a line of code. Only 1 can be set at a time.
 - ASM Breakpoint stuff is independent of C# code.
 - Debugging ASM stuff seems limited to only assembler that is part of current C# line.
 - When an (/the) ASM breakpoint is hit, VS is notified.
 - Setting new ASM breakpoint clears the old one.

3) ASM-level Debugging
 - Step (/step over) find the next line of ASM that will be executed then sets an (/the) ASM breakpoint on that line. Then sends Continue command.

The known flaw with (3) ASM-level Debugging is that Step for jump commands (e.g. jump if equal) fails since we cannot set an ASM breakpoint at both possible code paths. I nthe long-run, this will be a very signific ant flaw in the debugger's design.

The flaw with (1) C#-level debugging appears to be that adding that many INT3's vastly slows down the debugger. 

Proposed fix for both of these issues is something like this:
1) Remove the compiler-inserted INT3s (will improve performance)
2) Allow multiple ASM breakpoints to be set (allow ASM Step to work properly)
3) VS C#-Level breakpoints should then set ASM breakpoints in correct points when the breakpoint is created - i.e. not rely on INT3s already existing
4) When an ASM breakpoint is hit:
   - Update VS views (like source code view) 
   - Update Cosmos views
   * This will allow c hanges to C#-level debugging to work
   * This will allow cross-C# line, ASM-level debugging

These seem to me to be actually quite small but significant changes to make. It will make the debugger more efficient, more versatile and more extensible in the future.

What do you reckon? 
Ed

P.s. Chad, I've communicated most with you about this ASM Step issue. If you are happy with this proposal, please give me the go-ahead to start working on these changes. Yes it will involve X# changes, but I can always shelve changes for you to check them. I'm reluctant to start doing this until you're agreed it is the right way forward.


__._,_.___

--------------------------------------------------
More things to join for Cosmos!

1) Cosmos chat room:
http://tinyurl.com/pc7bds

2) Please add yourself to the map:
http://tinyurl.com/qhttde

3) Help publicity and join our Facebook page:
http://tinyurl.com/plrloa

--------------------------------------------------





Your email settings: Individual Email|Traditional
Change settings via the Web (Yahoo! ID required)
Change settings via email: Switch delivery to Daily Digest | Switch to Fully Featured
Visit Your Group | Yahoo! Groups Terms of Use | Unsubscribe

__,_._,___
edwardnutting | 5 Jan 18:09 2014

Short-term roadmap

Hi,


(This is mainly aimed at Chad but feel free to chip in.)

I think we need a short-term roadmap so that people can help develop more easily. Before you jump to conclusions, no I don't mean one that includes "graphics drivers" and the like - no fun stuff. Just the stuff that is in the "solid base" of code that keeps being talked about but never detailed. 

With a short-term roadmap of the base stuff that needs doing I think people will find it much easier (/ be more encouraged) to help. Especially if we have some idea how much there is left to do in what order!

Any chance you could put something together Chad? (Something a bit more organised/detailed than your H TML file list?)

Thanks,
Ed


__._,_.___

--------------------------------------------------
More things to join for Cosmos!

1) Cosmos chat room:
http://tinyurl.com/pc7bds

2) Please add yourself to the map:
http://tinyurl.com/qhttde

3) Help publicity and join our Facebook page:
http://tinyurl.com/plrloa

--------------------------------------------------





Your email settings: Individual Email|Traditional
Change settings via the Web (Yahoo! ID required)
Change settings via email: Switch delivery to Daily Digest | Switch to Fully Featured
Visit Your Group | Yahoo! Groups Terms of Use | Unsubscribe

__,_._,___
Matthijs ter Woord | 3 Jan 14:53 2014
Picon

Progress!

Good. It seems we've made some progress with debugging etc.. (Kudos to Edward for that!!)

Anyone in here wants to help us out? We could really use any help available (small and big tasks)..
:)


__._,_.___

--------------------------------------------------
More things to join for Cosmos!

1) Cosmos chat room:
http://tinyurl.com/pc7bds

2) Please add yourself to the map:
http://tinyurl.com/qhttde

3) Help publicity and join our Facebook page:
http://tinyurl.com/plrloa

--------------------------------------------------





Your email settings: Individual Email|Traditional
Change settings via the Web (Yahoo! ID required)
Change settings via email: Switch delivery to Daily Digest | Switch to Fully Featured
Visit Your Group | Yahoo! Groups Terms of Use | Unsubscribe

__,_._,___

Gmane