X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=cochran.c;h=360f2eb7c9d836a1f77688821f6ad33872442b51;hb=2cada118eb515e369ba23b85c8f3fb8c4d100aaa;hp=ce42c3131276bec8e604e33631a507f0b3130f3f;hpb=3d8d5da999264595c7fecc786c101b40573689df;p=ext%2Fsubsurface.git diff --git a/cochran.c b/cochran.c index ce42c31..360f2eb 100644 --- a/cochran.c +++ b/cochran.c @@ -8,6 +8,8 @@ #include "dive.h" #include "file.h" +#define DON + /* * The Cochran file format is designed to be annoying to read. It's roughly: * @@ -153,6 +155,11 @@ static void parse_cochran_dive(const char *filename, int dive, const unsigned char *in, unsigned size) { char *buf = malloc(size); +#ifdef DON + unsigned int offset = 0x4a14; +#else + unsigned int offset = 0x4b14; +#endif /* * The scrambling has odd boundaries. I think the boundaries @@ -175,9 +182,8 @@ static void parse_cochran_dive(const char *filename, int dive, * scrambled, but there seems to be size differences in the data, * so this just descrambles part of it: */ - partial_decode(0x48ff, 0x4a14, decode, 0, mod, in, size, buf); - partial_decode(0x4a14, 0xc9bd, decode, 0, mod, in, size, buf); - partial_decode(0xc9bd, size, decode, 0, mod, in, size, buf); + partial_decode(0x48ff, offset, decode, 0, mod, in, size, buf); + partial_decode(offset, size, decode, 0, mod, in, size, buf); printf("\n%s, dive %d\n\n", filename, dive); cochran_debug_write(filename, buf, size);