Page 2 of 2

Re: Hardware and Firmware Errors and Bugs

Posted: 14 Mar 2014 22:59
by Martin A
I've been playing with an automated dis-assembly of the MTX Roms, and comparing that to the rom listings from Andy's site, and I think I've found a bug!

At 018fd in the listing, where RST 10 is being used prep VS 7 before the system prints error messages, is the following code.

Code: Select all

SYNT11:  PUSH AF
SYNTAX:  RST SCRRST
         DB 6fH,13,10
SYNT1:   LD HL,ERR0    
         POP AF

The RST 10 byte string decodes as:
6FH – select VS 7, with CLS and continue
13 - ASCII code for carriage return
10 - ASCII code for line feed

But there’s no continuation bit on the Carriage return, so RST10 processing would stop.
If it does, then the 10 byte gets processed, and is the instruction LD A,(BC),

With the code as it is doesn’t affect anything
a) VS 7 is only 1 line, and it’s been cleared so the LF isn’t needed
b) A gets restored 2 lines later,

What's interesting is, the dis-assembler didn’t find any references to the addresses for “SYNTAX” or “SYNT1” when it was building the list of branches and jumps.

So I’m wondering if the push/pop AF isn’t needed either, and was just added to “fix” the corrupted A register.

Comments, speculation and raspberries tot he usual address.....

Re: Hardware and Firmware Errors and Bugs

Posted: 11 Jul 2014 22:03
by Crazyboss
dont know if its real erros, also mentioned at Facebook MTX Group.

For loops with negative steps dont do as they do on eg. MSX BASIC.

Dave Stevenson said: See page 83 of the Phoenix MTX Operator's manual - this behaviour, with negative step increments, is documented there



If you use assembler routines (using the build in assembler) you need to go into the assembler again to align the code, if you changed someting.

Dave Stevenson mention something about that can be found here: Phoenix Operator's Manual page 183

Paul Daniels said if you are adding basic before an ASSEM line, you will need to reenter the ASSEM line and come out again so that it gets assembled at the new address.