Robert,
I have a question. I have been working on a project since Nov 2019. I tried to use bwbasic which can be downloaded via sudo apt install. Problem is the one that comes down is version 2.2 which has issues on the BBB. Things such as segmentation faults. Some options simply did not work.
All the issues and more have been corrected. Executable program has a smaller foot print. I discourage the use of the renum program which now works as expected regarding source file names and temporary file creation under Linux & Windows however it can not deal with gosubs or goto's. That would require a monumental re-write as the current program only renumbers the base line numbers as it was originally written by other folks.
That being said I have included a program "relays.bas" which will fully control 4 relay capes, on, off, label, state, state all, all off, help. My hopes are to find another cape that could be controlled by bwbasic. As it stands now it can do almost any I/O, has builtin timers, error detection, has arrays, floating point, more.
Anyone familiar with 'basic' should have no issues because this a fully functional basic. It includes many examples in the BAS-EXAMPLES folder
and DOCS in the INFO folder.
This will compile on almost all versions of Linux. It also compiles on Windows, just use compile.bat whereas under Linux you would use compile.
As far as BeagleBone Black goes it has been tested on Debian 9.x and Debian 10.x. All you really need in both cases is 'gcc'.
Bwbasic makes me think back to earlier years before Unix. I think users could have a lot of fun with it. Considering the full source is included.
Oh yea, this is based on Open source and will you take from version 2.2 to version 3.2+.
Is there a way to promote this??
4-16-2020
https://github.com/kenmartin-unix/Bwbasic-3.2a-for-BeagleBoneFully working Bwbasic-3.2a & relays.bas to test and
operate and get the status of the relays on the cape.
Note this version corrected issues with version 2.2 & 3.2
which is the version you get 2.2 if doing a
sudo apt install bwbasic from the command line in Debian.
When all done only two executable files are created.
See READMEFIRST on GitHub
Any issues open a new Issue in GitHub. Feedback is
also welcome.
This has been fully tested on the Beaglebone Black
running Debian 9 & 10.
This also works on other Linux platforms like Ubuntu,
Raspberry, Linux Mint, Zorin OS, Linux Lite, etc. but
no cape support of course.
As a side after installing Bwbasic-3.2a checkout the
BAS-EXAMPLES folder for examples of the many abilities
of Bwbasic aside from working on relays. If you desire
more info check out what's available in the INFO folder.
I have included some runtime files and sample input files. |
Place profile.bas in your current working directory and |
relays.pro and allon.inp and alloff.inp. The file examples |
will let you to by example turn off all relays alloff.inp. |
To do this you would enter at the command line: |
bwbasic --profile relays.pro --tape alloff.inp relays.bas |
bwbasic --profile relays.pro --tape allon.inp relays.bas |
To work interaactive you would: |
Once you get a handle on relays.bas commands you can |
create you own .inp files and reference them by |
bwbasic --profile relays.pro --tape <your file.inp > relays.bas |
All the above can placed into a simple script file. |
The purpose of relays.pro is to redirect standard and error |
outputs to files relays-stdout.txt and relays-error.txt and |
to turn off ANSI so the output is easily readable without |
escape codes. Using relays.pro then gives you a quiet display |
suitable when scripts via .inp is executed. |
The purpose of profile.bas which is used by default is to |
enable ANSI control sequences so the command 'cls' works |
and to set the normal editor to nano which if desired can |
bet set to vi. The editor comes into play when creating |
or changing a .bas file. To use while running bwbasic you |
would issue the command edit. |
Ken