Extending Tiny BASIC on the Arduino

December 24, 2011 | Amateur Radio | By: Mark VandeWettering

I was intrigued by @monsonite’s challenge to extend Tiny BASIC for the Nanode. I don’t have a Nanode, but I do have some Arduinos, and extending Mike Field’s Tiny BASIC port to include some additional Arduino functionality seemed pretty straightforward. An hour or so staring at the code told me pretty much all I need to do, so I went ahead and added a DELAY statement to duplicate the Arduino delay() call, a MODE keyword (duplicating pinMode()) and WR (duplicating digitalWrite()).

If you put all these together, you can write simple LED blinking programs entirely in BASIC. Check it out:

I might see how far I can take this idea during my vacation.

Addendum: Why does YouTube always choose a frame where my eyes are closed as the default marquee image?

Comments

Comment from Ken Paulson
Time 1/3/2012 at 11:58 am

Mark,
Having problems getting line numbers to print correctly. Did you find any issue with that?
Ken N0HRL

Comment from Ken Paulson
Time 1/3/2012 at 4:37 pm

After further review…
Found the processor that I am using is Big Endian, Arduino is Little Endian. So I need to review the code to find where this is causing the problem.
Ken N0HRL

Comment from Bruce Ratoff
Time 2/29/2012 at 6:47 pm

Mark,

I too have been looking at extending Mike’s code to do some real Arduino stuff. In addition to accessing the I/O pins, I was thinking about having “LOAD” and “SAVE” (which are in the command table but stubbed) read and write to the internal EEPROM, which is rarely used. This would limit program size to 1K on a 328, but that’s probably ok for a start. The analog pins should be another easy target.

Rather than re-invent the wheel, it would be great if I could start from what you’ve already done. Any chance you could send me a link to your .INO?

73 de KO4XL
Bruce