???????????!!!WSFN (Which Stands for Nothing)
Harry Stewart, APX, 1981
Background#
WSFN (Which Stands for Nothing) is a tiny programming language created by Li-Chen Wang (author of
Tiny BASIC) as a way to send commands to a small robot. It was originally published in Dr. Dobb's Journal in September 1977, with the robot represented on-screen using what would today be known as turtle graphics.
The language is similar to PILOT in concept, using single-letter commands who's primary purpose is to cause the turtle to move and create drawings. In contrast to PILOT, WSFN allows the construction of more complex macros using parenthesis, which can then be combined into larger programs. WSFN programs can quickly become unreadable in spite of their single-letters and relatively short list of features.
Extended WSFN was an implementation created for the Atari 8-bit family by Harry Stewart and published by the Atari Program Exchange (APX) in 1981. The main differences were to add another set of commands to provide access to some of the Atari platform's capabilities, notably graphics, color, sound and joystick support. The language was otherwise similar to the original, although some of the command letters changed to make room for new commands.
A unique feature of the language is that the keyboard is active at all times, and users can interrupt programs as they run. For instance, if one makes a macro to draw an arc on the screen and names it "A", typing A will begin the drawing of the arc, but the user can press A in the middle of the process to draw a new arc at the current location, and so on. This makes all programs interactive without any specific code like an event loop.
Editor's note: One clearly missing feature is the ability to define macros that run on events other than the keyboard. If one could define macros that were triggered by the joystick, perhaps by defining the macro with a specific name like "!UP", one could write joystick-based drawing programs in a few lines of code.
Example#
The following Extended WSFN code draws a square in the center of the ? screen:
12F4(24F2R)
ROM Image#
- WSFN.rom ; Thank you so much Atari_Ace from AtariAge for creating the rom image! Once, there was one cartridge on planet earth, which vanished in a museum and therefore was thought to be lost. After 36 years(!) you brought it back to the light. Thank you so much, we owe you very much, indeed. By the way, Atari_Ace's website is highly recommended by AtariWiki.org! The site is full of source codes. Give it a try! :-)))
CAR Image#
- WSFN.car ; Thank you so much Atari_Ace from AtariAge for creating the rom image! Once, there was one cartridge on planet earth, which vanished in a museum and therefore was thought to be lost. After 36 years(!) you brought it back to the light. Thank you so much, we owe you very much, indeed. By the way, Atari_Ace's website is highly recommended by AtariWiki.org! The site is full of source codes. Give it a try! :-)))
CAS Image#
... still missing ; original APX-10026 cassette ; if you own this cassette, please let us know. Thank you so much in advance. :-)
ATR Image#
- APX_Extended_WSFN.atr ; original APX-20026 diskette of Extended WSFN ; Thank you so much Allan Bushman for preserving this very rare software. We really owe you very much! Please go ahead. :-)
Manual#
- APX_Extended_WSFN-Original.pdf ; size: 171.8 MB ; original manual scanned in super quality by Allan Bushman. Thank you so much Allan for all the work you have done for us. We are really deep in your debt. Please go ahaed. :-)))
- APX_Extended_WSFN-OCR-Print.pdf ; size: 76.2 MB ; OCR version of the above manual version
- APX_Extended_WSFN-OCR-Screen.pdf ; size: 5.3 MB ; OCR screen optimized version of the above manual
- Atari_WSFN-An_Introduction.pdf ; size: 2.3 MB ; WSFN introduction from Harry B. Stewart realeased in 2016. Thank you so much Harry, we really appreciate your help so much. :-)))
- Atari_WSFN-Manual_draft.pdf ; size: 2.5 MB ; WSFN manual draft from Harry B. Stewart realeased in 2016. Thank you so much Harry, we really appreciate your help so much. :-)))
Source Code#
- wsfn.txt ; original source code from Harry B. Stewart, typed in and digitized by Atari_Ace from AtariAge. We both thank you so much, can't tell you. :-))) By the way, Atari_Ace's website is highly recommended by AtariWiki.org! The site is full of source codes. Give it a try! :-)))
References#
Pictures#
Extended WSFN APX-20026 box - front
Extended WSFN APX-20026 box - back
Extended WSFN Diskette APX-20026
Extended WSFN - example #1
Extended WSFN - example #1
Extended WSFN APX-20026 box - ad