This is where the BIN Hackers and definition junkies discuss the inner workings of the EEC code and hardware. General tuning questions do not go here. Only technical/hardware-specific/code questions and discussions belong here.

Moderators: cgrey8, EDS50, Jon 94GT, 2Shaker

wizkid1358
Gear Head
Posts: 32
Joined: Sun May 01, 2016 9:40 am

Re: Getting additional parameters added to BE

Post by wizkid1358 » Tue Jan 11, 2022 9:30 pm

What is the correct way to modify the binary then to match the ROM size? Not having luck on finding information for that.
2002 F150 Harley Davidson, Supercharged 5.4L, EKO1, 11:1 compression, Comp XE274H cams, ID1050 injectors, DW100 and DW400 pumps, BA2600, Jokerz ported blower, FI Interchiller, Trick Turbo intercooler, Circle D 2800 Stall, too much more.

jsa
Tuning Addict
Posts: 914
Joined: Sat Nov 23, 2013 7:28 pm
Location: 'straya

Re: Getting additional parameters added to BE

Post by jsa » Fri Jan 14, 2022 5:23 pm

Using your 256kb bin
http://eectuning.org/forums/download/fi ... c06f5450c5

The goal is to strip out address ranges that are not Read Only Memory.

Looking at the LST file generated by SAD 4.07.16;

Note, SAD gives you the file address range and the bank address range.
As Sailorbob pointed out earlier, the file address range is being used by the OMAE1 CRY definition.

Code: Select all

###########################################################################
# Bank 9  file offset 32000-3ffff, 92000 - 9ffff
###########################################################################
92000: ff                 nop                    
92001: fa                 di                     interrupts OFF;
92002: 27,fe              sjmp  92002            goto 92002;
The file address range from 30000-31fff is FF filler. Use your favourite hex editor to delete the filler in that address range.

Code: Select all

###########################################################################
# Bank 8  file offset 22000-2ffff, 82000 - 8ffff  CODE/BOOT starts HERE
###########################################################################
82000: ff                 nop                    
82001: fa                 di                     interrupts OFF;
82002: e7,a1,04           jump  824a6            goto 824a6;
The file address range from 20000-21fff is FF filler. Use your favourite hex editor to delete the filler in that address range.

Code: Select all

###########################################################################
# Bank 1  file offset 12000-1ffff, 12000 - 1ffff
###########################################################################
12000: 27,fe              sjmp  12000            goto 12000;
The file address range from 10000-11fff is FF filler. Use your favourite hex editor to delete the filler in that address range.

Code: Select all

###########################################################################
# Bank 0  file offset 2000-ffff, 02000 - 0ffff
###########################################################################
02000: ff                 nop                    
02001: fa                 di                     interrupts OFF;
02002: 27,fe              sjmp  02002            goto 02002;
The file address range from 00000-01fff is FF filler. Use your favourite hex editor to delete the filler in that address range.



Saved the edited file as a 224kb version.
OMAE1 224kb.bin
(224 KiB) Downloaded 77 times
Looking at the LST file generated by SAD 4.07.16;

Code: Select all

###########################################################################
# Bank 9  file offset 2a000-37fff, 92000 - 9ffff
###########################################################################
92000: ff                 nop                    
92001: fa                 di                     interrupts OFF;
92002: 27,fe              sjmp  92002            goto 92002;

Code: Select all

###########################################################################
# Bank 8  file offset 1c000-29fff, 82000 - 8ffff  CODE/BOOT starts HERE
###########################################################################
82000: ff                 nop                    
82001: fa                 di                     interrupts OFF;
82002: e7,a1,04           jump  824a6            goto 824a6;
The file address range from 1a000-1bfff is FF filler. Use your favourite hex editor to delete the filler in that address range.

Code: Select all

###########################################################################
# Bank 1  file offset e000-1bfff, 12000 - 1ffff
###########################################################################
12000: 27,fe              sjmp  12000            goto 12000;

Code: Select all

###########################################################################
# Bank 0  file offset 0-dfff, 02000 - 0ffff
###########################################################################
02000: ff                 nop                    
02001: fa                 di                     interrupts OFF;
02002: 27,fe              sjmp  02002            goto 02002;



Saved the edited file as a 216kb version.
OMAE1 216kb.bin
(216 KiB) Downloaded 75 times
Looking at the LST file generated by SAD 4.07.16;

Code: Select all

###########################################################################
# Bank 9  file offset 28000-35fff, 92000 - 9ffff
###########################################################################
92000: ff                 nop                    
92001: fa                 di                     interrupts OFF;
92002: 27,fe              sjmp  92002            goto 92002;

Code: Select all

###########################################################################
# Bank 8  file offset 1a000-27fff, 82000 - 8ffff  CODE/BOOT starts HERE
###########################################################################
82000: ff                 nop                    
82001: fa                 di                     interrupts OFF;
82002: e7,a1,04           jump  824a6            goto 824a6;

Code: Select all

###########################################################################
# Bank 1  file offset e000-19fff, 12000 - 1dfff
###########################################################################
12000: 27,fe              sjmp  12000            goto 12000;

Code: Select all

###########################################################################
# Bank 0  file offset 0-dfff, 02000 - 0ffff
###########################################################################
02000: ff                 nop                    
02001: fa                 di                     interrupts OFF;
02002: 27,fe              sjmp  02002            goto 02002;
Last edited by jsa on Fri Jan 14, 2022 8:25 pm, edited 1 time in total.
Cheers

John

95 Escort RS Cosworth - CARD QUIK COSY ANTI / GHAJ0
Moates QH & BE
ForDiag

jsa
Tuning Addict
Posts: 914
Joined: Sat Nov 23, 2013 7:28 pm
Location: 'straya

Re: Getting additional parameters added to BE

Post by jsa » Fri Jan 14, 2022 8:16 pm

wizkid1358 wrote: Wed Jan 05, 2022 8:31 am Well 0x0fa6e looks to be it.
wizkid1358 wrote: Sat Jan 08, 2022 3:18 pm 0x83F9D should be the switch to disable transient fuel correction at idle.
wizkid1358 wrote: Sun Jan 09, 2022 1:27 pm After typing all of that, it seems the banks in the BEB file are numbered 0,1,2,3 instead of 0,1,8,9. I just used address 0x2BF9D and now it shows correctly.
sailorbob wrote: Mon Jan 10, 2022 6:48 am There is no 'bank' in a binary file but you must ensure the data in the binary file is in the same order as the banks when using the Binary Editor software.
Bank aware location from disassembly for all file sizes

Code: Select all

All file sizes
13a6e: a0,5a              word   5aa0
83f9c: 99,00,00           cmpb  R0,0             

Hex address in BIN file for each file size

Code: Select all

256kb file size
13A60h: 1E 00 F8 7F 80 11 0A 00 00 00 80 7F 80 7F A0 5A
23F90h: 06 24 20 30 0C 46 24 20 2B 37 7F 31 99 00 00 DF

224kb file size
0FA60h: 1E 00 F8 7F 80 11 0A 00 00 00 80 7F 80 7F A0 5A
1DF90h: 06 24 20 30 0C 46 24 20 2B 37 7F 31 99 00 00 DF

216kb file size
0FA60h: 1E 00 F8 7F 80 11 0A 00 00 00 80 7F 80 7F A0 5A
1BF90h: 06 24 20 30 0C 46 24 20 2B 37 7F 31 99 00 00 DF 

Hexadecimal at Hex address 0x2BF9D in BIN file for each file size

Code: Select all

256kb file size
2BF90h: 36 BD FF 34 A0 34 28 A0 36 2A A3 EC 38 34 A3 EC

224kb file size
2BF90h: 99 FF 34 DB 1D B3 D4 39 94 3F 94 16 B3 D4 3A 94

216kb
2BF90h: 93 3C 98 00 74 DF 03 BD FF 3C 6F EE 02 3C A0 3E
Nope, that does not match up!

0x1DF9D + 0xE000 = 0x2BF9D

E000 is the size of one 56kb bank of ROM
So the bank order in the BEB is 0,1,9,8 and the file size is 224kb.
Take the 224kb bin file from my previous post.
Open it in your favourite hex editor.
Select the Address range 2a000-37fff
CUT the selected Bank9 from the bin file
Position your cursor between file address 1bfff and 1c000 in the bin file
PASTE Bank9 to the cursor position in the bin file

Save the file as Bank 0198 order
OMAE1 224kb 0198.bin
(224 KiB) Downloaded 75 times
Looking at the LST file generated by SAD 4.07.16;

Code: Select all

###########################################################################
# Bank 9  file offset 1c000-29fff, 92000 - 9ffff
###########################################################################
92000: ff                 nop                    
92001: fa                 di                     interrupts OFF;
92002: 27,fe              sjmp  92002            goto 92002;

Code: Select all

###########################################################################
# Bank 8  file offset 2a000-37fff, 82000 - 8ffff  CODE/BOOT starts HERE
###########################################################################
82000: ff                 nop                    
82001: fa                 di                     interrupts OFF;
82002: e7,a1,04           jump  824a6            goto 824a6;

Code: Select all

###########################################################################
# Bank 1  file offset e000-1bfff, 12000 - 1ffff
###########################################################################
12000: 27,fe              sjmp  12000            goto 12000;

Code: Select all

###########################################################################
# Bank 0  file offset 0-dfff, 02000 - 0ffff
###########################################################################
02000: ff                 nop                    
02001: fa                 di                     interrupts OFF;
02002: 27,fe              sjmp  02002            goto 02002;
Bank aware location from disassembly and file location for 224kb file size and 0,1,9,8 bank order.
Bingo! file address now ties into bank address

Code: Select all

                                     83f9c: 99,00,00           cmpb  R0,0             
2BF90h: 06 24 20 30 0C 46 24 20 2B 37 7F 31 99 00 00 DF
So the CRY/BEB is not bank 0,1,2,3.
Your working address observations suggest the bank order is 0,1,9,8 in a 224kb file using the actual file address not the bank address.
Last edited by jsa on Tue Jan 25, 2022 7:26 am, edited 1 time in total.
Cheers

John

95 Escort RS Cosworth - CARD QUIK COSY ANTI / GHAJ0
Moates QH & BE
ForDiag

wizkid1358
Gear Head
Posts: 32
Joined: Sun May 01, 2016 9:40 am

Re: Getting additional parameters added to BE

Post by wizkid1358 » Mon Jan 24, 2022 10:17 pm

Man, I really appreciate all that work you did there. I understand BE skips over the filler at the beginning of each bank for the RAM. What is the logic behind the bank swap for bank 8 and 9 for BE?
2002 F150 Harley Davidson, Supercharged 5.4L, EKO1, 11:1 compression, Comp XE274H cams, ID1050 injectors, DW100 and DW400 pumps, BA2600, Jokerz ported blower, FI Interchiller, Trick Turbo intercooler, Circle D 2800 Stall, too much more.

jsa
Tuning Addict
Posts: 914
Joined: Sat Nov 23, 2013 7:28 pm
Location: 'straya

Re: Getting additional parameters added to BE

Post by jsa » Tue Jan 25, 2022 7:20 am

The bank swap is not for BE as such. 0 1 8 9 is fine for BE.

It may well be that the bin originated from a WDS package which stores bins as 0 1 9 8.

The BE definition reflects the BIN layout.
Cheers

John

95 Escort RS Cosworth - CARD QUIK COSY ANTI / GHAJ0
Moates QH & BE
ForDiag

Post Reply

Who is online

Users browsing this forum: No registered users and 6 guests

cron