BASIC for some beefy AVR chips

klBASIC is a BASIC interpreter written in C for AVR microcontrollers. [Karl Lunt] developed the project based on an assembly language BASIC interpreter for 68HC11 chips written by [Gordon Doughman]. The transition from assembly to C bulked up the code, so you’ll need a beefy AVR chip in order to store all of it.

The idea is that one AVR chip can run BASIC with just a serial monitor. But like this Arduino BASIC interpreter build, it would be a snap to run this with a keyboard and small LCD screen. We see binaries available for several different AVR devices including ATmega128, ATmega1284, and Xmega128. They range from 1.5k to 16k of program memory. We didn’t find a link to the source code (just these precompiled files) so we inquired with [Karl] to see if that is available. He’s reluctant to release the code because it’s “pretty much a mess” and doesn’t live up to his normal standards. If he codes for a living we can see how that may be embarrassing. If you’d like to lend a hand cleaning up the code, let him know by leaving a comment here and maybe he’ll release it for that purpose.

We find this interesting, but it’s tough to get excited about building one of our own. If this has inspired you, we’d love to hear some of your plans in the comments after the break. Perhaps we’d be prodded into another programming adventure based on your enthusiasm.

Arduino BASIC interpreter using LCD, keyboard, and SD

This Arduino BASIC interpreter will make a really fun one-day project if you’ve already got the parts on hand. [Usmar A. Padow] put together an Arduino Uno, SD card, four line character LCD, and PS/2 keyboard. but he’s also included alternative options to go without an LCD screen by using a computer terminal, or without the SD card by using only the Uno’s RAM. As you can see in his demo after the break, this simple input/output is all you need to experiment with some ancient computing.

It’s hard for us to watch this and not think back to an orange or green monochrome display. Just like decades past, this implementation of BASIC has you start each line of code with a line number, and doesn’t allow for character editing once the line has been input. The example programs that [Usmar] shows off are simple to understand but cover enough to get you started if you’ve never worked with BASIC before.

Last August we saw another hack which ported Tiny BASIC to the Arduino. You may want to take a gander at that one as well.

[Read more…]

Loading programs onto a TRS-80 Model 100

We’d guess that you don’t have a TRS-80 Model 100 computer sitting around. But we’ve heard that the decades-old hardware is built like a tank so if you search around you can probably get your hands on a working unit. The Model 100 boasted some nice features, one of which was a 300 baud modem allowing you to transfer data onto the device. [MS3FGX] wanted to give it a try but had to do some work to get the Model 100 to communicate with modern hardware.

This could have been a much more involved process, but since the Model 100’s modem uses common communications standards it’s really just a matter of hooking it up and choosing the right COM port settings on a computer. In this example a Linux box is used with the program Minicom. It is configured to communicate at 300 baud 8N1 (8 data bits, no parity bit, and one stop bit).

With software in place you’ll need to make your own cable. [MS3FGX] does this using a DB-25 connector for the Model 100 side, and a DB-9 connector for the serial port on the Linux box. He’s got a pin-out for the cable on the second page of his guide. It sounds like it should be no problem to use a USB-serial converter if you don’t have a serial port.

Once everything is in place you’ll be able to transfer BASIC programs from your computer to the Model 100.