We would like to build a community for Small Basic programmers of any age who like to code. Everyone from total beginner to guru is welcome. Click here to register and share your programming journey!


Welcome, Guest
You have to register before you can post on our site.

Username
  

Password
  





Search Forums

(Advanced Search)

Forum Statistics
» Members: 837
» Latest member: Ascentszx
» Forum threads: 218
» Forum posts: 2,253

Full Statistics

Online Users
There are currently 37 online users.
» 1 Member(s) | 34 Guest(s)
Bing, Applebot, KennethFem

Latest Threads
ZScript
Forum: Discussion
Last Post: z-s
01-22-2026, 03:31 AM
» Replies: 0
» Views: 24
I think that no more Smal...
Forum: Discussion
Last Post: eddylo
01-20-2026, 11:02 PM
» Replies: 0
» Views: 21
Small Basic Coder-A New G...
Forum: Discussion
Last Post: AbsoluteBeginner
01-17-2026, 07:57 PM
» Replies: 1
» Views: 416
ZS Small Basic Coder GPT.
Forum: Discussion
Last Post: z-s
01-13-2026, 03:32 AM
» Replies: 4
» Views: 132
3D maze in browser contro...
Forum: Discussion
Last Post: stevantosic
01-08-2026, 12:51 PM
» Replies: 128
» Views: 33,311
ZS Extension.
Forum: Extensions
Last Post: AbsoluteBeginner
01-04-2026, 02:50 PM
» Replies: 109
» Views: 28,285
Happy New Year!
Forum: Discussion
Last Post: AbsoluteBeginner
12-31-2025, 10:08 AM
» Replies: 0
» Views: 71
Six different 8-bit emula...
Forum: Discussion
Last Post: stevantosic
12-28-2025, 06:02 PM
» Replies: 2
» Views: 87
Challenge-Command Line GW
Forum: Challenges
Last Post: WhTurner
12-22-2025, 06:24 PM
» Replies: 7
» Views: 2,263
Google Search Terminal SB...
Forum: Standard Small Basic
Last Post: z-s
12-17-2025, 09:09 AM
» Replies: 1
» Views: 337

 
  SmallBasic Open Edition
Posted by: KristianVirtanen - 10-13-2024, 04:41 PM - Forum: C# Moving from Small Basic - Replies (21)

Hi,

This project (SmallBasic Open Edition) is part of a larger whole, where the goal is to recreate Microsoft SmallBasic, at least in its main features.

The first phase of the project, which is exactly this, is to create the same classes as in SmallBasic: Text, Math, GraphicsWindow, and so on. The project is mostly complete, although types for variables, some small tests, and so on are still required.

Note: The classes Array, Flickr, and Dictionary have not been created.

Array 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. 

Flickr is missing because I am simply not very familiar with this service, and their API is completely unknown to me. 

Dictionary is a class I’m not sure if I want to spend time on, at least not personally.

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.

Variables will function mostly the same way as in the original SmallBasic. This is made possible by C#’s dynamic. However, the idea is that variables will require a suffix of "$" 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.

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.

Example SmallBasic program:

Code:
' Example Smallbasic program
x$ = 1
y$ = 2
c$ = "Foo"
TextWindow.WriteLine(x$ + y$ + c$)
SayHello()
Goto MyLabel:
TextWindow.WriteLine("I'm never printed.")
MyLabel:
Program.End()
Sub SayHello
    TextWindow.WriteLine("Hello")
EndSub

Converted to C#:

Code:
// Converted as C#
namespace SmallBasicOpenEditionDll
{
    public static class SB_Program
    {
        // Declare dynamic variables (similar to Smallbasic's dynamic typing)
        public static dynamic x = 1;
        public static dynamic y = 2;
        public static dynamic c = "Foo";
        // Entry point of the program
        public static void Main()
        {
            // Equivalent of TextWindow.WriteLine(x$ + y$ + c$)
            TextWindow.WriteLine(x + y + c);
            // Call the method SayHello()
            SayHello();
            // This line will not be executed
            Goto MyLabel:
            TextWindow.WriteLine("I'm never printed.");
            MyLabel:
            Program.End();
        }
        // The equivalent of SmallBasic's subroutine 'SayHello'
        public static void SayHello()
        {
            TextWindow.WriteLine("Hello");
        }
    }
}

Note: 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 Smile

Print this item

  Training program for SB-Neuron.
Posted by: AbsoluteBeginner - 10-10-2024, 03:52 PM - Forum: Discussion - Replies (14)

(translated by Google translator)

Hi all.  Shy

So, we have found out that the quality of the responses that a neuron gives in response to input data is determined by the set of weights of the neuron's inputs and the shape of the activation function.

Almost always we hear that during training a set of weights for the neuron inputs is configured.
We know that before training we can choose the type of activation function for a neuron.

But our forum will not be worthy of the proud name "Small Basic" if we do not try to create such a training program that will SIMULTANEOUSLY configure BOTH the input weights of the SB-Neuron and the shape of its activation function.  Cool

Let's do it, gentlemen!..

Print this item

  LDGraph.AddSeriesPoints(). Point size.
Posted by: AbsoluteBeginner - 10-02-2024, 09:20 PM - Forum: Extensions - Replies (2)

Dear LitDev,

if possible, please add the ability to set the diameter of the Point in the series that is created.  Angel

In practice, it turned out that this option is very necessary.

Thank you in advance and sorry for disturbing you.  Blush

Print this item

  LDController
Posted by: GBHalford - 10-01-2024, 05:35 AM - Forum: Extensions - Replies (12)

Hi folks,  can anyone help me with some issues with the LDController actions ?
I have a generic USB SNES controller.
From the Windows Game Controller settings and properties, I can see that all the buttons are registering correctly, and continue to register whilst held down.

I have SlimDX runtime for .NET 4.0 installed .

In SB, using the LDController.Buttons query, the array returned is completely spasmodic.  I have the following code in a While ("True") loop...
  LDButtons = LDController.Buttons(1)
  GraphicsWindow.Title = LDButtons

E.g. I press button 1 and hold it. For a few seconds there is no response, then Button 1 may register as "True" for a brief moment, and then return to "False" almost instantly.
All other buttons exhibit similar behaviour. Sometimes a button may not register "True" at all while being held down, even though the Controller settings show that the button is depressed.


Here's what the array looks like for a brief period while I am holding Button 1 down... Notice that it is registered as "True" for 2 loop passes.
1=False;2=False;3=False;4=False;5=False;6=False;7=False;8=False;9=False;10=False;
1=False;2=False;3=False;4=False;5=False;6=False;7=False;8=False;9=False;10=False;
1=True;2=False;3=False;4=False;5=False;6=False;7=False;8=False;9=False;10=False;
1=False;2=False;3=False;4=False;5=False;6=False;7=False;8=False;9=False;10=False;
1=False;2=False;3=False;4=False;5=False;6=False;7=False;8=False;9=False;10=False;
1=False;2=False;3=False;4=False;5=False;6=False;7=False;8=False;9=False;10=False;
1=False;2=False;3=False;4=False;5=False;6=False;7=False;8=False;9=False;10=False;
1=True;2=False;3=False;4=False;5=False;6=False;7=False;8=False;9=False;10=False;
1=False;2=False;3=False;4=False;5=False;6=False;7=False;8=False;9=False;10=False;
1=False;2=False;3=False;4=False;5=False;6=False;7=False;8=False;9=False;10=False;

Any help to resolve this so I can get a true reading of current buttons depressed will be much appreciated.

regards,  Gordon

Print this item

  Small basic feature.
Posted by: z-s - 09-28-2024, 05:33 AM - Forum: Discussion - Replies (3)

To make small basic popular I take the challenge to participate in many online jams with small basic who is ready I will start posting links.


This are starting after some time.

https://itch.io/jam/boss-rush-jam-2025

https://itch.io/jam/game-off-2024

Starting in 18 days: https://itch.io/jam/scream-jam-2024

Starting in 2 days: https://itch.io/jam/speedjam6

While I get little time for coding I to use half of that on my extension.
But I saw some people in this form specially Absolutebeginner I saw your program so much lines of codes so we could participate.
I will try my best

End in 13 days: https://itch.io/jam/1-bit-jam-4

End in 24 days: https://itch.io/jam/hawktoberhorrors2024

Print this item

  Challenge 7 - Snap
Posted by: litdev - 09-25-2024, 09:15 AM - Forum: Challenges - Replies (1)

Make a 2 player 'Snap' game - first player to press their key when 2 of the same are shown, could be shape, colour, size, image or a combination.

Print this item

Wink Creation of SB-Neuron. Ours. Branded.(v2)
Posted by: AbsoluteBeginner - 09-23-2024, 07:45 AM - Forum: Discussion - Replies (106)

(translated by Google Translate)

Hello everyone. Smile 
I accidentally realized that there is a lot of room for fun and creativity in the topic of computer neurons and neural networks.
I propose to make this discussion thread where we can have fun learning old things and creating new ones.

Good luck to everyone.


(translated by Google Translate)

I don't know what projects you are doing in Small Basic right now, but now it's my turn to get back into neural networks.  Cool
However, the ANN extension will not be used here.

In order to easily and correctly use the ANN extension, I will first create a demo program that will allow us to visually observe how a neural network is trained.
I hope that when we see all this, we will be able to understand it all well.
And when we understand it all well, we will be able to easily use ANN neural networks in our SB projects.

(because if this continues, then my e-sportsmen in the games "AI Snake" and "Retro Football" will become champions of the SB championship this year, without even meeting a single opponent)

Print this item

  Voice recognition?
Posted by: Yumda - 09-19-2024, 05:33 AM - Forum: Extensions - Replies (23)

Hi there:

I am trying to write a simple program that can help my father learn to pronounce English better, specifically it will prompt him to pronounce a word and if not recognized then it will not move on to the next word, anyone know of any extensions that can help with voice recognitions for small basics? or any ideas how to go about it another way?

I know it is a big ask, but just hoping if anyone has any ideas.

Print this item

  Callenge 6 - Draw conics
Posted by: litdev - 09-14-2024, 09:22 AM - Forum: Challenges - Replies (10)

Draw a circle, ellipse, parabola and hyperbola - Wikipedia is a good source for more info.

Print this item

  Updating SB
Posted by: z-s - 09-09-2024, 12:31 PM - Forum: C# Moving from Small Basic - Replies (2)

Today I got an idea why someone can't help in updating SB.
We have a community here so any good csharp developer can do this but not me.
I could help in writing standard library for SB.
Making it a high-level programing language.
I have some goals that can be in SB
Addition of function like struct new keywords.
And large standard library seperate dll.
Many csharp functionality.
As I thought sb just use csc.exe to compile a small basic program after converting it to csharp am I right????.

Print this item