Reviving the Pakon film scanner
ktkaufman03.github.io
ktkaufman03.github.io
It's also worth noting that "ezloader" USB interface was later acquired by Cypress and became the infamous FX2/FX2LP MCUs that popularised a lot of USB devices, including logic analysers.
(I usually do more of the latter, but the same skills are used.)
Source code isn’t always needed, it just makes the process simpler and quicker. There’s way more old devices that people would like to continue to use than there are hackers with the time and skills to reverse engineer them! For example, I’ve been lurking on the Magic Lantern forums (alternative firmware for canon dslrs) and the time it takes to port the software to a new camera model is counted in years…
To reduce e-waste I think companies should be obliged to release the source code to their devices when they stop supporting them (and if they’re afraid of releasing trade secrets—they’ll just have to keep supporting them longer!).
Our company used to build 35mm film scanners, called Northlights, for film post-production.
Originally they were driven by SGI Octanes. Then x86 Linux machines. Biggest problem these days would be the interface cards. I believe we were stuck with PCI-X cards for a long time, requiring host machines capable of accepting them.
We still support them, as there are many still in active use on both new films and restoration/archival jobs.
https://www.filmlight.ltd.uk/products/northlight/overview_nl...
At one point there are very few people who have even looked at piece of code you are looking at.
Are you going to release patches so at least other people can replicate things?
Emphasis mine. The reason why this is done in big projects is adding just one more level of abstraction to be able to preserve how userland interacts with your library, but still allowing you to make underlying structural changes to the code.
I would think the only part of the software that still might retain trade secrets would be the color management code, and that's not in the driver.
> trade secrets would be the color management code
Are trade secrets even protected? If there's a patent, yes, but that's expired. The implementation is protected by copyright, but the know-how isn't.
IANAL, but my concern would be distributing either the original drivers or 64-bit drivers, but in practice, no one is going to care. It's not worth an hour of a lawyer's time to send a cease and desist letter for distributing driver source for an 18-year-old device.
Tavis recently posted about using STABS for that <https://lock.cmpxchg8b.com/symbols.html> and has existing code that seems relevant: https://github.com/taviso/wpunix/blob/main/debug/idb2stabs.p...
I've never used Ghidra in anger to know if it would work for their platform, nor whether the Ghidra database can be shipped separate from the binary
Linux support is a completely different beast. There is a lot of code that I didn't talk about, including the absolutely massive image post-processing/color-correction library that we only have a Windows version of (and no source code for, obviously.) The Pakon's added complexity (especially automatically finding frame boundaries) makes a cross-platform, source-code-less port extremely unlikely to succeed in a remotely reasonable amount of time.
I would guess there’d be value in just piping the raw output into photoshop (or something) and doing the color correction/frame boundaries there.
I don't have any plans to develop a cross-platform client, but I will be publishing more technical information about the scanner so people aren't left wondering what I know.
http://sane-project.org/ https://openprinting.github.io/gsoc2019/03-sane-module/
Right, but I think it's still nightmare because Windows require driver signature verification by default. But why there's dedicated kernel driver at all? I wonder how feasible would be transplating decompiled driver code into userspace shim that uses WinUSB.
I've taken care of that already :) My custom drivers are properly signed and basically ready to release once I tidy up some loose ends.
I'm not entirely sure if this really needs to run at the kernel level. In the future I might investigate converting it to a user-mode driver, but for now I think a signed kernel-mode driver will suffice.
Is there some active dust-off stage? The feeding channel seems all open and next to plastic, I'd guess static charge would attract dust specs.
Hard to miss those days with hours spent rubberstamping dust specs in photo editor.
The way to avoid dust accumulation is to keep it covered when it's not being used. That works nicely and is a reasonable thing to do anyway.
In any case, those who are really curious won't have a hard time finding pictures. I'll include some next time :-)
That being said, I'll probably just pick a model and add a picture to the article. Google Images is good for finding the others.
Hope more on the user side can come.
But the packing slip says 1999!!!!
In all seriousness, I like learning about things that were before my time, and that's why I use the term "archaeology." It's not really archaeology, since I know plenty of people who were alive at the time, but it still appeals to my inner curiosity.
And still, 2004 feels "a few years ago" to me. I don't know if I'll ever get used to it.
You mean as an ego boost, right? You're certainly wiser than anyone born circa 2000s. We can hack drivers for breakfast.
Probably the biggest thing I wish I could share though is general civics and history knowledge. A lot got cut from education since then in the US. Plus what 90s America felt like-freedom before “terrorism.” (Quotes because there are many great books on all this that I’m not able to even point at right now.)
The practical results can best be described as 36 super high-quality TIFFs (if you scan a full 35mm roll) obtained in just a couple of minutes. You can find more information by looking at other online sources - one I'd recommend reading, if you're interested, is https://www.dantestella.com/technical/f235plus.html.
I'm not surprised that it's relatively unknown - after all, digital photography has mostly taken over, and even those people who benefited from drug-store film development/scanning probably wouldn't have cared too much about what hardware was in use.
But I have heard of it. Does that mean the scanner isn't the coolest anymore? Or maybe just the author.
I make no claims about my own coolness :-)