Code: Select all
/// <summary>
/// Create a request to uploade size bytes to the given address
/// </summary>
/// <remarks>
/// Note that mode 0x34 is only a request. The actual payload is sent as a mode 0x36.
/// </remarks>
public Message CreateUploadRequest(int Address, int Size)
{
#if P12
byte[] requestBytes = { Priority.Physical0, DeviceId.Pcm, DeviceId.Tool, Mode.PCMUploadRequest };
#else
byte[] requestBytes = { Priority.Physical0, DeviceId.Pcm, DeviceId.Tool, Mode.PCMUploadRequest, Submode.Null, 0x00, 0x00, 0x00, 0x00, 0x00 };
requestBytes[5] = unchecked((byte)(Size >> 8));
requestBytes[6] = unchecked((byte)(Size & 0xFF));
requestBytes[7] = unchecked((byte)(Address >> 16));
requestBytes[8] = unchecked((byte)(Address >> 8));
requestBytes[9] = unchecked((byte)(Address & 0xFF));
#endif
return new Message(requestBytes);
}
In the meantime, kur4o dumped a load that appears (fingers crossed) to be bearing fruit in some places not another ... Unfortunately I have not yet found the DLC addressing, any help would be appreciated.
I do have a couple differently RAM addressed kernels out for trial ... Unfortunately the test PCM has become slightly damaged by another tool.
Speaking of that damaged PCM it is spitting out a continuous stream of,
Messages.RX: 6C F0 10 A2 00
Now, the Os is spitting them out right ??
So, if the Os jumped to the kernel code those messages would immediately stop, right ??
So that would be a good indicator that it's at least running (or trying to) ??
However if it never misses a beat on the A2 messages it never even tried!
Would that be a fair statement ...
I would think the PCM would miss a blink or two if it was dysfunctional from the upload ...