Skip to content

Commit ceb028d

Browse files
committed
Offset direction bug fixed
1 parent c67cb2d commit ceb028d

File tree

1 file changed

+9
-27
lines changed

1 file changed

+9
-27
lines changed

uvk5_egzumer.py

Lines changed: 9 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -61,15 +61,12 @@
6161
u8 txcode;
6262
6363
// 0x0A
64-
u8 unknown1:2,
65-
txcodeflag:2,
66-
unknown2:2,
67-
rxcodeflag:2;
64+
u8 txcodeflag:4,
65+
rxcodeflag:4;
6866
6967
// 0x0B
7068
u8 modulation:4,
71-
__UNUSED:2,
72-
shift:2;
69+
offsetDir:4;
7370
7471
// 0x0C
7572
u8 __UNUSED1:3,
@@ -240,11 +237,7 @@
240237
} BUILD_OPTIONS;
241238
242239
"""
243-
# bits that we will save from the channel structure (mostly unknown)
244-
SAVE_MASK_0A = 0b11001100
245-
SAVE_MASK_0B = 0b00001100
246-
SAVE_MASK_0C = 0b11100000
247-
SAVE_MASK_0D = 0b11110000
240+
248241

249242
# flags1
250243
FLAGS1_OFFSET_NONE = 0b00
@@ -808,8 +801,6 @@ def _set_tone(self, mem, _mem):
808801

809802
_mem.rxcodeflag = rxmoval
810803
_mem.txcodeflag = txmoval
811-
_mem.unknown1 = 0
812-
_mem.unknown2 = 0
813804
_mem.rxcode = rxtoval
814805
_mem.txcode = txtoval
815806

@@ -947,9 +938,9 @@ def get_memory(self, number2):
947938
if (mem.offset == 0):
948939
mem.duplex = ''
949940
else:
950-
if _mem.shift == FLAGS1_OFFSET_MINUS:
941+
if _mem.offsetDir == FLAGS1_OFFSET_MINUS:
951942
mem.duplex = '-'
952-
elif _mem.shift == FLAGS1_OFFSET_PLUS:
943+
elif _mem.offsetDir == FLAGS1_OFFSET_PLUS:
953944
mem.duplex = '+'
954945
else:
955946
mem.duplex = ''
@@ -2107,15 +2098,6 @@ def set_memory(self, mem):
21072098
if _mem.get_raw()[0] == "\xff":
21082099
# this was an empty memory
21092100
_mem.set_raw("\x00" * 16)
2110-
else:
2111-
# this memory was't empty, save some bits that we don't know the
2112-
# meaning of, or that we don't support yet
2113-
prev_0a = _mem.get_raw(asbytes=True)[0x0a] & SAVE_MASK_0A
2114-
prev_0b = _mem.get_raw(asbytes=True)[0x0b] & SAVE_MASK_0B
2115-
prev_0c = _mem.get_raw(asbytes=True)[0x0c] & SAVE_MASK_0C
2116-
prev_0d = _mem.get_raw(asbytes=True)[0x0d] & SAVE_MASK_0D
2117-
raw = bytes([0]*10 + [prev_0a, prev_0b, prev_0c, prev_0d, 0, 0])
2118-
_mem.set_raw(raw)
21192101

21202102
if number < 200:
21212103
_mem4.channel_attributes[number].is_scanlist1 = 0
@@ -2140,11 +2122,11 @@ def set_memory(self, mem):
21402122

21412123
if mem.duplex == "OFF" or mem.duplex == "":
21422124
_mem.offset = 0
2143-
_mem.shift = 0
2125+
_mem.offsetDir = 0
21442126
elif mem.duplex == '-':
2145-
_mem.shift = FLAGS1_OFFSET_MINUS
2127+
_mem.offsetDir = FLAGS1_OFFSET_MINUS
21462128
elif mem.duplex == '+':
2147-
_mem.shift = FLAGS1_OFFSET_PLUS
2129+
_mem.offsetDir = FLAGS1_OFFSET_PLUS
21482130

21492131
# set band
21502132
if number < 200:

0 commit comments

Comments
 (0)