1
let assemble_fichier nom_entr�e nom_sortie =
2
let entr�e = open_in nom_entr�e in
3
let sortie = open_out_bin nom_sortie in
6
(Lecture.programme (Stream.of_channel entr�e));
13
Sys.remove nom_sortie;
17
"Erreur de syntaxe aux alentours du caract�re num�ro ";
18
prerr_int (pos_in entr�e);
21
| Stockage.Erreur message ->
22
prerr_string "Erreur d'assemblage: ";
23
prerr_endline message;
28
exception Mauvais_arguments;;
30
if !Sys.interactive then () else
32
if Array.length Sys.argv <> 3 then raise Mauvais_arguments;
33
exit (assemble_fichier Sys.argv.(1) Sys.argv.(2))
35
| Mauvais_arguments ->
37
"Usage: pico_asm <fichier assembleur> <fichier de code>";
39
| Sys_error message ->
40
prerr_string "Erreur du syst�me: "; prerr_endline message;