<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title><![CDATA[Small Basic Forum - C# Moving from Small Basic]]></title>
		<link>https://litdev.uk/mybb/</link>
		<description><![CDATA[Small Basic Forum - https://litdev.uk/mybb]]></description>
		<pubDate>Thu, 30 Apr 2026 16:54:04 +0000</pubDate>
		<generator>MyBB</generator>
		<item>
			<title><![CDATA[Decompile to C# in SB-Prime - Checkbox Console App]]></title>
			<link>https://litdev.uk/mybb/showthread.php?tid=148</link>
			<pubDate>Tue, 15 Oct 2024 16:21:27 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://litdev.uk/mybb/member.php?action=profile&uid=3">Scout</a>]]></dc:creator>
			<guid isPermaLink="false">https://litdev.uk/mybb/showthread.php?tid=148</guid>
			<description><![CDATA[The Chess Engine SB_Scout is a mixed application with a text window and a graphics window. (PDVF923.000)<br />
As it is not a pure console application, I have disabled the checkbox "Export as Console App".<br />
Is the following error related to this or is there another cause?<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://litdev.uk/mybb/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=139" target="_blank" title="">CS_Scout Read.JPG</a> (Size: 165.25 KB / Downloads: 5)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[The Chess Engine SB_Scout is a mixed application with a text window and a graphics window. (PDVF923.000)<br />
As it is not a pure console application, I have disabled the checkbox "Export as Console App".<br />
Is the following error related to this or is there another cause?<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://litdev.uk/mybb/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=139" target="_blank" title="">CS_Scout Read.JPG</a> (Size: 165.25 KB / Downloads: 5)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[SmallBasic Open Edition]]></title>
			<link>https://litdev.uk/mybb/showthread.php?tid=147</link>
			<pubDate>Sun, 13 Oct 2024 16:41:52 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://litdev.uk/mybb/member.php?action=profile&uid=18">KristianVirtanen</a>]]></dc:creator>
			<guid isPermaLink="false">https://litdev.uk/mybb/showthread.php?tid=147</guid>
			<description><![CDATA[Hi,<br />
<br />
This project (<a href="https://github.com/EkBass/SmallBasicOpenEditionDll/tree/master" target="_blank" rel="noopener" class="mycode_url">SmallBasic Open Edition</a>) is part of a larger whole, where the goal is to recreate <a href="https://smallbasic-publicwebsite.azurewebsites.net/" target="_blank" rel="noopener" class="mycode_url">Microsoft SmallBasic</a>, at least in its main features.<br />
<br />
The first phase of the project, which is exactly this, is to create the same classes as in SmallBasic: <span style="font-weight: bold;" class="mycode_b">Text</span>, <span style="font-weight: bold;" class="mycode_b">Math</span>, <span style="font-weight: bold;" class="mycode_b">GraphicsWindow</span>, and so on. The project is mostly complete, although types for variables, some small tests, and so on are still required.<br />
<br />
<span style="font-weight: bold;" class="mycode_b">Note:</span> The classes <span style="font-weight: bold;" class="mycode_b">Array</span>, <span style="font-weight: bold;" class="mycode_b">Flickr</span>, and <span style="font-weight: bold;" class="mycode_b">Dictionary</span> have not been created. <br />
<br />
<span style="font-weight: bold;" class="mycode_b">Array</span> is missing because I have not yet decided on the final way the future compiler will handle arrays. I have a couple of different solutions for this, but I haven’t had time to decide yet.  <br />
<br />
<span style="font-weight: bold;" class="mycode_b">Flickr</span> is missing because I am simply not very familiar with this service, and their API is completely unknown to me.  <br />
<br />
<span style="font-weight: bold;" class="mycode_b">Dictionary</span> is a class I’m not sure if I want to spend time on, at least not personally.<br />
<br />
Unlike the original SmallBasic, Open Edition converts SmallBasic code into the C# programming language and compiles it afterward. This brings significant advantages in terms of memory management, speed, and extensibility.<br />
<br />
Variables will function mostly the same way as in the original SmallBasic. This is made possible by C#’s <span style="font-weight: bold;" class="mycode_b">dynamic</span>. However, the idea is that variables will require a suffix of "&#36;" at the end of their names. Not only does this make the programs easier to compile, but I also believe it helps distinguish variables and makes coding a bit easier.<br />
<br />
The program that tokenizes and converts SmallBasic code into C# is also mostly done. However, at the moment, it's more like a pile of sticks rather than a well-designed and structured program, so its release will be more appropriate at a later time. <br />
<br />
Example SmallBasic program:<br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>' Example Smallbasic program<br />
x&#36; = 1<br />
y&#36; = 2<br />
c&#36; = "Foo"<br />
TextWindow.WriteLine(x&#36; + y&#36; + c&#36;)<br />
SayHello()<br />
Goto MyLabel:<br />
TextWindow.WriteLine("I'm never printed.")<br />
MyLabel:<br />
Program.End()<br />
Sub SayHello<br />
    TextWindow.WriteLine("Hello")<br />
EndSub</code></div></div><br />
Converted to C#:<br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>// Converted as C#<br />
namespace SmallBasicOpenEditionDll<br />
{<br />
    public static class SB_Program<br />
    {<br />
        // Declare dynamic variables (similar to Smallbasic's dynamic typing)<br />
        public static dynamic x = 1;<br />
        public static dynamic y = 2;<br />
        public static dynamic c = "Foo";<br />
        // Entry point of the program<br />
        public static void Main()<br />
        {<br />
            // Equivalent of TextWindow.WriteLine(x&#36; + y&#36; + c&#36;)<br />
            TextWindow.WriteLine(x + y + c);<br />
            // Call the method SayHello()<br />
            SayHello();<br />
            // This line will not be executed<br />
            Goto MyLabel:<br />
            TextWindow.WriteLine("I'm never printed.");<br />
            MyLabel:<br />
            Program.End();<br />
        }<br />
        // The equivalent of SmallBasic's subroutine 'SayHello'<br />
        public static void SayHello()<br />
        {<br />
            TextWindow.WriteLine("Hello");<br />
        }<br />
    }<br />
}</code></div></div><br />
<span style="font-weight: bold;" class="mycode_b">Note:</span> I work with this while I am working with two job's and such, so this will not move forward in fast speed. Help is appreciated here. Let me know <img src="https://litdev.uk/mybb/images/smilies/smile.png" alt="Smile" title="Smile" class="smilie smilie_1" />]]></description>
			<content:encoded><![CDATA[Hi,<br />
<br />
This project (<a href="https://github.com/EkBass/SmallBasicOpenEditionDll/tree/master" target="_blank" rel="noopener" class="mycode_url">SmallBasic Open Edition</a>) is part of a larger whole, where the goal is to recreate <a href="https://smallbasic-publicwebsite.azurewebsites.net/" target="_blank" rel="noopener" class="mycode_url">Microsoft SmallBasic</a>, at least in its main features.<br />
<br />
The first phase of the project, which is exactly this, is to create the same classes as in SmallBasic: <span style="font-weight: bold;" class="mycode_b">Text</span>, <span style="font-weight: bold;" class="mycode_b">Math</span>, <span style="font-weight: bold;" class="mycode_b">GraphicsWindow</span>, and so on. The project is mostly complete, although types for variables, some small tests, and so on are still required.<br />
<br />
<span style="font-weight: bold;" class="mycode_b">Note:</span> The classes <span style="font-weight: bold;" class="mycode_b">Array</span>, <span style="font-weight: bold;" class="mycode_b">Flickr</span>, and <span style="font-weight: bold;" class="mycode_b">Dictionary</span> have not been created. <br />
<br />
<span style="font-weight: bold;" class="mycode_b">Array</span> is missing because I have not yet decided on the final way the future compiler will handle arrays. I have a couple of different solutions for this, but I haven’t had time to decide yet.  <br />
<br />
<span style="font-weight: bold;" class="mycode_b">Flickr</span> is missing because I am simply not very familiar with this service, and their API is completely unknown to me.  <br />
<br />
<span style="font-weight: bold;" class="mycode_b">Dictionary</span> is a class I’m not sure if I want to spend time on, at least not personally.<br />
<br />
Unlike the original SmallBasic, Open Edition converts SmallBasic code into the C# programming language and compiles it afterward. This brings significant advantages in terms of memory management, speed, and extensibility.<br />
<br />
Variables will function mostly the same way as in the original SmallBasic. This is made possible by C#’s <span style="font-weight: bold;" class="mycode_b">dynamic</span>. However, the idea is that variables will require a suffix of "&#36;" at the end of their names. Not only does this make the programs easier to compile, but I also believe it helps distinguish variables and makes coding a bit easier.<br />
<br />
The program that tokenizes and converts SmallBasic code into C# is also mostly done. However, at the moment, it's more like a pile of sticks rather than a well-designed and structured program, so its release will be more appropriate at a later time. <br />
<br />
Example SmallBasic program:<br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>' Example Smallbasic program<br />
x&#36; = 1<br />
y&#36; = 2<br />
c&#36; = "Foo"<br />
TextWindow.WriteLine(x&#36; + y&#36; + c&#36;)<br />
SayHello()<br />
Goto MyLabel:<br />
TextWindow.WriteLine("I'm never printed.")<br />
MyLabel:<br />
Program.End()<br />
Sub SayHello<br />
    TextWindow.WriteLine("Hello")<br />
EndSub</code></div></div><br />
Converted to C#:<br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>// Converted as C#<br />
namespace SmallBasicOpenEditionDll<br />
{<br />
    public static class SB_Program<br />
    {<br />
        // Declare dynamic variables (similar to Smallbasic's dynamic typing)<br />
        public static dynamic x = 1;<br />
        public static dynamic y = 2;<br />
        public static dynamic c = "Foo";<br />
        // Entry point of the program<br />
        public static void Main()<br />
        {<br />
            // Equivalent of TextWindow.WriteLine(x&#36; + y&#36; + c&#36;)<br />
            TextWindow.WriteLine(x + y + c);<br />
            // Call the method SayHello()<br />
            SayHello();<br />
            // This line will not be executed<br />
            Goto MyLabel:<br />
            TextWindow.WriteLine("I'm never printed.");<br />
            MyLabel:<br />
            Program.End();<br />
        }<br />
        // The equivalent of SmallBasic's subroutine 'SayHello'<br />
        public static void SayHello()<br />
        {<br />
            TextWindow.WriteLine("Hello");<br />
        }<br />
    }<br />
}</code></div></div><br />
<span style="font-weight: bold;" class="mycode_b">Note:</span> I work with this while I am working with two job's and such, so this will not move forward in fast speed. Help is appreciated here. Let me know <img src="https://litdev.uk/mybb/images/smilies/smile.png" alt="Smile" title="Smile" class="smilie smilie_1" />]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Updating SB]]></title>
			<link>https://litdev.uk/mybb/showthread.php?tid=127</link>
			<pubDate>Mon, 09 Sep 2024 12:31:18 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://litdev.uk/mybb/member.php?action=profile&uid=13">z-s</a>]]></dc:creator>
			<guid isPermaLink="false">https://litdev.uk/mybb/showthread.php?tid=127</guid>
			<description><![CDATA[Today I got an idea why someone can't help in updating SB.<br />
We have a community here so any good csharp developer can do this but not me.<br />
I could help in writing standard library for SB.<br />
Making it a high-level programing language.<br />
I have some goals that can be in SB<br />
Addition of function like struct new keywords.<br />
And large standard library seperate dll.<br />
Many csharp functionality.<br />
As I thought sb just use csc.exe to compile a small basic program after converting it to csharp am I right????.]]></description>
			<content:encoded><![CDATA[Today I got an idea why someone can't help in updating SB.<br />
We have a community here so any good csharp developer can do this but not me.<br />
I could help in writing standard library for SB.<br />
Making it a high-level programing language.<br />
I have some goals that can be in SB<br />
Addition of function like struct new keywords.<br />
And large standard library seperate dll.<br />
Many csharp functionality.<br />
As I thought sb just use csc.exe to compile a small basic program after converting it to csharp am I right????.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Sharp develop]]></title>
			<link>https://litdev.uk/mybb/showthread.php?tid=126</link>
			<pubDate>Fri, 06 Sep 2024 17:01:37 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://litdev.uk/mybb/member.php?action=profile&uid=13">z-s</a>]]></dc:creator>
			<guid isPermaLink="false">https://litdev.uk/mybb/showthread.php?tid=126</guid>
			<description><![CDATA[Hii I found sharp develop unofficial update <br />
<br />
<a href="https://github.com/mgeee35/SharpDevelop-5.2.1" target="_blank" rel="noopener" class="mycode_url">https://github.com/mgeee35/SharpDevelop-5.2.1</a><br />
<br />
I tried to build my extension and after compiling in ilspy it shows 4.8 fw]]></description>
			<content:encoded><![CDATA[Hii I found sharp develop unofficial update <br />
<br />
<a href="https://github.com/mgeee35/SharpDevelop-5.2.1" target="_blank" rel="noopener" class="mycode_url">https://github.com/mgeee35/SharpDevelop-5.2.1</a><br />
<br />
I tried to build my extension and after compiling in ilspy it shows 4.8 fw]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Getting started with c#]]></title>
			<link>https://litdev.uk/mybb/showthread.php?tid=119</link>
			<pubDate>Mon, 26 Aug 2024 16:33:04 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://litdev.uk/mybb/member.php?action=profile&uid=13">z-s</a>]]></dc:creator>
			<guid isPermaLink="false">https://litdev.uk/mybb/showthread.php?tid=119</guid>
			<description><![CDATA[I got an idea while learning cs should I post some thread here for graduate to cs from sb.<br />
So some beginner can also learn cs]]></description>
			<content:encoded><![CDATA[I got an idea while learning cs should I post some thread here for graduate to cs from sb.<br />
So some beginner can also learn cs]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Small Basic In Sharp Develop]]></title>
			<link>https://litdev.uk/mybb/showthread.php?tid=111</link>
			<pubDate>Thu, 25 Jul 2024 15:09:14 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://litdev.uk/mybb/member.php?action=profile&uid=13">z-s</a>]]></dc:creator>
			<guid isPermaLink="false">https://litdev.uk/mybb/showthread.php?tid=111</guid>
			<description><![CDATA[Hii Litdev<br />
Today I Tried To Download Small Basic Repo From Github.<br />
I Updated Its .csproj File As You Said Before. <br />
<blockquote class="mycode_quote"><cite><span> (05-03-2024, 11:16 AM)</span>litdev Wrote:  <a href="https://litdev.uk/mybb/showthread.php?pid=502#pid502" class="quick_jump"></a></cite>I did manage to get SharpDevelop to compile and run SB-Prime. <img src="https://litdev.uk/mybb/images/smilies/biggrin.png" alt="Big Grin" title="Big Grin" class="smilie smilie_4" /> <br />
<br />
1] Need to change csproj files as described before for ToolsVersion 4.0 and TargetFrameworkVersion 4.5.2</blockquote>But I Am Getting This Error Please Help.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://litdev.uk/mybb/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=112" target="_blank" title="">errorsd.PNG</a> (Size: 14.37 KB / Downloads: 3)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[Hii Litdev<br />
Today I Tried To Download Small Basic Repo From Github.<br />
I Updated Its .csproj File As You Said Before. <br />
<blockquote class="mycode_quote"><cite><span> (05-03-2024, 11:16 AM)</span>litdev Wrote:  <a href="https://litdev.uk/mybb/showthread.php?pid=502#pid502" class="quick_jump"></a></cite>I did manage to get SharpDevelop to compile and run SB-Prime. <img src="https://litdev.uk/mybb/images/smilies/biggrin.png" alt="Big Grin" title="Big Grin" class="smilie smilie_4" /> <br />
<br />
1] Need to change csproj files as described before for ToolsVersion 4.0 and TargetFrameworkVersion 4.5.2</blockquote>But I Am Getting This Error Please Help.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://litdev.uk/mybb/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=112" target="_blank" title="">errorsd.PNG</a> (Size: 14.37 KB / Downloads: 3)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Helpful YouTube videos (UCI-Interface for Chess-Engines)]]></title>
			<link>https://litdev.uk/mybb/showthread.php?tid=74</link>
			<pubDate>Wed, 22 May 2024 20:36:11 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://litdev.uk/mybb/member.php?action=profile&uid=3">Scout</a>]]></dc:creator>
			<guid isPermaLink="false">https://litdev.uk/mybb/showthread.php?tid=74</guid>
			<description><![CDATA[The discussion of the AI championship with a playing field and separate engines reminded me of the chess engine championships of the last few decades. The ranking is determined from countless games that the engines play against each other. This is done automatically via defined interfaces (e.g. UCI interface).<br />
My attempts to access this interface with Small Basic failed because I didn't know how Small Basic used the stdio interface.<br />
So I looked for a C# chess engine that was as simple as possible and then wrote a Small Basic program using the source code that could at least access the UCI interface.<br />
Searching on github I found the following video series that shows how an unknown interface can be accessed and operated using debug outputs.<br />
<br />
<a href="https://www.youtube.com/playlist?list=PL6vJSkTaZuBtTokp8-gnTsP39GCaRS3du" target="_blank" rel="noopener" class="mycode_url">https://www.youtube.com/playlist?list=PL6vJSkTaZuBtTokp8-gnTsP39GCaRS3du<br />
</a><br />
The video series consists of four episodes, of which I have completed the first one and the others will probably take some time.<br />
<br />
Definition UCI Interface: <a href="https://en.wikipedia.org/wiki/Universal_Chess_Interface" target="_blank" rel="noopener" class="mycode_url">https://en.wikipedia.org/wiki/Universal_Chess_Interface</a><br />
<br />
Chess program that can communicate with chess engines: <a href="https://cutechess.com/" target="_blank" rel="noopener" class="mycode_url">https://cutechess.com/</a><br />
<br />
<hr class="mycode_hr" />
Episode 1 : Hello World<br />
<hr class="mycode_hr" />
The program CS_UCI was written in Visual Studio 2017.<br />
It is a console application with the target framework .NET 4.5.2<br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>using System;<br />
using System.Collections.Generic;<br />
using System.Linq;<br />
using System.Text;<br />
using System.Threading.Tasks;<br />
<br />
namespace CS_UCI<br />
{<br />
    class Program<br />
    {<br />
   <br />
        static void Main(string[] args)<br />
        {<br />
            string[] Move = { "e7e5", "a7a6", "d7d6", "b7b5", "g8f6", "g7g6", "h7h5", "f8g7", "b8c6" };<br />
            int Movecount = 0;<br />
                <br />
            while (true)<br />
            {<br />
                //remove leading &amp; trailing whitecases and split using ' ' as delimiter<br />
                string[] tokens = Console.ReadLine().Trim().Split(' ');<br />
                //string   command = Console.ReadLine().Split(' ')[0];<br />
                switch (tokens [0])<br />
                {<br />
                    case "uci":<br />
                        Console.WriteLine("uciok");<br />
                        break;<br />
                    case "isready":<br />
                        Console.WriteLine("readyok");<br />
                        break;<br />
                    case "go":<br />
                        Console.WriteLine("bestmove "+ Move[Movecount]);<br />
                        // Console.WriteLine(Move[Movecount]);<br />
                        Movecount = Movecount + 1;<br />
                        if (Move.Length &lt;= Movecount)<br />
                            { Movecount = Movecount - 1 ; }<br />
                        break;<br />
                    case "position":<br />
                        // Board;<br />
                        break;<br />
                    default:<br />
                        Console.WriteLine("info " +  tokens[0].ToString());<br />
                        break;<br />
                }<br />
            }<br />
        }<br />
    }<br />
}</code></div></div>After starting Cute Chess, the exe file must be defined as the engine via Settings.<br />
<br />
Using New, you can choose any engine for white (stockfish, Dragon, etc.) or you can play yourself.<br />
<br />
CS_UCI can now be selected for black.<br />
<br />
The dummy moves provided for black should be enough for a few moves.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://litdev.uk/mybb/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=70" target="_blank" title="">CS_UCI Level 1.JPG</a> (Size: 198.01 KB / Downloads: 2)
<!-- end: postbit_attachments_attachment --><br />
The corresponding Small Basic program is in Thread: <a href="https://litdev.uk/mybb/showthread.php?tid=75" target="_blank" rel="noopener" class="mycode_url">https://litdev.uk/mybb/showthread.php?tid=75</a>]]></description>
			<content:encoded><![CDATA[The discussion of the AI championship with a playing field and separate engines reminded me of the chess engine championships of the last few decades. The ranking is determined from countless games that the engines play against each other. This is done automatically via defined interfaces (e.g. UCI interface).<br />
My attempts to access this interface with Small Basic failed because I didn't know how Small Basic used the stdio interface.<br />
So I looked for a C# chess engine that was as simple as possible and then wrote a Small Basic program using the source code that could at least access the UCI interface.<br />
Searching on github I found the following video series that shows how an unknown interface can be accessed and operated using debug outputs.<br />
<br />
<a href="https://www.youtube.com/playlist?list=PL6vJSkTaZuBtTokp8-gnTsP39GCaRS3du" target="_blank" rel="noopener" class="mycode_url">https://www.youtube.com/playlist?list=PL6vJSkTaZuBtTokp8-gnTsP39GCaRS3du<br />
</a><br />
The video series consists of four episodes, of which I have completed the first one and the others will probably take some time.<br />
<br />
Definition UCI Interface: <a href="https://en.wikipedia.org/wiki/Universal_Chess_Interface" target="_blank" rel="noopener" class="mycode_url">https://en.wikipedia.org/wiki/Universal_Chess_Interface</a><br />
<br />
Chess program that can communicate with chess engines: <a href="https://cutechess.com/" target="_blank" rel="noopener" class="mycode_url">https://cutechess.com/</a><br />
<br />
<hr class="mycode_hr" />
Episode 1 : Hello World<br />
<hr class="mycode_hr" />
The program CS_UCI was written in Visual Studio 2017.<br />
It is a console application with the target framework .NET 4.5.2<br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>using System;<br />
using System.Collections.Generic;<br />
using System.Linq;<br />
using System.Text;<br />
using System.Threading.Tasks;<br />
<br />
namespace CS_UCI<br />
{<br />
    class Program<br />
    {<br />
   <br />
        static void Main(string[] args)<br />
        {<br />
            string[] Move = { "e7e5", "a7a6", "d7d6", "b7b5", "g8f6", "g7g6", "h7h5", "f8g7", "b8c6" };<br />
            int Movecount = 0;<br />
                <br />
            while (true)<br />
            {<br />
                //remove leading &amp; trailing whitecases and split using ' ' as delimiter<br />
                string[] tokens = Console.ReadLine().Trim().Split(' ');<br />
                //string   command = Console.ReadLine().Split(' ')[0];<br />
                switch (tokens [0])<br />
                {<br />
                    case "uci":<br />
                        Console.WriteLine("uciok");<br />
                        break;<br />
                    case "isready":<br />
                        Console.WriteLine("readyok");<br />
                        break;<br />
                    case "go":<br />
                        Console.WriteLine("bestmove "+ Move[Movecount]);<br />
                        // Console.WriteLine(Move[Movecount]);<br />
                        Movecount = Movecount + 1;<br />
                        if (Move.Length &lt;= Movecount)<br />
                            { Movecount = Movecount - 1 ; }<br />
                        break;<br />
                    case "position":<br />
                        // Board;<br />
                        break;<br />
                    default:<br />
                        Console.WriteLine("info " +  tokens[0].ToString());<br />
                        break;<br />
                }<br />
            }<br />
        }<br />
    }<br />
}</code></div></div>After starting Cute Chess, the exe file must be defined as the engine via Settings.<br />
<br />
Using New, you can choose any engine for white (stockfish, Dragon, etc.) or you can play yourself.<br />
<br />
CS_UCI can now be selected for black.<br />
<br />
The dummy moves provided for black should be enough for a few moves.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://litdev.uk/mybb/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=70" target="_blank" title="">CS_UCI Level 1.JPG</a> (Size: 198.01 KB / Downloads: 2)
<!-- end: postbit_attachments_attachment --><br />
The corresponding Small Basic program is in Thread: <a href="https://litdev.uk/mybb/showthread.php?tid=75" target="_blank" rel="noopener" class="mycode_url">https://litdev.uk/mybb/showthread.php?tid=75</a>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Debugging with dnSpy]]></title>
			<link>https://litdev.uk/mybb/showthread.php?tid=73</link>
			<pubDate>Mon, 20 May 2024 14:46:09 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://litdev.uk/mybb/member.php?action=profile&uid=1">litdev</a>]]></dc:creator>
			<guid isPermaLink="false">https://litdev.uk/mybb/showthread.php?tid=73</guid>
			<description><![CDATA[I have been playing with dnSpy and find it very useful for debugging Small Basic programs.  You can get it from <a href="https://github.com/dnSpy/dnSpy/releases" target="_blank" rel="noopener" class="mycode_url">https://github.com/dnSpy/dnSpy/releases</a> - (download dnSpy-net-win64.zip, unblock, extract from zip and run dnSpy.exe, then File-&gt;Open... a compiled Small Basic exe and get a professional debugging experience!)<br />
<br />
It allows me to debug into SmallBasicLibrary.dll as well as extensions like LitDev.dll.  This is very useful for me to test things, but maybe also for Small Basic users to see how things are done in extension code.]]></description>
			<content:encoded><![CDATA[I have been playing with dnSpy and find it very useful for debugging Small Basic programs.  You can get it from <a href="https://github.com/dnSpy/dnSpy/releases" target="_blank" rel="noopener" class="mycode_url">https://github.com/dnSpy/dnSpy/releases</a> - (download dnSpy-net-win64.zip, unblock, extract from zip and run dnSpy.exe, then File-&gt;Open... a compiled Small Basic exe and get a professional debugging experience!)<br />
<br />
It allows me to debug into SmallBasicLibrary.dll as well as extensions like LitDev.dll.  This is very useful for me to test things, but maybe also for Small Basic users to see how things are done in extension code.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Old Version of MSBuild in SharpDevelop]]></title>
			<link>https://litdev.uk/mybb/showthread.php?tid=62</link>
			<pubDate>Fri, 03 May 2024 03:47:02 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://litdev.uk/mybb/member.php?action=profile&uid=13">z-s</a>]]></dc:creator>
			<guid isPermaLink="false">https://litdev.uk/mybb/showthread.php?tid=62</guid>
			<description><![CDATA[May Be Any One Know This.<br />
You Can Get Intelnise In <br />
Sharp Develop By Installing Developer Pack Of .Net Framework.<br />
View A Html In Source Directory Of Sharp Develop Named Dependences.html<br />
<hr class="mycode_hr" />
LitDev I Have A Question ?<br />
I Tried Using SB-Prime , SVB , SB , LD Extension Source Code In Sharp Develop When We Open It , Shows Some Error In Solution File Saying Old Version OF MSBuild.]]></description>
			<content:encoded><![CDATA[May Be Any One Know This.<br />
You Can Get Intelnise In <br />
Sharp Develop By Installing Developer Pack Of .Net Framework.<br />
View A Html In Source Directory Of Sharp Develop Named Dependences.html<br />
<hr class="mycode_hr" />
LitDev I Have A Question ?<br />
I Tried Using SB-Prime , SVB , SB , LD Extension Source Code In Sharp Develop When We Open It , Shows Some Error In Solution File Saying Old Version OF MSBuild.]]></content:encoded>
		</item>
	</channel>
</rss>