diff options
-rw-r--r-- | scripts/signrom.py | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/scripts/signrom.py b/scripts/signrom.py index 313ee28a17..9be5dab1cf 100644 --- a/scripts/signrom.py +++ b/scripts/signrom.py @@ -1,3 +1,5 @@ +#!/usr/bin/env python3 + from __future__ import print_function # # Option ROM signing utility @@ -44,14 +46,8 @@ fout.write(data) checksum = 0 for b in data: - # catch Python 2 vs. 3 differences - if isinstance(b, int): - checksum += b - else: - checksum += ord(b) -checksum = (256 - checksum) % 256 - -# Python 3 no longer allows chr(checksum) + checksum = (checksum - b) & 255 + fout.write(struct.pack('B', checksum)) fin.close() |