I'm looking for a S*BASIC app, possibly by Tim Swenson!

Anything QL Software or Programming Related.
User avatar
NormanDunbar
Forum Moderator
Posts: 2482
Joined: Tue Dec 14, 2010 9:04 am
Location: Buckie, Scotland
Contact:

Re: I'm looking for a S*BASIC app, possibly by Tim Swenson!

Post by NormanDunbar »

Thanks Tim.

I know I've said it before, and no doubt I will again, but I love this software. I only wish I'd tried it out much much sooner!


Cheers,
Norm.


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
User avatar
NormanDunbar
Forum Moderator
Posts: 2482
Joined: Tue Dec 14, 2010 9:04 am
Location: Buckie, Scotland
Contact:

Re: I'm looking for a S*BASIC app, possibly by Tim Swenson!

Post by NormanDunbar »

Here we are folks, I've created a GitHub repository, with Tim's blessings, and uploaded versions 2.7.2 (Tim's most recent version), as well as my changes for versions 2.7.2b, 2.7.2c and 2.7.2d.

The URL is https://github.com/SinclairQL/StructuredSuperBasic and the various executable files are at https://github.com/SinclairQL/Structure ... c/releases.

Please note, the ssb272x.zip files contain only the executable and the docs. They have been created on a QL so there should be no problems with headres, unless you extract them on a PC or laptop, obviously. If you want the sources, there are a couple of options in each release for the download file format.


Cheers,
Norm.


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
User avatar
dilwyn
Mr QL
Posts: 3090
Joined: Wed Dec 01, 2010 10:39 pm

Re: I'm looking for a S*BASIC app, possibly by Tim Swenson!

Post by dilwyn »

Thank you Norman.

I used Structured SuperBASIC (SSB) in anger for the first time to write QLirc, as that was what Tim had used to write the first version. It's the only time I've ever used SSB for a project of any great size that's ever been released out n the wild. I wish I'd had SSB to use when I wrote larger programs like Launchpad and Page Designer 2 years ago.


Derek_Stewart
Font of All Knowledge
Posts: 4727
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: I'm looking for a S*BASIC app, possibly by Tim Swenson!

Post by Derek_Stewart »

Hi,

I used SSB when Tim released it, it was a brilliant concept and made programming on the QL really easy.

I did struggle with MicroEmacs, but I use it it with SSB most the time.

I would like to give Tim a vote of thanks for such an excellent application.


Regards,

Derek
User avatar
NormanDunbar
Forum Moderator
Posts: 2482
Joined: Tue Dec 14, 2010 9:04 am
Location: Buckie, Scotland
Contact:

Re: I'm looking for a S*BASIC app, possibly by Tim Swenson!

Post by NormanDunbar »

Derek_Stewart wrote:I would like to give Tim a vote of thanks for such an excellent application.
It's a shame we can only give him a single vote of thanks each! All these years I've been writing S*BASIC code and having to mess with renumbering and huge gaps between the line numbers "just in case". And as for moving stuff around to get a better layout, let's not even go there!

I'm currently, between walking the dog, writing another Arduino book, and Mrs Dunbar's orders (!), working on ssb272e. I've amended Tim's code to use "END FOR" instead of "NEXT" where appropriate, given recent posts on this topic, plus tidying up some of the repetitive code.

I have proposals:

1. Because I forgot what I'd read in the manual :( , I thought that SSBINPUT and SSBOUTPUT were the input and output file names, not just the extensions and this caused me no end of problems! My fault obviously. Does anyone have any objections to me renaming the environment variables to, perhaps, SSBINPUT_EXT and SSBOUTPUT_EXT? I might also change some of the others to make the names a bit more meaningful, unless anyone objects strongly.

2. I would like to allow a filename to be passed on the command line, with an "@" prefix as the first character. If this is found, then the filename will define all the parameters required for a compilation, including input and output files, overwrite and such like.

3. At the moment, the ssb272_ssb input file(s) use RAM1_ for all the #INCLUDE files. I think it would be a good idea to use the DEV_ device, say DEV7_ because SMSQ uses DEV8_ :D, and when we want to run a compile, we can define DEV7_ to point anywhere we like on our own system without it having to be always RAM1_.

4. Language! As a Brit, it's highly unlikely that I'll ever have the skills to use a different language. So, for me, a version with only the English text is fine, but it seems a shame that all the other languages are in the source and compiled code, taking up space and RAM, only to never be used. I'm attempting to think of a way in which the source can be compiled with a selected language and only be built with that language, or maybe more than one for skilled people like Dilwyn, who has the ability to execute programs in English and Welsh!

Any objections? Thoughts? Further proposals?

If there are too many valid objections, I'm happy to build ssb272nd for my own use and leave ssb272e as it is without any of the proposed changes.


Cheers,
Norm.


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
User avatar
NormanDunbar
Forum Moderator
Posts: 2482
Joined: Tue Dec 14, 2010 9:04 am
Location: Buckie, Scotland
Contact:

Re: I'm looking for a S*BASIC app, possibly by Tim Swenson!

Post by NormanDunbar »

SSB Version 272e is now available from https://github.com/SinclairQL/Structure ... ag/2.7.2.e (and attached here!)

A few changes, and updates. Some code rewrites.

The zip file, in the asset list, contains the executable and the Quill flavoured docs.

* Default start line is now 1000.
* The executable name is now always ssb272_exe but when executing, the task name shows the correct version 272e for example.
* All NEXT X in the compiler source files, and documentation, have been replaced with END FOR X where applicable.
* When displaying the default line increment number, a space was missing between "Default" and "10". This has been added.
* Added Trim$(), LTrim$() and RTrim$() functions to make removing leading and trailing spaces much easier, and reduced the amount of code doing exactly this.
* Added centre() function to print text, centered on the main window. Commented to advise how to change if the main window with or border changes. This centralisation works for all languages, not just English, as before.

* Some of the environment variable names were changed to make their meaning clearer:
SSBINPUT -> SSBINPUT_EXT
SSBOUTPUT -> SSBOUTPUT_EXT
SSBWORK -> SSBWORK_DIR
SSBWORK2 -> SSBWORK2_DIR
SSBSTART -> SSBSTART_LINE

* In previous versions, the compiler could only compile itself when located in the root of the RAM1_ directory. This was due to the various #INCLUDE statements being hard coded to that device. This has now changed to DEV7_ so that any device on the user's system can be used, without having to use RAM1_. To continue using RAM1_ as at present, simply execute DEV_USE 7, RAM1_

ssb272e.zip
(30.89 KiB) Downloaded 148 times

Cheers,
Norm.


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
Derek_Stewart
Font of All Knowledge
Posts: 4727
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: I'm looking for a S*BASIC app, possibly by Tim Swenson!

Post by Derek_Stewart »

I generally use mview to view Quill files, or use Xchange to convert it to print file or ASCII file.

Here is a Quill List text version of the quill doc, or ASCII doc if you like:
[attachment=0]ssb_doc_lis.zip[/attachmen]
Attachments
ssb_doc_lis.zip
Quill _lis ASCII file of SSB doc
(14.9 KiB) Downloaded 139 times


Regards,

Derek
User avatar
NormanDunbar
Forum Moderator
Posts: 2482
Joined: Tue Dec 14, 2010 9:04 am
Location: Buckie, Scotland
Contact:

Re: I'm looking for a S*BASIC app, possibly by Tim Swenson!

Post by NormanDunbar »

Hi Derek,

I've never used "mview" so I'll have to give it a look see. Thanks.

Cheers,
Norm.


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
Derek_Stewart
Font of All Knowledge
Posts: 4727
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: I'm looking for a S*BASIC app, possibly by Tim Swenson!

Post by Derek_Stewart »

NormanDunbar wrote: Mon Jul 29, 2024 4:52 pm Hi Derek,

I've never used "mview" so I'll have to give it a look see. Thanks.

Cheers,
Norm.
Mview, is a nice quick file viewer application, by Christopher Cave, that can view Quill, binary and ASCII files.

I generally have it configured in Fileinfo2 to produce a selection menu when the data file is executed. Rather like the Context Window on other main stream operating systems.


Regards,

Derek
Post Reply