CHANGES - dvgt up to 3.51 - 18:30 GMT +10:00 Wed 25 August 1993. ---------------------------------------------------------------------- dvgt 3.4 (3 mod 4) : changes not recorded here. ---------------------------------------------------------------------- 1. - 18:17 GMT +10:00 Thu 18 Mar 1993 - options.c : Added DV_TERM environment variable, to override TERM. 2. - Sun 2 May 1993 - fontreader.c, lstring.c, lstring.h : Length specified strings introduced to make the TFM and PK font file specification string formation more controlled. 3. - Sun 2 May 1993 - Using strncpy widely in place of strcpy, to keep string memory accesses within bounds. 4. - 17:48 GMT +10:00 Mon 3 May 1993 - ncsatelvdu.c, vduinterface.c : Added Vijay's (vijay@ncst.ernet.in) NCSA Telnet driver. Now my picture is clear. 5. - About or before Sun 9 May 1993 - defaults.h : Added constant "DEF_DUMMY_TFM", in case I implement such a thing. 6. - 21:22 GMT +10:00 Sun 9 May 1993 - All drivers and other files that referred to "tek4010vdu" : Renamed: tek4010vdu.c -> tek4010emu.c tek4010vdu.h -> tek4010emu.h This was because some users have been misled by the name to think that these files were for a true TEK4010 terminal. But they are not: they are only for the use of the TEK4010 emulating drivers. 7. - 21:20 GMT +10:00 Mon 10 May 1993 - In all *.c files that use exit() : All deliberate exits produce a message. (I don't account for outside interruptions, such as power failures.) 8. - 21:24 GMT +10:00 Mon 10 May 1993 - All message text is logged in a file named `.vlg', where the DVI file is named `.dvi'. If that log file cannot be opened, then `dvgt.log' is opened. If then `dvgt.log' cannot be opened, dvgt exits with a message. 9. - Tue 11 May 1993 - fontreader.c : TFM and PK font paths may now contain multiple directories. For example, "setenv PKFONTS .:/usr/local/lib/tex/fonts/tmp" allows searching in current directory, then in the other location. 10. - Tue 11 May 1993 - fontreader.c : Dummy font's file specification is now formed in the same way as other PK fonts. 11. - 20:02 GMT +10:00 Wed 12 May 1993 - dvitovdu.c : Inability to write a log file no longer exits dvgt. Instead, logfile is set NULL, and subsequently ignored. Some other exits deleted as due to non-fatal conditions. 12. - 20:02 GMT +10:00 Wed 12 May 1993 - config.h, globals.h, dvitovdu.c, fontreader.c : "bitmap_rec" replaced by "Word" which I typedef as int. Bitmaps are dynamicaly allocated, so they can be much smaller or much larger, as the case requires. 13. - 22:06 GMT +10:00 Wed 12 May 1993 - fontreader.c : Fatal message "Couldn't open dummy font!" is now written to the terminal, after resetting VDU, and appears cleanly - at least after use of the "ncsatel" vdu mode. 14. - 22:06 GMT +10:00 Wed 12 May 1993 - dvitovdu.c : The following signals are caught so that the screen may be reset before exit: SIGABRT, SIGFPE, SIGILL, SIGINT, SIGSEGV, SIGTERM. Any other signal is also caught! 15. - Fri 14 May 1993 - tek4010emu.c : In Terse mode, i.e. in TEK4010ShowChar(), the unrepresented font characters, previously shown as '?', are now displayed as hexadecimal escape sequences. E.g., code 1 appears as '\01'. 16. - Fri 14 May 1993 - dvitovdu.c : 'N' and 'P' commands now page forward and back, to the next and previous page, respectively. So, the '<' and '>' commands are deleted. 17. - Fri 14 May 1993 - dvitovdu.c : Added control-L command to refresh screen. 18. - Fri 14 May 1993 - dvitovdu.c : Units are now changed by a 'C' command. The 'C' may be followed by zero or more spaces, and then the unit name. (The actual unit names are as before: IN, CM, MM, PT, BP, PC, BP, SP and PX.) 19. - Fri 14 May 1993 - dvitovdu.c, help.h : The '?' interactive command help is now integrated into the source code, in "help.h", using a ShowText() function. 20. - Sun 16 May 1993 - dvitovdu.c, tek4010emu.c : The "F" (Full), "B" (Box) and "T" (Terse) commands are now toggles. Any combination of these display modes is now accepted. Change necessary to tek4010emu.c, to correct a faulty assumption at the beginning of TEK4010ShowChar(). 21. - Sun 16 May 1993 - dvitovdu.c : The "A" Auto window command is now a toggle. 22. - Mon 17 May 1993 - dvitovdu.c : BoxChar() is now used in place of FullCharPS in Full mode when a TFM gives the Bounding Box information, because I prefer outlines to solid rectangles. 23. - Fri 21 May 1993 - fontreader.c, dvitovdu.c : BuildFontSpec() and PixelTableRoutine() have been altered, so that dvgt seeks a PK font first, then a TFM, then the dummy PK font. Consequently, the PostScript prefix code and option are eliminated. 24. - Fri 21 May 1993 - vdu.h, vduinterface.c, dvitovdu.c : For each VDU, the value "vdu_clears_lines" is set true if the VDU can clear a single line. The "ncsatel" driver cannot, due to a property of the Tek4010 terminal and (I suppose) its emulators. So, for the "ncsatel" vdu, when the Status lines should be updated, the whole display is now updated. 25. - Sun 23 May 1993 - userguide.tex, sysguide.tex, guidemacs.tex : Updated Andrew Trevorrow's documentation to reflect Ian Dall's port of DVItoVDU to C and features of dvgt 3.5. 26. - Mon 24 May 1993 - In all files that used "__((void))" : In "config.h", VOID is defined as "void" for ANSI C, empty otherwise. All function and function pointer declarations and definitions that used "__((void))" now use "(VOID)" instead. This helps "tags" and "ctags" programs to identify functions correctly. (It also marginally reduces source code size.) 27. - Tue 25 May 1993 - options.c : Fixed "-r" option to interpret "-r x,y" to set the X and Y resolutions to x and y respectively. Retained "-r x" to set the X and Y resolutions to the common value x, and "-r" to display the default resolutions. 28. - Tue 25 May 1993 - defaults.h, options.c: Renamed the constant DEF_HELP_FILE to DEF_CMD_HELP, and renamed the environment variable DV_HELP to DV_CMD_HELP. 29. - Tue 25 May 1993 - defaults.h, options.c, fontreader.c : Fall back to dummy TFM, in case dummy PK not found. Added env. var. DV_DUMMY_TFM. Renamed DV_DUMMYFONT to DV_DUMMY_PK. 30. - Wed 26 May 1993 - options.c, defaults.h : Added DV_PAPERWD and DV_PAPERHT env. vars. These and DEF_PAPERWD and DEF_PAPERHT now accept dimensions, else they default to inches. 31. - Wed 26 May 1993 - defaults.h, options.c : Renamed DEF_IMMEDIATE_HELP to DEF_IMMED_HELP. 32. - Wed 26 May 1993 - dvgt/help directory: Renamed "help" file to "cmd.help". 33. - Sun 30 May 1993 - defaults.h, options.c : Renamed DEF_XRESOLUTION to DEF_XRES and DEF_YRESOLUTION to DEF_YRES. Renamed DEF_PSPREFIX to DEF_PS_PREFIX. 34. - Sun 30 May 1993 - options.c : Resolution option "-r" now allows one or two ("xres,yres") arguments. Added DV_RES environment variable for both X and Y resolutions. Renamed env. var. DV_PSPREFIX to DV_PS_PREFIX. 35. - Mon 31 May 1993 - dvireader.h, fontreader.c, dvitovdu.c : Added "honest" field to "fontinfo" structure. This records whether the true font (for the given fontname) is specified in the fontspec. Now have "psfont", "pkfont" and "honest" fields to guide treatment of fonts and their description by ShowStatistics. 36. - Mon 31 May 1993 - dvitovdu.c : ShowStatistics shows either "H" or "S", and either "P" or "K" or "T", to indicate whether the font used is Honest or a Substitute, and whether it is a PostScript font TFM, a PK font bitmap, or a non-PostScript TFM, respectively. ShowStatistics also shows fontsize (in pt), and the font description is more compact, to allow for the extra info. Attempted to align lines of info. for different fonts. 37. - Mon 31 May 1993 - fontreader.c : Font search order is now: PK -> PS -> TFM -> dummy PK -> dummy TFM -> fail. 38. - Mon 31 May 1993 - dvitovdu.c : Added time info (ANSI C only), to logfile. 39. - Tue 1 June 1993 - dvgt/src and dvgt directories: Moved CHANGES and TODO files from dvgt/src to dvgt directory. 40. - Tue 1 June 1993 - dvitovdu.c : Default Left, Right, Up and Down movements are by _half_ the window dimension (instead of by the full dimension). 41. - Tue 1 June 1993 - dvitovdu.c : Zoom In/Out to/from Centre of window (instead of Top Left corner). 42. - Wed 2 June 1993 - fontreader.c : Multiple PS font prefixes, separated by same characters (in DIRSEP) as (PK and TFM) directories. In dvgt 3.5, which is for unix, DIRSEP = ":", a colon. 43. - Thu 3 June 1993 - fontreader.c, dvitovdu.c : Font search is now: PK -> PS -> dummy PK -> TFM -> dummy TFM -> DVI Terse. So, if no other representation can be found, then a missing font is guesstimated using the design size in the DVI file, and displayed as in Terse mode. Other fonts are unaffected. Currently, I estimate character size in design size units as 1 unit high and 0.5 unit wide. This seems not too far off-mark for normal text; preview of "example.dvi" is too wide by about one part in eight. (Another possibility, allowed by the DVI Standard, Level 0, is to ignore such fonts entirely, but that would give the user less information.) 44. - Fri 25 June 1993 - options.h, options.c, fontreader.c, dvitovdu.c : C variable "fontdir" renamed to "pkdir". 45. - Mon 19 Jul 1993 - help and src directories: Updated cmd.hlp, immed.hlp, options.hlp, and help.h, for dvgt 3.5's commands, options, and VDU types. 46. - Wed 21 Jul 1993 - doc directory: Updated sysguide.tex, userguide.tex to reflect dvgt 3.5's options and commands. 47. - Wed 21 Jul 1993 - version.h, dvitovdu.h, help.h : Renamed C quantity "version" to "dvgt_version", because of clash with an enumerated type of the same name in System V's . 48. - Wed 21 Jul 1993 - dvitovdu.c : Renamed C static variable "signals" to "common_signals", in case of a clash, and eliminated the "extern int signals" line. 49. - Wed 21 Jul 1993 - Makefile.dvgt : Added "regisvdu.h" to list of files to distribute. (Bad oversight!) 50. - Wed 21 Jul 1993 - fontreader.c : Changed test of the boolean function OpenFontFile from the erroneous "< 0" to the correct test for true. 51. - Wed 21 Jul 1993 - Makefile.sun : Removed references to site specific include directories. 52. - Mon 2 Aug 1993 - unixio.c : In non-BSD OS's, used TCGETA, TCSETAW with ioctl. (Suggested by Guy Harris.) 53. - Mon 2 Aug 1993 - unixio.c, Makefile.aix, Makefile.sun : Used "string" in unixio.c; so add dependency on "globals.h". 54. - Mon 2 Aug 1993 - src/dvitovdu.c, doc/userguide.tex : Reverted to ZI, ZO holding window's top left; introduced ZCI, ZCO to hold window's centre. 55. - Tue 3 Aug 1993 - screenio.c : MesgLine now unsets raw mode, if it's on (so that NL -> CR+NL), and finally restores it, if it was. 56. - Tue 3 Aug 1993 - doc directory : sysguide.tex, userguide.tex updated. 57. - Tue 3 Aug 1993 - dvitovdu.c : Defer call to InitScreenIO, so that "fprintf (stderr, ...);" will have the normal line discipline. 58. - Wed 4 Aug 1993 - dvitovdu.c, dvireader.c, options.c, vdu.c : Delete old DEBUG code that wrtes to stderr. 59. - Wed 4 Aug 1993 - unixio.c, unixio.h, screenio.c : Separate initial and temporary tty state. 60. - Wed 4 Aug 1993 - dvitovdu.c, dvireader.c, (fontreader.c), (options.c), vdu.c : Ensure that RestoreTerminal is called immediately before each exit. 61. - Wed 4 Aug 1993 - options.c : In DimenPixels, account for unimplemented unit, in the newer code. 62. - Wed 4 Aug 1993 - dvitovdu.c : In main, save initial terminal settings, early, using save_init_tty. ---------------------------------------------------------------------- RELEASE of dvgt 3.5 to SHSU (hence to CTAN). ---------------------------------------------------------------------- 63. - Mon 16 Aug 1993 - new.h : Deleted #ifndef Malloc ... #endif around #include "config.h" . Replaced #ifdef __STDC__ by #ifdef HAS_STDLIB . 64. - Mon 16 Aug 1993 - config.h : Big rearrangement and recoding, to allow for an ANSI compiler (eg, gcc) with a non-ANSI library (eg, Sun/OS 4.0 's BSD-like cc library). Added #include and #include for when BSD is true. Also for when BSD is true, added twelve further (non-ANSI style) function declarations. Added also for non-BSD library with non-ANSI compiler. Now #define GNUC_LIB if and only if ANSI compiler with non-BSD library. 65. - Tue 17 Aug 1993 - options.c : Moved #define NEW_DIMEN_PIXELS to top of file. Deleted inclusion and getenv() declaration, as config.h already handles those. Added code to protect (eg, ANSI C compilers') use of constant storage for strings from Sun/OS 4.0 's library's sscanf function's use of ungetc. Added ToLower debugging code. Changed definition of ToLower to always check for isupper. Deleted block from around ToLower and Luname. 66. - Tue 17 Aug 1993 - Makefile.cc-sun : New Makefile for Sun/OS 4.0 's non-ANSI compiler, "cc". Mentions dependency on and . 67. - Wed 18 Aug 1993 - dvitovdu.c, dvireader.c : SetConversionFactor's magnification argument now has the interpretation that 1 corresponds to the document's normal size. Non-ANSI compilers don't convert int mag to double magnification, so dvitovdu.c now calls SetConversionFactor with its magnification argument = mag/1000.0, to coerce it to be double. 68. - Wed 18 Aug 1993 - options.c : Deleted ToLower debugging code. 69. - Wed 18 Aug 1993 - config.h : Deleted "#include " from STDC, non-BSD case, because it duplicated that in the general non-BSD case. 70. - Wed 18 Aug 1993 - version.h : Version upped to "3.51". 71. - Wed 18 Aug 1993 - Makefile.gcc : New. (Based on gcc code in old "Makefile.sun".) 72. - Wed 18 Aug 1993 - Makefile.sun : Now refers only to Sun's "cc" compiler. Deleted comments referring to , and . 73. - Fri 20 Aug 1993 - options.c : PK search now = TEXPKS || PKFONTS || TEXFONTS || DEF_PK_DIR. 74. - Fri 20 Aug 1993 - new.h : Deleted code, because "config.h" already handles that. 75. - Fri 20 Aug 1993 - TODO : Added wish to "Make TFM, PK path and file spec. strings dynamic." 76. - Fri 20 Aug 1993 - Makedist.dvgt : Added line for "dvgt/src/Makefile.gcc". 77. - Fri 20 Aug 1993 - README : Refer to Makefile.gcc; change description of Makefile.sun. 78. - Fri 20 Aug 1993 - Makedist.dvgt : Added "sane" Bourne shell script for resetting terminal, in case dvgt leaves it seriously messed up. 79. - Fri 20 Aug 1993 - misc/stdlib.h : Emended non-ANSI function declarations. Added headlines with date. 80. - Wed 25 Aug 1993 - README, userguide.tex : Updated for dvgt 3.51, specifically the use of TEXPKS. ---------------------------------------------------------------------- dvgt 3.51 : 3 mod 5 revision 1. ----------------------------------------------------------------------