<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>
Date   : Fri, 15 Aug 2008 08:39:50 +0930
From   : rafg1@... (Raf)
Subject: Master 128 century correction

> From: "Jonathan Graham Harston" <jgh@...>
> To: <bbc-micro@...>
> Sent: Monday, August 11, 2008 10:10 AM
> Subject: Re: [BBC-Micro] Master 128 century correction
> Jonathan wrote:
>> 
>> 2: You don't need to read the RTC hardware manually yourself, when
>> there is code already existing in the machine to do it for you.
>> Rather than intercept OSWORD 14 and do everything, pass the call on
>> the the MOS, and modify the returned data if it needs modifying,
>> something like:
>> 
>> .newosword
>> CMP #14:BNE newosword14
>> .oldosword
>> JMP (oldword)
>> .newosword14
>> STX &F0:STY &F1
>> LDY #0:LDA (&F0),Y:PHA :\ Save subcall number
>> LDY &F1:JSR oldosword
>> PLA:CMP #0:BNE newoswordexit
>> LDY #11:LDA #ASC"2":STA (&F0),Y :\ Overwrite century
>> INY:LDA #ASC"0":STA (&F0),Y
>> .newoswordexit
>> LDX &F0:LDY &F1:LDA #14
>> RTS
> 
> Hi Jonathan, 
> 
> I am unable to get the above to work. At one stage,
> it would only print the word "TIME" plus few meaningless
> characters. I took the liberty of changing the second line to:-
> 
> CMP#14: BEQ newosword14 
> (otherwise it did nothing).
> 
> 1.Would you please have another look at the programme.
>  Any additions or amendments, (indeed a whole programme 
>  in assembler - as above) would be most gratefully appreciated?
> 
> 2.Would you put 'oldword=&20C' ? 
>   ie the fourth line equivalent to 'JMP (&20C)'
>   otherwise, what would you put oldword equal to ?
> 
> Best wishes,
> 
> Raf.         
> 
> 
> 
> 
>




E-mail message checked by Spyware Doctor (6.0.0.362)
Database version: 5.10480
http://www.pctools.com/en/spyware-doctor-antivirus/
<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>