add README
This commit is contained in:
		
							parent
							
								
									7a7ca31d5e
								
							
						
					
					
						commit
						afefafd929
					
				
					 1 changed files with 33 additions and 0 deletions
				
			
		
							
								
								
									
										33
									
								
								README.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								README.md
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,33 @@ | ||||||
|  | Boufallo Lab Flash Command - Open Source Version | ||||||
|  | ================================================ | ||||||
|  | 
 | ||||||
|  | This repo contains the completed work of "open sourcing" the Boufallo Lab | ||||||
|  | flash command. This utility is provided in binary form under Apache 2.0 License. | ||||||
|  | It is a [pyinstaller]() executable, so I have unpacked the binary, run it | ||||||
|  | through several Python 3.7 decompilers, and made a few adjustments. Primary | ||||||
|  | changes: | ||||||
|  | 
 | ||||||
|  | * The libs/bflb_configobj.py file has been completely rewritten. It appears | ||||||
|  |   to have been a handwritten recursive descent parser for ini files that | ||||||
|  |   include the ability to have complex objects. In reality, the configuration | ||||||
|  |   that seems to exist for flashing is simple key/value pairs in sections, | ||||||
|  |   so 2k+ lines of code were removed and replaced with simple shims to the | ||||||
|  |   python standard library | ||||||
|  | * Some additional logs were added to the output to let the user know what | ||||||
|  |   files were being used. This was necessary to debug the decompiler output | ||||||
|  |   and I thought they were useful | ||||||
|  | 
 | ||||||
|  | I have licensed this as Apache 2.0 to reflect the origin license. This is tested | ||||||
|  | and working with BL616 MCU. The flashing host computer was running Linux. This | ||||||
|  | is good for my needs and it should work for other MCUs/other flashing hosts. | ||||||
|  | However, I do not intend to provide support for anything beyond my own needs. | ||||||
|  | I am happy to take pull requests! | ||||||
|  | 
 | ||||||
|  | Decompilers used | ||||||
|  | ---------------- | ||||||
|  | 
 | ||||||
|  | * [decompyle3](https://pypi.org/project/decompyle3/): This was the primary decompiler for the project | ||||||
|  | * [unpyc3](https://github.com/andrew-tavera/unpyc37.git): unpyc3 did a better job on 2 or 3 of the files (see logs) | ||||||
|  | * [pycdc](https://github.com/zrax/pycd): While not used on any files, it served | ||||||
|  |   as a useful comparison tool. A few miscompiles from decompyle3 were more | ||||||
|  |   obvious because both pycdc and unpyc3 disagreed with the decompyle3 output | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue