Canon 40D

Started by dichterDichter, July 18, 2012, 08:55:06 AM

Previous topic - Next topic

0 Members and 4 Guests are viewing this topic.

heder

Quote from: Ant123 on August 08, 2022, 11:18:21 AM
Have you tried to logging MMIO traffic through JPCore?

I'm logging all engio functions, including a special one on the 40D assigned only to JPEG, but since you'r asking ..  I suddenly remeber I have seen multiple jpeg registers set directly without call to engio function somewhere, now I must hunt for these value!.
 
... some text here ..

heder

I tracked down the missing hardcoded registers and they seem to be set correctly, these are JPEG engine registers for control, mode, macro block size, etc, all seem correctly set. If they're set incorrectly the JPEG engine wont work at all. Then I realized that one of the EngDrvsOuts functions was'nt being hijacked logged correctly, and the calls did not go into by log. Oddly I can't hijack this address (function entry) but when I hijacked the next address it worked. So I logged all registers again and looked - but without any new result. This EngDrvsOuts function is only used in some rare cases with the jpeg engine.

So I'm, currently back to changing registers. I have gathered various bits of information regarding these, but nothing conclusive yet. I now need to investigate each registers that is used in conjunction with YUV image transfer in blocks into the JPEG engine, this is around 20 registers around 0xc0f11??? and 0xc0f13???.
... some text here ..

heder

Pattern is gone, but colours are screwed up, at least proof that I'm on the right track. I fighting 3 registers: 0xC0F13008, 0xC0F1300C, 0xC0F13010

... some text here ..

theBilalFakhouri

Nice work, keep it up!

Danne


heder

OMG .. 8) 8) 8) it's only HUUUEEEEE ! Pimped gimp image (hue-saturation +85 degrees)

... some text here ..

Skinny

congrats! it is very interesting to watch your progress even if I don't have 40D :)

imme


heder

None, atm. I can't get the motion-jpeg color's correctly. There are so many registers involved and unknowns that I'd sort of put that on hold. I can get the YUV scaled correctly, it's really fine. But when I transfer this YUV image to the jpeg-engine, the jpeg color's become incorrectly. I thought it was just hue shifted but I was wrong. The image above looks pretty, but its wrong.
... some text here ..