P04 Custom Code

For discussion and distribution of custom code and hacks
ProfessWRX
Posts: 139
Joined: Tue Oct 03, 2023 9:33 am
cars: 04 Monte SSSC
04 Tahoe
92 Trans Am
Location: AZ USA

Re: P04 Custom Code

Post by ProfessWRX »

EDIT: Definitely NOT the same code
I’ve looked at the 00 GTP bin and 97 regal bins. Code is the same as far as the switch is concerned.
Last edited by ProfessWRX on Thu Nov 30, 2023 2:32 am, edited 1 time in total.
kur4o
Posts: 956
Joined: Sun Apr 10, 2016 9:20 pm

Re: P04 Custom Code

Post by kur4o »

Usually there is a setting associated with that switches. Maybe there is enable bit too, time to be pressed on, There is also visual confirmation[a switched ligth] when the mode is activated.

We need to find the logic that handles this. I know there is different kind of modes. Manual, performance,hot, normal for all bins. Usage depends on some settings I guess.

zack4200, this is from a paid program that starts with ALL, uses the same schematics from techline, but it is easier to navigate. Downside is not all data is available, and some charts are missing.
kur4o
Posts: 956
Joined: Sun Apr 10, 2016 9:20 pm

Re: P04 Custom Code

Post by kur4o »

2nd_Gear_Start_Lamp_On_Car -present/not present
Type_Of_Shift_Pattern - ???class2/pcm
Shift_Patern_press_Time -time for switch pressed to activate
2nd_Gear_Start_Switch - switch)type fitted
2nd_Gear_Start_press_Time -time for switch pressed to activate

I know these are available in calibration, but have no way to find them. If you find the logic and mark them will be great.
ProfessWRX
Posts: 139
Joined: Tue Oct 03, 2023 9:33 am
cars: 04 Monte SSSC
04 Tahoe
92 Trans Am
Location: AZ USA

Re: P04 Custom Code

Post by ProfessWRX »

I’ve not been able to wrap my head around how the trans tables work yet. I’ve spent no time doing it but it’s quite crazy how many indirect addresses are used.
Hard to follow Indirect addresses of tables of indirect addresses of tables.

When I sit down and can actually follow it, it should take very little time to find it.
I have seen a few undefined trans shift logic tables. No ETA on when I’ll figure it out though.
ProfessWRX
Posts: 139
Joined: Tue Oct 03, 2023 9:33 am
cars: 04 Monte SSSC
04 Tahoe
92 Trans Am
Location: AZ USA

Re: P04 Custom Code

Post by ProfessWRX »

Started to work the Multitable read subroutine. Trans Lookups make a lot more sense now. But I'm VERY early on.
kur4o
Posts: 956
Joined: Sun Apr 10, 2016 9:20 pm

Re: P04 Custom Code

Post by kur4o »

Some snippet how index, double index, triple index and offsets for table lookup are used. When you have them labelled they all follow same order

Main index for code lookup

Code: Select all

ROM:00050022 off_50022:      dc.l [___unk_501C6__]-upshift          ; DATA XREF: sub_61F02+3Co
ROM:00050026                 dc.l unk_50352 
ROM:0005002A                 dc.l unk_504DE 
ROM:0005002E off_5002E:      dc.l unk_5028C          ; DATA XREF: sub_61FC8+3Ao
ROM:00050032                 dc.l unk_50418
ROM:00050036                 dc.l unk_505A4


Offset for table addresses.

Code: Select all

ROM:000501C6 [___unk_501C6__]:      dc.b   0                ; DATA XREF: ROM:off_50022o
ROM:000501C7                 dc.b   0
ROM:000501C8                 dc.l unk_7C1E8 1-2 driveLow normal line
ROM:000501CC                 dc.b   0
ROM:000501CD                 dc.b   0
ROM:000501CE                 dc.l unk_7C1EA 2-3 drivelow normal line
ROM:000501D2                 dc.b   0
ROM:000501D3                 dc.b   0
ROM:000501D4                 dc.l   0  3-4 drivelow normal not used
ROM:000501D8                 dc.b   1
ROM:000501D9                 dc.b   0
ROM:000501DA                 dc.l unk_7C1A0   1-2 drive2 normal
ROM:000501DE                 dc.b   0
ROM:000501DF                 dc.b   0
ROM:000501E0                 dc.l unk_7C1C2 2-3 drive2 normal
ROM:000501E4                 dc.b   0
ROM:000501E5                 dc.b   0
ROM:000501E6                 dc.l   0 3-4 drive2 normal not used
ROM:000501EA                 dc.b   0
ROM:000501EB                 dc.b   0
ROM:000501EC                 dc.l unk_7C460 1-2 HOT WOT 
ROM:000501F0                 dc.b   0
ROM:000501F1                 dc.b   0
ROM:000501F2                 dc.l unk_7C462 2-3 HOT WOT
ROM:000501F6                 dc.b   0
ROM:000501F7                 dc.b   0
ROM:000501F8                 dc.l unk_7C464 3-4 HOT WOT
ROM:000501FC                 dc.b   1
ROM:000501FD                 dc.b   0
ROM:000501FE                 dc.l unk_7C2BC  1-2 HOT normal line
ROM:00050202                 dc.b   1
ROM:00050203                 dc.b   0
ROM:00050204                 dc.l unk_7C2DE 2-3 HOT normal line
ROM:00050208                 dc.b   1
ROM:00050209                 dc.b   0
ROM:0005020A                 dc.l unk_7C300 3-4 HOT normal line
ROM:0005020E                 dc.b   0
ROM:0005020F                 dc.b   0
ROM:00050210                 dc.l unk_7C454 1-2 WOT
ROM:00050214                 dc.b   0
ROM:00050215                 dc.b   0
ROM:00050216                 dc.l unk_7C456 2-3 WOT
ROM:0005021A                 dc.b   0
ROM:0005021B                 dc.b   0
ROM:0005021C                 dc.l unk_7C458 3-4 WOT
ROM:00050220                 dc.b   1
ROM:00050221                 dc.b   0
ROM:00050222                 dc.l unk_7C04C      1-2 Cruise
ROM:00050226                 dc.b   1
ROM:00050227                 dc.b   0
ROM:00050228                 dc.l unk_7C118  2-3 CRUISE
ROM:0005022C                 dc.b   1
ROM:0005022D                 dc.b   0
ROM:0005022E                 dc.l unk_7C13A 3-4 CRUISE
ROM:00050232                 dc.b   1
ROM:00050233                 dc.b   0
ROM:00050234                 dc.l unk_7C04C 1-2 normal 
ROM:00050238                 dc.b   1
ROM:00050239                 dc.b   0
ROM:0005023A                 dc.l unk_7C06E 2-3 normal
ROM:0005023E                 dc.b   1
ROM:0005023F                 dc.b   0
ROM:00050240                 dc.l unk_7C090 3-4 normal
ROM:00050244                 dc.b   1
ROM:00050245                 dc.b   0
ROM:00050246                 dc.l unk_7C388 1-2 Performance shift
ROM:0005024A                 dc.b   1
ROM:0005024B                 dc.b   0
ROM:0005024C                 dc.l unk_7C3AA 2-3 performance shift
ROM:00050250                 dc.b   1
ROM:00050251                 dc.b   0
ROM:00050252                 dc.l unk_7C3CC 3-4 performance shift
ROM:00050256                 dc.b   0
ROM:00050257                 dc.b   0
ROM:00050258                 dc.l unk_7C46C 1-2 performance WOT
ROM:0005025C                 dc.b   0
ROM:0005025D                 dc.b   0
ROM:0005025E                 dc.l unk_7C46E 2-3 performance WOT
ROM:00050262                 dc.b   0  
ROM:00050263                 dc.b   0
ROM:00050264                 dc.l unk_7C470 3-4 performance WOT
ROM:00050268                 dc.b   1
ROM:00050269                 dc.b   0
ROM:0005026A                 dc.l unk_7C4A0  1-2 driveLow URBAN line
ROM:0005026E                 dc.b   1
ROM:0005026F                 dc.b   0
ROM:00050270                 dc.l unk_7C4C2 2-3 drivelow Urban line
ROM:00050274                 dc.b   0
ROM:00050275                 dc.b   0
ROM:00050276                 dc.l   0  3-4 drivelow URBAN line [set to 0 address not used]
ROM:0005027A                 dc.b   0
ROM:0005027B                 dc.b   0
ROM:0005027C                 dc.l unk_7C768 1-2???
ROM:00050280                 dc.b   0
ROM:00050281                 dc.b   0
ROM:00050282                 dc.l unk_7C76A 1-2???
ROM:00050286                 dc.b   0
ROM:00050287                 dc.b   0
ROM:00050288                 dc.l unk_7C76C 1-2???
ROM:0005028C unk_5028C:      dc.b   0                ; DATA XREF: ROM:off_5002Eo

Than it is matter of counting dwords jumps to get which one table is used.
ProfessWRX
Posts: 139
Joined: Tue Oct 03, 2023 9:33 am
cars: 04 Monte SSSC
04 Tahoe
92 Trans Am
Location: AZ USA

Re: P04 Custom Code

Post by ProfessWRX »

Yes, I was already noticing that, but that helps!

Can anybody tell me what URBAN tables are?!?
ProfessWRX
Posts: 139
Joined: Tue Oct 03, 2023 9:33 am
cars: 04 Monte SSSC
04 Tahoe
92 Trans Am
Location: AZ USA

Re: P04 Custom Code

Post by ProfessWRX »

Also, I think there's a bit of code for Performance Mode 3 that will potentially alter table lookups. This could be the link to 2nd gear start tables... I'll continue to do some digging.

There are a total of 10 different Transmission "modes" to determine shift points/quality. But there's 11 table sets...
Performance Mode 3 chooses mode 1 or 7 depending on another variable I haven't traced (or can't), it might be a traction control variable.
Last edited by ProfessWRX on Thu Nov 30, 2023 12:36 pm, edited 1 time in total.
ProfessWRX
Posts: 139
Joined: Tue Oct 03, 2023 9:33 am
cars: 04 Monte SSSC
04 Tahoe
92 Trans Am
Location: AZ USA

Re: P04 Custom Code

Post by ProfessWRX »

I may force Performance Mode 3 in my car to see...
User avatar
antus
Site Admin
Posts: 8253
Joined: Sat Feb 28, 2009 8:34 pm
cars: TX Gemini 2L Twincam
TX Gemini SR20 18psi
Datsun 1200 Ute
Subaru Blitzen '06 EZ30 4th gen, 3.0R Spec B
Contact:

Re: P04 Custom Code

Post by antus »

Yeah there could be some special ones, traction or abuse, or limp home modes.
Have you read the FAQ? For lots of information and links to significant threads see here: http://pcmhacking.net/forums/viewtopic.php?f=7&t=1396
Post Reply