About LMM: support for LMM code was announced some posts back, but I cannot find any refence to using or activating this feature. Probably a matter of setting some switch in the header of the program. Did I miss or oversee something?
Bean & co: kudos for this fantastic tool, it going to help me a lot.
What is the status on the docs? I glanced at what you have, and the dates are Jan, 2010. I know you have made changes to the compiler, and added some features like LMM. Is there an up to date document that reflects all of this?
Bean and I have been busy with our paying jobs. PropBASIC costs you nothing, so a little patience is in order. There are plenty of examples that demonstrate the features of the compiler that you could learn from -- those of us that write the docs don't have docs to go by, we learn by experimenting.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Jon McPhalen
Hollywood, CA
The newest version of PropBasic (00.00.94 as soon as BradC posts it) will support the PASD debugger.
However, this moring I was deleting some spam posts and I accidentally deleted the PASD thread (I'm very sorry for that..I will be more careful in the future).
So I will post PASD in the top post in this thread.
To use PASD all you need to do is "PROGRAM Start PASD" and insert the commands "BREAK" and "WATCH" into your code.
Bean
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Use BASIC on the Propeller with the speed of assembly language.
PropBASIC thread http://forums.parallax.com/showthread.php?p=867134
Bean said...
The newest version of PropBasic (00.00.94 as soon as BradC posts it) will support the PASD debugger.
However, this moring I was deleting some spam posts and I accidentally deleted the PASD thread (I'm very sorry for that..I will be more careful in the future).
So I will post PASD in the top post in this thread.
To use PASD all you need to do is "PROGRAM Start PASD" and insert the commands "BREAK" and "WATCH" into your code.
Bean
I took a simple demo program and tried it -- works with quirks (maybe it's just me).
The process:
In BST
1) Add PASD to end of PROGRAM directive
2) Add BREAK where desired
3) Compile\Compile BASIC to Spin (this puts Spin file into a tab -- leave open)
4) F11 to download to Propeller
In PASD
5) Start PASD_062.exe
6) COM\COM Port -- set your port; would be nice if PASD remembered this between sessions
7) [noparse][[/noparse]F2] to load program from BST tab
Use keys from DEBUG menu to move through code. What I found funky is that I need to press [noparse][[/noparse]F5] (run) twice to get past a break point -- seems odd. Still, this is a nice addition to the Propeller tool set; thanks to Bean and Andy for their efforts.
BTW... if you want to get back and make a code adjustment you have to turn off the COM port in PASD before BST can download a new program -- use COM\COM Open/Close to do this.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Jon McPhalen
Hollywood, CA
You don't need to Open/Close the COM port manually, if the Auto-mode ist checked in the COM menu.
In this case the COM port is closed if you minimize the PASD window, and re-opened when you restore the Window.
Is it possible the STR command is not working in PropBasic build 00.00.95a?
tmp VAR Long
ascii VAR Long(10)
tmp = 654321
STR ascii, tmp, 6
ascii(6) = 13
ascii(7) = 0
SEROUT TXPIN, TXBAUD, "Test..." ' This works
PAUSE 15
SEROUT TXPIN, TXBAUD, ascii ' This doesn't work as expected - I get a single digit '6' and not '654321'
Essentially I would like to transmit a decimal (long) value to the PST in ascii format. I can successfully transmit a string or byte.
Yeah, you don't want to use-up precious COG ram for strings (since you need 1 long per character!!!).
It makes ALOT more sense to use HUB ram for strings.
Bean
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Use BASIC on the Propeller with the speed of assembly language.
PropBASIC thread http://forums.parallax.com/showthread.php?p=867134
I thought I would revist this thread to see what has changed in the last couple of months. In particular, I wanted to see if any new keywords have been added. The manual has been downloaded 800+ times, I'm not sure if this is the original manual or updated ones?
In any case, I found something better. Down near the bottom of the first post on this thread is a link to an article in Nuts and Volts magazine by Jon Williams. This is extremely well written. I just bought a subscription to Circuit Cellar, and now I'm thinking of getting one for Nuts and Volts as well. Addit: I've just done that. If the magazine has Propeller articles then I'm interested!
I guess the thing I'm wondering about is string instructions. I'm not sure if they have been added yet (str is there), and how hard it would be to have things like LEFT(), MID(), RIGHT, VAL(), HEX(), INSTR().
If they are already there, great!
If not, I've been thinking of how you write code to compile these sorts of instructions easily. It isn't just those functions, it is also the way strings are stored internally. If you use mbasic you say
A$="Hello
and that dynamically stores 5 bytes plus some lookup bytes in table. When it runs out of room it has to clean out the tables and the program hangs for a while. Hmm, that is a bit messy.
If you say that every string is an array 80 bytes long, that wastes a lot of precious memory. I'm wondering about a solution sbasic uses where you type
var mystring = string
or
dim mystring = string
and that reserves 80 bytes
but if you write
var mystring = string:10
then it only reserves 10 bytes. Useful for strings that will always be short.
In the compiler, that statement reserves some ram and the compiler would associated that ram location with the variable name and then can use it when that string name is used.
Strings would just be one dimensional arrays with zero termination.
var mystring1, mystring2=string:40
mystring1="Hello"
mystring2=mystring1+" World"
is an example. I think that would not be too hard to write the compilation code. What might be a little more tricky is
mystring1=left(mystring1,3)
where the output string is the same as the input string. It implies the possible need for a temporary buffer inside the LEFT function (and other string functions) that can store up to 80 bytes. I think there are internal temp variables within propbasic for numerical values (temp1 to temp5 I think) so maybe tempstring needs to be added to the list?
For me, string handling is the one thing I really like about basic. Thoughts would be most appreciated.
Remember that there is no difference between DATA and HUB vars.
So you can do this:
DEVICE P8X32A, XTAL1, PLL16X
FREQ 80_000_000
Baud CON "T115200"
TX PIN 30 HIGH
value VAR LONG
Message DATA "Elapsed time is "
ValueStr DATA "12345 seconds.", 13, 0
PROGRAM Start
Start:
value = 0
DO
STR valueStr, value, 5
SEROUT TX, Baud, Message
PAUSE 1000
value = value + 1
LOOP
END
I could have used:
··STR Message(16), value, 5
also instead of creating a seperate data label "ValueStr".
Bean
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Use BASIC on the Propeller with the speed of assembly language.
PropBASIC thread http://forums.parallax.com/showthread.php?p=867134
Dr_A, · String functions aren't hard to do with subroutines. · Here is an example of some.
DEVICE P8X32A, XTAL1, PLL16X
FREQ 80_000_000
Baud CON "T115200"
TX PIN 30 HIGH
value VAR LONG
myStr HUB BYTE (81) = 0 ' String(80)
Message DATA "Elapsed time is "
DATA "12345 seconds.", 13, 0
STRASSIGN SUB 2 ' Dest, Source
RIGHT SUB 2 ' String, NumChars
LEFT SUB 2 ' String, NumChars
MID SUB 3 ' String, SstartChar, NumChars
PROGRAM Start
Start:
value = 0
STRASSIGN myStr, Message
' RIGHT myStr, 6
' LEFT myStr, 8
MID myStr, 10, 5
DO
STR Message(16), value, 5
SEROUT TX, Baud, Message
SEROUT TX, Baud, myStr
PAUSE 1000
value = value + 1
LOOP
END
' --------------------------------------------
SUB STRASSIGN
DO
RDBYTE __param2, __param3
WRBYTE __param1, __param3
INC __param1
INC __param2
LOOP UNTIL __param3 = 0
ENDSUB
SUB RIGHT
__param1 = __param1 + __param2
WRBYTE __param1, 0
ENDSUB
SUB LEFT
__param3 = __param1
DO
RDBYTE __param3, __param4
IF __param4 = 0 THEN EXIT
INC __param3
LOOP
__param3 = __param3 - __param2
STRASSIGN __param1, __param3
ENDSUB
SUB MID
__param2 = __param2 + __param1 ' __param2 = first character
DEC __param2 ' Index starts at 0 not 1
DO
RDBYTE __param2, __param4
WRBYTE __param1, __param4
INC __param1
INC __param2
LOOP __param3
WRBYTE __param1, 0
ENDSUB
And they generate a surprisingly small amount of code.
Bean ·
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Use BASIC on the Propeller with the speed of assembly language.
PropBASIC thread http://forums.parallax.com/showthread.php?p=867134
This is a brilliant library Bean - thank you so much for sharing it.
---
May I ask a question about STR ? ... just to verify what "should" be happening !
If I define: ascii HUB Byte(10) = 1
(So all bytes in the array are set to 1)
Then I do: STR ascii, 6543, 4
Should ascii(4) now be 0 or still left at a 1
So the concise question is does the STR command overwrite the entire array with zeros when it executes, or only the bytes it needs (in this case indexes 0 to 3)
At the moment I do (in every loop iteration):
WRBYTE ascii(5),13
WRBYTE ascii(6),0
after the STR command to set those bytes appropriately. But if STR will not overwrite those unused bytes, I could remove that step and just set them once at the start!
I hope that makes sense..
Max.
(Note: Of course I can test it with the current version of PropBASIC! But I want to learn about the intended operation of the STR command, and not something which just happens this way now, and might change in the future)
So instead of WRBYTE leds(1), you could use WRBYTE windowled
I noticed recently Bean mentioned that arrays take up less space than individual vars, so this might be a convenient way to use arrays more often whilst maintaining some code clarity.... Well that's the plan!
Maxwin,
I was saying that VAR variables use up valuable COG ram (code space), but HUB arrays don't.
I'll look into array aliases, but it won't make any difference with available space.
Bean
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Use BASIC on the Propeller with the speed of assembly language.
PropBASIC thread http://forums.parallax.com/showthread.php?p=867134
March 2010 Nuts and Volts article·http://www.parallax.com/Portals/0/Downloads/docs/cols/nv/prop/col/nvp5.pdf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
There are two rules in life: · 1) Never divulge all information
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
If you choose not to decide, you still have made a choice. [noparse][[/noparse]RUSH - Freewill]
Just started looking at the PropBasic-bst today. I downloaded PropBasic 00.00.95-58 and BST 0.19.3 and the demo programs. I tried to compile DS18B20.pbas but it complains: UNKNOWN COMMAND: "STR".
I also attempted to compile the above program with the '{$IFUSED ASSIGN} but it had the same error. Is there a ProbBasic-alpha with the updated STR ?
Comments
Bean & co: kudos for this fantastic tool, it going to help me a lot.
Nico
Add LMM after program name or task name i.e
PROGRAM· MyProg· LMM
TASK MyTASK LMM
Gerry
Thanks
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Shawn Lowe
When all else fails.....procrastinate!
Ray
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Jon McPhalen
Hollywood, CA
However, this moring I was deleting some spam posts and I accidentally deleted the PASD thread (I'm very sorry for that..I will be more careful in the future).
So I will post PASD in the top post in this thread.
To use PASD all you need to do is "PROGRAM Start PASD" and insert the commands "BREAK" and "WATCH" into your code.
Bean
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Use BASIC on the Propeller with the speed of assembly language.
PropBASIC thread http://forums.parallax.com/showthread.php?p=867134
March 2010 Nuts and Volts article·http://www.parallax.com/Portals/0/Downloads/docs/cols/nv/prop/col/nvp5.pdf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
There are two rules in life:
· 1) Never divulge all information
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
You only ever need two tools in life. If it moves and it shouldn't use Duct Tape. If it does not move and it should use WD40.
I took a simple demo program and tried it -- works with quirks (maybe it's just me).
The process:
In BST
1) Add PASD to end of PROGRAM directive
2) Add BREAK where desired
3) Compile\Compile BASIC to Spin (this puts Spin file into a tab -- leave open)
4) F11 to download to Propeller
In PASD
5) Start PASD_062.exe
6) COM\COM Port -- set your port; would be nice if PASD remembered this between sessions
7) [noparse][[/noparse]F2] to load program from BST tab
Use keys from DEBUG menu to move through code. What I found funky is that I need to press [noparse][[/noparse]F5] (run) twice to get past a break point -- seems odd. Still, this is a nice addition to the Propeller tool set; thanks to Bean and Andy for their efforts.
BTW... if you want to get back and make a code adjustment you have to turn off the COM port in PASD before BST can download a new program -- use COM\COM Open/Close to do this.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Jon McPhalen
Hollywood, CA
Post Edited (JonnyMac) : 4/24/2010 4:18:26 PM GMT
www.insonix.ch/propeller/prop_pasd.html
JonnyMac
You don't need to Open/Close the COM port manually, if the Auto-mode ist checked in the COM menu.
In this case the COM port is closed if you minimize the PASD window, and re-opened when you restore the Window.
Andy
It also fixes a bug with hex or binary values in DATA when used in a TASK.
Bean
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Use BASIC on the Propeller with the speed of assembly language.
PropBASIC thread http://forums.parallax.com/showthread.php?p=867134
March 2010 Nuts and Volts article·http://www.parallax.com/Portals/0/Downloads/docs/cols/nv/prop/col/nvp5.pdf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
There are two rules in life:
· 1) Never divulge all information
I accidentally sent brad the wrong files for rev 00.00.95
Bean
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Use BASIC on the Propeller with the speed of assembly language.
PropBASIC thread http://forums.parallax.com/showthread.php?p=867134
March 2010 Nuts and Volts article·http://www.parallax.com/Portals/0/Downloads/docs/cols/nv/prop/col/nvp5.pdf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
There are two rules in life:
· 1) Never divulge all information
Is it possible the STR command is not working in PropBasic build 00.00.95a?
Essentially I would like to transmit a decimal (long) value to the PST in ascii format. I can successfully transmit a string or byte.
Edited to correct my explanation!
Post Edited (Maxwin) : 4/28/2010 3:00:00 PM GMT
SEROUT only transmits strings held in HUB ram.
Make ascii a HUB variable and it should work.
ascii HUB BYTE(10)
I probably should make STR not work with VAR arrays, because they cannot be transmitted anyway.
Bean
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Use BASIC on the Propeller with the speed of assembly language.
PropBASIC thread http://forums.parallax.com/showthread.php?p=867134
March 2010 Nuts and Volts article·http://www.parallax.com/Portals/0/Downloads/docs/cols/nv/prop/col/nvp5.pdf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
There are two rules in life:
· 1) Never divulge all information
Perfect!
It makes ALOT more sense to use HUB ram for strings.
Bean
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Use BASIC on the Propeller with the speed of assembly language.
PropBASIC thread http://forums.parallax.com/showthread.php?p=867134
March 2010 Nuts and Volts article·http://www.parallax.com/Portals/0/Downloads/docs/cols/nv/prop/col/nvp5.pdf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
There are two rules in life:
· 1) Never divulge all information
In any case, I found something better. Down near the bottom of the first post on this thread is a link to an article in Nuts and Volts magazine by Jon Williams. This is extremely well written. I just bought a subscription to Circuit Cellar, and now I'm thinking of getting one for Nuts and Volts as well. Addit: I've just done that. If the magazine has Propeller articles then I'm interested!
I guess the thing I'm wondering about is string instructions. I'm not sure if they have been added yet (str is there), and how hard it would be to have things like LEFT(), MID(), RIGHT, VAL(), HEX(), INSTR().
If they are already there, great!
If not, I've been thinking of how you write code to compile these sorts of instructions easily. It isn't just those functions, it is also the way strings are stored internally. If you use mbasic you say
A$="Hello
and that dynamically stores 5 bytes plus some lookup bytes in table. When it runs out of room it has to clean out the tables and the program hangs for a while. Hmm, that is a bit messy.
If you say that every string is an array 80 bytes long, that wastes a lot of precious memory. I'm wondering about a solution sbasic uses where you type
var mystring = string
or
dim mystring = string
and that reserves 80 bytes
but if you write
var mystring = string:10
then it only reserves 10 bytes. Useful for strings that will always be short.
In the compiler, that statement reserves some ram and the compiler would associated that ram location with the variable name and then can use it when that string name is used.
Strings would just be one dimensional arrays with zero termination.
var mystring1, mystring2=string:40
mystring1="Hello"
mystring2=mystring1+" World"
is an example. I think that would not be too hard to write the compilation code. What might be a little more tricky is
mystring1=left(mystring1,3)
where the output string is the same as the input string. It implies the possible need for a temporary buffer inside the LEFT function (and other string functions) that can store up to 80 bytes. I think there are internal temp variables within propbasic for numerical values (temp1 to temp5 I think) so maybe tempstring needs to be added to the list?
For me, string handling is the one thing I really like about basic. Thoughts would be most appreciated.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
www.smarthome.viviti.com/propeller
Post Edited (Dr_Acula) : 4/29/2010 1:46:56 AM GMT
So you can do this:
I could have used:
··STR Message(16), value, 5
also instead of creating a seperate data label "ValueStr".
Bean
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Use BASIC on the Propeller with the speed of assembly language.
PropBASIC thread http://forums.parallax.com/showthread.php?p=867134
March 2010 Nuts and Volts article·http://www.parallax.com/Portals/0/Downloads/docs/cols/nv/prop/col/nvp5.pdf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
There are two rules in life:
· 1) Never divulge all information
· String functions aren't hard to do with subroutines.
· Here is an example of some.
And they generate a surprisingly small amount of code.
Bean
·
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Use BASIC on the Propeller with the speed of assembly language.
PropBASIC thread http://forums.parallax.com/showthread.php?p=867134
March 2010 Nuts and Volts article·http://www.parallax.com/Portals/0/Downloads/docs/cols/nv/prop/col/nvp5.pdf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
There are two rules in life:
· 1) Never divulge all information
Post Edited (Bean) : 4/29/2010 12:48:13 PM GMT
Notice the use of the $IFUSED compiler directive to strip out unused subroutines. (Check out the compiled code).
Bean
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Use BASIC on the Propeller with the speed of assembly language.
PropBASIC thread http://forums.parallax.com/showthread.php?p=867134
March 2010 Nuts and Volts article·http://www.parallax.com/Portals/0/Downloads/docs/cols/nv/prop/col/nvp5.pdf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
There are two rules in life:
· 1) Never divulge all information
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
If you choose not to decide, you still have made a choice. [noparse][[/noparse]RUSH - Freewill]
---
May I ask a question about STR ? ... just to verify what "should" be happening !
If I define: ascii HUB Byte(10) = 1
(So all bytes in the array are set to 1)
Then I do: STR ascii, 6543, 4
Should ascii(4) now be 0 or still left at a 1
So the concise question is does the STR command overwrite the entire array with zeros when it executes, or only the bytes it needs (in this case indexes 0 to 3)
At the moment I do (in every loop iteration):
WRBYTE ascii(5),13
WRBYTE ascii(6),0
after the STR command to set those bytes appropriately. But if STR will not overwrite those unused bytes, I could remove that step and just set them once at the start!
I hope that makes sense..
Max.
(Note: Of course I can test it with the current version of PropBASIC! But I want to learn about the intended operation of the STR command, and not something which just happens this way now, and might change in the future)
Post Edited (Maxwin) : 4/30/2010 5:59:01 AM GMT
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
www.smarthome.viviti.com/propeller
In SX/B you could add aliases to array indexes -can this be done in PropBasic ?
such as:
leds HUB BYTE (10)
doorled HUB leds(0)
windowled HUB leds(1)
So instead of WRBYTE leds(1), you could use WRBYTE windowled
I noticed recently Bean mentioned that arrays take up less space than individual vars, so this might be a convenient way to use arrays more often whilst maintaining some code clarity.... Well that's the plan!
I was saying that VAR variables use up valuable COG ram (code space), but HUB arrays don't.
I'll look into array aliases, but it won't make any difference with available space.
Bean
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Use BASIC on the Propeller with the speed of assembly language.
PropBASIC thread http://forums.parallax.com/showthread.php?p=867134
March 2010 Nuts and Volts article·http://www.parallax.com/Portals/0/Downloads/docs/cols/nv/prop/col/nvp5.pdf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
There are two rules in life:
· 1) Never divulge all information
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
If you choose not to decide, you still have made a choice. [noparse][[/noparse]RUSH - Freewill]
example:
tmp1 VAR Long
tmp2 VAR Long
same cog space as:
tmpA VAR Long(2)
If there is no saving to be had, maybe there is no use for array aliases (only bloat)...??...
rdword screen(i), temp
creates:
add i,#screen ' rdword screen(i),temp
movs $+2,i
sub i,#screen
mov __temp1,0-0
rdword temp,__temp1
I thought, that the index should be multiplied by 2 to give word adresses?
Christof
Yes it should. I'll get that fixed.
I'm also adding some string support.
For example:
stemp HUB BYTE(81)
sTemp = "This is a"
sTemp = sTemp + " test."
SEROUT 30, T115200, sTemp
I "may" even put in LEFT, RIGHT and MID if I get time.
sTemp = LEFT sTemp, 5
Bean
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Use BASIC on the Propeller with the speed of assembly language.
PropBASIC thread http://forums.parallax.com/showthread.php?p=867134
March 2010 Nuts and Volts article·http://www.parallax.com/Portals/0/Downloads/docs/cols/nv/prop/col/nvp5.pdf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
There are two rules in life:
· 1) Never divulge all information
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
If you choose not to decide, you still have made a choice. [noparse][[/noparse]RUSH - Freewill]
They deserve special thanks all by themselves!
** Thank you Bean. **
(And thank you BradC for getting them compiled and online so fast!)
I also attempted to compile the above program with the '{$IFUSED ASSIGN} but it had the same error. Is there a ProbBasic-alpha with the updated STR ?
Paul
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Jim Fouch
FOUCH SOFTWARE
Post Edited (Paul) : 5/7/2010 4:32:05 PM GMT