Changeset 131
 Timestamp:
 Sep 27, 2010, 1:25:06 PM (10 years ago)
 Location:
 Deliverables/D4.1
 Files:

 3 edited
Legend:
 Unmodified
 Added
 Removed

Deliverables/D4.1/IntelHex.ml
r130 r131 78 78  4 > ExtendedLinear 79 79  _ > assert false 80 ;; 81 82 let int_of_intel_hex_type = 83 function 84 Data > 0 85  End > 1 86  ExtendedSeg > 2 87  ExtendedLinear > 4 80 88 ;; 81 89 … … 183 191 in 184 192 aux strs 193 194 let add_bytes v = 195 let r = List.rev v in 196 let rec aux (cry, bs) = 197 function 198 [] > (cry, bs) 199  hd::tl > 200 aux (full_add hd bs cry) tl 201 in 202 aux (false, (vect_of_int 0 `Eight)) r 203 204 let checksum_valid hex_entry = 205 if List.length hex_entry.data_field mod 2 <> 0 then 206 false 207 else 208 let chk_1, chk_2 = hex_entry.data_checksum in 209 let _, cs_total = half_add chk_1 chk_2 in 210 let len_1, len_2 = hex_entry.record_length in 211 let _, ln_total = half_add len_1 len_2 in 212 let adr_1, adr_2, adr_3, adr_4 = hex_entry.record_addr in 213 let _, ad_total1 = half_add adr_1 adr_2 in 214 let _, ad_total2 = half_add adr_3 adr_4 in 215 let _, dt_total = add_bytes hex_entry.data_field in 216 let _, total = add_bytes [cs_total; ln_total; ad_total1; ad_total2; dt_total] in 217 cs_total = total 
Deliverables/D4.1/IntelHex.mli
r130 r131 26 26 val vect_of_hex_string: string > sizes > sizes vect;; 27 27 val hex_string_of_vect: 'a vect > string;; 28 29 val checksum_valid: intel_hex_entry > bool;; 
Deliverables/D4.1/Util.ml
r130 r131 3 3 4 4 let (<*>) f g x = f (g x) 5 ;; 6 7 let flip f a b = f b a 5 8 ;; 6 9
Note: See TracChangeset
for help on using the changeset viewer.