<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>
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. 
<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>