X-Git-Url: http://gitweb.hugovil.com/?a=blobdiff_plain;f=src%2Fcommon%2Fopcodes2c.pl;h=15213a4d8e7e912207a238e2901436627b3c1e8a;hb=9cd867c94aabb48f44658a7a4d6832115c876b74;hp=2bc822affab69194705df5233f1617f123f51c9a;hpb=fbbb71d6d8aa93bccc87b17408a89432e4b8161c;p=emu8051.git diff --git a/src/common/opcodes2c.pl b/src/common/opcodes2c.pl index 2bc822a..15213a4 100755 --- a/src/common/opcodes2c.pl +++ b/src/common/opcodes2c.pl @@ -5,11 +5,32 @@ # # This file is released under the GPLv2 -open INST_DEF, ">instructions_8051.h" or die "Error creating : $!\n"; -open INST_IMP, ">instructions_8051.c" or die "Error creating : $!\n"; -open OPCODELST, "opcodes.lst" or die "Error opening : $!\n"; -open OPCODES_DEF, ">opcodes.h" or die "Error creating : $!\n"; -open OPCODES_IMP, ">opcodes.c" or die "Error creating : $!\n"; +# Arg1: opcodes list filename +# Arg2: output directory + +if (($#ARGV + 1) < 2) { + die "Missing arguments.\n"; +} + +my $opcodes_lst_filename = $ARGV[0]; +my $builddir = $ARGV[1]; + +open OPCODELST, $opcodes_lst_filename or die "Error opening " . + $opcodes_lst_filename . " : $!\n"; + +my $file; + +$file = $builddir . "/instructions_8051.h"; +open INST_DEF, ">" . $file or die "Error creating <" . $file . "> : $!\n"; + +$file = $builddir . "/instructions_8051.c"; +open INST_IMP, ">" . $file or die "Error creating <" . $file . "> : $!\n"; + +$file = $builddir . "/opcodes.h"; +open OPCODES_DEF, ">" . $file or die "Error creating <" . $file . "> : $!\n"; + +$file = $builddir . "/opcodes.c"; +open OPCODES_IMP, ">" . $file or die "Error creating <" . $file . "> : $!\n"; # Write GPL license # Argument 0 is file descriptor