changelog.txt 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553
  1. v0.5
  2. ADD: Range can be specified for SLIC insertion
  3. ADD: Manual insertion address is validated (to ensure not in a module or beyond end of file)
  4. ADD: Copyright string is replaced and all OEM/Table IDs are patched to match the SLIC
  5. ADD: Existing SLIC in 1B is removed
  6. ADD: Log file generation
  7. FIX: Module scan for 512K MSI BIOS not working (headers have invalid next_offset)
  8. FIX: Creating a smaller 1B module caused an exception (due to unsigned int)
  9. FIX: 32 bit ROM checksum is corrected (in theory....)
  10. FIX: Go button disabled whilst the routine is executing
  11. v0.6
  12. ADD: Options dialog
  13. ADD: Check for previous SLIC mod
  14. ADD: Code to get correct 1B size now replaces zeroed areas with the original contents
  15. ADD: Finer granularity for sizing routine
  16. FIX: Check for presence of MMTool (if selected)
  17. FIX: SSV3 mod not create 1B_SLIC.BIN file
  18. FIX: MMTool checkbox only for SSV3 method
  19. v0.7
  20. ADD: SLP1.0 string insertion
  21. ADD: Fix AMIMMWIN damage if used for SSV3
  22. FIX: Small bug in resize code
  23. v0.8
  24. ADD: SSV1 and Dynamic mod methods
  25. ADD: Success dialog at end
  26. FIX: Remove whitespace from end of SLP string
  27. FIX: Inadvertantly removed error handling
  28. FIX: AMIMMWIN repair code now checks &H10000
  29. v0.9
  30. ADD: Verification at each step (module insertion, mmtool usage etc.)
  31. ADD: Icon and XP visual style
  32. ADD: Option to only alter RSDT and XSDT tables
  33. ADD: Option to enforce padding before SLIC in SSV2 method
  34. ADD: Option to 'correct' 32 bit checksum (automatic before)
  35. ADD: Status box
  36. FIX: Default start address for SLIC in SSV2 set to 50000h (Otherwise inserts in first 64k of some ASUS BIOSes)
  37. FIX: Append SLP1.0 string to existing string at $ODB$
  38. FIX: Speedup module scan routine
  39. FIX: Improved clarity of prompts
  40. FIX: Renamed SSV1 to SSV to avoid AWARD BIOS confusion
  41. v0.91
  42. ADD: Option to force SLIC insertion in SSV2 below AMIBIOSC string
  43. ADD: Warning about using SSV2 on ASUS BIOSes
  44. ADD: Changed defaults
  45. FIX: Ensure SSV2 SLIC is never placed in last 64K (bootblock)
  46. FIX: Speed up search routine
  47. FIX: Bug in SSV2 1B resizing routine that caused it to fail in rare circumstances
  48. FIX: Bug in scan routine that finds space for the SLIC in SSV2 that caused it to appear to freeze
  49. v0.92
  50. Not released
  51. v0.93
  52. ADD: Option to verify whole BIOS checksum and fix it when needed
  53. ADD: Option to automatically fix checksum for ASUS SSV2 mod
  54. ADD: Option to ensure it is safe to use AMIMMWIN on BIOS
  55. ADD: Option to ignore checksum warnings
  56. FIX: Bug in module scan routine that caused it to fail in some cases
  57. v0.94
  58. FIX: Always threw error about AMIMMWIN even if MMTOOL checkbox ticked
  59. v0.95
  60. ADD: Check bootblock checksum (now calculates size properly)
  61. FIX: Bug in BIOS checksum routine that caused error on already damaged BIOSes
  62. FIX: No longer assumes BIOS is core v8 without checking
  63. v0.96
  64. ADD: Option to preserve boot block (from modification by AMIMMWIN and MMTOOL)
  65. ADD: Check extended boot block checksum
  66. FIX: Small bug in SSV2 space search routine that could cause an exception
  67. FIX: Module search routine is now less strict on headers (resulted in a module being missed and an checksum problem in a Biostar BIOS)
  68. v0.97
  69. ADD: Ability to perform SSV1 method on earlier AMI BIOSes (core v6 and v7)
  70. FIX: Clarify some options
  71. FIX: Will now automatically repair AMIMMWIN checksum damage (means AMIMMWIN can be used on BIOSes with $512 in bootblock)
  72. v0.98
  73. FIX: SSV1 for older AMI BIOSes now properly preserves the header and the checksum type (8/32 bit)
  74. v0.99
  75. ADD: Ability to attempt to shrink 1B module for all methods
  76. FIX: Modified new dynamic method so only one call is patched
  77. FIX: Better way of handling files/paths with spaces for core 6/7 mods
  78. FIX: General tidying in preperation for non-beta release
  79. FIX: Parse module 80h to find areas excluded from checksum
  80. v0.991
  81. FIX: Accidently disabled error handling
  82. v0.992
  83. ADD: Verify button - will checks the main BIOS, boot block and extended boot block (if present) checksums of the specified BIOS. Nothing is changed.
  84. FIX: Sometimes SLIC was not inserted for dynamic method
  85. v0.993
  86. ADD: Option to always shrink 1B (ie. for SSV1/3 or dynamic and not just SSV2) - Note if used in conjunction with the Use Extra Space option
  87. this will alter the appearance of the POST screen and also interfere with EZFlash when flashing a new BIOS - you can still use AFUDOS).
  88. This is really an experimental feature for the odd BIOS that cannot fit a normal SSV2 or 3 mod.
  89. v0.994
  90. ADD: Automatically ensure that AMIMMWIN will not damage module 80h
  91. v0.995
  92. ADD: Option to preserve unlinked bytes (ie. non-module, non-ROM hole, non boot-block) that appear in some BIOSes
  93. v0.996
  94. ADD: Option to automate MMTool
  95. FIX: Ensure that SLIC is not inserted in a ROM hole (with SSV2 method)
  96. v0.997
  97. FIX: MMTool not loaded properly with spaces in filename
  98. v0.998
  99. FIX: Speed up SSV2 method
  100. FIX: Open files in a different way (allows source files to be open at the same time eg. in a hex editor)
  101. FIX: Specifying a manual address to insert SLIC overrides the Force Below AMIBIOS string option
  102. FIX: Automated MMTool is now the default option for SSV1, SSV3 and Dynamic methods
  103. FIX: Remove unnecessary 8 bit and 32 bit corrections after SLIC in SSV2 method (main BIOS checksum is still checked/corrected)
  104. v0.999
  105. FIX: Allow BIOS (and SLIC and SLP files) to be located anywhere. The tool itself and the other tools used (MMTool etc.) must be in the tool's directory.
  106. v0.9991
  107. FIX: LHA compression for SSV2 method didn't work in Vista x64. Reverted back to old method using AMIMMWin
  108. v0.9992
  109. ADD: Ability to insert SSV3 SLIC at an adjusted address (for the odd ASUS eeePC BIOS)
  110. ADD: Option to specify the table name replacement for existing SLIC tables
  111. FIX: SSV2 method fails to adjust the size of the 1B module in one BIOS (also ASUS eeePC)
  112. v1.00 RC1
  113. ADD: Ability to correct the BIOS image 8 bit checksum. This is needed for some BIOSTAR ROMs.
  114. v1.00 RC2
  115. FIX: Regress some SSV2 code that caused problem flashes
  116. FIX: Need for matching checksums in XFX BIOSes
  117. ADD: Manufacturer selection list for manufacturer specific fixes
  118. v1.00 RC3
  119. FIX: Problem with BIOS in a different path
  120. FIX: Potential problem with non-MSI/XFX SLP only SSV2 mod
  121. v1.00 RC4
  122. FIX: Bug in code to find space for SSV2 - hang if no space found
  123. v1.00 RC5
  124. FIX: Bug in module scanning code (and 80h parsing code) if module 80h starts from offset 0 in image
  125. v1.00 RC6
  126. ADD: Tooltips for options and a README document
  127. FIX: Changed behaviour of 'Force Below' option to prevent SLIC insertion above AMIBIOSC string on BIOSes other than MSI/XFX.
  128. v1.00 RC7
  129. ADD: When performing an SSV3 mod and shrinking the 1B module; if the module is shrunk back to original size then it is inserted SSV2 style
  130. ADD: Method of inserting/replacing modules manually with MMTool is detailed
  131. FIX: Manual MMTool was still being closed after 10 seconds
  132. FIX: Automated MMTool failed if pathname contained any of '()%~^'
  133. FIX: Automate MMTool should only be selected automatically on English systems
  134. FIX: When attempting to insert a long SLP string (that won't fit) the option is now given to truncate
  135. FIX: Verify button is enabled once BIOS selected (manufacturer need not be selected)
  136. FIX: If the original BIOS was read-only, a number of file errors could occur
  137. FIX: 1B.BIN was not deleted after BIOS version established
  138. v1.00 RC8
  139. ADD: Ability to check that a certificate (.XRM-MS) and SLIC match
  140. ADD: Ability to detect if a BIOS has already been SLIC'd (and the method)
  141. ADD: Ability to see if a certificate (.XRM-MS) matches the SLIC table in an existing BIOS
  142. FIX: Attempt to get automated MMTool to work on non-English systems
  143. FIX: Two bugs in core 6/7 SSV code - however this is still experimental
  144. v1.00 RC9
  145. ADD: Ability to fix main BIOS checksum as part of verify process (only if not MSI/XFX and option to adjust BIOS 32bit checksum enabled)
  146. FIX: Problem with certificate verification in already SLIC'd BIOSes
  147. v1.00 RC10
  148. FIX: Automated MMTool not work on non-English systems
  149. NOTE: Note that sometimes a simulated keystroke is 'lost' causing the automated process to fail. In this case just click Go again.
  150. v1.00 RC11
  151. FIX: Some ASUS BIOSes not correctly identified as ASUS
  152. v1.00 RC12
  153. ADD: Ability to extract BIOS image from AMI Windows Flash EXE
  154. FIX: Recognise ASRock BIOSes and force SLIC below AMIBIOSC header for SSV2 mods
  155. FIX: Force SLIC below AMIBIOSC header sometimes not honored
  156. FIX: Speed up automated MMTool for english systems
  157. FIX: Filename parsing problem with extensionless files
  158. v1.00 RC13
  159. FIX: Properly identify as non AMI BIOS
  160. FIX: Problem identifying 1B module in an ECS BIOS
  161. v1.00 RC14
  162. FIX: Problem when module 80h containes invalid boot block information
  163. FIX: Allow ASRock SSV2 method to place SLIC above AMIBIOSC header (with a warning) - works for some and not other ASRock BIOSes
  164. v1.00 Final
  165. FIX: Not abort SSV2 when ASRock and choose no to insert above AMIBIOSC header
  166. FIX: Not handle linked module
  167. v1.01
  168. FIX: Sometimes certificate box and button not disabled
  169. FIX: Default open dialog path to program path
  170. FIX: Deal with bad links in some ASUS BIOSes
  171. FIX: Deal with EBB checksum errors in some original ASUS BIOSes
  172. v1.02
  173. FIX: Overflow bug in unlinked module scan code
  174. FIX: Handle module 1B checksum errors
  175. v1.03
  176. ADD: Ability to handle core v8 BIOSes with no module 80h (eg. some Tyan)
  177. v1.10
  178. ADD: Ability to replace SLIC in FC module
  179. ADD: Ability to recognise a valid SLIC in an FC (or any Fx module)
  180. ADD: Option to place SLIC in NVRAM area for SSV2 method (now NVRAM area is recognised)
  181. ADD: Removing config lock is now an option for the dynamic method
  182. FIX: Not properly recognise NVRAM area
  183. FIX: Not properly recognise non-image ROM holes
  184. FIX: Error that in some rare circumstances a SLIC could be placed in a ROM hole for SSV2 method
  185. FIX: When loading subsequent BIOSes appropriate options not selected
  186. FIX: Some options do not have tooltips
  187. v1.11
  188. ADD: Options dialog for core v7 mods
  189. ADD: Option for alternate method of core v7 mod (only used if normal method fails)
  190. FIX: Error if no NVRAM area present
  191. v1.12
  192. ADD: Option to ignore a valid SLIC in a Fx module
  193. ADD: Ability to add a SLP1.0 string to a BIOS with an existing SLIC table
  194. ADD: Ability to add a SLP string to a core v6/7 BIOS
  195. v1.13
  196. FIX: Not correct for 8/32 bit checksums in core v7 SLP mod
  197. FIX: Some core v7 BIOSes need SLP done SSV2 way (ie. same size module 02)
  198. v1.14
  199. FIX: Log disabled for SLP addition to a BIOS with an existing SLIC table
  200. v1.15
  201. ADD: Include selected options and version number in log
  202. FIX: Automatically open SLIC and SLP folders when appropriate
  203. FIX: Not handle linked modules
  204. FIX: Log disabled for SLP addition to a BIOS with an existing SLIC table (again!)
  205. FIX: SLIC XOR'd when no patch needed for dynamic mod
  206. v1.16
  207. ADD: Option to replace SLIC in 1B module for dynamic method
  208. v1.17
  209. ADD: Ability to add core v7 SLP SSV2 style
  210. FIX: SLIC offset was damaged in core v7 SLIC+SLP modification
  211. v1.18
  212. ADD: Core v7 SSV2 method
  213. FIX: Improved module insertion code
  214. FIX: MMTool rarely changes 2 bytes in the 1B module
  215. FIX: Improved handling of Fx modules. Can now handle complete SLIC, partial SLIC and reversed SLIC.
  216. FIX: Identify NVRAM area in core v7 BIOSes
  217. FIX: Possible errors with SSV2 SLP mods
  218. v1.19
  219. ADD: Identify OEM Activation version of SLIC (2.0 or 2.1) inserted and in already SLIC'd BIOSes
  220. ADD: OEM Activation v2.1 SLICs found in SLIC21 directory
  221. FIX: Core v7 SLP SSV2 not working in conjunction with SSV SLIC
  222. FIX: Checksum error for some SSV SLIC insertions
  223. FIX: Update HP SLP string
  224. FIX: Reversed SLIC in Fx module not inserted correctly
  225. v1.20
  226. ADD: Ability to alter a valid dynamic SLIC in the main module
  227. v1.21
  228. ADD: Ability to patch Intel AMI lock in main module
  229. ADD: Ability to find and replace pubkey/marker found in main BIOS
  230. FIX: Rarely the last byte of a module could be damaged
  231. v1.22
  232. FIX: Sometimes SLIC is written in wrong place in dynamic 1B mod
  233. v1.23
  234. ADD: Ability to replace a split OEM/Table ID in code with the OEM/Table ID from the inserted SLIC
  235. ADD: Ability to use LHA 2.55 for core v7 SSV2 mods (overcomes MMTool2 crashes when limited space)
  236. FIX: Fx module not updated if always shrink 1B option used during dynamic mod
  237. FIX: Unable to specify manual address and address range in core v7 options
  238. v1.24
  239. FIX: Core v7 SSV2 SLP not function correctly
  240. v1.25
  241. FIX: Core v7 SSV2 SLP not function correctly (again!)
  242. FIX: Ask to insert SSV2 SLIC in NVRAM
  243. v1.26
  244. ADD: Ability to remove existing SLP1.0 string
  245. ADD: Ability to insert SLIC using MMTool2 during SSV2 mod
  246. FIX: Improve split ID routine
  247. FIX: Default SLIC folder is now SLIC21
  248. v1.27
  249. FIX: Dynamic mods that alter SLIC in 1B failed in v1.26
  250. v1.28
  251. FIX: Dummy SLIC not removed properly for non-dynamic mods
  252. FIX: Module size error for SSV2 core v6 mods
  253. v1.29
  254. ADD: Ability to find and replace pubkey/marker found in 1B module
  255. FIX: Alter default options to deal with latest BIOSes
  256. v1.30
  257. FIX: Dynamic mod with shrink 1B option can erronously insert a corrupt 1B module
  258. FIX: Dynamic mod with multiple Fx modules failed
  259. v1.31
  260. FIX: Error with core v7 checksum calculation parsing excluded areas
  261. v1.32
  262. FIX: Adjust default options for ASRock
  263. FIX: Executable now named AMITool.exe for consistancy with other tools
  264. v1.33
  265. ADD: Verify certificate code from phoenix tool (verifies any existing SLIC and the given new SLIC file)
  266. FIX: Remember last directory for file open dialogs
  267. FIX: Internal error handling was disabled
  268. v1.34
  269. ADD: User defined OEM/Table ID can be replaced (both split and unsplit)
  270. ADD: Can modify BIOSes where there are extra bytes at the start
  271. FIX: Module extraction (via * button) is now done with a modified LHA so multiple modules with same ID can be extracted
  272. v1.35
  273. FIX: Error 6 in some mods
  274. v1.36
  275. FIX: SSV2 sizing code somtimes ended in infinite loop
  276. FIX: Some split user specified table ids were not found
  277. v1.37
  278. FIX: IASL.EXE not needed
  279. v1.38
  280. ADD: Experimental support for DSDT modification - insert SLI certificate
  281. ADD: Experimental support for DSDT modification - remove CPU Aliases (for Mac OSX)
  282. ADD: Experimental support for dynamic modification with OEMX entry
  283. v1.39
  284. ADD: Option to place SLP string in the IBM Copyright region
  285. ADD: Option to not alter the OEM/Table ID in any ACPI tables
  286. FIX: Improve OEMX dynamic code
  287. FIX: SSV2 dynamic mod did not properly fail if module could not be shrunk
  288. v1.40
  289. FIX: Unable to perform core 6/7 SSV2 mod with SLIC in NVRAM region
  290. v1.41
  291. ADD: Ability to do core v7 SSV2 mod with the SLIC in the bootblock (tested successfully once)
  292. v1.42
  293. FIX: Detection of dummy SLIC in Fx module
  294. FIX: For MSI BIOSes with a SLIC in the Fx module, it will replace only this by default
  295. v1.43
  296. ADD: Option to allow manual modification for new DSDT table
  297. FIX: Not handle Intel AMI BIOS properly (needs MMTool2)
  298. v1.44
  299. FIX: For Targe BIOSes (with AMIBIOSCTarg identification)
  300. v1.45
  301. ADD: Verify SLIC digital certificate
  302. ADD: Intel compatibility (-oa) DSDT option
  303. FIX: Not save file open dialog directory
  304. v1.46
  305. ADD: Ability to find split OEM IDs
  306. v1.47
  307. FIX: Verify SLIC certificate crashed on systems without .NET 3.5 SP1 (now just logs unable to verify)
  308. v1.48
  309. FIX: Core7 SSV mod hung if no space for SLIC module
  310. FIX: Add SSV3 option to partly shrink 1B module
  311. v1.49
  312. ADD: Display SLIC IDs
  313. FIX: Error when scanning previously modded BIOSes
  314. v1.50
  315. FIX: Error with slightly inconsistant core 7 headers
  316. v1.51
  317. FIX: Debug information included
  318. FIX: Disabled SSV mods for core 7 BIOSes (can brick)
  319. v1.52
  320. ADD: Better shrinking of core 7 ACPI module
  321. ADD: DSDT only option (still need to also select DSDT options from advanced page)
  322. v1.53
  323. ADD: Checkbox to simplify core 7 bootblock mod
  324. v1.54
  325. FIX: Bug in bootblock core 7 mod
  326. v1.55
  327. FIX: Overflow bug in core 7 extended header code
  328. v1.60
  329. FIX: Updated some code to be more language independant
  330. v1.61
  331. ADD: Internal update
  332. v1.62
  333. FIX: Overflow error if more than 10 modules of same number