-
Notifications
You must be signed in to change notification settings - Fork 68
Fix replace #77
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Fix replace #77
Conversation
Metrics
|
| Metric | Value |
|---|---|
| Files Processed | 68 |
| Stdout Lines | 14,913 |
| Stderr Lines | 144 |
| Total Lines | 15,057 |
| Error Ratio | 0.96% |
PSPTool python library metrics
| Status | Count | Percentage |
|---|---|---|
| ✓ Successful | 68 | 100.0% |
| ✗ Failed | 0 | 0.0% |
| Total | 68 | 100% |
All files parsed successfully!
psptool/directory.py
Outdated
| entry.type = type_ | ||
| entry.size = size | ||
| entry.offset = offset | ||
| entry.offset = offset - self.get_address() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why the subtraction?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
because file.buffer_offset passed as an argument refers to the absolute offset. The DirectoryEntry.offset refers to the relative offset from the directory.
Metrics
|
| Metric | Value |
|---|---|
| Files Processed | 68 |
| Stdout Lines | 4,596 |
| Stderr Lines | 834 |
| Total Lines | 5,430 |
| Error Ratio | 15.36% |
PSPTool python library metrics
| Status | Count | Percentage |
|---|---|---|
| ✓ Successful | 33 | 48.53% |
| ✗ Failed | 35 | 51.47% |
| Total | 68 | 100% |
Failed Files
ASUS_ROG-STRIX-X470-F-GAMING-ASUS-4804.CAPASUS_ROG-STRIX-B450-F-GAMING-ASUS-2301.CAPASRock_B450_B45P4_3.31TUF-GAMING-A520M-PLUS-WIFI-ASUS-2604.CAPLenovo_Thinkpad_T14_WinGLC3A106.ROMASRock_X470_X47GK4_3.31ASUS_ROG-STRIX-B350-F-GAMING-ASUS-4801.CAPASUS_TUF-B450M-PRO-GAMING-ASUS-1201.CAPASUS_PRIME-X470-PRO-4011.CAPGigabyte_X470AG7W.F40ASUS_PRIME-X370-PRO-3803.CAPASRock_X370_X370GK45.30ASRock-A520M-HSV-1.31.ROMMSI_X470_E7B77AMS.194ASUS_PRIME-X470-PRO-ASUS-4804.CAPASUS_PRIME-B350-PLUS-4011.CAPASUS_ROG-STRIX-X370-F-GAMING-ASUS-4801.CAPASRock_A320_A32M5.00ASRock_B350_AB35G4_5.70Gigabyte_AX370G3.F31AORUS_X370G5.23dASUS_B450M_KII_Zen1_ROM_Exploit.romAORUS_B450AE.F40ASRock_A520M_HVS_1.31.ftpm_with_data.romGigabyte_WRX80F2AORUS_X570_X57AOXT2.FCdMSI_X370_E7A33AMS.4I1ASUS_PRIME-B450M-A-ASUS-1201.CAPMSI_B450_E7B86AMS.181Acer_R01-A4.ROMAORUS_X470AG7W.F40ASUS_PRIME-A320M-A-ASUS-4801.CAPMSI_A320_E7A38AMS.2I2Lenovo_Ideapad_5_Pro-16ACH6.romMSI_B350_E7A34AMS.1O1
778872a to
897bf9f
Compare
Metrics
|
| Metric | Value |
|---|---|
| Files Processed | 68 |
| Stdout Lines | 4,596 |
| Stderr Lines | 834 |
| Total Lines | 5,430 |
| Error Ratio | 15.36% |
PSPTool python library metrics
| Status | Count | Percentage |
|---|---|---|
| ✓ Successful | 33 | 48.53% |
| ✗ Failed | 35 | 51.47% |
| Total | 68 | 100% |
Failed Files
ASUS_ROG-STRIX-X470-F-GAMING-ASUS-4804.CAPASUS_ROG-STRIX-B450-F-GAMING-ASUS-2301.CAPASRock_B450_B45P4_3.31TUF-GAMING-A520M-PLUS-WIFI-ASUS-2604.CAPLenovo_Thinkpad_T14_WinGLC3A106.ROMASRock_X470_X47GK4_3.31ASUS_ROG-STRIX-B350-F-GAMING-ASUS-4801.CAPASUS_TUF-B450M-PRO-GAMING-ASUS-1201.CAPASUS_PRIME-X470-PRO-4011.CAPGigabyte_X470AG7W.F40ASUS_PRIME-X370-PRO-3803.CAPASRock_X370_X370GK45.30ASRock-A520M-HSV-1.31.ROMMSI_X470_E7B77AMS.194ASUS_PRIME-X470-PRO-ASUS-4804.CAPASUS_PRIME-B350-PLUS-4011.CAPASUS_ROG-STRIX-X370-F-GAMING-ASUS-4801.CAPASRock_A320_A32M5.00ASRock_B350_AB35G4_5.70Gigabyte_AX370G3.F31AORUS_X370G5.23dASUS_B450M_KII_Zen1_ROM_Exploit.romAORUS_B450AE.F40ASRock_A520M_HVS_1.31.ftpm_with_data.romGigabyte_WRX80F2AORUS_X570_X57AOXT2.FCdMSI_X370_E7A33AMS.4I1ASUS_PRIME-B450M-A-ASUS-1201.CAPMSI_B450_E7B86AMS.181Acer_R01-A4.ROMAORUS_X470AG7W.F40ASUS_PRIME-A320M-A-ASUS-4801.CAPMSI_A320_E7A38AMS.2I2Lenovo_Ideapad_5_Pro-16ACH6.romMSI_B350_E7A34AMS.1O1
Metrics
|
| Metric | Value |
|---|---|
| Files Processed | 68 |
| Stdout Lines | 4,596 |
| Stderr Lines | 834 |
| Total Lines | 5,430 |
| Error Ratio | 15.36% |
PSPTool python library metrics
| Status | Count | Percentage |
|---|---|---|
| ✓ Successful | 33 | 48.53% |
| ✗ Failed | 35 | 51.47% |
| Total | 68 | 100% |
Failed Files
ASUS_ROG-STRIX-X470-F-GAMING-ASUS-4804.CAPASUS_ROG-STRIX-B450-F-GAMING-ASUS-2301.CAPASRock_B450_B45P4_3.31TUF-GAMING-A520M-PLUS-WIFI-ASUS-2604.CAPLenovo_Thinkpad_T14_WinGLC3A106.ROMASRock_X470_X47GK4_3.31ASUS_ROG-STRIX-B350-F-GAMING-ASUS-4801.CAPASUS_TUF-B450M-PRO-GAMING-ASUS-1201.CAPASUS_PRIME-X470-PRO-4011.CAPGigabyte_X470AG7W.F40ASUS_PRIME-X370-PRO-3803.CAPASRock_X370_X370GK45.30ASRock-A520M-HSV-1.31.ROMMSI_X470_E7B77AMS.194ASUS_PRIME-X470-PRO-ASUS-4804.CAPASUS_PRIME-B350-PLUS-4011.CAPASUS_ROG-STRIX-X370-F-GAMING-ASUS-4801.CAPASRock_A320_A32M5.00ASRock_B350_AB35G4_5.70Gigabyte_AX370G3.F31AORUS_X370G5.23dASUS_B450M_KII_Zen1_ROM_Exploit.romAORUS_B450AE.F40ASRock_A520M_HVS_1.31.ftpm_with_data.romGigabyte_WRX80F2AORUS_X570_X57AOXT2.FCdMSI_X370_E7A33AMS.4I1ASUS_PRIME-B450M-A-ASUS-1201.CAPMSI_B450_E7B86AMS.181Acer_R01-A4.ROMAORUS_X470AG7W.F40ASUS_PRIME-A320M-A-ASUS-4801.CAPMSI_A320_E7A38AMS.2I2Lenovo_Ideapad_5_Pro-16ACH6.romMSI_B350_E7A34AMS.1O1
1 similar comment
Metrics
|
| Metric | Value |
|---|---|
| Files Processed | 68 |
| Stdout Lines | 4,596 |
| Stderr Lines | 834 |
| Total Lines | 5,430 |
| Error Ratio | 15.36% |
PSPTool python library metrics
| Status | Count | Percentage |
|---|---|---|
| ✓ Successful | 33 | 48.53% |
| ✗ Failed | 35 | 51.47% |
| Total | 68 | 100% |
Failed Files
ASUS_ROG-STRIX-X470-F-GAMING-ASUS-4804.CAPASUS_ROG-STRIX-B450-F-GAMING-ASUS-2301.CAPASRock_B450_B45P4_3.31TUF-GAMING-A520M-PLUS-WIFI-ASUS-2604.CAPLenovo_Thinkpad_T14_WinGLC3A106.ROMASRock_X470_X47GK4_3.31ASUS_ROG-STRIX-B350-F-GAMING-ASUS-4801.CAPASUS_TUF-B450M-PRO-GAMING-ASUS-1201.CAPASUS_PRIME-X470-PRO-4011.CAPGigabyte_X470AG7W.F40ASUS_PRIME-X370-PRO-3803.CAPASRock_X370_X370GK45.30ASRock-A520M-HSV-1.31.ROMMSI_X470_E7B77AMS.194ASUS_PRIME-X470-PRO-ASUS-4804.CAPASUS_PRIME-B350-PLUS-4011.CAPASUS_ROG-STRIX-X370-F-GAMING-ASUS-4801.CAPASRock_A320_A32M5.00ASRock_B350_AB35G4_5.70Gigabyte_AX370G3.F31AORUS_X370G5.23dASUS_B450M_KII_Zen1_ROM_Exploit.romAORUS_B450AE.F40ASRock_A520M_HVS_1.31.ftpm_with_data.romGigabyte_WRX80F2AORUS_X570_X57AOXT2.FCdMSI_X370_E7A33AMS.4I1ASUS_PRIME-B450M-A-ASUS-1201.CAPMSI_B450_E7B86AMS.181Acer_R01-A4.ROMAORUS_X470AG7W.F40ASUS_PRIME-A320M-A-ASUS-4801.CAPMSI_A320_E7A38AMS.2I2Lenovo_Ideapad_5_Pro-16ACH6.romMSI_B350_E7A34AMS.1O1
8acd660 to
de76830
Compare
Metrics
|
| Metric | Value |
|---|---|
| Files Processed | 68 |
| Stdout Lines | 4,596 |
| Stderr Lines | 834 |
| Total Lines | 5,430 |
| Error Ratio | 15.36% |
PSPTool python library metrics
| Status | Count | Percentage |
|---|---|---|
| ✓ Successful | 33 | 48.53% |
| ✗ Failed | 35 | 51.47% |
| Total | 68 | 100% |
Failed Files
ASUS_ROG-STRIX-X470-F-GAMING-ASUS-4804.CAPASUS_ROG-STRIX-B450-F-GAMING-ASUS-2301.CAPASRock_B450_B45P4_3.31TUF-GAMING-A520M-PLUS-WIFI-ASUS-2604.CAPLenovo_Thinkpad_T14_WinGLC3A106.ROMASRock_X470_X47GK4_3.31ASUS_ROG-STRIX-B350-F-GAMING-ASUS-4801.CAPASUS_TUF-B450M-PRO-GAMING-ASUS-1201.CAPASUS_PRIME-X470-PRO-4011.CAPGigabyte_X470AG7W.F40ASUS_PRIME-X370-PRO-3803.CAPASRock_X370_X370GK45.30ASRock-A520M-HSV-1.31.ROMMSI_X470_E7B77AMS.194ASUS_PRIME-X470-PRO-ASUS-4804.CAPASUS_PRIME-B350-PLUS-4011.CAPASUS_ROG-STRIX-X370-F-GAMING-ASUS-4801.CAPASRock_A320_A32M5.00ASRock_B350_AB35G4_5.70Gigabyte_AX370G3.F31AORUS_X370G5.23dASUS_B450M_KII_Zen1_ROM_Exploit.romAORUS_B450AE.F40ASRock_A520M_HVS_1.31.ftpm_with_data.romGigabyte_WRX80F2AORUS_X570_X57AOXT2.FCdMSI_X370_E7A33AMS.4I1ASUS_PRIME-B450M-A-ASUS-1201.CAPMSI_B450_E7B86AMS.181Acer_R01-A4.ROMAORUS_X470AG7W.F40ASUS_PRIME-A320M-A-ASUS-4801.CAPMSI_A320_E7A38AMS.2I2Lenovo_Ideapad_5_Pro-16ACH6.romMSI_B350_E7A34AMS.1O1
When extracting a file, replacing it without change, and extracting it again the file changes significantly.
This is due to length and address field being changed incorrectly.
The size doesn't (always??) have to be 0x10 aligned as evidenced by the TPMLITE file for this example.
now the repacked rom image still has 8 padding bytes that are different from the original but these are inconsequential for the content and when unpacking.