[Coco] Strings in DECB

Arthur Flexser flexser at fiu.edu
Wed Oct 21 00:17:31 EDT 2015


128 or 255 as max length?

The relevant ROM code, in the string concatenation routine, is:

B61D LDB  ,X       # characters in 1st string
B61F LDX <$52    Get 2nd string stack pointer
B621 ADDB ,X      Add # characters in 2nd string
B623 BHS $B62A  Length okay if no carry
  (otherwise ?LS error)

As I read this, with my rusty 6809 skills, this indicates a length of 255
will be okay for a string, since only a value greater than 255 will set the
carry.

Art


On Tue, Oct 20, 2015 at 10:15 PM, Robert Hermanek <rhermanek at centurytel.net>
wrote:

> I believe the maximum length is indeed 128.  You may be getting a OS error
> because you have not allocated any extra string space... try a CLEAR 1000
> statement at the beginning of your test program.
>
> -RobertH
>
>
> On 10/20/2015 9:01 PM, Theodore (Alex) Evans wrote:
>
>> I was talking with a friend.  We had a disagreement about the maximum
>> length of strings under DECB. He claimed it was 128 and I believe d it was
>> 255. So I did some testing. The results were puzzling. I created a string
>> and began extending it. Any attempt to extend a string of 100 characters or
>> more (even with an empty string "") results in an OS error as does any
>> attempt to extend a string past 100 characters, but I can define and use a
>> string up to 255 characters in length.
>>
>>
>>
>>
>
> --
> Coco mailing list
> Coco at maltedmedia.com
> https://pairlist5.pair.net/mailman/listinfo/coco
>


More information about the Coco mailing list