2017-02-27 2 views
0

J'essaie de désactiver un code de traitement d'image dans un microprogramme d'appareil photo numérique. De la décharge du firmware, j'ai trouvé des fichiers * .bin avec un nombre magique qui correspond à "Dyalog APL fichier mappé 64 bits version 19.145" (à partir de la commande de fichier unix). Après avoir appris sur Dyalog APL, j'ai installé la version non-enregistrée de Dyalog APL. Cependant, je ne pouvais pas comprendre comment ouvrir les fichiers. J'ai essayé d'utiliser la fonction MAP:Comment ouvrir le fichier mappé APL Dyalog

⎕MAP'C:\fc.bin' 
NONCE ERROR 

Est-ce la bonne façon d'ouvrir le fichier? Y a-t-il une autre méthode pour le faire? Ou peut-être que je pourrais utiliser un autre programme?

Si mes recherches sont exactes jusqu'à présent, la plupart des codes APL sont interprétés. Il est donc peu probable que ces fichiers aient été compilés. Bien que si je suis hors piste, ces fichiers peuvent également être des programmes compilés pour la puce DSP.

Ci-dessous se trouvent les premiers octets hexdump du fichier.

00000000: aa0a 1391 0400 0002 01e9 0001 0200 0100 ................ 
00000010: 0000 0000 5341 4a50 4744 5f43 3078 3032 ....SAJPGD_C0x02 
00000020: 0200 0006 0100 0000 0100 0000 5000 0000 ............P... 
00000030: 0002 0000 4a50 4744 4543 5f43 3078 3030 ....JPGDEC_C0x00 
00000040: 0000 0000 0000 0000 0000 0000 0000 0000 ................ 

Si elle aide, j'essaie de désactiver la détection de pixel chaud intégré à la caméra Sony ILCE ..

Merci!

Répondre

1

Je doute fortement que ces fichiers .bin soient des fichiers mappés Dyalog. Je suis à peu près sûr que Dyalog APL ne fonctionne pas à l'intérieur d'une caméra.

Je peux vous parler de nos fichiers mappés. Les fichiers mappés Dyalog ne contiennent que des données. Notre fonction ⎕MAP est documentée ici:
http://help.dyalog.com/15.0/Content/Language/System%20Functions/map.htm

)load util 
    (⊃83 323 ⎕DR 2 3 4⍴⍳24)∆MPUT'e:\tmp\myvar' 

)clear 
clear ws 

    var←⎕map 'e:\tmp\myvar' 'w' 
    var 
1 2 3 4 
5 6 7 8 
9 10 11 12 

13 14 15 16 
17 18 19 20 
21 22 23 24 
    ⍴var 
2 3 4 


od -X e:/tmp/myvar gives this output: 

0000000 0fe808aa 00000084 00000000 00000000 
0000020 00000000 00000000 00000000 00000000 

(tous les zéros d'ici à ici à l'offset 0x7740)

0007740 00000000 00000000 ffffffe2 00000000 
0007760 0001143f 00000002 00000003 00000004 
0010000 00000001 00000002 00000003 00000004 
0010020 00000005 00000006 00000007 00000008 
0010040 00000009 0000000a 0000000b 0000000c 
0010060 0000000d 0000000e 0000000f 00000010 
0010100 00000011 00000012 00000013 00000014 
0010120 00000015 00000016 00000017 00000018 
0010140 

Cordialement,

Vince