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-BeagleBone
Fully 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.
4-19-2020
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
To turn all relays on:
bwbasic --profile relays.pro --tape allon.inp relays.bas
To work interaactive you would:
bwbasic relays.bas
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 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