Article 767 of vmsnet.sources:
Submitted-by: Ferry Bolhar-Nordenkampf <bol@adv.magwien.gv.at>
Posting-number: Volume 8, Issue 5
Archive-name: symbols/part02

-+-+-+-+-+-+-+-+ START OF PART 2 -+-+-+-+-+-+-+-+
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20subrecord->gsy$b_gsdtyp);
XJ`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20return;
V
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20`20`20`20`20`20`20`20`20
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20/*`20Eintrag`20f`FCr`20Ausgabe
V`20herrichten`20*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20switch`20(subrecord->gsy$b_gsd
Vtyp)
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_SYM`20`20:`20
Vzeile`20=`20SDF_POS;`20`20type`20=`20"SYM";`20`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_EPM`20`20:`20
Vzeile`20=`20EPM_POS;`20`20type`20=`20"EPM";`20`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_PRO`20`20:`20
Vzeile`20=`20PRO_POS;`20`20type`20=`20"PRO";`20`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_SYMW`20:`20ze
Vile`20=`20SDFW_POS;`20type`20=`20"SYMW";`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_EPMW`20:`20ze
Vile`20=`20EPMW_POS;`20type`20=`20"EPMW";`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_PROW`20:`20ze
Vile`20=`20PROW_POS;`20type`20=`20"PROW";`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_LSY`20`20:`20
Vzeile`20=`20LSDF_POS;`20type`20=`20"LSY";`20`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_LEPM`20:`20ze
Vile`20=`20LEPM_POS;`20type`20=`20"LEPM";`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_LPRO`20:`20ze
Vile`20=`20LPRO_POS;`20type`20=`20"LPRO";`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_SYMM`20:`20ze
Vile`20=`20SDFV_POS;`20type`20=`20"SYMM";`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_SYMV`20:`20ze
Vile`20=`20SDFV_POS;`20type`20=`20"SYMV";`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_EPMM`20:`20ze
Vile`20=`20EPMV_POS;`20type`20=`20"EPMM";`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_EPMV`20:`20ze
Vile`20=`20EPMV_POS;`20type`20=`20"EPMV";`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_PROM`20:`20ze
Vile`20=`20PROV_POS;`20type`20=`20"PROM";`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_PROV`20:`20ze
Vile`20=`20PROV_POS;`20type`20=`20"PROV";`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_PSC`20`20:`20
Vzeile`20=`20GPS_POS;`20`20type`20=`20"PSC";`20`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_SPSC`20:`20ze
Vile`20=`20SGPS_POS;`20type`20=`20"SPSC";`20`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_IDC`20`20:`20
Vzeile`20=`20IDC_POS;`20`20type`20=`20"IDC";`20`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_ENV`20`20:`20
Vzeile`20=`20ENV_POS;`20`20type`20=`20"ENV";`20`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20`20`20`20`20`20`20`20`20
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20/*`20`DCberpr`FCfen,`20ob`20Ei
Vntrag`20Auswahlkriterien`20gen`FCgt`20*/
XJ`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(zeile`20<`20`20GPS_POS`20
V`26`26`20(typesel`261)`20==`200`20`7C`7C
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20zeile`20>=`20GPS_P
VOS`20`26`26`20(typesel`262)`20==`200)`20goto`20next_record;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20/*`201
V8.10.95`20auf`20next_record`20ge`E4ndert`20*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(do_statistic)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20attrib
Vute_statistic`20(subrecord->gsy$w_flags,`20
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20zeile`20>=`20EPM_POS,`20local);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D
XJ`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(zeile`20<`20`20EPM_POS`20
V`26`26`20(lit_proc`262)`20==`200`20`7C`7C
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20zeile`20>=`20EPM_P
VOS`20`26`26`20(lit_proc`261)`20==`200)`20goto`20no_match;
XJ`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(local`20==`200`20`26`26`20
V(scope`261)`20==`200`20`7C`7C
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20local`20==`201`20
V`26`26`20(scope`262)`20==`200)`20goto`20no_match;
XJ`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(FLAGTEST`20(subrecord->gsy
V$w_flags)`20==`200)`20goto`20no_match;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20/*`20Adresse`20des`20benoetigt
Ven`20Feldes`20im`20aktuellen`20Subrecord`20*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20#define`20FELD(type,o)`20(type
V`20*)((o)+(char`20*)subrecord)
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20/*`20Symbol`20ausgeben`20*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20offset`20=`20vax_entry`5Bzeile
V`5D`5B3`5D;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20get_name`20(FELD(char,offset),
V`20`26name,`20`26laenge);
XJ`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(!symbol_match`20(type,`20n
Vame,`20laenge))`20goto`20no_match;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20TO_FIFO`20(type);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20TO_FIFO`20(name);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20TO_FIFO`20(subrecord->gsy$w_fl
Vags);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20TO_FIFO`20(local);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20for`20(i=0;`20i<3;`20i++)`20
V`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20offset
V`20=`20vax_entry`5Bzeile`5D`5Bi`5D;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20TO_FIF
VO`20(offset);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(
Voffset`20!=0)`20TO_FIFO`20(*FELD(unsigned`20int,`20offset));
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20(*ausgabe`5Bausgabeformat`5D)
V`20();
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20free`20(name);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20mod_sym.matched++;
Xno_match:`20`20`20`20`20`20`20
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20mod_sym.cnt++;
Xnext_record:
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20gsd_entries++;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20offset`20=`20vax_entry`5Bzeile
V`5D`5B3`5D;`20/*`20namlen`20*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20for`20(i=0;`20i<vax_entry`5Bze
Vile`5D`5B4`5D`20/*Anzahl`20Namensfelder*/;`20i++)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20offset
V`20+=`20*FELD(char,offset)+1;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20switch`20(subrecord->gsy$b_gsd
Vtyp)
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20struct
V`20fmldef`20*fmlrecord;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20struct
V`20argdef`20*argrecord;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_PRO`20:`20
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_PROW`20:`20
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_LPRO`20:`20
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_PROM`20:`20
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20OBJ$C_GSD_PROV`20:
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20/*`20F
Vunktionsargumente`20`FCberspringen`20*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20fmlrec
Vord`20=`20(struct`20fmldef*)((char*)subrecord`20+`20offset);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20offset
V`20+=`20`20sizeof`20(struct`20fmldef);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20for`20
V(i=0;`20i<fmlrecord->fml$b_maxargs;`20i++)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20argrecord`20=`20(struct`20argdef*)((char*)subrecord`20+
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20offset);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20offset`20+=`20sizeof`20(struct`20argdef)`20+
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20argrecord->arg$b_bytecnt;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20`20`20`20`20`20`20`20`20
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20subrecord`20=`20(struct`20gsyd
Vef*)((char`20*)subrecord`20+`20offset);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20#undef`20FELD
X`20`20`20`20`20`20`20`20`7D`20while`20((char`20*)subrecord`20+`20(unsigned`20i
Vnt)subrecord%2`20<`20recordende);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20/*`20`5E`20word`20alignment!`20`20`20`20`20`20`20`20`5E`5E
V`20*/
X`7D
X
X/*`20Ausgabe`20eines`20Symbols,`20PRINT`20enth`E4lt`20eine`20`F6ffnende`20Klam
Vmer`20weniger`20:-o`20*/
X#define`20PRINT`20if`20(print_record)`20fprintf`20(outfile,
X
Xvoid`20brief_ausgabe`20(void)
X`7B
X`20`20`20`20`20`20`20`20int`20`20`20`20`20feldgroesse`5B`5D`5B3`5D`20=`20`7B
V`20`20`20`208,`2010,`2011,`20`20/*`20VAX`20*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20`20`20`20`20`20`20`20`205,`20`207,`20`207`7D;`20/*`20AXP`20*
V/
X`20`20`20`20`20`20`20`20char`20`20`20`20*formatstring`5B3`5D`20=`20`7B`20`20
V`20`20"`20=`20%*X"`20`20/*`20hex`20*/,
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20`20`20`20`20`20`20`20`20"`20=`20%*u"`20`20/*`20unsigned`20in
Vteger*/,
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20`20`20`20`20`20`20`20`20"`20=`20%*o"`20`20/*`20octal`20*/`7D
V;
X`20`20`20`20`20`20`20`20int`20`20`20`20`20zeile;
X
X`20`20`20`20`20`20`20`20from_fifo();`20`20/*`20type`20*/
X`20`20`20`20`20`20`20`20PRINT`20"%-50s`20",`20(char*)`20from_fifo());`20`20/*
V`20name`20*/
X`20`20`20`20`20`20`20`20from_fifo();`20`20/*`20flags`20*/
X`20`20`20`20`20`20`20`20from_fifo();`20`20/*`20local`20*/
X`20`20`20`20`20`20`20`20if`20((int)from_fifo()`20!=`200)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20zeile`20=`20axp`20?`201`20:`20
V0;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20formatstring`5Bradix
V`5D,`20feldgroesse`5Bzeile`5D`5Bradix`5D,
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20(unsig
Vned`20int)`20from_fifo());`20`20/*`20value`20*/
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20PRINT`20"`5Cn");
X`20`20`20`20`20`20`20`20clean_fifo();
X`7D
X
Xvoid`20template_header`20()
X`7B
X`20`20`20`20`20`20`20`20if`20(axp)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"Type`20`20`20`20Symbo
Vl`20Name`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20"
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20"Flags
V`20`20Value`20`20Psindx`20`20`20`20P3`20`20`20`20`20P4`5Cn");
X`20`20`20`20`20`20`20`20`7D`20else`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"Type`20`20`20`20Symbo
Vl`20Name`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20"
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20"Flags
V`20`20Value/Addrs`20Mask`20Vector/Mask`5Cn");
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20PRINT`20"----------------------------------------"
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20"-----------------------------
V-----------`5Cn");
X`7D
X
Xvoid`20formatted_ausgabe`20(void)
X`7B
X`20`20`20`20`20`20`20`20int`20`20`20`20`20i;
X`20`20`20`20`20`20`20`20char`20`20`20`20*name;
X`20`20`20`20`20`20`20`20unsigned`20short`20`20flags;
X`20`20`20`20`20`20`20`20char`20`20`20`20flagbild`5B5`5D;
X`20`20`20`20`20`20`20`20char`20`20`20`20*fbpointer;
X
X`20`20`20`20`20`20`20`20PRINT`20"%-4s`20",`20(char*)`20from_fifo`20());`20`20/
V*`20type`20*/
X`20`20`20`20`20`20`20`20name`20=`20(char*)from_fifo();
X`20`20`20`20`20`20`20`20if`20(strlen`20(name)`20>`2039)`20`20sprintf`20(`26nam
Ve`5B38`5D,`20"*");
X`20`20`20`20`20`20`20`20PRINT`20"%-*s`20",`2039,`20name);
X`20`20`20`20`20`20`20`20flags`20=`20(unsigned`20short)from_fifo();
X`20`20`20`20`20`20`20`20fbpointer`20=`20flagbild;
X`20`20`20`20`20`20`20`20if`20(axp)`20*fbpointer++`20=`20flags`20`26`201<<6`20?
V`20'p'`20:`20'l';
X`20`20`20`20`20`20`20`20*fbpointer++`20`20`20`20`20`20`20`20`20`20=`20flags`20
V`26`201<<3`20?`20'r'`20:`20'a';
X`20`20`20`20`20`20`20`20if`20((int)from_fifo())`20`20`20*fbpointer++`20=`20'-'
V;`20`20/*`20local`20*/
X`20`20`20`20`20`20`20`20else`20`20*fbpointer++`20`20`20`20=`20flags`20`26`201<
V<2`20?`20'u'`20:`20'g';
X`20`20`20`20`20`20`20`20*fbpointer++`20`20`20`20`20`20`20`20`20`20=`20flags`20
V`26`201`20`20`20`20?`20'w'`20:`20's';
X`20`20`20`20`20`20`20`20*fbpointer`20`20`20`20`20`20`20`20`20`20`20`20=`20'`5C
V0';
X`20`20`20`20`20`20`20`20PRINT`20"%s",`20flagbild);
X`20`20`20`20`20`20`20`20parameter_ausgabe`20("--------");
X`20`20`20`20`20`20`20`20PRINT`20"`5Cn");
X`20`20`20`20`20`20`20`20clean_fifo();
X`7D
X
Xvoid`20raw_ausgabe`20(void)
X`7B
X`20`20`20`20`20`20`20`20PRINT`20"%-4s`20",`20(char*)`20from_fifo`20());`20`20/
V*`20type`20*/
X`20`20`20`20`20`20`20`20PRINT`20"%-40s`20",`20(char*)`20from_fifo`20());`20`20
V/*`20name`20*/
X`20`20`20`20`20`20`20`20PRINT`20"%03X",`20(unsigned`20int)`20from_fifo`20());
V`20`20/*`20flags`20*/
X`20`20`20`20`20`20`20`20from_fifo();`20`20/*`20local`20*/
X`20`20`20`20`20`20`20`20parameter_ausgabe`20("`20`20`20`20`20`20`20`20");
X`20`20`20`20`20`20`20`20PRINT`20"`5Cn");
X`20`20`20`20`20`20`20`20clean_fifo();
X`7D
X
Xvoid`20parameter_ausgabe`20(char`20*filling)
X`7B
X`20`20`20`20`20`20`20`20int`20`20`20`20`20i;
X`20`20`20`20`20`20`20`20char`20`20`20`20*string;
X
X`20`20`20`20`20`20`20`20if`20(axp)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20for`20(i=0;`20i<4;`20i++)`20
V`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(
V(int)from_fifo()`20!=`200)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20PRINT`20"`20`20%5X",`20(unsigned`20int)from_fifo());
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D`20
Velse`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20PRINT`20"`20`20%s",`20filling+3);`20/*`205`20F`FCllzeichen
V`20*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20`7D`20else`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"`20`20`20");`20/*`20n
Vach`20Flags`20mehr`20Platz`20lassen`20*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20#define`20PRINT_FELD(`20width,
V`20type)`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`5C
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(
V(int)from_fifo()`20!=`200)`20`7B`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20`20`5C
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20PRINT`20"`20`20%"#width"X",`20(type)from_fifo());`20`5C
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D`20
Velse`20`7B`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`5C
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20string`20=`20filling`20+`208`20-`20width;`20`20`20`20`20`20
V`20`20`20`20`20`20`20`20`20`20`5C
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20PRINT`20"`20`20%s",`20string);`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20`5C
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT_FELD`20(8,`20unsigned`20
Vint)
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT_FELD`20(4,`20unsigned`20
Vshort`20int)
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT_FELD`20(8,`20unsigned`20
Vint)
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20#undef`20PRINT_FELD
X`20`20`20`20`20`20`20`20`7D
X`7D
X
Xvoid`20dclsym_ausgabe`20(void)
X`7B
X`20`20`20`20`20`20`20`20char`20`20`20`20*formatstring`5B3`5D`20=`20`7B`20`20
V`20`20"%%X%08X%n"`20`20/*`20hex`20*/,
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20`20`20`20`20`20`20`20`20"%%D%u%n"`20`20/*`20unsigned`20integ
Ver*/,
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20`20`20`20`20`20`20`20`20"%%O%011o%n"`20`20/*`20octal`20*/`7D
V;
X`20`20`20`20`20`20`20`20unsigned`20int`20`20`20`20status,`20table;
X`20`20`20`20`20`20`20`20char`20`20`20`20*dclsym;
X`20`20`20`20`20`20`20`20char`20`20`20`20value`5B16`5D;
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(value_des,`20"`20");
X
X`20`20`20`20`20`20`20`20from_fifo();`20`20/*`20type`20*/
X`20`20`20`20`20`20`20`20dclsym`20=`20(char*)`20from_fifo();`20`20/*`20name`20*
V/
X`20`20`20`20`20`20`20`20if`20(!setname_specified)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20set_des.dsc$a_pointer`20=`20dc
Vlsym;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20set_des.dsc$w_length`20=`20str
Vlen`20(dclsym);
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20value_des.dsc$a_pointer`20=`20value;
X`20`20`20`20`20`20`20`20status`20=`20lib$get_symbol`20(`26set_des,`20`26value_
Vdes,`200,`20`26table);
X`20`20`20`20`20`20`20`20if`20(status`20==`20LIB$_NOSUCHSYM`20`7C`7C`20table`20
V==`20LIB$K_CLI_GLOBAL_SYM)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20from_fifo();`20`20/*`20flags
V`20*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20from_fifo();`20`20/*`20local
V`20*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20((int)from_fifo()`20!=`20
V0)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20sprint
Vf`20(value,`20formatstring`5Bradix`5D,`20
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20(unsigned`20int)`20from_fifo(),`20`20/*`20value`20*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20`26value_des.dsc$w_length);`20`20/*`20sorry,`20that's`20C`20
V*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20status`20=`20lib$set_symbol`20
V(`26set_des,`20`26value_des,`200);
X`20`20`20`20`20`20`20`20`7D`20else`20if`20(status`20`26`201)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20putmsg`20(3,`20SYMBOLS$_MULDEF
V,`201,`20`26set_des);
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20clean_fifo();
X`7D
X
X#undef`20PRINT
X
X#ifdef`20__alpha
X/*`20`20`20`20`20`20AXP:
X`20*`20`20`20`20`20`20Ein`20Record`20wird`20bearbeitet
X`20*/
Xint`20axp_record`20(char`20*buffer)
X`7B
X`20`20`20`20`20`20`20`20struct`20eobjrecdef`20`20`20`20`20`20`20*objrecord`20=
V`20(struct`20eobjrecdef`20*)buffer;
X
X`20`20`20`20`20`20`20`20switch`20(objrecord->eobj$w_rectyp)`20
X`20`20`20`20`20`20`20`20`7B
X`20`20`20`20`20`20`20`20case`20EOBJ$C_EEOM`20:`20`20`20`20`20`20return`200;
X`20`20`20`20`20`20`20`20case`20EOBJ$C_EGSD`20:`20`20`20`20`20`20gsd_records++;
V
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20egsd`20(buffer);
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20return`201;
X`7D
X#endif
X
X/*`20`20`20`20`20`20VAX:
X`20*`20`20`20`20`20`20Ein`20Record`20wird`20bearbeitet
X`20*/
Xint`20vax_record`20(char`20*buffer,`20int`20size)
X`7B
X`20`20`20`20`20`20`20`20struct`20objrecdef`20`20`20`20`20`20`20`20*objrecord
V`20=`20(struct`20objrecdef`20*)buffer;
X
X`20`20`20`20`20`20`20`20switch`20(objrecord->obj$b_rectyp)`20
X`20`20`20`20`20`20`20`20`7B
X`20`20`20`20`20`20`20`20case`20OBJ$C_EOM`20:
X`20`20`20`20`20`20`20`20case`20OBJ$C_EOMW`20:`20`20`20`20`20`20`20return`200;
V
X`20`20`20`20`20`20`20`20case`20OBJ$C_GSD`20:`20`20`20`20`20`20`20`20gsd_record
Vs++;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20gsd`20(buffer,`20size);
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20return`201;
X`7D
X
X
X/*`20`20`20`20`20`20Ein`20Object`20Module`20wird`20abgearbeitet.
X`20*/
Xint`20obj_module`20(int`20lib)
X#define`20LESEN(s,b)`20(lib`20?`20library_lesen(s,b)`20:`20simple_lesen(s,b))
V
X`7B
X#ifdef`20__alpha
X`20`20`20`20`20`20`20`20char`20`20`20`20buffer`5BEOBJ$C_MAXRECSIZ`5D;
X#else
X`20`20`20`20`20`20`20`20char`20`20`20`20buffer`5BOBJ$C_MAXRECSIZ`5D;
X#endif
X`20`20`20`20`20`20`20`20int`20`20`20`20`20status,`20size,`20bufsize;
X
X#ifdef`20__alpha
X`20`20`20`20`20`20`20`20bufsize`20=`20axp?`20EOBJ$C_MAXRECSIZ`20:`20OBJ$C_MAXR
VECSIZ;
X#else
X`20`20`20`20`20`20`20`20bufsize`20=`20OBJ$C_MAXRECSIZ;
X#endif
X`20`20`20`20`20`20`20`20/*`20Module`20Header`20lesen`20und`20pr`FCfen`20*/
XJ`20`20`20`20`20`20`20if`20(LESEN`20(bufsize,`20buffer)`20==`20-1)`20goto`20fe
Vhler;
X`20`20`20`20`20`20`20`20records++;
X#ifdef`20__alpha
X`20`20`20`20`20`20`20`20status`20=`20axp?`20emh`20((struct`20emhdef`20*)buffer
V,`20EMH$C_MHD)
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20:`20mhd`20((struct
V`20mhdef`20*)buffer,`20MHD$C_MHD);
X#else
X`20`20`20`20`20`20`20`20status`20=`20mhd`20((struct`20mhdef`20*)buffer,`20MHD$
VC_MHD);
X#endif
XJ`20`20`20`20`20`20`20if`20(status`20==`200)`20goto`20fehler;`20
X`20`20`20`20`20`20`20`20/*`20Language`20Header`20lesen`20und`20pr`FCfen`20*/
XJ`20`20`20`20`20`20`20if`20(LESEN`20(bufsize,`20buffer)`20==`20-1)`20goto`20fe
Vhler;
X`20`20`20`20`20`20`20`20records++;
X#ifdef`20__alpha
X`20`20`20`20`20`20`20`20status`20=`20axp?`20emh`20((struct`20emhdef`20*)buffer
V,`20EMH$C_LNM)
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20:`20mhd`20((struct
V`20mhdef`20*)buffer,`20MHD$C_LNM);
X#else
X`20`20`20`20`20`20`20`20status`20=`20mhd`20((struct`20mhdef`20*)buffer,`20MHD$
VC_LNM);
X#endif
XJ`20`20`20`20`20`20`20if`20(status`20==`200)`20goto`20fehler;`20
X`20`20`20`20`20`20`20`20/*`20weitere`20Records`20lesen`20und`20abarbeiten`20*/
V
X`20`20`20`20`20`20`20`20for`20(mod_sym.cnt=0,`20mod_sym.matched=0`20;;)`20`7B
V
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20size`20=`20LESEN`20(bufsize,
V`20buffer);
XJ`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(size`20==`20-1)`20goto`20f
Vehler;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20records++;
X#ifdef`20__alpha
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20status`20=`20axp?`20axp_record
V`20(buffer)
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20:`20vax_record`20(buffer,`20size);
X#else
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20status`20=`20vax_record`20(buf
Vfer,`20size);
X#endif
X`20`20`20`20`20`20`20`20J`20`20`20`20`20`20`20if`20(status`20==`200)`20break;
V
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20return`201;
Xfehler:
X`20`20`20`20`20`20`20`20return`200;
X`7D
X#undef`20LESEN
X
X/*`20PRINT`20enth`E4lt`20eine`20`F6ffnende`20Klammer`20weniger`20:-o`20*/
X#define`20PRINT`20fprintf`20(outfile,
Xvoid`20module_summary`20(int`20lib)
X`7B
X`20`20`20`20`20`20`20`20if`20(print_record`20==`200)`20`7B
XJ`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(only_matches`20`26`26`20mo
Vd_sym.matched`20==`200)`20return;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"`5Cn%s",`20fulnambuf)
V;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(lib)`20PRINT`20"`20%s",
V`20modnam);
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20PRINT`20"`5Cn");
X`20`20`20`20`20`20`20`20switch`20(ausgabeformat)`20`7B
X`20`20`20`20`20`20`20`20case`20FORMATTED:
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"Total`20of`20%i/%i`20
Vsymbols.`5Cn",`20
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20mod_sy
Vm.matched,`20mod_sym.cnt);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20break;
X`20`20`20`20`20`20`20`20case`20RAW:
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"SYMBOLS`20%i`20%i`5Cn
V",`20mod_sym.matched,`20mod_sym.cnt);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20break;
X`20`20`20`20`20`20`20`20`7D
X`7D
X
Xvoid`20lib_summary`20(void)
X`7B
X`20`20`20`20`20`20`20`20if`20(print_record`20==`200)`20`7B
XJ`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(only_matches`20`26`26`20mo
Vd_sym.matched`20==`200)`20return;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"`5Cn%s",`20fulnambuf)
V;
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20PRINT`20"`5Cn");
X`20`20`20`20`20`20`20`20switch`20(ausgabeformat)`20`7B
X`20`20`20`20`20`20`20`20case`20FORMATTED:
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"Total`20of`20%i/%i`20
Vsymbols,`20%i/%i`20modules.`5Cn",`20
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20mod_sy
Vm.matched,`20mod_sym.cnt,`20file_module.matched,`20
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20file_m
Vodule.cnt);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20break;
X`20`20`20`20`20`20`20`20case`20RAW:
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"MODULES`20%i`20%i`5Cn
V",`20file_module.matched,`20file_module.cnt);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"SYMBOLS`20%i`20%i`5Cn
V",`20mod_sym.matched,`20mod_sym.cnt);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20break;
X`20`20`20`20`20`20`20`20`7D
X`7D
X
Xvoid`20synopsis`20(int`20lib,`20int`20files,`20zaehler`20module,`20zaehler`20s
Vym)
X`7B
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(line,`20"$LINE");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(commline,`20"");
X`20`20`20`20`20`20`20`20unsigned`20short`20`20commline_len;
X`20`20`20`20`20`20`20`20char`20`20`20`20commline_buf`5B256`5D;
X
X`20`20`20`20`20`20`20`20switch`20(ausgabeformat)`20`7B
X`20`20`20`20`20`20`20`20case`20FORMATTED:
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20`20`20`20`20`20(lib`20==
V`200`20`26`26`20files`20<=`201`20`26`26`20
X`20`20`20`20`20`20`20`20J`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20!(sym.ma
Vtched`20==`200`20`26`26`20only_matches))`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(lib`20`26`26`20module.ma
Vtched`20==`200)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20putmsg
V`20(2,`20SYMBOLS$_NOMOD,`200);
X`20`20`20`20`20`20`20`20J`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20break;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"`5CnGrand`20total`20o
Vf`20%i/%i`20symbols",`20sym.matched,`20sym.cnt);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(lib)`20PRINT`20",`20%i/%
Vi`20modules",`20module.matched,`20module.cnt);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"`20in`20%i/%i`20files
V.`5Cn",`20files,`20badfiles);
X`20`20`20`20`20`20`20`20J`20`20`20`20`20`20`20break;
X`20`20`20`20`20`20`20`20case`20RAW:
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"`5CnSYNOPSIS`5Cn");
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"FILES`20%i`20%i`5Cn",
V`20files,`20badfiles);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(lib)`20PRINT`20"MODULES
V`20%i`20%i`5Cn",`20module.matched,`20module.cnt);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"SYMBOLS`20%i`20%i`5Cn
V",`20sym.matched,`20sym.cnt);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"GSD-RECORDS`20%i`5Cn"
V,`20gsd_records);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"END`5Cn");
X`20`20`20`20`20`20`20`20J`20`20`20`20`20`20`20break;
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20if`20(do_statistic)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"`5Cn`5CnFiles`20total
V/corrupted:`20`20`20`20`20`20`20`20`20`20`20`20%8d/%d`5Cn",
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20files,
V`20badfiles);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(lib)`20PRINT`20"Modules
V`20matched/found:`20`20`20`20`20`20`20`20`20`20`20`20%8d/%d`5Cn",
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20module
V.matched,`20module.cnt);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"Records`20processed:
V`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20%8d`5Cn",`20records);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"GSD`20records`20found
V:`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20%8d`5Cn",`20gsd_records);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"Bad`20records`20found
V:`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20%8d`5Cn",`20bad_records);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"Symbol`20definitions
V`20matched/found:`20%8d/%d`5Cn",`20
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20sym.ma
Vtched,`20sym.cnt);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"Other`20GSD`20entries
V`20found:`20`20`20`20`20`20`20`20`20`20%8d`5Cn",
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20gsd_en
Vtries`20-`20sym.cnt);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20((typesel`20`26`202)`20==
V`200)`20`7B`20`20/*`20sonst`20falsche`20Zahlen`20*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT
V`20"Absolute/Relocatable`20symbols:`20`20`20`20`20%8d/%d`5Cn",
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20sym.cnt`20-`20relocatable_syms,`20relocatable_syms);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT
V`20"Weak/Strong`20symbols:`20`20`20`20`20`20`20`20`20`20`20`20`20`20%8d/%d`5Cn
V",
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20weak_syms,`20sym.cnt`20-`20weak_syms);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT
V`20"Literal/Procedure`20symbols:`20`20`20`20`20`20`20`20%8d/%d`5Cn",
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20sym.cnt`20-`20procedure_syms,`20procedure_syms);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT
V`20"Global/Local/Universal`20symbols:`20`20`20%8d/%d/%d`5Cn",
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20sym.cnt`20-`20local_syms`20-`20universal_syms,
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20
V`20`20`20`20`20`20local_syms,`20universal_syms);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20commline.dsc$a_pointer`20=`20c
Vommline_buf;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20commline.dsc$w_length`20=`20si
Vzeof`20(commline_buf);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20cli$get_value`20(`26line,`20
V`26commline,`20`26commline_len);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20commline_buf`5Bcommline_len`5D
V`20=`20'`5C0';
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20PRINT`20"`5CnCommand`20line:
V`20%s",`20commline_buf);
X`20`20`20`20`20`20`20`20`7D
X`7D
X
X/*`20`20`20`20`20`20Abarbeiten`20einer`20Datei
X*/
Xint`20datei`20(int`20image,`20int`20lib)
X/*`20returniert`201,`20wenn`20File`20ge`F6ffnet`20werden`20konnte,`20sonst`200
V`20*/
X#define`20OEFFNEN`20(lib`20?`20library_oeffnen(axp)`20:`20simple_oeffnen())
X#define`20FIRST_MODULE`20(lib`20?`20library_next_module()`20:`201)
X#define`20NEXT_MODULE`5C
X`20`20`20`20`20`20`20`20(lib`20?`20library_next_module()`20:`20simple_schliess
Ven())
X#ifdef`20__alpha`20
X#define`20IMAGE_HEAD`20(axp`20?`20axp_image_head()`20:`20vax_image_head())
X#else
X#define`20IMAGE_HEAD`20vax_image_head()
X#endif
X`7B
X`20`20`20`20`20`20`20`20file_sym.cnt=0;
X`20`20`20`20`20`20`20`20file_sym.matched=0;
XJ`20`20`20`20`20`20`20if`20(OEFFNEN`20==`200)`20return`200;
X`20`20`20`20`20`20`20`20if`20(image)`20`7B`20/*`20ev.`20in`20oeffnen`20einbaue
Vn`20*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(IMAGE_HEAD`20==`200)`20
V`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20putmsg
V`20(3,`20SYMBOLS$_BADIMAGE,`201,`20`26fulnam);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20simple
V_schliessen();
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20badfil
Ves++;
XJ`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20return
V`200;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20if`20(print_record)`20PRINT`20"`5Cn`5Cn`5CnFILE`20%s
V`5Cn`5Cn",`20fulnambuf);
XJ`20`20`20`20`20`20`20if`20(FIRST_MODULE`20==`200)`20return`200;
X`20`20`20`20`20`20`20`20do`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(print_record`20`26`26`20
Vausgabeformat`20==`20FORMATTED)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20templa
Vte_header();
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(obj_module`20(lib)`20==
V`200)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20putmsg
V`20(2,`20SYMBOLS$_BADOBJMOD,`200);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20contin
Vue;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20if`20(print_module)`20module_s
Vummary`20(lib);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20file_sym.cnt`20+=`20mod_sym.cn
Vt;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20file_sym.matched`20+=`20mod_sy
Vm.matched;
X`20`20`20`20`20`20`20`20`7D`20while`20(NEXT_MODULE`20!=`200);
X`20`20`20`20`20`20`20`20if`20(!`20print_module)`20lib_summary();
XJ`20`20`20`20`20`20`20return`201;
X`7D
X#undef`20OEFFNEN
X#undef`20FIRST_MODULE
X#undef`20NEXT_MODULE
X#undef`20IMAGE_HEAD
X#undef`20PRINT
X
X/*`20`20`20`20`20`20Hauptprogramm
X`20*/
Xmain(int`20argc,`20char`20**argv)
X`7B
X`20`20`20`20`20`20`20`20int`20`20`20`20`20lib,`20img;
X`20`20`20`20`20`20`20`20int`20`20`20`20`20status,`20stv;
X`20`20`20`20`20`20`20`20unsigned`20short`20`20len;
X`20`20`20`20`20`20`20`20unsigned`20`20`20`20`20`20`20`20contex=0;
X`20`20`20`20`20`20`20`20zaehler`20total_sym`20=`20`7B0,0`7D;
X`20`20`20`20`20`20`20`20zaehler`20total_module`20=`20`7B0,0`7D;
X/*`20`20`20`20`20`20int`20`20`20`20`20goodfiles`20=`200;*/
X`20`20`20`20`20`20`20`20int`20`20`20`20`20filecount`20=`200;
X`20`20`20`20`20`20`20`20char`20`20`20`20filnambuf`5B256`5D;
X`20`20`20`20`20`20`20`20char`20`20`20`20first_file`5B256`5D`20=`20"";
X`20`20`20`20`20`20`20`20char`20`20`20`20format_char;
X`20`20`20`20`20`20`20`20char`20`20`20`20modnambuf`20`5B32`5D;
X`20`20`20`20`20`20`20`20char`20`20`20`20outnambuf`5B256`5D;
X`20`20`20`20`20`20`20`20char`20`20`20`20*pos;
X`20`20`20`20`20`20`20`20char`20`20`20`20summary_char;
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(absolute,`20"ABSOLUTE");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(decimal,`20"DECIMAL");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(defobj,`20".STB");`20`20/*`20wird`20ev.
V`20auf`20".OLB"`20ge`E4ndert`20*/
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(defimg,`20"SYS$SHARE:.EXE");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(filnam,`20"");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(format,`20"FORMAT");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(format_des,`20"");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(global,`20"GLOBAL");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(identification,`20"IDENTIFICATION");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(image,`20"IMAGE");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(include,`20"INCLUDE");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(infile,`20"INFILE");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(literal,`20"LITERAL");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(local,`20"LOCAL");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(modnam,`20"");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(octal,`20"OCTAL");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(outnam,`20"");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(output,`20"OUTPUT");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(procedure,`20"PROCEDURE");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(psc,`20"PSC");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(relocatable,`20"RELOCATABLE");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(set,`20"SET");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(statistics,`20"STATISTICS");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(strong,`20"STRONG");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(summary,`20"SUMMARY");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(summary_des,`20"");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(symbol,`20"SYMBOL");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(universal,`20"UNIVERSAL");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(vaxdes,`20"VAX");
X`20`20`20`20`20`20`20`20$DESCRIPTOR`20(weak,`20"WEAK");
X`20`20`20`20`20`20`20`20struct`20dsc$descriptor_s`20*filedefaults;
X
X`20`20`20`20`20`20`20`20/**`20Qualifier`20auswerten`20**/
X`20`20`20`20`20`20`20`20#ifdef`20__alpha
X`20`20`20`20`20`20`20`20axp`20=`20(cli$present`20(`26vaxdes)`20`26`201)`20?`20
V0`20:`201;
X`20`20`20`20`20`20`20`20#endif
X`20`20`20`20`20`20`20`20#define`20BIT(`20pos,`20wert)`20`5C
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20flagsel`20`7C=`20wert<<pos;`20
V/*`20Bit`20pos`20gesetzt`20wenn`20wert`20=`201`20*/`5C
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20flagmask`20`5E=`201<<pos;`20
V`20/*`20Bit`20pos`20beachten`20*/
X`20`20`20`20`20`20`20`20/*`20end#define`20*/
X`20`20`20`20`20`20`20`20/*`20Die`20Bitpositionen`20im`20folgenden`20k`F6nnen
V`20auch`20aus`20EGSYDEF.H`20ermittelt
X`20`20`20`20`20`20`20`20`20`20`20werden`20*/
X`20`20`20`20`20`20`20`20/*`20Auswahl`20weak`20oder`20strong`20*/
X`20`20`20`20`20`20`20`20if`20(cli$present`20(`26weak)`20`26`201)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20BIT`20(0,`201)
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20if`20(cli$present`20(`26strong)`20`20`26`201)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20BIT`20(0,`200)
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20/*`20Auswahl`20universal`20oder`20global`20oder`20loca
Vl`20*/
X`20`20`20`20`20`20`20`20if`20(cli$present`20(`26universal)`20`26`201)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20BIT`20(2,`201)
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20scope`20`26=`201;
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20if`20(cli$present`20(`26global)`20`20`26`201)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20BIT`20(2,`200)
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20scope`20`26=`201;
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20if`20(cli$present`20(`26local)`20`20`26`201)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20scope`20`26=`202;
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20/*`20Auswahl`20relocatable`20oder`20absolute`20*/
X`20`20`20`20`20`20`20`20if`20(cli$present`20(`26relocatable)`20`26`201)`20`7B
V
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20BIT`20(3,`201)
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20if`20(cli$present`20(`26absolute)`20`20`26`201)`20`7B
V
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20BIT`20(3,`200)
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20/*`20Auswahl`20procedure`20oder`20literal`20*/
X`20`20`20`20`20`20`20`20if`20(cli$present`20(`26procedure)`20`26`201)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20BIT`20(6,`201)
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20if`20(cli$present`20(`26literal)`20`20`26`201)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20BIT`20(6,`200)
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20#undef`20BIT
X`20`20`20`20`20`20`20`20/*`20Qualifier`20PSC`20*/
X`20`20`20`20`20`20`20`20if`20(cli$present`20(`26psc)`20`26`201)`20typesel`20=
V`203;
X`20`20`20`20`20`20`20`20else`20typesel`20=`201;`20`20/*`20nur`20SYM*`20ausgebe
Vn`20*/
X`20`20`20`20`20`20`20`20/*`20Ausgabeform`20festlegen`20*/
X`20`20`20`20`20`20`20`20if`20(cli$present`20(`26decimal)`20`26`201)`20radix`20
V=`201;
X`20`20`20`20`20`20`20`20do_statistic`20=`20cli$present`20(`26statistics)`20`26
V`201;
X`20`20`20`20`20`20`20`20if`20(cli$present`20(`26octal)`20`26`201)`20radix`20=
V`202;
X`20`20`20`20`20`20`20`20/*`20Output`20festlegen`20*/
X`20`20`20`20`20`20`20`20if`20(cli$present`20(`26output)`20==`20CLI$_NEGATED`20
V`7C`7C`20cli$present`20(`26set)`20`26`201)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20strcpy`20(outnambuf,"NLA0:");
V
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20len`20=`20sizeof`20("nla0:");
V
X`20`20`20`20`20`20`20`20`7D`20else`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20outnam.dsc$a_pointer`20=`20out
Vnambuf;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20outnam.dsc$w_length`20=`20size
Vof`20(outnambuf);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20cli$get_value`20(`26output,`20
V`26outnam,`20`26len);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20outnambuf`5Blen`5D`20=`20'`5C0
V';
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20outfile`20=`20fopen`20(outnambuf,`20"w");
X`20`20`20`20`20`20`20`20if`20(outfile`20==`20NULL)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20outnam.dsc$w_length`20=`20len;
V
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20putmsg`20(4,`20SYMBOLS$_OPENOU
VTFAIL,`201,`20`26outnam,`20vaxc$errno);
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20/*`20Qualifier`20SET`20*/
X`20`20`20`20`20`20`20`20if`20(cli$present`20(`26set)`20`26`201)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20ausgabeformat`20=`20DCLSYM;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20cli$get_value`20(`26set,`20`26
Vset_des,`20`26len);
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20set_des.dsc$w_length`20=`20len
V;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20setname_specified`20=`20len;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20set_name`5Blen`5D`20=`20'`5C0'
V;
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20/*`20Wenn`20VAX,`20dann`20setze`20lit_proc`20und`20mas
Vkiere`20Bit`206`20aus`20*/
X`20`20`20`20`20`20`20`20if`20(axp`20==`200`20`26`26`20(flagmask`20`26`201<<6))
V`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20lit_proc`20=`20flagsel`20`26
V`201<<6`20?`201`20:`202;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20flagmask`20`26=`2015;`20/*`20%
V1111`20*/
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20/*`20l`F6sche`20alle`20Bits`20in`20flagsel,`20die`20ni
Vcht`20beachtet`20werden`20sollen`20*/
X`20`20`20`20`20`20`20`20flagsel`20`26=`20flagmask;
X`20`20`20`20`20`20`20`20/*****/
X`20`20`20`20`20`20`20`20filnam.dsc$a_pointer`20=`20filnambuf;
X`20`20`20`20`20`20`20`20filnam.dsc$w_length`20=`20sizeof`20(filnambuf);
X`20`20`20`20`20`20`20`20cli$get_value`20(`26infile,`20`26filnam,`20`26len);
X`20`20`20`20`20`20`20`20filnam.dsc$w_length`20=`20len;
X`20`20`20`20`20`20`20`20filnambuf`20`5Blen`5D`20=`20'`5C0';
X`20`20`20`20`20`20`20`20img`20=`20(cli$present`20(`26image)`20`26`201)`20?`201
V`20:`200;
X`20`20`20`20`20`20`20`20/*`20Modulnamen`20holen`20*/
X`20`20`20`20`20`20`20`20modnam.dsc$a_pointer`20=`20modnambuf;
X`20`20`20`20`20`20`20`20modnam.dsc$w_length`20=`20sizeof`20(modnambuf);
X`20`20`20`20`20`20`20`20cli$get_value`20(`26include,`20`26modnam,`20`26len);
X`20`20`20`20`20`20`20`20modnam.dsc$w_length`20=`20len;
X`20`20`20`20`20`20`20`20modnambuf`5Blen`5D`20=`20'`5C0';
X`20`20`20`20`20`20`20`20set_module`20(`26modnam);
X`20`20`20`20`20`20`20`20lib`20=`20len`20>`200;
X`20`20`20`20`20`20`20`20/*`20Idnamen`20holen`20*/
X`20`20`20`20`20`20`20`20cli$get_value`20(`26identification,`20`26id_des,`20`26
Vlen);
X`20`20`20`20`20`20`20`20id_des.dsc$w_length`20=`20len;
X`20`20`20`20`20`20`20`20/*`20Symbolnamen`20holen`20*/
X`20`20`20`20`20`20`20`20cli$get_value`20(`26symbol,`20`26symbol_des,`20`26len)
V;
X`20`20`20`20`20`20`20`20symbol_des.dsc$w_length`20=`20len;
X`20`20`20`20`20`20`20`20symbol_name`5Blen`5D`20=`20'`5C0';
X`20`20`20`20`20`20`20`20/*`20Summarytype`20holen`20(erster`20Buchstabe`20gen
V`FCgt)`20*/
X`20`20`20`20`20`20`20`20summary_des.dsc$a_pointer`20=`20`26summary_char;
X`20`20`20`20`20`20`20`20summary_des.dsc$w_length`20=`201;
X`20`20`20`20`20`20`20`20if`20(cli$present`20(`26summary)`20`26`201)`20print_re
Vcord`20=`200;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20/*`20keine`20Recorddaten`20aus
Vgeben`20*/
X`20`20`20`20`20`20`20`20while`20(cli$get_value`20(`26summary,`20`26summary_des
V,`200)`20!=`20CLI$_ABSENT)`20`7B
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20switch`20(summary_char)`20`7B
V
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20'L':`20`20/*`20LIBRARY
V`20*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20print_
Vmodule`20=`200;`20/*`20auch`20keine`20Moduldaten`20ausgeben`20*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20break;
V
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20case`20'M':`20`20/*`20MATCH`20
V*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20only_m
Vatches`20=`201;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20`7D
X`20`20`20`20`20`20`20`20/*`20Formatnamen`20holen`20(erster`20Buchstabe`20gen
V`FCgt)`20*/
X`20`20`20`20`20`20`20`20format_des.dsc$a_pointer`20=`20`26format_char;
X`20`20`20`20`20`20`20`20format_des.dsc$w_length`20=`201;
X`20`20`20`20`20`20`20`20cli$get_value`20(`26format,`20`26format_des,`200);
X`20`20`20`20`20`20`20`20switch`20(format_char)`20`7B
X`20`20`20`20`20`20`20`20case`20'B':`20if`20(print_record)`20ausgabeformat`20=
V`20BRIEF;
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20/*`20b
Vei`20/SUMMARY`20ist`20BRIEF`20sinnlos`20*/
X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20break;
X`20`20`20`20`20`20`20`20case`20'R':`20ausgabeformat`20=`20RAW;`20break;
X`20`20`20`20`20`20`20`20`7D`20`20/*`20FORMATTED`20ist`20Default`20*/
X`20`20`20`20`20`20`20`20/*`20Filedefaults`20festlegen`20*/
X`20`20`20`20`20`20`20`20filedefaults`20=`20img`20?`20`26defimg`20:`20`26defobj
V;
+-+-+-+-+-+-+-+-  END  OF PART 2 +-+-+-+-+-+-+-+-


