exit 2
fi
+
+if [ ! "$H316" ]; then
+ echo "H316 variable not set!"
+ exit 2
+fi
+
+if [ ! -e "$H316/config/libs.config" ]; then
+ echo "H316/config/libs.config not found!"
+ exit 2
+else
+ source "$H316/config/libs.config"
+fi
+
objname=$1
locname=`basename $1 .obj`
echo $locname
echo $objname
-LIBS="$H316/lib/fortran/lib/flib1.lib\
- $H316/lib/fortran/lib/flib2.lib\
- $H316/lib/fortran/lib/flib3.lib\
- $H316/lib/iolib/lib/io.lib
-"
-
-
cat > $locname.go <<EOF
rest $H316/sys/super3.sys
at ptr $objname
e p
EOF
-for library in $LIBS; do
+for library in $LOAD_LIBS; do
if [ ! -e "$library" ]; then
echo "Error: $library not found!"
exit 3;
#!/bin/bash
# FORTRAN IV simple loading routine
+
if [ ! $1 ] ; then
echo "Argument missing!"
exit 2
fi
+if [ ! "$H316" ]; then
+ echo "H316 variable not set!"
+ exit 2
+fi
+
+if [ ! -e "$H316/config/libs.config" ]; then
+ echo "H316/config/libs.config not found!"
+ exit 2
+fi
+
+source "$H316/config/libs.config"
+
+#LOAD_LIBS="$H316/lib/fortran/lib/math.lib\
+# $H316/lib/fortran/lib/flib1.lib\
+# $H316/lib/fortran/lib/flib2.lib\
+# $H316/lib/fortran/lib/flib3.lib\
+# $H316/lib/iolib/lib/io.lib"
+
+
objname=$1
locname=`basename $1 .obj`
echo $locname
echo $objname
-LIBS="$H316/lib/fortran/lib/flib1.lib\
- $H316/lib/fortran/lib/flib2.lib\
- $H316/lib/fortran/lib/flib3.lib\
- $H316/lib/iolib/lib/io.lib\
-"
-
-
cat > $locname.go <<EOF
rest $H316/sys/super3.sys
at ptr $objname
e p
EOF
-for library in $LIBS; do
+for library in $LOAD_LIBS; do
if [ ! -e "$library" ]; then
echo "Error: $library not found!"
exit 3;
exit 2
fi
+
+if [ ! "$H316" ]; then
+ echo "H316 variable not set!"
+ exit 2
+fi
+
+if [ ! -e "$H316/config/libs.config" ]; then
+ echo "H316/config/libs.config not found!"
+ exit 2
+else
+ source "$H316/config/libs.config"
+fi
+
objname=$1
locname=`basename $1 .obj`
echo $locname
echo $objname
-LIBS="$H316/lib/fortran/lib/flib1.lib\
- $H316/lib/fortran/lib/flib2.lib\
- $H316/lib/fortran/lib/flib3.lib\
- $H316/lib/iolib/lib/io.lib\
-"
-
cat > $locname.go <<EOF
rest $H316/sys/super2.sys
at ptr $objname
e p
EOF
-for library in $LIBS; do
+for library in $LOAD_LIBS; do
if [ ! -e "$library" ]; then
echo "Error: $library not found!"
exit 3;
ln -s -f $H316/honeywell/lib/iolib35.lib $H316/lib/iolib/original/iolib35.lib
ln -s -f $H316/honeywell/lib/flib{1,2,3}.lib $H316/lib/fortran/original
+ln -s -f $H316/honeywell/lib/math.lib $H316/lib/fortran/original
for nb in `ls $H316/lib/common | grep -v CVS`; do
n=`basename "$nb"`
ln -s -f "$H316/lib/common/$n" $H316/lib/fortran
ln -s -f "$H316/lib/common/$n" $H316/lib/iolib
+ ln -s -f "$H316/lib/common/$n" $H316/lib/hachti
done
\ No newline at end of file
rm -f $H316/bin/ldc
rm -f $H316/bin/bmaker
-rm -f $H316/lib/iolib/original/iolib35.lib
+rm -f $H316/lib/iolib/original/*.lib
rm -f $H316/lib/fortran/original/flib{1,2,3}.lib
+
for nb in `ls $H316/lib/common | grep -v CVS`; do
n=`basename "$nb"`
rm -f "$H316/lib/fortran/$n"
rm -f "$H316/lib/iolib/$n"
+ rm -f "$H316/lib/hachti/$n"
done
export MAKE
-MODULES = font matrix pl$$mv pl$$txt pl$$u stack
+MODULES = font pl$$mv pl$$txt pl$$u stack matrix
FRTN_COMMAND = frtn_original
ASM_COMMAND = asm_original
SOURCE_FILES=$(foreach obj, $(MODULES), $(SRC_DIR)/$(obj).asm)
#************
+#tmp:
+# @echo $(OBJECT_FILES)
all: $(LIBS)
# Matrix operations
obj/MATRIX
+obj/MATRIX
# Low level pulse motion driver
obj/PL$U
APP_NAME=fontgen
-APP_OBJECTS= main.o out.o hershey_fonts.o hershey.o hershey_map.o
-CCFLAGS+=-Wall
+APP_OBJECTS= main.o out.o hershey_fonts.o hershey.o hershey_map.o jhf_fonts.o hp.o
+CCFLAGS+=-Wall -g
BUILD_STAMP="\"`uname -a`\""
#!/bin/sh
-sed 's/^\([ 0-9][ 0-9][ 0-9][ 0-9][ 0-9]\)/STARTSTARTSTART\1/g'| tr -d "\n"| sed 's/STARTSTARTSTART/\n/g' | dd bs=1 skip=1
\ No newline at end of file
+sed 's/^\([ 0-9][ 0-9][ 0-9][ 0-9][ 0-9]\)/STARTSTARTSTART\1/g'| tr -d "\n\r"| sed 's/STARTSTARTSTART/\n/g' | dd bs=1 skip=1
\ No newline at end of file
#infile="$1"
+FILES=hmp/*.hmp
+
cat <<EOF
/* Automatically generated Hershey font mappings */
echo "};"
}
-for n in *.hmp; do
+for n in $FILES; do
name=`basename $n .hmp`
cat $n | unmangle | block $name
done
/* And now the ready to use fonts */
EOF
-for n in *.hmp; do
+for n in $FILES; do
name=`basename $n .hmp`
echo "pl_font font_$name;"
done
void font_init(){
EOF
-for n in *.hmp; do
+for n in $FILES; do
name=`basename $n .hmp`
mapname=`basename $n .hmp`_map
typedef struct {
char * f_label;
int f_size; /* Number of glyphs */
- int f_offset; /* Y offset to next line */
+ int f_base;
+ int f_top;
+ int f_offset; /* Y offset to next line */
char * f_comment;
pl_glyph * f_glyphs;
} pl_font;
extern pl_font hershey_fonts;
+extern pl_font hp_convert(char ** fontdata, int scale);
extern void op_font (pl_font *);
extern pl_glyph find_glyph(int);
extern pl_font assemble_font(int first_id, int size, int glyph_ids[]);
+extern char* charset0[];
+extern char* charset1[];
+extern char* charset2[];
+extern char* charset3[];
+extern char* charset4[];
+extern char* charset5[];
+extern char* charset6[];
+extern char* charset7[];
+extern char* charset173[];
+extern char* charset205[];
+
extern void font_init(void);
extern pl_font font_cyrilc;
extern pl_font font_gothgbt;
extern pl_font font_scriptc;
extern pl_font font_scripts;
+
+
+extern pl_font font_astrology;
+extern pl_font font_cursive;
+extern pl_font font_cyrilc_1;
+extern pl_font font_cyrillic;
+extern pl_font font_futural;
+extern pl_font font_futuram;
+extern pl_font font_gothgbt;
+extern pl_font font_gothgrt;
+extern pl_font font_gothiceng;
+extern pl_font font_gothicger;
+extern pl_font font_gothicita;
+extern pl_font font_gothitt;
+extern pl_font font_greekc;
+extern pl_font font_greek;
+extern pl_font font_greeks;
+extern pl_font font_japanese;
+extern pl_font font_markers;
+extern pl_font font_mathlow;
+extern pl_font font_mathupp;
+extern pl_font font_meteorology;
+extern pl_font font_music;
+extern pl_font font_rowmand;
+extern pl_font font_rowmans;
+extern pl_font font_rowmant;
+extern pl_font font_scriptc;
+extern pl_font font_scripts;
+extern pl_font font_symbolic;
+extern pl_font font_timesg;
+extern pl_font font_timesib;
+extern pl_font font_timesi;
+extern pl_font font_timesrb;
+extern pl_font font_timesr;
+
#endif
}
result.f_glyphs=glyphs;
result.f_size=size;
- result.f_label="PL\$FNT";
+ result.f_label="PL$FNT";
return result;
}
);
}
-#define PROCESS(name) { close(1); open(#name ".asm",O_WRONLY+O_TRUNC+O_CREAT,0644); }
-
+#define PROCESS(name) { close(1); open("font_" #name ".asm",O_WRONLY+O_TRUNC+O_CREAT,0644); }
+#define OP_FONT(name,base,top) {name.f_base=base; name.f_top=top;name.f_offset=((top-base)*7)/4; op_font(&name);}
int main(int argc, char** argv){
font_init();
-
int i;
- for (i=0;i<19;i++){
+ for (i=0;i<51;i++){
switch(i){
case 0:
PROCESS(cyrilc);
- op_font(&font_cyrilc);
+ OP_FONT(font_cyrilc,-9,12);
break;
case 1:
PROCESS(gothgbt);
- op_font(&font_gothgbt);
+ OP_FONT(font_gothgbt,-9,12);
break;
case 2:
PROCESS(gothgrt);
- op_font(&font_gothgrt);
+ OP_FONT(font_gothgrt,-9,12);
break;
case 3:
PROCESS(gothitt);
- op_font(&font_gothitt);
+ OP_FONT(font_gothitt,-9,12);
break;
case 4:
PROCESS(greekc);
- op_font(&font_greekc);
+ OP_FONT(font_greekc,-9,12);
break;
case 5:
PROCESS(greekcs);
- op_font(&font_greekcs);
+ OP_FONT(font_greekcs,-6,7);
break;
case 6:
PROCESS(greekp);
- op_font(&font_greekp);
+ OP_FONT(font_greekp,-5,4);
break;
case 7:
PROCESS(greeks);
- op_font(&font_greeks);
+ OP_FONT(font_greeks,-9,12);
break;
case 8:
PROCESS(italicc);
- op_font(&font_italicc);
+ OP_FONT(font_italicc,-9,12);
break;
case 9:
PROCESS(italiccs);
- op_font(&font_italiccs);
+ OP_FONT(font_italiccs,-6,7);
break;
case 10:
PROCESS(italict);
- op_font(&font_italict);
+ OP_FONT(font_italict,-9,12);
break;
case 11:
PROCESS(romanc);
- op_font(&font_romanc);
+ OP_FONT(font_romanc,-9,12);
break;
case 12:
PROCESS(romancs);
- op_font(&font_romancs);
+ OP_FONT(font_romancs,-6,7);
break;
case 13:
PROCESS(romand);
- op_font(&font_romand);
+ OP_FONT(font_romand,-9,12);
break;
case 14:
PROCESS(romanp);
- op_font(&font_romanp);
+ OP_FONT(font_romanp,-5,4);
break;
case 15:
PROCESS(romans);
- op_font(&font_romans);
+ OP_FONT(font_romans,-9,12);
break;
case 16:
PROCESS(romant);
- op_font(&font_romant);
+ OP_FONT(font_romant,-9,12);
break;
case 17:
PROCESS(scriptc);
- op_font(&font_scriptc);
+ OP_FONT(font_scriptc,-9,12);
break;
case 18:
PROCESS(scripts);
- op_font(&font_scripts);
+ OP_FONT(font_scripts,-9,12);
break;
+
+ case 19: PROCESS(astrology); OP_FONT(font_astrology,-9,12);break;
+ case 20: PROCESS(cursive); OP_FONT(font_cursive,-9,12);break;
+// case 21: PROCESS(cyrilc_1); OP_FONT(font_cyrilc_1);break;
+// case 22: PROCESS(cyrillic); OP_FONT(font_cyrillic,-9,12);break;
+ case 23: PROCESS(futural); OP_FONT(font_futural,-9,12);break;
+ case 24: PROCESS(futuram); OP_FONT(font_futuram,-9,12);break;
+ case 25: PROCESS(gothgbt); OP_FONT(font_gothgbt,-9,12);break;
+ case 26: PROCESS(gothgrt); OP_FONT(font_gothgrt,-9,12);break;
+ // case 27: PROCESS(gothiceng); OP_FONT(font_gothiceng,-9,12);break;
+ // case 28: PROCESS(gothicger); OP_FONT(font_gothicger,-9,12);break;
+ case 29: PROCESS(gothicita); OP_FONT(font_gothicita,-9,12);break;
+ // case 30: PROCESS(gothitt); OP_FONT(font_gothitt,-9,12);break;
+// case 31: PROCESS(greekc); OP_FONT(font_greekc,-9,12);break;
+// case 32: PROCESS(greek); OP_FONT(font_greek,-9,12);break;
+// case 33: PROCESS(greeks); OP_FONT(font_greeks,-9,12);break;
+// case 34: PROCESS(japanese); OP_FONT(font_japanese,-9,12);break;
+ case 35: PROCESS(markers); OP_FONT(font_markers,-9,12);break;
+ case 36: PROCESS(mathlow); OP_FONT(font_mathlow,-9,12);break;
+ case 37: PROCESS(mathupp); OP_FONT(font_mathupp,-5,4);break;
+ case 38: PROCESS(meteorology); OP_FONT(font_meteorology,-9,12);break;
+ case 39: PROCESS(music); OP_FONT(font_music,-9,12);break;
+ case 40: PROCESS(rowmand); OP_FONT(font_rowmand,-9,12);break;
+ case 41: PROCESS(rowmans); OP_FONT(font_rowmans,-9,12);break;
+ case 42: PROCESS(rowmant); OP_FONT(font_rowmant,-9,12);break;
+ // case 43: PROCESS(scriptc_1); OP_FONT(font_scriptc,-9,12);break;
+ // case 44: PROCESS(scripts_1); OP_FONT(font_scripts,-9,12);break;
+ case 45: PROCESS(symbolic); OP_FONT(font_symbolic,-9,12);break;
+ case 46: PROCESS(timesg); OP_FONT(font_timesg,-9,12);break;
+ case 47: PROCESS(timesib); OP_FONT(font_timesib,-9,12);break;
+ case 48: PROCESS(timesi); OP_FONT(font_timesi,-9,12);break;
+ case 49: PROCESS(timesrb); OP_FONT(font_timesrb,-9,12);break;
+ case 50: PROCESS(timesr); OP_FONT(font_timesr,-9,12);break;
+
+
+
}
}
+ pl_font f;
+
+ PROCESS(hp_charset0_2);
+ f=hp_convert(charset0 ,2);
+ op_font(&f);
+
+ PROCESS(hp_charset1_2);
+ f=hp_convert(charset1 ,2);
+ op_font(&f);
+
+ PROCESS(hp_charset2_2);
+ f=hp_convert(charset2 ,2);
+ op_font(&f);
+
+ PROCESS(hp_charset3_2);
+ f=hp_convert(charset3 ,2);
+ op_font(&f);
+
+ PROCESS(hp_charset4_2);
+ f=hp_convert(charset4 ,2);
+ op_font(&f);
+
+ PROCESS(hp_charset5_2);
+ f=hp_convert(charset5 ,2);
+ op_font(&f);
+
+ PROCESS(hp_charset6_2);
+ f=hp_convert(charset6 ,2);
+ op_font(&f);
+
+ PROCESS(hp_charset7_2);
+ f=hp_convert(charset7 ,2);
+ op_font(&f);
+
+ PROCESS(hp_charset173_2);
+ f=hp_convert(charset173,2);
+ op_font(&f);
+
+ PROCESS(hp_charset205_2);
+ f=hp_convert(charset205 ,2);
+ op_font(&f);
+
+ PROCESS(hp_charset0_3);
+ f=hp_convert(charset0 ,3);
+ op_font(&f);
+
+ PROCESS(hp_charset1_3);
+ f=hp_convert(charset1 ,3);
+ op_font(&f);
+
+ PROCESS(hp_charset2_3);
+ f=hp_convert(charset2 ,3);
+ op_font(&f);
+
+ PROCESS(hp_charset3_3);
+ f=hp_convert(charset3 ,3);
+ op_font(&f);
+
+ PROCESS(hp_charset4_3);
+ f=hp_convert(charset4 ,3);
+ op_font(&f);
+
+ PROCESS(hp_charset5_3);
+ f=hp_convert(charset5 ,3);
+ op_font(&f);
+
+ PROCESS(hp_charset6_3);
+ f=hp_convert(charset6 ,3);
+ op_font(&f);
+
+ PROCESS(hp_charset7_3);
+ f=hp_convert(charset7 ,3);
+ op_font(&f);
+
+ PROCESS(hp_charset173_3);
+ f=hp_convert(charset173,3);
+ op_font(&f);
+
+ PROCESS(hp_charset205_3);
+ f=hp_convert(charset205 ,3);
+ op_font(&f);
+
+ PROCESS(hp_charset0_4);
+ f=hp_convert(charset0 ,4);
+ op_font(&f);
+
+ PROCESS(hp_charset1_4);
+ f=hp_convert(charset1 ,4);
+ op_font(&f);
+
+ PROCESS(hp_charset2_4);
+ f=hp_convert(charset2 ,4);
+ op_font(&f);
+
+ PROCESS(hp_charset3_4);
+ f=hp_convert(charset3 ,4);
+ op_font(&f);
+
+ PROCESS(hp_charset4_4);
+ f=hp_convert(charset4 ,4);
+ op_font(&f);
+
+ PROCESS(hp_charset5_4);
+ f=hp_convert(charset5 ,4);
+ op_font(&f);
+
+ PROCESS(hp_charset6_4);
+ f=hp_convert(charset6 ,4);
+ op_font(&f);
+
+ PROCESS(hp_charset7_4);
+ f=hp_convert(charset7 ,4);
+ op_font(&f);
+
+ PROCESS(hp_charset173_4);
+ f=hp_convert(charset173,4);
+ op_font(&f);
+
+ PROCESS(hp_charset205_4);
+ f=hp_convert(charset205 ,4);
+ op_font(&f);
+
+
+ PROCESS(hp_charset0_1);
+ f=hp_convert(charset0 ,1);
+ op_font(&f);
+
+ PROCESS(hp_charset1_1);
+ f=hp_convert(charset1 ,1);
+ op_font(&f);
+
+ PROCESS(hp_charset2_1);
+ f=hp_convert(charset2 ,1);
+ op_font(&f);
+
+ PROCESS(hp_charset3_1);
+ f=hp_convert(charset3 ,1);
+ op_font(&f);
+
+ PROCESS(hp_charset4_1);
+ f=hp_convert(charset4 ,1);
+ op_font(&f);
+
+ PROCESS(hp_charset5_1);
+ f=hp_convert(charset5 ,1);
+ op_font(&f);
+
+ PROCESS(hp_charset6_1);
+ f=hp_convert(charset6 ,1);
+ op_font(&f);
+
+ PROCESS(hp_charset7_1);
+ f=hp_convert(charset7 ,1);
+ op_font(&f);
+
+ PROCESS(hp_charset173_1);
+ f=hp_convert(charset173,1);
+ op_font(&f);
+
+ PROCESS(hp_charset205_1);
+ f=hp_convert(charset205 ,1);
+ op_font(&f);
+
exit(0);
}
int size=4;
size+=2*font->f_size;
for (i=0; i<font->f_size;i++)size+=font->f_glyphs[i].gl_size;
-
+
WRITEF (
"* %s - FONT FILE GENERATED BY FONTGEN\n"
WRITEF("FNT");
// if (font->f_label)WRITEF(font->f_label);
WRITEF("\tDEC\t%i\tVERTICAL LINE SPACING FOR FONT\n",font->f_offset);
- WRITEF("\tDAC\t**\tRESERVED FOR FUTURE USE\n");
- WRITEF("\tDAC\t**\tRESERVED FOR FUTURE USE\n");
- WRITEF("\tDAC\t**\tRESERVED FOR FUTURE USE\n");
+ WRITEF("\tDEC\t%i\tY VALUE OF THE BASE LINE\n",font->f_base);
+ WRITEF("\tDEC\t%i\tY VALUE OF THE TOP LINE\n",font->f_top);
+ WRITEF("\tDEC\t%i\tNUMBER OF WORDS IN FONT (FOR DYNAMIC RELOAD?)\n",font->f_size);
+ WRITEF("\tDEC\t%i\tNUMBER OF GLYPHS IN FONT\n",font->f_size);
WRITEF("*\n");
+
for (i=0; i<font->f_size;i++){
- // WRITEF("Glyph:\n");
op_glyph(font->f_glyphs+i);
}
+
WRITEF("*\n");
WRITEF("\tEND\n");
}
*
* LDC2 source code
*
- * $Date: 2007/03/26 01:00:38 $
+ * $Date: 2007/12/23 15:25:11 $
* $Author: hachti $
*
* $Log: config.cpp,v $
- * Revision 2.0 2007/03/26 01:00:38 hachti
+ * Revision 2.1 2007/12/23 15:25:11 hachti
+ * *** empty log message ***
+ *
+ * Revision 2.0 2007-03-26 01:00:38 hachti
* *** empty log message ***
*
*
int cfg_list_contents=1;
int cfg_verbose=0;
int cfg_quiet=0;
+int cfg_dump_block_contents=0;
int cfg_version=0;
"Print all called symbols from the object(s).",
&cfg_output_called,true,true);
+ ar.add_option_switch("d","dump_block_contents",
+ "Dump block contents",
+ &cfg_dump_block_contents,true,true);
+
ar.add_option_switch("e","output_exported",
"Print all exported symbols from the object(s).",
&cfg_output_exported,true,true);
*
* LDC2 source code
*
- * $Date: 2007/03/26 01:00:38 $
+ * $Date: 2007/12/23 15:25:11 $
* $Author: hachti $
*
* $Log: config.hh,v $
- * Revision 2.0 2007/03/26 01:00:38 hachti
+ * Revision 2.1 2007/12/23 15:25:11 hachti
+ * *** empty log message ***
+ *
+ * Revision 2.0 2007-03-26 01:00:38 hachti
* *** empty log message ***
*
*
extern int cfg_verbose;
extern int cfg_version;
extern int cfg_quiet;
+extern int cfg_dump_block_contents;
extern int in_fd; //! File descriptor for data input
extern int out_fd; //! File descriptor for text output
*
* LDC2 source code
*
- * $Date: 2007/03/26 03:20:31 $
+ * $Date: 2007/12/23 15:25:11 $
* $Author: hachti $
*
* $Log: tape_block.cpp,v $
- * Revision 2.1 2007/03/26 03:20:31 hachti
+ * Revision 2.2 2007/12/23 15:25:11 hachti
+ * *** empty log message ***
+ *
+ * Revision 2.1 2007-03-26 03:20:31 hachti
* *** empty log message ***
*
* Revision 2.0 2007-03-26 01:00:40 hachti
return result;
}
+/***************************************************************/
+/*!
+ *\brief Dump block contents
+ *\return A vector containing Information about the block's
+ * content.
+ */
+vector<string> tape_block::dump_contents(){
+ vector<string> result;
+ result.insert(result.end(),"No known contents.");
+ return result;
+}
+
/***************************************************************/
/*!
*\brief Determine if the block has a known type.
*
* LDC2 source code
*
- * $Date: 2007/03/26 01:00:40 $
+ * $Date: 2007/12/23 15:25:11 $
* $Author: hachti $
*
* $Log: tape_block.hh,v $
- * Revision 2.0 2007/03/26 01:00:40 hachti
+ * Revision 2.1 2007/12/23 15:25:11 hachti
+ * *** empty log message ***
+ *
+ * Revision 2.0 2007-03-26 01:00:40 hachti
* *** empty log message ***
*
*
virtual bool is_endblock();
virtual vector<string> get_exported_symbols();
virtual vector<string> get_called_symbols();
+ virtual vector<string> dump_contents();
virtual bool has_known_type();
static tape_block * gen_from_fd(int fd,
PROGRAMS=$(foreach n, $(wildcard $(SRC_DIR)/*.f $(SRC_DIR)/*.asm),$(notdir $(basename $(n))))
-#$(PROGRAMS):%:/$(BUILD_DIR)/%.f
-
default: $(foreach prog, $(PROGRAMS),$(BUILD_DIR)/$(prog).obj)
$(BUILD_DIR)/%.obj:$(SRC_DIR)/%.f
@if [ ! -d $(BUILD_DIR) ]; then mkdir $(BUILD_DIR); fi
- $(FRTN_CMD) $< && mv $(notdir $(basename $<)).obj $(BUILD_DIR)
+ $(FRTN_CMD) $< $(LISTING) && mv $(notdir $(basename $<)).obj $(BUILD_DIR)
$(BUILD_DIR)/%.obj:$(SRC_DIR)/%.asm
@if [ ! -d $(BUILD_DIR) ]; then mkdir $(BUILD_DIR); fi
- $(ASM_CMD) $< && mv $(notdir $(basename $<)).obj $(BUILD_DIR)
+ $(ASM_CMD) $< $(LISTING)&& mv $(notdir $(basename $<)).obj $(BUILD_DIR)
clean :
@rm -rf *.obj $(BUILD_DIR)/ *.lst *.go *.par