Friday, 19 May 2017

Teardown: Photec IV - 20,000 FPS 16mm Film Camera

In this video i take a look inside a 1980s film camera capable of 20,000 FPS.

The Photec IV camera was introduced in the 1980s by Photonic Systems Inc, It is a high speed 16mm movie film camera that uses a rotating prism to allow the film to run through the camera in a continuous motion.

The camera can take 400 ft film loads and has a Mamiya 645 lens mount.

The camera was available in different configurations, different prisms could be installed for full frame, half frame and quarter frame shooting which multiplied the FPS by x1, x2 and x4. The configuration on my camera is half frame.

The camera has a configurable FPS from 100 to 1000 FPS in 100 FPS steps and 1,000 to 10,000 FPS in 1,000 FPS steps at full frame. In half frame configuration this is 200-20,000 FPS and quarter frame is 400-40,000 FPS.

Mechanically they are quite simple, a large motor drives the take up reel, the action of the film running through the sprockets drives the prism.

At 10,000 FPS the linear film speed is around 170mph.

Saturday, 11 February 2017

Reading Unsupported PROMs On A MiniPro TL866

As part of our slow progress with the Quantel DPB-7001 Paintbox we have been working a way to try and emulate a SMD hard disk. Because we don't have a working DPB or an SMD drive we need to build a rudimentary emulator of the disk controller element of the DPB so we can understand how it works.

Quantel DPB-7001 Disk Sequencer Card with 7 PROMs on the far right.

This will allow us to design a replacement plugin card for the physical DPB-7001 that would replace the Disk Sequencer card with a SMD emulator built into it using some flash memory and an FPGA.

Although most of the DPB uses standard 74 series logic, the disk controller uses an AMD AM2910 microcode sequencer driven from a small set of codes contained within 7 PROMs. We need to extract the code from these to be used within the DPB emulator that is being written. These PROMs are 28L22 devices with 256 x 8 bits of storage. The addressing is simple for these devices, there are 8 address lines to address each of the 256 memory locations and 8 data bits of output.

Unfortunately my MiniPro TL866 EPROM programmer doesn't support the 28L22, but that does not mean it can't read them with a bit of thought.

What we can do is make a small adaptor board to convert the pinout of the 28L22 PROM to be pin compatible with some other memory device the TL866 can read.

The closest match i could find was the AM2716B, which is a EEPROM with 2048 x 8 bits of storage. Though this has 10 address lines to access the additional memory space of this device. This is not a problem, we can simply leave these two extra address lines unconnected at the reader. The result of this is the reader will think it's reading out 2048 bytes of data but in fact it will be reading 256 but it will wrap around 8 times in the data readout.

Firstly we need to make an adaptor board to connect the device into the TL866:

During construction, the pin headers protrude through the base of the strip board to make contact with the ZIF socket of the TL866. Each pin can then be wired to a IC socket the 28L22 PROM will plug into.

View from underneath.

The 28L22 PROM plugged into the TL866.

Once the data is read out, we simply discard the last 1792 bytes of data to get to the original 256 bytes of data.