home *** CD-ROM | disk | FTP | other *** search
/ Zodiac Super OZ / MEDIADEPOT.ISO / FILES / 16 / FREEDOS.ZIP / FD_A4PRE.ZIP / SOURCE / VALLINK.ZIP / VAL.DOC < prev    next >
Text File  |  1995-03-22  |  4KB  |  87 lines

  1. This file contains VAL, the experimental linker presented at SDC '89.
  2. To get help on the switches, enter the command:
  3.  
  4.          val /help
  5.  
  6. The file val.hlp must be located in the same directory as the file val.exe.
  7.  
  8. This program is released to the public domain by the author on February 15,
  9. 1989 at the Software Development Conference, San Francisco, CA.  With the
  10. understanding that there are no warranties of any sort either expressed or
  11. implied, you may use the code in whole or part for any lawful purpose. The
  12. author does not warrant or guarantee that this code is fit for any particular
  13. purpose. You are under no obligation to acknowledge the author when using
  14. this code, but you may do so if you desire.  The author neither seeks nor
  15. desires any contributions for this code.
  16.  
  17. Should you desire to communicate with the author, the preferred method is
  18. via the author's bulletin board, Pontchippi.  Pontchippi is an OPUS board.
  19. You may contact it directly at 504-244-1417 or via net mail to node 390/105.
  20. The board has a 9600 baud US Robotics Courier HST modem.  Should you contact
  21. the board directly, access to the board is granted immediately up completion
  22. of a very simple questionnaire.
  23.  
  24. The author wishes to acknowledge and thank Jack Purdum and Tim Leslie of
  25. Ecosoft for their assistance and support.  In addition to Jack and Tim,
  26. Steve Russell of SLR Systems was also of invaluable assistance. All helped
  27. in this project by debugging and offering their expert advice and guidance.
  28. They always had time for me seemingly whenever I requested it.
  29.  
  30. Finally, this program is dedicated to the memory of my father-in-law,
  31. Mariano "Val" Valentino.  The only request the author makes for using the
  32. program is that the program name be left as "VAL" in his memory.
  33.  
  34. David Troendle
  35. New Orleans, LA
  36. February 10, 1989
  37.  
  38.  
  39. Updates applied 01/95 by Dave Dunfield.
  40. Diffs of changed files are included:
  41.  
  42. 1. Fix incorrect gaps being generated in .COM files due to the linker
  43.    failing to update its location counter after certain operations.
  44.  
  45. *** execfile.c(148) < > execfile.old(148) ***
  46. >  Else
  47. >   highest_uninitialized_byte = (*segment_list.last).address +
  48. >                                (*segment_list.last).length;
  49. *** execfile.c(178) < > execfile.old(181) ***
  50. <       next_available_address += partial_length;
  51. *** execfile.c(196) < > execfile.old(198) ***
  52. <          next_available_address += partial_length;
  53.  
  54. 2. Remove redundant 'near' declarations which prevented program from
  55.    compiling correctly in memory models other than small.
  56.  
  57. *** langext.h(174) < > langext.old(174) ***
  58. <Type void  /* near */       *near_ptr;
  59. <Type char  /* near */       *char_ptr;
  60. >Type void near              *near_ptr;
  61. >Type char near              *char_ptr;
  62.  
  63. 3. Change sigon message so that it will only be output if the linker
  64.    issues interactive prompts or performs status output. This allows
  65.    the linker to be 'quiet' when run with full command line parameters.
  66.  
  67. *** initlink.c(16) < > initlink.old(16) ***
  68. > /* Issue Signon message */
  69. > linker_message("VAL Experimental Linker Compiled %s %s\n",__DATE__,__TIME__);
  70. >
  71. *** linkerio.c(93) < > linkerio.old(93) ***
  72. <static char                            flag = 0;
  73. *** linkerio.c(96) < > linkerio.old(95) ***
  74. < if(!flag) { /* Issue Signon message */
  75. <  flag = -1;
  76. <  fprintf(stdout,"VAL Experimental Linker Compiled %s\n",__DATE__); }
  77.  
  78. 4. Change to prevent linker from trying to expand constant filename
  79.    created from argv[0].
  80.  
  81. *** initlink.c(111) < > initlink.old(111) ***
  82. > process_filename(program_directory_string);
  83. *** initlink.c(142) < > initlink.old(143) ***
  84. < process_filename(help_filename);
  85. *** userinp.c(28) < > userinp.old(28) ***
  86. < process_filename(default_filename);
  87.