Date : Sat, 27 Nov 2004 22:08:32 +0000 (GMT)
From : Andrew W <a.weston2@...>
Subject: Re: ...at line ___
In <URL:news:local.misc> on Fri 26 Nov, Brian Widdas wrote:
> It means you've hit a bunch of zero bytes.
>
> An error on the BBC Micro looks like this:
>
> BRK
> EQUB <1 byte error number>
> EQUS "Danger, Will Robinson!"+CHR$(0)
>
> The BRK causes a software interrupt. The OS (or it is the current language
> ROM?) code at the SWI vector reads the next byte as the error number, and
> the subsequent bytes until a control character as the error string.
>
> Since BRK is 0 when compiled to machine code, it's possible to do this;
>
> BRK:BRK:EQUS "This is an error with error number 0":BRK
>
> Naturally, if you didn't want an error string, you could do this:
>
> BRK:BRK:BRK
>
> Which is what a bunch of memory full of zeroes looks like.
>
> Are you calling the right location?
>
It seems to be something wrong with the labels. I don't know if this'll
be much use (I don't think the second two LDA&75's are necessary
either) but when &75 is 79 or 119 I get the error:
.scan1
LDA&75
CMP#39:BEQ scan4:JMP scan5 \ check char position counter for end of line
.scan5 LDA&75:CMP#79:BEQ scan4:JMP scan6
.scan6 LDA&75:CMP#119:BNE scan2
.scan4
A.Weston
--
Staffordshire, UK of GB&NI.