T90 Data Memory Back ----------------------------------------------------------- Interface Specs ----------------------------------------------------------- 5 Line connection to DMB, I have named the lines according to a drawing in a T90 service manual (The colours are from the cable of the MSX interface) DATA ( RED ) Data from DMB to interface unit DCA ( BLUE ) Data from interface unit to DMB DRB ( WHITE ) Data Request ??? CLK ( GREEN ) CLK for serial transfers, generated by MSX unit GND ( BLACK ) Ground. All four lines are open collector that are pulled high to 3V by the DMB. The lines are read back at the MSX interface, so that the DMB can pull-down lines that are held high by the MSX unit. ----------------------------------------------------------- Electrical Interface ----------------------------------------------------------- I have connected the DMB to the PC parallel port, the 4 data lines are connected through an open collector driver (7409, etc.) and I read them back through an 7404 inverter, so 4 output and 4 input pins of the parallel port are used. ----------------------------------------------------------- Transfer Protocoll ----------------------------------------------------------- (to be done :-) ----------------------------------------------------------- DMB Data Format ----------------------------------------------------------- data is read backwards starting from byte 2064 0xDD means "End of Data", previous data is not deleted an can still be accessed. After battery change, memory is initialised with 0xAA and 0x55 patterns. ------------------- Record in Long Mode ------------------- Record length (13 bytes + Exp.Comp + 2(FEL) + N * SpotValue) Byte 76543210 Value ------------------------------------------------------------ 0 FFFffff? Frame FFF * 10 + ffff * 1 1 TTTTTT?? Tv TTTTTT 000011 bulb 000100 30" 000101 20" ... 100101 3000 100110 4000 2 mAAAAA?s Av AAAAA 00000 stopped down 00011 1.2 00100 1.4 ... 10101 27 10110 32 m 0 Auto/ stopped down 1 Manual s 0 aperture open 1 stopped down 3 NNNNnnnn Number NNNN * 1000 + nnnn * 100 4 NNNNnnnn " + NNNN * 10 + nnnn * 1 5 LLLLMMMM Lens LLLL 0 -- 1 28 2 50 3 135 4 35-70 5 35-105 6 75-200 7 100-300 8 User1 9 User2 10 User3 11 User4 Month MMMM 6 YYYYyyyy Year YYYY * 10 + yyyy 7 DDDDdddd Date DDDD * 10 + dddd 8 HHHHhhhh Hour HHHH * 10 + hhhh 9 MMMMmmmm Minute MMMM * 10 + mmmm 10 EIIIIII? ISO IIIIII 001000 6 001001 8 001010 10 001011 ? (combinations with 001100 12 ...011 and ...111 ... are not used) 101110 5000 101111 ? (see above) 110000 6400 E 0 no compensation 1 with exp. comp ( Byte 12 has exp. comp. value) 11 FFFPPMMm Mode FFF 000 No Flash 010 Manual Flash 011 A-TTL 101 TTL 111 FEL (two more bytes follow) PP 00 Program 01 P 10 Tv 11 Av MM 01 [ ] Average 10 [( )] Partial 11 [ o ] Spot (Values follow) m 0 Auto 1 Manual (12) EEEE???? Exp. Comp. E Exp. Comp. Value 0100 A -2 B -1 2/3 C -1 1/3 D -1 E - 2/3 F - 1/3 1 + 1/3 2 + 2/3 3 +1 4 +1 1/3 5 +1 2/3 6 +2 (12..) SSSSSSS? Spot Spot values: Mean of all spot values gives 0 value, diff to 0 value is in 1/4 steps (12 EEEEEEEE EVR EVR value in FEL mode 13) FFFFFFFF FEL FEL correction 12 11111111 End of record -------------------- Record in Short Mode -------------------- Record length is fixed at 6 bytes Byte 76543210 Value -------------------------------------------------------------- 0 FFFffff? Frame FFF * 10 + ffff * 1 1 TTTTTT?? Tv TTTTTT 000011 bulb 000100 30" 000101 20" ... 100101 3000 100110 4000 2 mAAAAA?s Av AAAAA 00000 stopped down 00011 1.2 00100 1.4 ... 10101 27 10110 32 m 0 Auto/ stopped down 1 Manual s 0 aperture open 1 stopped down 3 NNNNnnnn Number NNNN * 1000 + nnnn * 100 4 NNNNnnnn " + NNNN * 10 + nnnn * 1 5 11111111 End of Record