Date : Sat, 23 Feb 2008 16:44:32 +1100
From : msmcdoug@... (Mark McDougall)
Subject: BBC FPGA Boots to BASIC... almost...
Jonathan Graham Harston wrote:
> If ROM paging wasn't working, that may cause a problem, but it
> would before it gets back to BASIC to REPORT the error.
ROM paging is not the problem, the BASIC ROM never gets paged out.
I've spent the afternoon tracing through the FPGA execution.
It gets as far as &BFEA, which appears to print an (error?) message (I've
yet to check the BASIC disassembly). It calls &B50E, which appears to print
each character in the message. Execution never reaches &BFF6 which is the
end of the above-mentioned print message routine.
I notice that each time I run it, I see various numbers of characters in
"Mistake" printed before it freezes - and sometimes half a character. So
perhaps it's dependent on timers or interrupts???
BTW for some reason my MOS disassembly is missing &DF00-&E113, which of
course is part of what I need... :(
Anyway, I noticed a comment that the print routine occupies 40% of the MOS
ROM - great! :( Execution is getting lost in there somewhere, and I don't
really have any easy way to track it down on the live FPGA. I can trace
execution at addresses which only get hit once, but something like the print
routine is practically impossible to track down on a live system.
Anyway, if anyone has any more suggestions, I'd be glad to consider them.
Otherwise I'm not sure what my options are at this point... :(
Regards,
--
| Mark McDougall | "Electrical Engineers do it
| <http://members.iinet.net.au/~msmcdoug> | with less resistance!"