[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Elementary assembly lang question...
Dale Klein wrote:
>
> Why / What is the function of line BCD7, branch if carry, _back to the
> same address_? Is this a hole that the program gets stuck in until some
> interrupt digs it out? The cop timer gets reset just before (BCB0 to
> BCB6), it wouldn't be waiting for the cop timer to go off, would it? and
> then the t counter is compared with whatever is in memory 1986 (BCCD to
> BCD1), and then the bcc line I'm wondering about.
>
> BCCB 18 3C pushY
> BCCD 18 FE 10 0E ldY l_100ef_hc11reg_tcnt
> BCD1 18 BC 19 86 cmpY L1986
> BCD5 18 38 popY
> BCD7 24 FE LBCD7: bcc LBCD7
I'd say it's waiting for the ECM to get reset by the COP timer. Older
C3's tend to have code something like this - ie a conditional branch to
itself. Error conditions cause these infinite loops. The C3's use this
to exit bench test mode - once the input forcing bech test is gone, the
program inifinite loops until the watchdog resets it.
--
Ludis Langens ludis (at) cruzers (dot) com
Mac, Fiero, & engine controller goodies: http://www.cruzers.com/~ludis/
----------------------------------------------------------------------------
To unsubscribe from gmecm, send "unsubscribe gmecm" (without the quotes)
in the body of a message (not the subject) to majordomo@lists.diy-efi.org