[Coco] BASIC irony

John R. Hogerhuis jhoger at pobox.com
Thu Aug 12 19:07:05 EDT 2004


On the Model 100, ' is actually 3 bytes not two: $3A$8E$FF

Apparently it's different for Coco though?

Another bit of strangeness is ELSE which always gets a separator $3A in
front of it as well.

I am writing a Tandy Portable Disk Drive emulator for the Palm to be
used with Model 100 laptops ( http://bitchin100.com/dlpilot ). As a
convenience, it converts .BA files and .DO files to editable PalmDoc
.pdb files, and back again.

Have you started on the tokenizer? I haven't written that portion yet. I
guess an inefficient algorithm is simple, for each character, loop
through the token table and compare characters; if get a match then put
the token instead of just text. Otherwise just put the character as-is.

The exceptions are of course for :else and ' and ignore-to-EOLN handing
for REM.

Other strangeness in LIST comes with hidden high-numbered lines.

-- John.

On Thu, 2004-08-12 at 10:02, tim lindner wrote:

> I am in the process of writing a tokenizer/de-tokenizer for Boisy's CoCo

> Tools project and I have run accross something interesting.

>

> Everyone knows that the apostrophe is a short cut for the REM keyword.

> The the irony is that the apostrophe is tokenized as two bytes where the

> REM keyword is tokenized as one.

>

> BASIC changes the apostrophe to a colon-apostrophe. I would guess the

> interrupter can only handle an apostrophe at the beggining of a new

> statement.

>

> During a LIST command BASIC drops the initial colon, so it is never

> displayed.

>

> --

> tim lindner

> tlindner at ix.netcom.com





More information about the Coco mailing list