SLOS-DOS: Difference between revisions

From Moonlight Design
Jump to navigation Jump to search
No edit summary
No edit summary
Line 4: Line 4:


==Download==
==Download==
'''[https://www.moonlightdesign.org/steve/programs/slosdist1.exe Download SLOS-DOS]'''
'''[https://www.moonlightdesign.org/steve/programs/slosdist1.exe Download SLOS-DOS and SLOS-Win]'''


'''[https://www.moonlightdesign.org/steve/programs/sloswin.zip Download SLOS-Win]''', a [[SLOS-Win|Windows version of SLOS]]
'''[https://www.moonlightdesign.org/steve/programs/sloswin.zip Download SLOS-Win's Source Code]''', a [[SLOS-Win|Windows version of SLOS]]


==Scripting Language==
==Scripting Language==

Revision as of 06:10, 8 October 2007

Steven Lawrance's Operating System (SLOS), also known briefly as Steven Lawrance's Operating Program (SL-OP), was a small interpreted toy operating environment written in QBASIC for DOS. The primary motivation for writing this was to have an environment that supported long file names. This was written in 1993 -- two years before Microsoft released native long file name support in a consumer operating system with Windows 95.

SLOS was primarily distributed on the Contrails BBS in Euless, Texas. It is now distributed from this web site.

Download

Download SLOS-DOS and SLOS-Win

Download SLOS-Win's Source Code, a Windows version of SLOS

Scripting Language

SLOS executes script files having a "exc" file extension in an interpreted manner. Because this interpreter is running within the BASIC interpreter, execution speed is noticeably slow.

Limitations

SLOS's scripting environment contains a large list of limitations, and some are expressed in the following list:

  • The screen always has a light-blue background with a white foreground
  • Conditional expressions are only allowed in a few operations
  • Programs get only one number variable and one string variable, which is a huge limitation for all but trivial programs
  • Loading and saving data files within a program is limited to saving the program's two variables
  • Looping can only be done with the only number variable that you have