Optional or no line numbers STOS

STOS programming section.
User avatar
danboid
Posts: 126
Joined: 18 Jul 2024 19:25

Optional or no line numbers STOS

Post by danboid »

It seems that STOS is still the best solution for writing sprite based games for the ST(e) in a relatively easy manner compared to say Atari Games Tools or going all out M68K like you're supposed to.

I've had a quick flick through one of the STOS manuals and I see STOS uses the dreaded line numbers. Line numbers have put me off using several forms of BASIC and STOS is no exception. I'm sure most would agree that having to number lines is something that not everyone is a fan of yet it isn't required in all forms of BASIC. QuickBASIC and Blitz BASIC are two BASIC dialects, for example that don't require line numbers

I also see that exxos has the source code for STOS and that he and Petari have already released at least one update to STOS so a new revision isn't totally out of the question?

Could it be possible to modify STOS so that we could retain most of its features, commands and extensions but we don't have to prefix every line with a number? I expect making this change would break nearly all backwards compatibility with older STOS code but that wouldn't bother me as I don't have any old STOS code that I want to run or re-use.

Maybe this is already already a thing and I just haven't come across it?

I'm probably exaggerating the inconvenience of having to use line numbers but its a very real put off for me so a line number free STOS would be a major incentive and elimination of a downer in my books.
The 'Uzebox Omega is a fully open source games console that you can build in a weekend, even with no previous electronics experience:

https://uzebox.org/wiki/Omega
User avatar
danboid
Posts: 126
Joined: 18 Jul 2024 19:25

Re: Optional or no line numbers STOS

Post by danboid »

I've just read this:

viewtopic.php?t=7094

So that gives me the impression that exxos somehow got the STOS source before it was publicly open sourced? Has it been open sourced yet?
The 'Uzebox Omega is a fully open source games console that you can build in a weekend, even with no previous electronics experience:

https://uzebox.org/wiki/Omega
User avatar
exxos
Site Admin
Site Admin
Posts: 28385
Joined: 16 Aug 2017 23:19
Location: UK

Re: Optional or no line numbers STOS

Post by exxos »

STOS had been opened sourced for a long time..

There's new PC based STOS but I don't remember much about it and never used it. Think it was called AOZ STUDIO.

I don't have issues with line numbers anyway personally
User avatar
Gargoyle
Posts: 39
Joined: 28 Aug 2017 00:04

Re: Optional or no line numbers STOS

Post by Gargoyle »

danboid wrote: 10 Jul 2025 22:46 It seems that STOS is still the best solution for writing sprite based games for the ST(e) in a relatively easy manner compared to say Atari Games Tools or going all out M68K like you're supposed to.

I've had a quick flick through one of the STOS manuals and I see STOS uses the dreaded line numbers. Line numbers have put me off using several forms of BASIC and STOS is no exception. I'm sure most would agree that having to number lines is something that not everyone is a fan of yet it isn't required in all forms of BASIC. QuickBASIC and Blitz BASIC are two BASIC dialects, for example that don't require line numbers

I also see that exxos has the source code for STOS and that he and Petari have already released at least one update to STOS so a new revision isn't totally out of the question?

Could it be possible to modify STOS so that we could retain most of its features, commands and extensions but we don't have to prefix every line with a number? I expect making this change would break nearly all backwards compatibility with older STOS code but that wouldn't bother me as I don't have any old STOS code that I want to run or re-use.

Maybe this is already already a thing and I just haven't come across it?

I'm probably exaggerating the inconvenience of having to use line numbers but its a very real put off for me so a line number free STOS would be a major incentive and elimination of a downer in my books.
Several years back I set up the STOS Coders Facebook group with Francois Lionet (the original author of STOS), then Neil Halliday later became an additional admin. You can join our group to get any help too.

Neil wrote the STOS VSC extension for Visual Studio Code, which allows you to code without line numbers. You can use labels instead, also lots of quality of life improvements like colour coding, tabbing indents, includes, etc.

You can find out more info at our website Neil put together:
https://stoscoders.com/visual-studio-code

I'd avoid AOZ Studio these days for anything related to STOS. The focus was really only ever on AMOS and the Amiga when it came to older language support. It's direction has changed now, focussing on AI written code from what I recall.

Francois is working on STAM now instead, in which we will be able to write in STOS, AMOS 1.3, AMOS Pro and additional languages also. This time it will be online based and he is starting with STOS first, much to our delight. You can find a presentation video on YouTube:


Hopefully this might provide you with what you were looking for! :)
User avatar
danboid
Posts: 126
Joined: 18 Jul 2024 19:25

Re: Optional or no line numbers STOS

Post by danboid »

Hi Gargoyle

Every time I hear an update from Francois, he's changed the name of his neo AMOS/STOS thing.

Personally, I'd prefer he focus on improving STOS, make it a better experience on Atari STe, Falcon and Raven and then maybe bring that to the browser and modern platforms somehow.

I say that because the Amiga community has Scorpion on the closed side and Blitz Basic is open source. It seems that the Atari scene doesn't have direct analogs, STOS is the nearest we have to a Blitz Basic for Atari. We do have Atari Game Tools on the open source C/C++ side, which is promising but it is very much WIP with missing features, incomplete docs and missing or unwritten tutorials. I'd like to see Francois concentrate on making a modern STOS to compete with Blitz Basic and AmiBlitz because AGT isn't that friendly for beginner coders.

If he's trying to compete in the world of modern games engines for modern browsers and modern platforms he's up against the likes of the free and open source godot engine which has thousands of active developers and there is no way one man can catch up or compete with that. Kids are better off learning python or a python alike language like godot than BASIC IMO. BASIC is a more retro language, python gets used all over, especially in AI as the most notable trend ever.

I suppose its an unrealistic wish unless Francois was an Atari die hard because there's probably not enough active Atari users for him to hope to make money or reach a large audience with his neo STOS if he was to focus on a better Atari native STOS experience.

The VScode extension is cool but I don't run vscode or anything MS. I mainly use vim and Kate but I could try replicating the key bits of that extension in Kate. I'd like to see line numbers made optional within STOS itself, no scripts or extensions required.
The 'Uzebox Omega is a fully open source games console that you can build in a weekend, even with no previous electronics experience:

https://uzebox.org/wiki/Omega
User avatar
Gargoyle
Posts: 39
Joined: 28 Aug 2017 00:04

Re: Optional or no line numbers STOS

Post by Gargoyle »

danboid wrote: 11 Jul 2025 14:00 Hi Gargoyle

Every time I hear an update from Francois, he's changed the name of his neo AMOS/STOS thing.

Personally, I'd prefer he focus on improving STOS, make it a better experience on Atari STe, Falcon and Raven and then maybe bring that to the browser and modern platforms somehow.

I say that because the Amiga community has Scorpion on the closed side and Blitz Basic is open source. It seems that the Atari scene doesn't have direct analogs, STOS is the nearest we have to a Blitz Basic for Atari. We do have Atari Game Tools on the open source C/C++ side, which is promising but it is very much WIP with missing features, incomplete docs and missing or unwritten tutorials. I'd like to see Francois concentrate on making a modern STOS to compete with Blitz Basic and AmiBlitz because AGT isn't that friendly for beginner coders.

If he's trying to compete in the world of modern games engines for modern browsers and modern platforms he's up against the likes of the free and open source godot engine which has thousands of active developers and there is no way one man can catch up or compete with that. Kids are better off learning python or a python alike language like godot than BASIC IMO. BASIC is a more retro language, python gets used all over, especially in AI as the most notable trend ever.

I suppose its an unrealistic wish unless Francois was an Atari die hard because there's probably not enough active Atari users for him to hope to make money or reach a large audience with his neo STOS if he was to focus on a better Atari native STOS experience.

The VScode extension is cool but I don't run vscode or anything MS. I mainly use vim and Kate but I could try replicating the key bits of that extension in Kate. I'd like to see line numbers made optional within STOS itself, no scripts or extensions required.
Francois is highly unlikely to update STOS itself now, currently he is more focussed on the preservation of his older languages in an online format.

I agree it would be nice to have something similar to Scorpion engine for the ST. AGT is promising, but still incomplete in terms of many beginners being able to get up and running.

That said, I have found AGT's tile cutter tool very useful to convert a PNG image into a map file, along with a set of NEO images of the tileset required to display it. I then use CSV2STOS (which I am still updating, not sure when I will have v1.02 ready though) to convert the map file for use in STOS.

We would require a very talented individual with the time required, and the drive needed to bring STOS itself into the non line number world. I have heard one suggestion, which is to actually backwards port AMOS to the Atari platform, at least as much as is feasibly possible for each machine, ie. ST, STe, Falcon. Then like you say Raven now too, which is looking really good.

Your choice of OS does make things trickier. If you know how to replicate the functioning for your target platform you could try that. Also, many years back when the STOS Club existed, Aaron Fothergill (pretty sure it was him) wrote a program to allow users to code without line numbers. If you look through all of the issues of the STOS Club newsletters, you will eventually find the source there required to create that utility. You might be able to improve it over time too. Look in the documents section of the STOS Time Tunnel for the newsletters:
https://exxosforum.co.uk/atari/STOS_index.htm

You are right though, there are a lot of existing choices out there now for the next generations to use. A lot of competition. I've heard similar things mentioned about using Python or Godot, or Game Maker also. Then there's AppGameKit which I tried for a while. Just a sea of choices!
User avatar
danboid
Posts: 126
Joined: 18 Jul 2024 19:25

Re: Optional or no line numbers STOS

Post by danboid »

Gargoyle wrote: 11 Jul 2025 19:54 Also, many years back when the STOS Club existed, Aaron Fothergill (pretty sure it was him) wrote a program to allow users to code without line numbers. If you look through all of the issues of the STOS Club newsletters, you will eventually find the source there required to create that utility. You might be able to improve it over time too. Look in the documents section of the STOS Time Tunnel for the newsletters:
https://exxosforum.co.uk/atari/STOS_index.htm
That's interesting! It will be great if we can find that. If it works it should be included with the current STOS zip as standard if its only a small program.
The 'Uzebox Omega is a fully open source games console that you can build in a weekend, even with no previous electronics experience:

https://uzebox.org/wiki/Omega
User avatar
Gargoyle
Posts: 39
Joined: 28 Aug 2017 00:04

Re: Optional or no line numbers STOS

Post by Gargoyle »

danboid wrote: 11 Jul 2025 19:59
Gargoyle wrote: 11 Jul 2025 19:54 Also, many years back when the STOS Club existed, Aaron Fothergill (pretty sure it was him) wrote a program to allow users to code without line numbers. If you look through all of the issues of the STOS Club newsletters, you will eventually find the source there required to create that utility. You might be able to improve it over time too. Look in the documents section of the STOS Time Tunnel for the newsletters:
https://exxosforum.co.uk/atari/STOS_index.htm
That's interesting! It will be great if we can find that. If it works it should be included with the current STOS zip as standard if its only a small program.
Yes I was very intrigued when I found out about this! I have to say, that once I started using the VSC extension BTW, my workflow increased by tenfold being able to write everything in so much more structured a manner. Also the colour coding is very nice to have, everything is just so much easier to read. It allowed me to start writing much more complex programs, without having to renumber lines which can be very time consuming.
User avatar
dml
Posts: 848
Joined: 15 Nov 2017 22:11

Re: Optional or no line numbers STOS

Post by dml »

danboid wrote: 11 Jul 2025 14:00 We do have Atari Game Tools on the open source C/C++ side, which is promising but it is very much WIP with missing features, incomplete docs and missing or unwritten tutorials.
I see this stated often but it is really missing the point. AGT is a library & toolchain which will never really be finished - rather just updated with things from time to time. I published it as source so users would not get stuck with some limitation they might run into half way into their project.

I made more available in the form of sample code, fully working demos & tutorial walkthrough than most libraries you will find on github. It is plenty to bootstrap experiments and begin work on a game, as has been shown by at least 2 quite advanced projects so far. More will go up relatively soon.

Sure - it is not going to be *easy* but that's the story for all game development. It's not easy. You'll hit things that are difficult to solve and sometimes you might need to get help. Having an easy on-ramp won't help when you're half way into your game and you are hitting some fundamental barrier.

And, yes - AGT is not aimed at beginners to programming. It is aimed at hobby-level programmers or above who know at least some 'C' language and prepared to deal with a modern C compiler & setup/scripts and environment annoyances involved with that. It's never pretty but this is mostly a one-time cost. After that, you can already do lots of things, with not very much code...


I think STOS is great and I got a lot out of it in my earlier ST days. It is still among the best of the on-ramps for getting started in this kind of thing. For anyone starting out coding on ST, I would definitely recommend it as a first stop. I also remember it being very handy for making quick tools to generate tables or try out some experiments before coding them up in something else. I'm happy to see it's still alive and new things are happening with it!

When I see comments about AGT being unfinished though, it seems that potential users may avoid it for exactly the wrong reason.
User avatar
danboid
Posts: 126
Joined: 18 Jul 2024 19:25

Re: Optional or no line numbers STOS

Post by danboid »

Thanks DML! Sorry if you saw it as a slight calling AGT unfinished but do you think its fair to say that the wiki and docs can't really be called complete? That was my main point, that the AGT docs aren't going to be much use for someone new to C & C++ game dev. I'm pretty sure we agree on this.
The 'Uzebox Omega is a fully open source games console that you can build in a weekend, even with no previous electronics experience:

https://uzebox.org/wiki/Omega

Return to “STOS”

Who is online

Users browsing this forum: ClaudeBot and 19 guests