DIY PROM Do It Yourself PROM chip burning help. No PROM begging. No PROMs for sale. No commercial exchange. Not a referral service.

byte writing to memory via ALDL mode 4

Thread Tools
 
Search this Thread
 
Old 08-31-2005, 10:17 PM
  #1  
Member

Thread Starter
 
MonteCarSlow's Avatar
 
Join Date: Jun 2001
Location: Eh?
Posts: 391
Likes: 0
Received 0 Likes on 0 Posts
Car: 1988 Monte Carlo SS
Engine: 5.7L TPI
Transmission: T5
Axle/Gears: 3.73
byte writing to memory via ALDL mode 4

Writing to any 8bit location in memory via aldl now works.

Thanks RBob for reviewing my patch (yes, this can be done with a ~40 byte patch), turns out I had one more misplaced '#' in my code before it worked.

I wrote a script in tcl to talk to my ecm over 8192 baud aldl via the serial port of my Unix box, here is the output:

Code:
shrek# tclsh8.4
% source util.tcl
% blockread 2000 200f

FF FF 13 E5 00 82 EA 9E
8D 00 FB 05 F1 0C 0C CD

% blockfill 2000 200f 55
................
OK
% blockread 2000 200f

55 55 55 55 55 55 55 55
55 55 55 55 55 55 55 55

% blockfill 2000 200f 00
................
OK
% blockread 2000 200f

00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00

% blockfill 2000 200f ff
................
OK
% blockread 2000 200f

FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF

% blockread 8000 803f

0B FF 02 E5 00 82 EF 67
8D 00 FB 05 F1 0C 0C CD
06 66 01 00 00 E6 04 04
94 29 0C CD 08 08 08 08
08 08 08 08 08 11 00 77
FF F5 1A 1A 2C 1A 10 50
0E 00 00 00 00 0C 47 47
47 47 44 36 36 33 22 11
....(etc)

%
Documentation and code will follow in a later post.

Last edited by MonteCarSlow; 09-01-2005 at 11:55 AM.
Old 08-31-2005, 10:25 PM
  #2  
Supreme Member
 
Grumpy's Avatar
 
Join Date: Jun 2000
Location: In reality
Posts: 7,554
Likes: 0
Received 1 Like on 1 Post
Car: An Ol Buick
Engine: Vsick
Transmission: Janis Tranny Yank Converter
Re: byte writing to memory via ALDL mode 4

Originally posted by MonteCarSlow
Writing to any 16bit location in memory via aldl now works. .
Glad to hear you got it working.......
Congrats
Old 08-31-2005, 11:01 PM
  #3  
Junior Member

 
ED89's Avatar
 
Join Date: Aug 2001
Location: Woodstock, IL USA
Posts: 48
Likes: 0
Received 0 Likes on 0 Posts
Car: 89 vet
Engine: v8
Transmission: Automatic
Old 08-31-2005, 11:22 PM
  #4  
Member

Thread Starter
 
MonteCarSlow's Avatar
 
Join Date: Jun 2001
Location: Eh?
Posts: 391
Likes: 0
Received 0 Likes on 0 Posts
Car: 1988 Monte Carlo SS
Engine: 5.7L TPI
Transmission: T5
Axle/Gears: 3.73
Here is the source code for the hack, note that it is written for AXXC
and addresses will need to change for other $8D bins.

Replace this:

Code:
        ldd     L01A2
        bne     LB3D3
        bset    L0048, #$01
        ldd     L0171
        std     L0192
        ldd     L0173
        std     L0194
        ldd     L0175
        std     L0196
        ldd     L0177
        std     L0198
        ldd     L0179
        std     L019A
        bra     LB3E5

With this:

Code:
        ldab    $0171                           ;get number of data bytes,
                                                ;  should be between 1<->8
        beq     @2                              ;check for 0
        cmpb    #$08                            ;
        bhi     @2                              ;branch if greater then 8 bytes
@1:     decb
        ldy     #$0174                          ;index to first byte in buffer
        ldx     $0172                           ;index to base address
        aby                                     ;add offset for databyte
        abx                                     ;add offset for databyte
        ldaa    $00,y                           ;fetch byte from ALDL buffer
        staa    $00,x                           ;store the byte to ram
        cmpb    #$00
        bne     @1                              ;loop til all bytes copied
                                                ;  from buffer to ram
@2:     clra
        staa    L0170                           ;store 0 in ALDL mode number
        bset    L0048, #$01                     ;set mode 4 flag
        bra     LB3D3                           ;branch always to routine to
                                                ;  clear mode 4

        nop                                     ;padding
        nop                                     ;padding

For the hex editor fans:

Code:
        b3ab f6 01 71
        b3ae 27 18
        b3b0 c1 08
        b3b2 22 14
        b3b4 5a 
        b3b5 18 ce 01 74
        b3b9 fe 01 72
        b3bc 18 3a
        b3be 3a
        b3bf 18 a6 00
        b3c2 a7 00
        b3c4 c1 00
        b3c6 26 ec
        b3c8 4f
        b3c9 b7 01 70
        b3cc 14 48 01
        b3cf 20 02
        b3d1 01
        b3d2 01
To write a byte (or group of up to 8 bytes) via ALDL, here is the command to send:
$F4-($55+n)-$04(mode 4)-$nn(number of bytes)-$aa(MSB of address)-$aa(LSB of address)-$dd-...-$dd-$cc(Checksum)

e.g.
1 byte write $FF starting at $2000: F4-5A-04-01-20-00-FF-8E
2 byte write $BE $EF starting at $2000: F4-5B-04-02-20-00-BE-EF-DE

ECM responds with: F4-56-04-B2

Not to be used for profit.

Last edited by MonteCarSlow; 09-01-2005 at 11:52 AM.
Old 09-01-2005, 10:00 AM
  #5  
Supreme Member

iTrader: (1)
 
junkcltr's Avatar
 
Join Date: Jan 2002
Location: garage
Posts: 4,432
Likes: 0
Received 1 Like on 1 Post
Engine: 3xx ci tubo
Transmission: 4L60E & 4L80E
Good job. You can use the
Code:
 code_here
feature for formatting code. Someone told me about it before and it works
well.
[code} code_here [\code}.
replace the } with a ] to have it show as above.


J
Old 09-01-2005, 11:50 AM
  #6  
Member

Thread Starter
 
MonteCarSlow's Avatar
 
Join Date: Jun 2001
Location: Eh?
Posts: 391
Likes: 0
Received 0 Likes on 0 Posts
Car: 1988 Monte Carlo SS
Engine: 5.7L TPI
Transmission: T5
Axle/Gears: 3.73
Originally posted by junkcltr
Good job. You can use the
Code:
 code_here
feature for formatting code. Someone told me about it before and it works
well.
[code} code_here [\code}.
replace the } with a ] to have it show as above.


J
Ahhh... I was using < stead of [. Thanks.

Last edited by MonteCarSlow; 09-01-2005 at 11:53 AM.
Old 09-01-2005, 12:34 PM
  #7  
Supreme Member

 
MrDude_1's Avatar
 
Join Date: Jun 2001
Location: Charleston, SC
Posts: 9,550
Likes: 0
Received 2 Likes on 2 Posts
Car: 91 Camaro Vert
Engine: 02 LS1, HX40
Transmission: 2002 LS1 M6
what does this do? allow you to "flash" a new bin on thru the ALDL port??
Old 09-01-2005, 01:00 PM
  #8  
Member

Thread Starter
 
MonteCarSlow's Avatar
 
Join Date: Jun 2001
Location: Eh?
Posts: 391
Likes: 0
Received 0 Likes on 0 Posts
Car: 1988 Monte Carlo SS
Engine: 5.7L TPI
Transmission: T5
Axle/Gears: 3.73
Originally posted by MrDude_1
what does this do? allow you to "flash" a new bin on thru the ALDL port??
Technically, yes...

This is of little value to a stock 730, but if it has been modified with atleast 4kb of extra battery backed ram you can write to that ram. And if the source code is modified to look in that extra ram for the fuel/spark/etc tables, you can then "flash" your new fuel/spark/etc tables through the aldl port (while the engine is running!) You can do this now with Craig's stuff, or a romulator, (and prominator I think?). But they cost lots of $$...

Last edited by MonteCarSlow; 09-01-2005 at 01:02 PM.
Old 09-02-2005, 10:19 AM
  #9  
TGO Supporter
 
AlexJH's Avatar
 
Join Date: Jul 2000
Posts: 812
Likes: 0
Received 1 Like on 1 Post
Engine: 5.7L V8
Transmission: 700R4
Originally posted by MonteCarSlow
Technically, yes...

This is of little value to a stock 730, but if it has been modified with atleast 4kb of extra battery backed ram you can write to that ram. And if the source code is modified to look in that extra ram for the fuel/spark/etc tables, you can then "flash" your new fuel/spark/etc tables through the aldl port (while the engine is running!) You can do this now with Craig's stuff, or a romulator, (and prominator I think?). But they cost lots of $$...
Cool hack!

Have you modded your ECM to use the extra RAM? I'm definitely interested in some pics/instructions...
Old 09-02-2005, 11:10 AM
  #10  
Member

Thread Starter
 
MonteCarSlow's Avatar
 
Join Date: Jun 2001
Location: Eh?
Posts: 391
Likes: 0
Received 0 Likes on 0 Posts
Car: 1988 Monte Carlo SS
Engine: 5.7L TPI
Transmission: T5
Axle/Gears: 3.73
Originally posted by AlexJH
Cool hack!

Have you modded your ECM to use the extra RAM? I'm definitely interested in some pics/instructions...
I'm in the process of modding source code to use the extra memory as the main lookup area for all the calibration data.

This thread contains the instructions / pics of adding extra battery backed ram to a 730: https://www.thirdgen.org/techbb2/sho...hreadid=316354

Perhaps if there is sufficent interest, a diy ram expansion board/kit can be made that plugs into the ecm edge connector.
Old 09-02-2005, 01:20 PM
  #11  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
"Perhaps if there is sufficent interest, a diy ram expansion board/kit can be made that plugs into the ecm edge connector"

INTREST ! INTREST !!
X10


I'm looking through the AUJP to match up the code you posted too.
The "@1" and "@2", are those leagal lable names or did you just refer to them to reference an existing lable in the code?
Haven't seen that notation before.
Also, where would you connect an external battery for backup?
Would it be in parrallel with the car battery source at the ECM?
Haven't done the full investigation on it yet. Hopefully I'll have a better handle on what you did this weekend.
Old 09-02-2005, 01:31 PM
  #12  
TGO Supporter
 
AlexJH's Avatar
 
Join Date: Jul 2000
Posts: 812
Likes: 0
Received 1 Like on 1 Post
Engine: 5.7L V8
Transmission: 700R4
Originally posted by MonteCarSlow
I'm in the process of modding source code to use the extra memory as the main lookup area for all the calibration data.

This thread contains the instructions / pics of adding extra battery backed ram to a 730: https://www.thirdgen.org/techbb2/sho...hreadid=316354

Perhaps if there is sufficent interest, a diy ram expansion board/kit can be made that plugs into the ecm edge connector.
Cool link, I didn't see it cuz I ignore most of the C3 stuff. That'll learn me.

Put me down for 4 of those boards!
Old 09-02-2005, 01:37 PM
  #13  
Member

Thread Starter
 
MonteCarSlow's Avatar
 
Join Date: Jun 2001
Location: Eh?
Posts: 391
Likes: 0
Received 0 Likes on 0 Posts
Car: 1988 Monte Carlo SS
Engine: 5.7L TPI
Transmission: T5
Axle/Gears: 3.73
Originally posted by JP86SS
I'm looking through the AUJP to match up the code you posted too. The "@1" and "@2", are those leagal lable names or did you just refer to them to reference an existing lable in the code?
Haven't seen that notation before.
Those are legal labels. The Lxxxx notation is just something generated by the disassembler.

Also, where would you connect an external battery for backup? Would it be in parrallel with the car battery source at the ECM?Haven't done the full investigation on it yet. Hopefully I'll have a better handle on what you did this weekend.
If you look at the pictures in the other thread, you will notice that the ram chip looks really large for a ram chip... that's because it has an internal lithium battery. That kind of ram chip is called nvsram. The battery is good for ~10 years according to the datasheet of the device. If I can't get my car tuned in 10 years, I need another hobby.
Old 09-02-2005, 01:42 PM
  #14  
Z69
Supreme Member

 
Z69's Avatar
 
Join Date: Sep 2003
Location: Texas
Posts: 1,409
Likes: 0
Received 1 Like on 1 Post
I thought the 730 had a little unused spot on the board for more ram?

Put me on the list of idot's for ignoring the C3 stuff- mostly.
Old 09-02-2005, 01:59 PM
  #15  
Member

Thread Starter
 
MonteCarSlow's Avatar
 
Join Date: Jun 2001
Location: Eh?
Posts: 391
Likes: 0
Received 0 Likes on 0 Posts
Car: 1988 Monte Carlo SS
Engine: 5.7L TPI
Transmission: T5
Axle/Gears: 3.73
Originally posted by Z69
I thought the 730 had a little unused spot on the board for more ram?
Yes the 730 does have a spot for it, but try and find a 2kb sram these days that drops right in. You also need to stuff some other parts that aren't on the board to make it work. I simply moved the h/w memory mapping of that 2kb sram from 1800-1FFF to 2000-2FFF (which doubles the amount of addressable memory).
Old 09-02-2005, 05:46 PM
  #16  
Z69
Supreme Member

 
Z69's Avatar
 
Join Date: Sep 2003
Location: Texas
Posts: 1,409
Likes: 0
Received 1 Like on 1 Post
Some old info, not sure if you guys looked into it anymore for feasability.
There's another post that referenced this stuff a few years back.

https://www.thirdgen.org/techbb2/sho...hreadid=276098
Old 09-16-2005, 09:06 PM
  #17  
Member

Thread Starter
 
MonteCarSlow's Avatar
 
Join Date: Jun 2001
Location: Eh?
Posts: 391
Likes: 0
Received 0 Likes on 0 Posts
Car: 1988 Monte Carlo SS
Engine: 5.7L TPI
Transmission: T5
Axle/Gears: 3.73
Just a quick update for those interested.

I have working DOS utilities that can be used to upload and download bins to and from the ECM via ALDL. An upload takes about 25 seconds, and a complete download of the bin takes about 50.

I anyone is doing the nvram expansion modification, I would appreciate hearing from you. More testers = stable hack. So far it's quite idiot (me) proof. If I garable the nvram contents the ecm recovers itself on a reboot.

I haven't yet started on a diy through hole memory expansion board. Too busy at work for the next 2-3 months.

Does anyone know how to use serial ports in a DOS program that is running inside a DOS box on Win9x? My tools only work if I boot into DOS only mode.
Old 09-19-2005, 08:07 AM
  #18  
Supreme Member

 
MrDude_1's Avatar
 
Join Date: Jun 2001
Location: Charleston, SC
Posts: 9,550
Likes: 0
Received 2 Likes on 2 Posts
Car: 91 Camaro Vert
Engine: 02 LS1, HX40
Transmission: 2002 LS1 M6
Originally posted by MonteCarSlow
Just a quick update for those interested.

I have working DOS utilities that can be used to upload and download bins to and from the ECM via ALDL. An upload takes about 25 seconds, and a complete download of the bin takes about 50.

I anyone is doing the nvram expansion modification, I would appreciate hearing from you. More testers = stable hack. So far it's quite idiot (me) proof. If I garable the nvram contents the ecm recovers itself on a reboot.

I haven't yet started on a diy through hole memory expansion board. Too busy at work for the next 2-3 months.

Does anyone know how to use serial ports in a DOS program that is running inside a DOS box on Win9x? My tools only work if I boot into DOS only mode.
what language are you writing it in?
if you want it to be stable across windows platforms, you're going to have to go the windows route of talking to the OS, not the port itself...
Old 09-19-2005, 08:30 AM
  #19  
Member

Thread Starter
 
MonteCarSlow's Avatar
 
Join Date: Jun 2001
Location: Eh?
Posts: 391
Likes: 0
Received 0 Likes on 0 Posts
Car: 1988 Monte Carlo SS
Engine: 5.7L TPI
Transmission: T5
Axle/Gears: 3.73
Originally posted by MrDude_1
what language are you writing it in?
if you want it to be stable across windows platforms, you're going to have to go the windows route of talking to the OS, not the port itself...
I wrote it in C using Borland Turbo C v2.01 because it was free to download from their website.

Are there free windows libraries that I can use to access the serial port that are backwards compatible to DOS? I used an old public domain serial comm library (asyclib2 I think it was called).

I'll warn you now, I'm a newbie with C-programming, so please use idiot proof mode when you reply.
Old 09-19-2005, 08:47 AM
  #20  
Supreme Member

 
MrDude_1's Avatar
 
Join Date: Jun 2001
Location: Charleston, SC
Posts: 9,550
Likes: 0
Received 2 Likes on 2 Posts
Car: 91 Camaro Vert
Engine: 02 LS1, HX40
Transmission: 2002 LS1 M6
honestly, ive never even seen a Borland compiler.. lol. ive been a microsoft developer since i started on PCs...

theres probly some freeware out there for the Borland compiler, but as far as i know, all of the Microsoft stuff you have to pay for.. heh, im so far away from the actual machine its not even funny anymore.. lol.. i really dont know where exactly to point you... when i talk out the serial port (rarely) i just use a predefined microsoft object.. easy and quick..
Old 09-19-2005, 11:54 AM
  #21  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
Runs in Windows

Might not be the best solution but may provide the functionality you need without exiting Winders.

http://www.jaegertech.com/dosboxer

Didn't have any specific info on the com port usage but does say it is a complete emulation of the processor.
Might be worth a shot.
Old 10-17-2005, 09:22 AM
  #22  
Member

Thread Starter
 
MonteCarSlow's Avatar
 
Join Date: Jun 2001
Location: Eh?
Posts: 391
Likes: 0
Received 0 Likes on 0 Posts
Car: 1988 Monte Carlo SS
Engine: 5.7L TPI
Transmission: T5
Axle/Gears: 3.73
Originally posted by MonteCarSlow
Here is the source code for the hack, note that it is written for AXXC
and addresses will need to change for other $8D bins.

Replace this:

Code:
        ldd     L01A2
        bne     LB3D3
        bset    L0048, #$01
        ldd     L0171
        std     L0192
        ldd     L0173
        std     L0194
        ldd     L0175
        std     L0196
        ldd     L0177
        std     L0198
        ldd     L0179
        std     L019A
        bra     LB3E5

With this:

Code:
        ldab    $0171                           ;get number of data bytes,
                                                ;  should be between 1<->8
        beq     @2                              ;check for 0
        cmpb    #$08                            ;
        bhi     @2                              ;branch if greater then 8 bytes
@1:     decb
        ldy     #$0174                          ;index to first byte in buffer
        ldx     $0172                           ;index to base address
        aby                                     ;add offset for databyte
        abx                                     ;add offset for databyte
        ldaa    $00,y                           ;fetch byte from ALDL buffer
        staa    $00,x                           ;store the byte to ram
        cmpb    #$00
        bne     @1                              ;loop til all bytes copied
                                                ;  from buffer to ram
@2:     clra
        staa    L0170                           ;store 0 in ALDL mode number
        bset    L0048, #$01                     ;set mode 4 flag
        bra     LB3D3                           ;branch always to routine to
                                                ;  clear mode 4

        nop                                     ;padding
        nop                                     ;padding

For the hex editor fans:

Code:
        b3ab f6 01 71
        b3ae 27 18
        b3b0 c1 08
        b3b2 22 14
        b3b4 5a 
        b3b5 18 ce 01 74
        b3b9 fe 01 72
        b3bc 18 3a
        b3be 3a
        b3bf 18 a6 00
        b3c2 a7 00
        b3c4 c1 00
        b3c6 26 ec
        b3c8 4f
        b3c9 b7 01 70
        b3cc 14 48 01
        b3cf 20 02
        b3d1 01
        b3d2 01
To write a byte (or group of up to 8 bytes) via ALDL, here is the command to send:
$F4-($55+n)-$04(mode 4)-$nn(number of bytes)-$aa(MSB of address)-$aa(LSB of address)-$dd-...-$dd-$cc(Checksum)

e.g.
1 byte write $FF starting at $2000: F4-5A-04-01-20-00-FF-8E
2 byte write $BE $EF starting at $2000: F4-5B-04-02-20-00-BE-EF-DE

ECM responds with: F4-56-04-B2

Not to be used for profit.
Just some extra notes about this hack:

1) The ECM sometimes replies with F4-56-00-B6 to this mode 4 byte write, this seems to be a valid reply and if you look at the locations, the bytes did get written properly. I still haven't figured out why I get a mode 0 reply sometimes. But hey - it works...

2) Wait ~10msec before sending the next mode 4 packet because the bytes get written from the aldl packet buffer to memory during the 6.25msec interrupt routine. I haven't clobbered myself yet with this but it something I noticed last night that I didn't think of before.
Old 10-18-2005, 11:40 AM
  #23  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
Originally posted by MonteCarSlow
Just some extra notes about this hack:
I still haven't figured out why I get a mode 0 reply sometimes. But hey - it works...
This could be due to the logic (BRA LB3D3) B3BF in AUJP , that does not clear Mode 4 until Mode 0 has been requested.
You may be getting the confirmation of the Mode 0 change.
Code:
;--------------------------------------------------
LB3BF:        brclr   *L0048,#0x01,LB3D1      ; BR IF ALREADY OUT OF ALDL MODE 4
                                              ; ... else
              ldaa    L0170                   ; GET CURRENT ALDL MODE <----****
              bne     LB3D1                   ; BR IF NZ
                                              ; (don't clr mode 4 till mode 0 req)
                                              ; .... else
              bclr    *L0048,#0x71            ; CLR 0111 0001, MODE 4 FLAGS
              bclr    *L0039,#0x01            ; CLR b0, SKIP ERR 42 FLAG
              clr     L00D7                   ; CLR EST FEEDBACK COUNTER
              ;--------------------------------------------------
Old 10-18-2005, 11:54 AM
  #24  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
There is also a ALDL timeout of 5 seconds of no activity that will revert it back to Mode 0.
The address of the timer is $019E in AUJP. The 5 second value is hard coded just below.
I don't have my lst file to get the exact addy right now.
Old 10-18-2005, 12:37 PM
  #25  
Member

Thread Starter
 
MonteCarSlow's Avatar
 
Join Date: Jun 2001
Location: Eh?
Posts: 391
Likes: 0
Received 0 Likes on 0 Posts
Car: 1988 Monte Carlo SS
Engine: 5.7L TPI
Transmission: T5
Axle/Gears: 3.73
Originally posted by JP86SS
This could be due to the logic (BRA LB3D3) B3BF in AUJP , that does not clear Mode 4 until Mode 0 has been requested.
You may be getting the confirmation of the Mode 0 change.
Code:
;--------------------------------------------------
LB3BF:        brclr   *L0048,#0x01,LB3D1      ; BR IF ALREADY OUT OF ALDL MODE 4
                                              ; ... else
              ldaa    L0170                   ; GET CURRENT ALDL MODE <----****
              bne     LB3D1                   ; BR IF NZ
                                              ; (don't clr mode 4 till mode 0 req)
                                              ; .... else
              bclr    *L0048,#0x71            ; CLR 0111 0001, MODE 4 FLAGS
              bclr    *L0039,#0x01            ; CLR b0, SKIP ERR 42 FLAG
              clr     L00D7                   ; CLR EST FEEDBACK COUNTER
              ;--------------------------------------------------
Nope, thats definitely not the culprit. That code is overwritten by my mode 4 byte write hack...

It's not a timed out reply, I get the mode 0 or 4 reply right after my mode 4 request.

Good ideas though...

As an aside, I was able to insert my mode 4 hack into another position in the code and generate a variable length mode 3 reply to my variable length mode 4 request. Still needs to be debugged though, it's not working 100%. In other words, the aldl reply read back the data bytes I wrote.

Last edited by MonteCarSlow; 10-18-2005 at 12:40 PM.
Old 10-18-2005, 08:19 PM
  #26  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
I'm drooling like Homer at the Doughnut shop!
Old 02-26-2009, 10:43 AM
  #27  
Junior Member
 
spanners's Avatar
 
Join Date: Aug 2007
Posts: 41
Likes: 0
Received 0 Likes on 0 Posts
Re: byte writing to memory via ALDL mode 4

have you ever thought of writing the whole bin to sram using mode4 instead of just the calibration we do it with the 808 ecu and modified holden code with a max232 based serial board and and an sram mounted on a second board that plugs into the memcal socket and are realtime tuning with tunerpro R/T and an extra little software program can drag a spark map point or ve table graph point and update in realtime just like using an autoprom can load whole bins as well
Old 02-27-2009, 12:51 PM
  #28  
Member

Thread Starter
 
MonteCarSlow's Avatar
 
Join Date: Jun 2001
Location: Eh?
Posts: 391
Likes: 0
Received 0 Likes on 0 Posts
Car: 1988 Monte Carlo SS
Engine: 5.7L TPI
Transmission: T5
Axle/Gears: 3.73
Re: byte writing to memory via ALDL mode 4

Originally Posted by spanners
have you ever thought of writing the whole bin to sram using mode4 instead of just the calibration we do it with the 808 ecu and modified holden code with a max232 based serial board and and an sram mounted on a second board that plugs into the memcal socket and are realtime tuning with tunerpro R/T and an extra little software program can drag a spark map point or ve table graph point and update in realtime just like using an autoprom can load whole bins as well
Initially, yes, but the risk of being stranding on the side of the road wasn't something I wanted to take. What you describe is prone (in my opinion) to corrupting the code space. Do you guys still keep the eprom or has the whole eprom been replaced by nvram?
Old 02-27-2009, 01:35 PM
  #29  
Junior Member
 
spanners's Avatar
 
Join Date: Aug 2007
Posts: 41
Likes: 0
Received 0 Likes on 0 Posts
Re: byte writing to memory via ALDL mode 4

i should of worded that differently thought of running the whole bin on sram .nope the whole bin is in the nvsram we have a memcal plugged onto the side of our board but only to use the cylinder select netres and limp home mode resistors and the knock filter and allows for changing from v6 to v8 just by sliding in the suitiable memcal and when finished tuning its tuned to that memcal so we can burn a chip and slot it in the memcal and plug it in an ecu.no strandings on the side of the road yet there have been cases before with similar boards of the sram getting corrupted but nothing to do with tuning more to do with power surges to the ecu from loose battery terminals or earths but not very often(i think ive heard of it happening 3 times)and theres thousands of people running with the whole bin on sram no problems.and nothing a memcal in the glove box wont fix it if did happen the ecu can still take a memcal even with the write line wire attached under to board.we can change 1 byte or we can write the whole bin whatever needs doing.ive sent a little package of goodies via JP86SS just now for you guys to have a look at has all the software to link to tunerpro for realtime tuning hes got my contact details and is going to foward the stuff to you anyway but im willing to help out if need be.heres a pic of my realtime ecu with the shell off.and the realtime kit with both boards and all componants are about $160 dollars australian unassembled need to solder them together pretty cheap with the difference in the dollar
Attached Thumbnails byte writing to memory via ALDL mode 4-808-comms-nvram-1.jpg  

Last edited by spanners; 02-27-2009 at 01:41 PM.
Old 02-27-2009, 01:49 PM
  #30  
Member

Thread Starter
 
MonteCarSlow's Avatar
 
Join Date: Jun 2001
Location: Eh?
Posts: 391
Likes: 0
Received 0 Likes on 0 Posts
Car: 1988 Monte Carlo SS
Engine: 5.7L TPI
Transmission: T5
Axle/Gears: 3.73
Re: byte writing to memory via ALDL mode 4

Is your serial interface just a built in ALDL-to-serial conversion? Did you folks modify mode 4 to get this to work?
Old 02-27-2009, 02:10 PM
  #31  
Junior Member
 
spanners's Avatar
 
Join Date: Aug 2007
Posts: 41
Likes: 0
Received 0 Likes on 0 Posts
Re: byte writing to memory via ALDL mode 4

yeah the 1227808 doesnt have 8192 buad aldl as its missing the uart that the 165 has so we have the max232 to give us 8192 buad aldl and its got seperate TX and RX lines to the ecu so im not sure how this will effect you as the software we use to realtime with tunerpro is setup for this type of setup if you sre sending down 1 wire aldl its going to see the bytes you sent and would need to be told to disreguard them.and your email rejected my package of software goodiness good old gmail does it all the time
Old 03-14-2009, 05:03 AM
  #32  
Junior Member
 
spanners's Avatar
 
Join Date: Aug 2007
Posts: 41
Likes: 0
Received 0 Likes on 0 Posts
Re: byte writing to memory via ALDL mode 4

hey montecarslow theres a modified version of antusprom over on www.delcohacking.net for 1 wire aldl now should help you guys better than our seperate transmit and recieve version its in the tools section with the other version.cant wait to see if it works with your setup.shame you guys are in the middle of winter.
Old 08-07-2009, 01:14 PM
  #33  
Member

 
The_Punisher454's Avatar
 
Join Date: Jul 2004
Location: Salem,Oregon.
Posts: 419
Likes: 0
Received 1 Like on 1 Post
Car: '74 Firebird, '84 vette
Engine: 454 twin turbo, 350 HSR
Transmission: 4L80E, 700R4
Axle/Gears: 9", Dana36
Re: byte writing to memory via ALDL mode 4

Originally Posted by spanners
hey montecarslow theres a modified version of antusprom over on www.delcohacking.net for 1 wire aldl now should help you guys better than our seperate transmit and recieve version its in the tools section with the other version.cant wait to see if it works with your setup.shame you guys are in the middle of winter.
So let me get this straight. If I use the modified version of antusprom + tunerproRT & scannerpro with a montecarslo style nvsram I can do realtime tuning with tracing as well as aldl all at the same time, through a single usb aldl cable?
Old 08-07-2009, 02:05 PM
  #34  
Supreme Member

iTrader: (1)
 
junkcltr's Avatar
 
Join Date: Jan 2002
Location: garage
Posts: 4,432
Likes: 0
Received 1 Like on 1 Post
Engine: 3xx ci tubo
Transmission: 4L60E & 4L80E
Re: byte writing to memory via ALDL mode 4

So it goes like this: tunerpro -> antusprom_software -> ALDL -> NVSRAM_read/writes

All done realtime.

Since the antusprom is using the ALDL resource. Can tunerpro see past it and connect to the ALDL to do data logging at the same time as doing the emulating?
Old 08-16-2009, 08:27 AM
  #35  
Junior Member
 
spanners's Avatar
 
Join Date: Aug 2007
Posts: 41
Likes: 0
Received 0 Likes on 0 Posts
Re: byte writing to memory via ALDL mode 4

sorry for the late reply guys.antusprom is emulating part of the moates autoprom and works as a passthrough/autoprom emulator for aldl it makes tunerpro think there is an autoprom attached.it can log and tune at the same time via the one usb or serial aldl cable.i dont use montecarslows version of board or bin but it is similar to what i use.as far as i know even montecarslow hasnt tested the antusprom for his version bins yet.but it is a nice setup when its all going.antusprom automaticallly sucks out the bin and then your away tuning.any questions or problems with it ant will be more than happy to answer any for you guys on our forum theres pretty good instructions on that page for setting antusprom and com0com up too work
Related Topics
Thread
Thread Starter
Forum
Replies
Last Post
InfernalVortex
Electronics
10
04-20-2021 11:31 AM
Vintageracer
Interior Parts for Sale
12
09-24-2017 12:34 PM
Rocket-Doc
TBI
1
11-14-2015 02:08 PM
327IROC85
Electronics
8
09-23-2015 12:11 AM
greenyone
Tech / General Engine
1
09-08-2015 08:41 PM



Quick Reply: byte writing to memory via ALDL mode 4



All times are GMT -5. The time now is 01:12 AM.