BS2 Programming environment for Mac OSX
Carlos Santiago
Posts: 3
I am currently using MacBS2 to program my Basic Stamp and Boe-Bot. I found that it is limited in several ways. It does not support the DEBUGIN statement and it does not allow writes and reads to the EEPROM.
Is there another BS2 programming environment for Mac OSX that is fully featured?
Is there another BS2 programming environment for Mac OSX that is fully featured?
Comments
Q: Does MacBS2 support the DEBUGIN command?
A: Yes and no. While MacBS2 1.4 and later properly compiles code containing the the DEBUGIN command, you will need to use a different program (such as the venerable ZTerm, or, if you're on Mac OS X 10.3 or newer, goSerial works nicely) to do two-way communication using DEBUGIN.
Note that if you do use a different program to communicate with the Stamp over its progamming port, you can run into conflicts since both programs (MacBS2 and your communications program) will be trying to use the same serial port. The solution is not to have both running at the same time.
Don't understand the comment about EEPROM read/write access - it's fully supported AFAIK. Note on a BS2, your program AND data is all stored in the same 2KB EEPROM.
Thank You,
Carlos
It seems you want to be able to read the memory locations you’ve written to at runtime from the BASIC Stamp but even the Windows Software cannot do that. When you look at the memory map that is strictly compile-time. If you program logs data to the EEPROM you cannot use the Memory Map to see what data was written. I’m going on the assumption that this is what you’re trying to do, of course. Now you could write your program to send this data to the PC (Mac) to be analyzed by external software. I hope this helps. Take care.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Chris Savage
Parallax Tech Support
And if you put in a pre-programmed BS2, the IDE does not allow you to upload the current contents of the EEPROM.
I use MacBS2 too, and that is always the main issue, to know how much program is left. My thought is that if you keep this routine in a program, and have some trigger for it to execute, it can tell you where you stand on program size. At least up to the point where you need the 200+ bytes. Moreover, if you are using a cross-slot Stamp like the BS2pe, the test program can reside in its own slot and use the STORE command to probe the status of another slot. The memory dump program Chris suggested could go there too.
As written, it finds the end of the program after the hack. If you want to point to the end of the main program as it exists before the hack, then comment out the last "GOSUB top", and comment in the "GOSUB top" that precedes the freeMemory hack. The "GOSUB top" is a dummy statement that will never be executed and it is there as a marker, so that the IDE will create a pointer to the location that follows the GOSUB and will enter it in the returns table at the start of program memory.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Tracy Allen
www.emesystems.com
sometimes the answer is so obvious you pass it right by.
This may have to go into my blank program template.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔