[Gmecm] Killing $58 ALDL chatter
Dig
turbodig
Tue Sep 4 13:55:20 UTC 2007
Guessing this won't help your connectivity much... didn't for us.
I added this little chunk of code, and it made aldl behave *much* better.
LFA18 ret
SETRX ldx #$4007 ;load the SCI interrupt control reg
bset 0, x, #%00110110 ;set up for RX interrups/wakeup
bclr L00C3, #%01000000 ;clear "SCI recieve active" flag
ret
Need to change this beq so that it gets called:
LF996: ldX #$4007 ; SCI Control Register
bclr 0, X, #%00110110 ; Disable receives??
brset L0028, #%10000000, LF9DF ; In ALDL mode, branch
ldX #KSCIMSG ; SCI Message table
ldaB L0000 ; Minor loop counter
andB #%00011110 ; Mask B
aBX ; Get every other location (i.e. every
; 2 bytes)
; X now holds an address, of the next scheduled message to be sent.
ldX 0, X ; Save the address pointed to by X in X
beq SETRX ; If the result is zero, exit
Hope that helps... I've got a patcher patch to fix this for $58, as well, but it will only work in unmodified code.
Dig
----- Original Message ----
From: Rob Handley <Robin at FuryWorld.fsnet.co.uk>
To: gmecm at diy-efi.org
Sent: Sunday, September 2, 2007 1:04:10 AM
Subject: Re: [Gmecm] Killing $58 ALDL chatter
No, I don't need the chatter.
I'll give it a go...
Thanks,
Robin
----- Original Message -----
From: "Darren Freed" <darrenfreed at gmail.com>
To: <gmecm at diy-efi.org>
Sent: 02 September 2007 01:41
Subject: Re: [Gmecm] Killing $58 ALDL chatter
> Do you need the chatter for other devices on the bus? If not, disable the
> chatter altogether in the code (zero out the message schedule table,
> sorry,
> not sure where that is in $58, only $A1, $2E, $DF and others).
>
> Darren
>
>
>
> On 9/1/07, Rob Handley <Robin at furyworld.fsnet.co.uk> wrote:
>>
>> Been having another go at improving my PC code to kill off $58 chatter.
>>
>> This time I made a 5ms timer by reprogramming the PC clock interrupt. I
>> thought if I accurately timed the arrival of a chatter message, I could
>> accurately time the Mode 1 message request.
>>
>> Unfortunately, I can't make my code kill off the chatter messages first
>> time, every time. More often than not it does it first time, but
>> sometimes
>> it takes 2 bites at the cherry.
>>
>> So, the $58 ALDL code is even more picky than I thought, and a 5ms timer
>> doesn't seem to be high enough resolution to get the timing bang on.
>>
>> As it stands I wait for one tick of my 5ms to elapse after receipt of a
>> chatter message, then bang in a Mode 1 request straight after.
>>
>> If anybody's got a better way, I'd be interested to hear it.
_______________________________________________
Gmecm mailing list
Gmecm at diy-efi.org
Subscribe: http://lists.diy-efi.org/mailman/listinfo/gmecm
Main WWW page: http://www.diy-efi.org/gmecm
More information about the Gmecm
mailing list