12587603 OS disassembly

They go by many names, P01, P59, VPW, '0411 etc. Also covering E38 and newer here.
jlvaldez
Posts: 155
Joined: Mon Feb 11, 2019 12:48 pm
cars: '01 - Corvette Z06
'20 - Sierra Denali
'03 - Volvo S80 T6
'16 - Accord V6
Location: DFW, Texas

Re: 12587603 OS disassembly

Post by jlvaldez »

Dumb question, what's a DLC? Thought you were referring to the obdii port (data link connector) and was confused.

Not an acronym I'm familiar with for software
ColPaul
Posts: 36
Joined: Tue Dec 31, 2019 11:24 am

Re: 12587603 OS disassembly

Post by ColPaul »

Yes Data Link Controller. I'm looking for which IC implements the communication port so I can lookup the specifics of the reads and writes to the registers/FIFOs.
User avatar
NSFW
Posts: 679
Joined: Fri Feb 02, 2018 3:13 pm

Re: 12587603 OS disassembly

Post by NSFW »

I'm pretty sure the P59 DLC is the same, or at least completely compatible with, the 68HC58 DLC in the P01.
We didn't change anything in the kernel code for sending and receiving messages.
Please don't PM me with technical questions - start a thread instead, and send me a link to it. That way I can answer in public, and help other people who have the same question. Thanks!
User avatar
antus
Site Admin
Posts: 8249
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: 12587603 OS disassembly

Post by antus »

Yeah p01 and p59 platform is the same, the only differences I am aware of is the size and type of the flash, and if they included the IAC stuff or not. There may be more, minor stuff but I dont think so. Other changes are in the software on the larger flash.
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
bubba2533
Posts: 498
Joined: Wed Apr 11, 2018 8:50 am
cars: 03 Chevy S10 Turbo V6

Re: 12587603 OS disassembly

Post by bubba2533 »

I've done some work figuring out how to use Ghidra a little bit using the 12587603 OS. It's good so far, although I'm an amateur when it comes to this.

It seems like having the tblu instruction implemented would make a pretty big difference as that looks to be used for all table lookups.
LS1 Boost OS V3 Here. For feature suggestions post in here Development Thread. Support future development ->Patreon.
User avatar
NSFW
Posts: 679
Joined: Fri Feb 02, 2018 3:13 pm

Re: 12587603 OS disassembly

Post by NSFW »

I've been working on those TBL instructions for the last couple days and I think it's basically working.
To try it, extract the files in the attached .zip file into your Ghidra\Processors\68000\data\languages directory.
You'll need to restart Ghidra to get it to pick up the changes.

The next thing on my to-do list is to import all of the address labels and comments from my IDA project into Ghidra somehow.

BTW, here's the feature request for getting this stuff into the official build of Ghidra:
https://github.com/NationalSecurityAgen ... ssues/1244
Attachments
CPU32.zip
(29.3 KiB) Downloaded 415 times
Please don't PM me with technical questions - start a thread instead, and send me a link to it. That way I can answer in public, and help other people who have the same question. Thanks!
User avatar
antus
Site Admin
Posts: 8249
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: 12587603 OS disassembly

Post by antus »

im not near a pc to test but this looks like great progress! it also means with this update the decompile will also work for those using ida with blc.
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
bubba2533
Posts: 498
Joined: Wed Apr 11, 2018 8:50 am
cars: 03 Chevy S10 Turbo V6

Re: 12587603 OS disassembly

Post by bubba2533 »

Edit: Ignore me....
LS1 Boost OS V3 Here. For feature suggestions post in here Development Thread. Support future development ->Patreon.
RADustin
Posts: 162
Joined: Fri Oct 17, 2014 9:44 am

Re: 12587603 OS disassembly

Post by RADustin »

starting to climb this near impossible mountain.. installed Ghidra and started to build my archive of public information.

I'd like to load up the bin and map out the dumpster dive data variables. and go through and label the info around x500 for the OSID and segment starts and ends. I figure thats a good 'start'. Long goal is to better understand AC logic- longer goal is to payback where possible, maybe help with the boost OS if I can.

I added in the Motorola cpu32 TBL instructions to my Ghidra install per the above. When I load in a 'fresh' ..603 bin it appears to analyze quite a bit. I didn't pad in an area for RAM though, and maybe I should have per NSFWs directions.

I tried to import the .asm file (12587603-2004-Corvette-M6.sanitized.asm) from NSFW to Ghidra- but it doesn't look like it did anything. I loaded as motorola cpu32. Just loads as raw binary. No functions or labels loaded.

asm file from here-
https://github.com/LegacyNsfw/12587603

I'm trying to avoid starting from complete scratch, so I'd like to get NSFWs asm file to load in. Any ideas for basic mistakes I may have done during the import? It's hard for me to ask a specific question as I am so new to Ghidra but given a little direction I can work from that.

thanks
RADustin
Posts: 162
Joined: Fri Oct 17, 2014 9:44 am

Re: 12587603 OS disassembly

Post by RADustin »

working on getting a fresh binary to run within ghidra. Following Antus's post here:

viewtopic.php?f=42&t=6247&start=10
memmap trial 1.PNG
memmap trial 1.PNG (28.8 KiB) Viewed 2693 times
I setup the follow memory map. Does this look correct? I'm getting functions and references in both RAM maps which from what I understand should only be in 1- so I am assuming it is not setup correctly.

edit- its only analyzing to the segment tables around 0x502ish before it quits. so I'm off somewhere. Maybe the cpu32 instructions aren't loaded in correctly??
Post Reply