diff options
author | Leah Rowe <vimuser@noreply.codeberg.org> | 2023-05-06 21:23:08 +0000 |
---|---|---|
committer | Leah Rowe <vimuser@noreply.codeberg.org> | 2023-05-06 21:23:08 +0000 |
commit | 0729d6e600b6592e79db049576e36d1961341ea1 (patch) | |
tree | 94fa2dc794f6da0bdba0d9c67ef3d3b10a3f9703 /resources/bios_extract/patches/0002-dell_inspiron_1100_unpacker-Convert-from-python-2-to.patch | |
parent | f5150f26a8c310746a267ce8090ccca9d0fceaf1 (diff) | |
parent | 2e64f6397556b7e6fff8a7a305a5eaa1095acfc1 (diff) |
Merge pull request 'Add patches for bios_extract' (#49) from nic3-14159/lbmk:master into master
Reviewed-on: https://codeberg.org/libreboot/lbmk/pulls/49
Diffstat (limited to 'resources/bios_extract/patches/0002-dell_inspiron_1100_unpacker-Convert-from-python-2-to.patch')
-rw-r--r-- | resources/bios_extract/patches/0002-dell_inspiron_1100_unpacker-Convert-from-python-2-to.patch | 105 |
1 files changed, 105 insertions, 0 deletions
diff --git a/resources/bios_extract/patches/0002-dell_inspiron_1100_unpacker-Convert-from-python-2-to.patch b/resources/bios_extract/patches/0002-dell_inspiron_1100_unpacker-Convert-from-python-2-to.patch new file mode 100644 index 00000000..f49c8dbd --- /dev/null +++ b/resources/bios_extract/patches/0002-dell_inspiron_1100_unpacker-Convert-from-python-2-to.patch @@ -0,0 +1,105 @@ +From 34ecbda8cc75eecb747004520c9e0bd6de3c7723 Mon Sep 17 00:00:00 2001 +From: Nicholas Chin <nic.c3.14@gmail.com> +Date: Fri, 5 May 2023 19:35:45 -0600 +Subject: [PATCH 2/3] dell_inspiron_1100_unpacker: Convert from python 2 to 3 + +TEST: The output of the script is the same as the python 2 version when +run against the Inspiron 1100 BIOS + +Signed-off-by: Nicholas Chin <nic.c3.14@gmail.com> +Change-Id: I2ab9a72bc65121b1106e9867b7d58d1eefb0eb3d +--- + dell_inspiron_1100_unpacker.py | 34 +++++++++++++++++----------------- + 1 file changed, 17 insertions(+), 17 deletions(-) + +diff --git a/dell_inspiron_1100_unpacker.py b/dell_inspiron_1100_unpacker.py +index b12059b..5e43813 100755 +--- a/dell_inspiron_1100_unpacker.py ++++ b/dell_inspiron_1100_unpacker.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python2 ++#!/usr/bin/env python3 + # Dell/Phoenix ROM BIOS PLUS unpacker + # 2012-09-12 version 0.1 + # 2012-10-10 version 0.2 added support for older BIOSes with 16-bit length (Dell Inspiron 1100) +@@ -61,16 +61,16 @@ def dell_unpack(indata): + dstoff += count + srcoff += count + +- return dst.tostring() ++ return dst + + mod_types = { + 0x01: "Main ROM", + 0x0C: "Microcode update", + } + +-print "Dell/Phoenix ROM BIOS PLUS unpacker" ++print("Dell/Phoenix ROM BIOS PLUS unpacker") + if len(sys.argv) < 2: +- print "Usage: dell_unpack.py bios.bin [offset]" ++ print("Usage: dell_unpack.py bios.bin [offset]") + sys.exit(1) + fname = sys.argv[1] + offs = 0 +@@ -78,32 +78,32 @@ f = open(fname, "rb").read() + if len(sys.argv) > 2: + offs = int(sys.argv[2], 16) + else: +- offs = f.find("\xF0\x00Copyright 1985-\x02\x04\xF0\x0F8 Phoenix Technologies Ltd.") ++ offs = f.find(b"\xF0\x00Copyright 1985-\x02\x04\xF0\x0F8 Phoenix Technologies Ltd.") + if offs == -1: +- print "Does not look like a Dell/Phoenix ROM BIOS PLUS" ++ print("Does not look like a Dell/Phoenix ROM BIOS PLUS") + sys.exit(2) +- if f[offs-5] == '\x01': ++ if f[offs-5] == 0x01: + hlen = 5 # 32-bit length + offs -= 5 + fmt = "<BI" +- elif f[offs-3] == '\x01': ++ elif f[offs-3] == 0x01: + hlen = 3 # 16-bit length + offs -= 3 + fmt = "<BH" + else: +- print "Unhandled format!" ++ print("Unhandled format!") + sys.exit(1) +- print "Found compressed module at %08X" % offs ++ print("Found compressed module at %08X" % offs) + if offs > 0: + fn = "EC.bin" +- print "%08X EC code, %08X %s" % (0, offs, fn) ++ print("%08X EC code, %08X %s" % (0, offs, fn)) + open(fn, "wb").write(f[:offs]) + while True: + type_id, leng = struct.unpack(fmt, f[offs:offs+hlen]) +- print "%08X type %02X" % (offs, type_id), ++ print("%08X type %02X" % (offs, type_id), end=" ") + offs += hlen + if type_id == 0xFF: +- print "<end of chain>" ++ print("<end of chain>") + break + data = f[offs:offs+leng] + offs += leng +@@ -111,11 +111,11 @@ while True: + odata = dell_unpack(data) + else: + odata = data +- print " %08X -> %08X" % (leng, len(odata)), ++ print(" %08X -> %08X" % (leng, len(odata)), end=" ") + fn = "mod_%02X.bin" % type_id +- print " %s" % fn, ++ print(" %s" % fn, end=" ") + if type_id in mod_types: +- print "(%s)" % mod_types[type_id] ++ print("(%s)" % mod_types[type_id]) + else: +- print "" ++ print("") + open(fn, "wb").write(odata) +-- +2.40.1 + |