*** empty log message ***
authorhachti <hachti>
Sun, 23 Dec 2007 15:25:11 +0000 (15:25 +0000)
committerhachti <hachti>
Sun, 23 Dec 2007 15:25:11 +0000 (15:25 +0000)
20 files changed:
bin/fboot
bin/fload
bin/frun
bin/mklink.sh
bin/rmlink.sh
lib/hachti/Makefile
lib/hachti/recipe/hachti.recipe
pc-tools/fontgen/Makefile
pc-tools/fontgen/data/correct.sh
pc-tools/fontgen/data/hmpconvert.sh
pc-tools/fontgen/src/fontgen.h
pc-tools/fontgen/src/hershey.c
pc-tools/fontgen/src/main.c
pc-tools/fontgen/src/out.c
pc-tools/ldc2/src/config.cpp
pc-tools/ldc2/src/config.hh
pc-tools/ldc2/src/tape_block.cpp
pc-tools/ldc2/src/tape_block.hh
programs/plotter/Makefile
resources/hershey-font.tar.gz [new file with mode: 0644]

index 9e43a5c9ea066a95682ae474b1e4db9a9d5538f2..12c58efcafe83ac99edcdaedafa96e2ab7a1edf9 100755 (executable)
--- a/bin/fboot
+++ b/bin/fboot
@@ -6,19 +6,25 @@ if [ ! $1 ] ; then
     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
@@ -27,7 +33,7 @@ go
 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;
index ca69753bff1be367a403c0d075b50e22efb5f65b..ab3bf41ae65bbdc88e3016a42a64a737188d52ea 100755 (executable)
--- a/bin/fload
+++ b/bin/fload
@@ -1,24 +1,37 @@
 #!/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
@@ -27,7 +40,7 @@ go
 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;
index 3816857ca6ec8ec0c3a52fe3dae20fd77c6c40ff..0660bfe7233900155aef56b3bf5c8735d03cb69c 100755 (executable)
--- a/bin/frun
+++ b/bin/frun
@@ -6,18 +6,25 @@ if [ ! $1 ] ; then
     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
@@ -26,7 +33,7 @@ go
 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;
index ae9ba4ad103818ece854972e1408b971d388d2f2..6c1a1d4b93c8e524959f9972402a4e8e4944fa02 100755 (executable)
@@ -41,10 +41,12 @@ ln -s -f $H316/pc-tools/boot-maker/bmaker $H316/bin
 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
index 0cf9315fdf86096efd9203b3522075d022d967c2..e83406265c792ac033696fec982b2a7c7ba8e463 100755 (executable)
@@ -34,13 +34,15 @@ rm -f $H316/bin/{paron,paroff,tab,zstrip}
 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   
 
index ecc3d67066b376769a491bbd85a126b2fed7d3a1..aedbe53a1a99da66c896e9a676aeb394c7bbe26a 100644 (file)
@@ -12,7 +12,7 @@ export ORG_OBJDIR=org
 
 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
@@ -32,6 +32,8 @@ OBJECT_FILES=$(foreach obj, $(MODULES), $(OBJ_DIR)/$(obj).obj)
 SOURCE_FILES=$(foreach obj, $(MODULES), $(SRC_DIR)/$(obj).asm)
 
 #************
+#tmp: 
+#      @echo $(OBJECT_FILES)
 
 all: $(LIBS)
 
index 1ef6823f539f2f51b7d9be6d38054e2f31b684d2..538301e12790e281bd3742058bfb03e1acd8d338 100644 (file)
@@ -6,6 +6,7 @@ obj/PL$MV
 
 # Matrix operations
 obj/MATRIX
+obj/MATRIX
 
 # Low level pulse motion driver
 obj/PL$U
index 39540786e2f92e37bf6c8ba01c1c2ff24d4abc82..3cc33fdc356a7790f828eda9bf9d100a4ae7d016 100644 (file)
@@ -1,6 +1,6 @@
 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`\""
index bc1a53856aca3435a4a787ce6a65679d0930387e..af33f926c3309c60dc5707852cee9d7a86640b6f 100755 (executable)
@@ -1,3 +1,3 @@
 #!/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
index eeb89607e7784dab095b832a090a32a725079343..4499f87b805856f48a14a6b2c9196019edc0b45a 100755 (executable)
@@ -7,6 +7,8 @@
 
 #infile="$1"
 
+FILES=hmp/*.hmp
+
 cat <<EOF
 /* Automatically generated Hershey font mappings */
 
@@ -48,7 +50,7 @@ block(){
     echo "};"
 }
 
-for n in *.hmp; do
+for n in $FILES; do
     name=`basename $n .hmp`
     cat $n | unmangle | block $name
 done
@@ -59,7 +61,7 @@ cat <<EOF
 /* 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
@@ -72,7 +74,7 @@ cat <<EOF
 void font_init(){
 EOF
 
-for n in *.hmp; do
+for n in $FILES; do
     name=`basename $n .hmp`
     mapname=`basename $n .hmp`_map
     
index 41c2f3903d90e8964c07d05dcb21d1eb302fdb8f..e5757b7aa4f6423fec322b10df8f7366cb131c43 100644 (file)
@@ -48,7 +48,9 @@ typedef struct {
 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;
@@ -57,12 +59,24 @@ typedef struct {
 
 
 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;
@@ -84,4 +98,39 @@ extern pl_font font_romant;
 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
index db95f4de6748df92e13b8995e7e584142c7b3f2a..c6fe7257f91a2eb1c68d5b0ae679a79c396cf608 100644 (file)
@@ -29,6 +29,6 @@ pl_font assemble_font(int first_id, int size, int * glyph_ids){
   }
   result.f_glyphs=glyphs;
   result.f_size=size;
-  result.f_label="PL\$FNT";
+  result.f_label="PL$FNT";
   return result;
 }
index 9855aaeeb9b4c16b770de0f09f5e4f2fbde58628..52c424531dcd2c3d1a85f884d71858ddfa23e4a2 100644 (file)
@@ -16,94 +16,292 @@ BUILD_HOST
 );
 }
 
-#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);
 }
index 60f3d3083bad29e84d3fe1b7c13ff7bbc21df424..601894d2ff84365dd364ce8e0a632543daaef22c 100644 (file)
@@ -39,7 +39,7 @@ void op_font( pl_font * font){
   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"
@@ -65,14 +65,16 @@ void op_font( pl_font * font){
   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");
 }
index 337fe2b29da01adad5a2b10a67814900f3555b14..905292e9a516869d28a0680d605c9719747c8ba0 100644 (file)
@@ -2,11 +2,14 @@
  * 
  * 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 ***
  *
  *
@@ -51,6 +54,7 @@ int cfg_ignore_object_integrity_errors=0;
 int cfg_list_contents=1;
 int cfg_verbose=0;
 int cfg_quiet=0;
+int cfg_dump_block_contents=0;
 
 int cfg_version=0;
 
@@ -75,6 +79,10 @@ void do_config(int argc, char ** args){
                       "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);
index fd8c19cb58f287580b26027b6d142d40427acd00..8c3c39354b01530218004320da03f8824738cf35 100644 (file)
@@ -2,11 +2,14 @@
  * 
  * 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 ***
  *
  *
@@ -43,6 +46,7 @@ extern int cfg_list_contents;
 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
index 8ba9ddea5e37eb179b2520c33e711ffc319ee324..9583465f638e63e5c1fed2f790575c27e4cd3a4e 100644 (file)
@@ -2,11 +2,14 @@
  * 
  * 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
@@ -227,6 +230,18 @@ vector<string> tape_block::get_called_symbols(){
   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.
index ebd8f025d2753e1faab44d133c7c1557688f70c4..64f13fd1ba0920831b55992e54612cbdc36f169f 100644 (file)
@@ -2,11 +2,14 @@
  * 
  * 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 ***
  *
  *
@@ -107,6 +110,7 @@ public: // methods
   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,
index 17cd216d8e0636afe46bc133704e75ba15b1ca7b..ecbc0a4cb0e06a4437ba371b81da9809bb14ab43 100644 (file)
@@ -8,17 +8,15 @@ BUILD_DIR=build
 
 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
diff --git a/resources/hershey-font.tar.gz b/resources/hershey-font.tar.gz
new file mode 100644 (file)
index 0000000..e75877c
Binary files /dev/null and b/resources/hershey-font.tar.gz differ