> Anyone any ideas please?

My thoughts, based on looking at the supplied program:

> 440 TRA start,0
> 450 SBYTES flp1_tra_list,start,pointer-start
> 460 PRINT "You may reload your codes with:"
> 470 PRINT "a=RESPR(";pointer-start;")"
> 480 PRINT "LBYTES flp1_tra_list,a"
> 490 PRINT "TRA a"
...
>         "at line 440:1  invalid parameter".

I don't know the TRA command syntax (added to MG ROMs(?) - I've only got
Classic JM), but even this program (as written) is inconsistant with its
usage of the TRA command.  Compare lines 440 & 490:

        440 TRA start,0
        490 PRINT "TRA a"

In line 440, it has 2 params, but the instruction printed to the user in
line 490 only has 1.  From my guessing at how it works, I can only see
that it needs 1 param: the address of the block of memory that holds the
translate definition ($4AFB, offset of codes, offset of multi-byte
translates start)

What is TRA m,n supposed to do (as opposed to just a plain TRA m)?

Try changing 440 to: 440 TRA start

> Entering "PRINT start" at this juncture yealds:
>     4.07296E6
> 
> Running the program again immediately (using the same data) yealds:
>     4.07192E6

This difference is because you've just RESPRed another 1024 bytes of
memory (subject to system rounding/overheads) in line 150!

Robert

Reply via email to