Free Software under GNU FSF GPLv3 License

  1. uvhd.c program source - investigate files with packed/binary & no LineFeeds
    - download & compile under Unix/Linux
  2. uvhd.exe program executable (Windows/DOS) - download for Windows/DOS
  3. - test files to demo uvhd (custmas1,sales1,vendormas,etc)
  4. uvhdcob.c program source - shows COBOL copybook fieldnames beside data field contents
    - download & compile under Unix/Linux
  5. uvhdcob.exe executable (Windows/DOS) - download for Windows/DOS
  6. printctl1.c - convert ASCII files to 133 bytes with 1st byte printer code

    • Just click on link above for desired program
    • then select/click "save file" (to Downloads directory)
    • then copy to desired unix/windows directory

    uvhd - Binary File Investigation Utility

    'uvhd' is a binary file investigation utility. It displays any file in 'vertical hexadecimal' and prompts for commands to browse, search, select, update, scan/replace, print, translate, etc. 'uvhd' is especially effective for working with mainframe type data files that have been migrated to unix. These files may have packed/binary fields & are usually fixed-length records with no LineFeeds. These files can NOT be handled with Unix system utilities such as vi,lp,more,cat,grep,etc. uvhd is an interactive utility with a command line interface and 24 help screens. Please see the full documentation at uvhd documentation

    uvhdcob - shows COBOL copybook fieldnames beside data

    'uvhdcob' is similar to uvhd, but shows COBOL copybook fieldnames beside data field contents. You must first convert the COBOL copybooks to 'cobmaps' (same as copybooks, but with field start/end/length/type coded on right side). 'cobmaps' are best created with 'uvcopy cobmap1' (part of Vancouver Utilities pkg), but you could code manually following examples in uvhdcob documentation. UV Software offers a 1 time free conversion of your COBOL copybooks. Please see the full documentation at uvhdcob documentation . In 2011 uvhdcob was enhanced to handle more complex copybooks with 2 levels of group occurs, unlimited item occurs,& unlimited occurs depending on.

    Free Software under GNU FSF GPLv3 License

    These 3 programs are free software: you may redistribute them and/or modify them under the terms of GPLv3 (GNU General Public License version 3), as published by the Free Software Foundation. These programs are distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the full description of the GNU General Public License at:

    These 3 programs may be downloaded using the links above. Be sure to 'SAVE AS' uvhd.c, uvhdcob.c,or printctl1.c. See Compile Instructions further below

    uvhd & uvhdcob are a effective tool for investigating problems and verifying test results in files that have packed/binary fields, and that may not have linefeeds. Most Unix/Linux tools require linefeeds (vi, cat, lp, etc).

    uvhd & uvhdcob are especially valuable in conversion situations such as mainframe to Unix/Linux conversions. Mainframe COBOL is usually converted to Micro Focus COBOL on the Unix/Linux system. uvhd/uvhdcob can process all converted file types (sequential, fixed, variable, indexed, text, binary, C-ISAM, D-ISAM, Micro Focus COBOL IDXFORMAT1/3/8, RDW/BDW, etc)

    For Unix/Linux you must download the source programs and compile on your Unix/Linux O/S. For Windows or DOS you may download the executable and store it in your program files or setup your PATH to wherever you download.


    • you must have downloaded the programs from
    • also download to test/demo the programs
    • store the programs in subdir 'src'
    • mkdir bin to receive compiled outputs
    • your Unix/Linux must have an ANSI C compiler

     #1. cp uvhd.c src/uvhd.c       - store program in source subdir
         ====================       - ensure filename is 'uvhd.c' 
     #2. cc src/uvhd.c -obin/uvhd   - compile the program
     #3a. bin/uvhd dat1/custmas1 r256 - test with downloaded ASCII datafile
     #3b. bin/uvhd dat1/custmas1E r256a - test with downloaded EBCDIC datafile
          - option 'a' translates the Character line to ASCII
          - but still shows the EBCDIC values of the zones & digits lines
          - for each vertical hexadecimal 3 line group (chars/zones/digits) 
     #3c. bin/uvhd xxxxx r???   - display any of your data files (???=recsize)
     #4. PATH=$PATH:/home/userx/bin; export PATH
         - Add bin to your PATH so you can execute it from anywhere.


     #1. cp uvhdcob.c src/uvhdcob.c     - store program in source subdir
         ==========================     - ensure filename is 'uvhdcob.c' 
     #2. cc src/uvhdcob.c -obin/uvhdcob - compile the program
     #3. uvcopyx cobmap1 cpys maps uop=q0i7 - convert copybooks to 'cobmap's
         ================================== - requires VU pkg, could do manually
     #4. bin/uvhd dat1/custmas1 maps/custmas - test w datafile & copybook/map 

    setup for Windows/DOS

    The above procedures are for Unix/Linux. You do not need to compile for Windows/DOS since you can download the executable from the web site. Please see uvhd setup Windows PATH to setup the Windows PATH, so the program will be found when you type uvhd on the command line. See WindowsDOS.doc if you wish to see how uvhd was compiled at UV Software for DOS windows on Windows.

    Feedback Requested

    If you find uvhd useful at your site, I would appreciate some feedback. Please let me know which features you find most useful, and if you have any suggestions for future enhancements. Of course let me know in the unlikely event :-) that you find a bug. You will be rewarded with a 1 year subscription (4 issues) to Beautiful BC Magazine.

    Owen Townsend , UV Software Inc. , 4667 Hoskins Rd. , North Vancouver BC , Canada V7K2R3 .
    Tel: 604-980-5434 , Fax: 604-980-5404 , Web: .

    return to UV Software Home-Page