From c83300369ac3c0f85090729e01583ee95fe692e2 Mon Sep 17 00:00:00 2001 From: leslie Date: Mon, 8 Jun 2009 20:02:07 +0800 Subject: [PATCH] nagra-0101: (temp) fix map 23/4f (sasc r77) --- systems/nagra/nagra2-0101.c | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/systems/nagra/nagra2-0101.c b/systems/nagra/nagra2-0101.c index 0e1fd00..9bc6cdb 100644 --- a/systems/nagra/nagra2-0101.c +++ b/systems/nagra/nagra2-0101.c @@ -211,9 +211,24 @@ bool cMap0101::Map(int f, unsigned char *data, int l) } break; case 0x23: - AddMapCycles(169); // START FIX - IMonInit0(24); + { + cBN s,x,y; + BN_copy(s,D); + BN_rshift(s,s,64+ 1 *8); + BN_lshift(s,s,64); + BN_copy(x,D); + BN_mask_bits(x,64); + BN_copy(y,D); + BN_rshift(y,y,64); + BN_mask_bits(y,1*8); + BN_lshift(y,y,128-1*8); + BN_copy(D,s); + BN_add(D,D,x); + BN_add(D,D,y); + } + BN_zero(B); + BN_set_bit(B,88); // END FIX break; case 0x25: @@ -379,9 +394,8 @@ bool cMap0101::Map(int f, unsigned char *data, int l) break; case 0x4f: // START INCOMPLETE FIX - BN_zero(A); - BN_set_bit(A,40); //cycles=808 - BN_add(A,A,A); + BN_set_word(A,2); + BN_add(B,B,A); // END INCOMPLETE FIX break; case 0x57: -- 2.39.5