return to main page
return to 1401 Software Development
Van Snyder Utilities
Useful 1401 Programming Utilities from Van Snyder
On October 7, 2005, Van Snyder sent:
and on October 11, 2005 for Linux
- which unzips into
which are now available in http://www.madscientistroom.org/ethelen/
Comments from Van Snyder follow:================================================================= Release notes ================================================================= Ron: Here are a new Autocoder (2.3) and new disassembler. The new Autocoder prints the current encoding option correctly (instead of the meaningless subscript for it), prints encodings if the -e? option is selected, handles blanks correctly if they're embedded within the same field as the option letter, e.g., as in a Unix/Linux shell if it is enclosed within quotes, such as "-e ?" (but it still won't handle -e " ?" correctly), and improves the usage description (describes the -bI0 option, doesn't bother mentioning the -m option, and reorders the -b sub-option stuff to be more natural). Except in the one-field-per-card (version A diagnostics) format, the new disassembler uses ORG instead of a sequence of DCW and DC for large blank areas. Admittedly, this may fail to initialize areas that the code intended to initialize. The opposite decision could initialize areas the code intended _not_ to initialize. Except for the one-field- per-card format, the disassembler works from a core image created by simulating the loader part of the deck. I may develop a revision that pre-fills the core image with a non-BCD character, such as "z", so that "uninitialized" can be distinguished from "blank". It doesn't yet handle Autocoder- and SPS-format EX cards, so disassembling sort7 all in one gulp wouldn't work. I recommend to build only the DisAsm program. The five other programs are all subsumed in it. I've modified the Makefiles for both programs to have a variable named O that is the extension of the object files. Its default value is "o". If you have cygwin on windows, make Autocoder using make autocoder O=obj FC=g95 FOPTS=... LDOPTS=.... Since you're not doing development or debugging, the best values for FOPTS and LDOPTS may be -O and empty, respectively. You may need to strip down machine.f90 to get rid of some Lahey-specific stuff, notably the getarg subroutine and the reference to and printing of the output from the iostat_msg subroutine within the io_error subroutine. Best regards, Van -------------------------------------------------------------------------------- I attach gnuzip-compressed files Autocoder-Linux-2.3.z, DisAsm-Linux.z and CardList-Linux.z, which are, respectively, version 2.3 of my Autocoder, a deck disassembler, and a viewer/translator for the column- binary form (*.crd) in the deck repository in your web. They are statically-linked executables for Linux, so users won't need the shared libraries (DLL's in Windoze-speak) for the Fortran run-time. Ron can perhaps provide zip files, say Autocoder-Windows-2.3.zip etc, of Windoze versions. I recommend an un-numbered list in a web page something like
From Van Snyder
- Autocoder for Windows (zip) and Linux (gzip).
- Deck disassembler for Windows (zip) and Linux (gzip).
- Lister/Translator for column-binary (*.crd) "decks" in the http://www.madscientistroom.org/ethelen/CHM repository for Windows (zip) and Linux (gzip).Each one displays its usage if it can't figure out the command line. If you add an option they don't understand, such as -h, you'll see the usage. If the Windows version is compiled with g95, the --help option prints the environment variables that affect how the program runs, before my program gets a chance to notice that it doesn't understand "--help".
I'm happy to send source code to anybody who wants it.
van.snyder AT jpl DOT nasa DOT gov You fill in the ... to your liking. Best regards, Van
return to main page