@@ -125,53 +125,53 @@ def program_file(self, chip, file_name, verbose=False, verify=True):
125
125
126
126
# create a file state dictionary
127
127
file_state = {"line" : 0 , "ext_addr" : 0 , "eof" : False }
128
- file_state ["f" ] = open (file_name , "r" )
128
+ with open (file_name , "r" ) as file_state [ # pylint: disable=unspecified-encoding
129
+ "f"
130
+ ]:
131
+ page_size = chip ["page_size" ]
129
132
130
- page_size = chip ["page_size" ]
131
-
132
- for page_addr in range (0 , chip ["flash_size" ], page_size ):
133
- if verbose :
134
- print ("Programming page $%04X..." % page_addr , end = "" )
135
- page_buffer = bytearray (page_size )
136
- for b in range (page_size ):
137
- page_buffer [b ] = 0xFF # make an empty page
138
-
139
- read_hex_page (file_state , page_addr , page_size , page_buffer )
140
-
141
- if all (v == 255 for v in page_buffer ):
133
+ for page_addr in range (0 , chip ["flash_size" ], page_size ):
142
134
if verbose :
143
- print ("skipping" )
144
- continue
135
+ print ("Programming page $%04X..." % page_addr , end = "" )
136
+ page_buffer = bytearray (page_size )
137
+ for b in range (page_size ):
138
+ page_buffer [b ] = 0xFF # make an empty page
145
139
146
- # print("From HEX file: ", page_buffer)
147
- self ._flash_page (bytearray (page_buffer ), page_addr , page_size )
140
+ read_hex_page (file_state , page_addr , page_size , page_buffer )
148
141
149
- if not verify :
150
- if verbose :
151
- print ("done! " )
152
- continue
142
+ if all ( v == 255 for v in page_buffer ) :
143
+ if verbose :
144
+ print ("skipping " )
145
+ continue
153
146
154
- if verbose :
155
- print ("Verifying page @ $%04X" % page_addr )
156
- read_buffer = bytearray (page_size )
157
- self .read (page_addr , read_buffer )
158
- # print("From memory: ", read_buffer)
147
+ # print("From HEX file: ", page_buffer)
148
+ self ._flash_page (bytearray (page_buffer ), page_addr , page_size )
159
149
160
- if page_buffer != read_buffer :
161
- if verbose :
162
- # pylint: disable=line-too-long
163
- print (
164
- "Verify fail at address %04X\n Page should be: %s\n But contains: %s"
165
- % (page_addr , page_buffer , read_buffer )
166
- )
167
- # pylint: enable=line-too-long
168
- self .end ()
169
- return False
150
+ if not verify :
151
+ if verbose :
152
+ print ("done!" )
153
+ continue
170
154
171
- if file_state ["eof" ]:
172
- break # we're done, bail!
155
+ if verbose :
156
+ print ("Verifying page @ $%04X" % page_addr )
157
+ read_buffer = bytearray (page_size )
158
+ self .read (page_addr , read_buffer )
159
+ # print("From memory: ", read_buffer)
160
+
161
+ if page_buffer != read_buffer :
162
+ if verbose :
163
+ # pylint: disable=line-too-long
164
+ print (
165
+ "Verify fail at address %04X\n Page should be: %s\n But contains: %s"
166
+ % (page_addr , page_buffer , read_buffer )
167
+ )
168
+ # pylint: enable=line-too-long
169
+ self .end ()
170
+ return False
171
+
172
+ if file_state ["eof" ]:
173
+ break # we're done, bail!
173
174
174
- file_state ["f" ].close ()
175
175
self .end ()
176
176
return True
177
177
@@ -185,40 +185,40 @@ def verify_file(self, chip, file_name, verbose=False):
185
185
186
186
# create a file state dictionary
187
187
file_state = {"line" : 0 , "ext_addr" : 0 , "eof" : False }
188
- file_state ["f" ] = open (file_name , "r" )
188
+ with open (file_name , "r" ) as file_name [ # pylint: disable=unspecified-encoding
189
+ "f"
190
+ ]:
191
+ page_size = chip ["page_size" ]
192
+ clock_speed = getattr (chip , "clock_speed" , _FAST_CLOCK )
193
+ self .begin (clock = clock_speed )
194
+ for page_addr in range (0x0 , chip ["flash_size" ], page_size ):
195
+ page_buffer = bytearray (page_size )
196
+ for b in range (page_size ):
197
+ page_buffer [b ] = 0xFF # make an empty page
198
+
199
+ read_hex_page (file_state , page_addr , page_size , page_buffer )
189
200
190
- page_size = chip ["page_size" ]
191
- clock_speed = getattr (chip , "clock_speed" , _FAST_CLOCK )
192
- self .begin (clock = clock_speed )
193
- for page_addr in range (0x0 , chip ["flash_size" ], page_size ):
194
- page_buffer = bytearray (page_size )
195
- for b in range (page_size ):
196
- page_buffer [b ] = 0xFF # make an empty page
197
-
198
- read_hex_page (file_state , page_addr , page_size , page_buffer )
199
-
200
- if verbose :
201
- print ("Verifying page @ $%04X" % page_addr )
202
- read_buffer = bytearray (page_size )
203
- self .read (page_addr , read_buffer )
204
- # print("From memory: ", read_buffer)
205
- # print("From file : ", page_buffer)
206
-
207
- if page_buffer != read_buffer :
208
201
if verbose :
209
- # pylint: disable=line-too-long
210
- print (
211
- "Verify fail at address %04X\n Page should be: %s\n But contains: %s"
212
- % (page_addr , page_buffer , read_buffer )
213
- )
214
- # pylint: enable=line-too-long
215
- self .end ()
216
- return False
217
-
218
- if file_state ["eof" ]:
219
- break # we're done, bail!
202
+ print ("Verifying page @ $%04X" % page_addr )
203
+ read_buffer = bytearray (page_size )
204
+ self .read (page_addr , read_buffer )
205
+ # print("From memory: ", read_buffer)
206
+ # print("From file : ", page_buffer)
207
+
208
+ if page_buffer != read_buffer :
209
+ if verbose :
210
+ # pylint: disable=line-too-long
211
+ print (
212
+ "Verify fail at address %04X\n Page should be: %s\n But contains: %s"
213
+ % (page_addr , page_buffer , read_buffer )
214
+ )
215
+ # pylint: enable=line-too-long
216
+ self .end ()
217
+ return False
218
+
219
+ if file_state ["eof" ]:
220
+ break # we're done, bail!
220
221
221
- file_state ["f" ].close ()
222
222
self .end ()
223
223
return True
224
224
0 commit comments