Search This Blog

Saturday, March 08, 2008

Adding code to Singularity

Peace be up on you
Yesterday, I have publish post about starting up the Singularity project, today I was seeking for more, in my opinion more is get my self into it, here what I have done, I have start a debug session with the virtual machine, and I go with code, step by step execution, and I found that there is file called shell where all code get back to it, guess what is this, it is the main loop, where the system receive its commands. I have added a few lines, the lines that I have added is, adding the new command name ,description and the call back function that will be used when the user enter the command, so I have write few lines for it, and I rebuild the project in "Tiny" configuration , here is snapshots for what I have got

Here is the command that I have added to the command list that is available in singularity

Here is the result when call the command.
What I have done is not fully right :D, I should read more about the architecture the documents are available at this path
%Singularity Folder%\docs\Design Notes

soon I will try to add more effective code, like showing some Arabic characters on the screen, I hope that I got some time to do that, Thanks for your time

Ahmed Essam


Anonymous said...

The shell is the command line program. It's not central to the system at all; it's just the user interface.

If you're looking for the main system "loop", it's the process scheduler.

Ahmed Essam Naiem (Neo_4583) said...

I got the point that it is just a terminal to the system, for sure that there is many things hidden behind that blue screen, as I mentioned in the post, I did it in rush, and I didn't read the documentation.
All I have done, just injecting some code :), later I will read it more carefully and get deeper more wisely, thanks for the reply :)

Abhinov said...

If possible try to implement the "pong" program present in $singularity_root%/applications/pong. It requires the graphics mode to be enabled in Singularity. Even though this issue has been reported in the Codeplex website, there is no proper fix for it yet.

There was an error in this gadget