TECHKIT.DOC 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. TopSpeed Professional TechKit Release notes version 3.02
  2. ============================= ==========================
  3. Known problems in this release:
  4. -------------------------------
  5. 1: The post-mortem debugger does not correctly show the value
  6. of local variables.
  7. 2: The profiler will only operate in line number mode for one
  8. module at a time.
  9. Resource files for Microsoft Windows version 3.00
  10. -------------------------------------------------
  11. The TopSpeed TechKit now includes a resource compiler, TSRC.EXE,
  12. which, in conjunction with the TopSpeed Linker, allows resources
  13. to be added to executable programs for use under Microsoft
  14. Windows version 3 without requiring the use of the Microsoft
  15. Windows SDK. The TopSpeed resource compiler does not work in
  16. the same way as the Microsoft resource compiler RC.EXE, although
  17. it uses the same file formats.
  18. The TopSpeed resource compiler processes a resource script file
  19. (with .RC extension) and produces a compiled resource file (with
  20. .RES extension) of the same name. This file can then be added to
  21. the link list (for example, using #pragma link(myfile.res)),
  22. and the TopSpeed Linker will automatically add the resources
  23. to the end of the executable file.
  24. The configuration file TSPRJ.TXT contains a #declare_compiler
  25. command for the file extension .RC, so that a resource file
  26. can be added to an project simply by including the statement
  27. #compile resfile.rc
  28. in the project file. The project system will then build the
  29. .RES file if neccessary, then add it to the link list
  30. automatically.
  31. Microsoft Windows Example Programs
  32. ----------------------------------
  33. You will find the following Windows examples programs in the
  34. examples directory:
  35. ?WDEMO A simple windows program that displays text
  36. in a window. ? is P, M, C, or D depending on
  37. the source language.
  38. ?WDEMO_D The same program, but using a Windows DLL
  39. (WDLL*.DLL, depending on the language).
  40. Before making these programs, you must
  41. make the project for the corresponding
  42. DLL.
  43. While not useful or interesting in themselves, these programs
  44. can be used as "skeletons" for more complex windows progams,
  45. and to gain an insight into how Windows programs and DLLs
  46. are put together.
  47. TopSpeed Executable File Compression Utility TSCRUNCH.EXE
  48. ---------------------------------------------------------
  49. The TSCRUNCH program is is a utility to compress .EXE files to
  50. the minimum possible size under DOS. The exe file is compressed
  51. using LWZ compression techniques and then has a small loader/
  52. expander added to the startup code. This form of compression
  53. can reduce the exe file by up to 50% or more of its original
  54. size.
  55. To use TSCRUNCH just type
  56. TSCRUNCH exename
  57. e.g.
  58. tscrunch myprog
  59. This will create a new exe file (providing the compression is
  60. worthwhile) and create a backup of the uncompressed file with
  61. the extension '.EXB'.
  62. It should be noted that compression of an exe file will cause
  63. the loading time to greatly increase, so it is best used on EXE
  64. files that are either infrequently used or where the loading
  65. time is not significant.
  66. N.B. TSCRUNCH cannot be used for Overlay or Dynalink model,
  67. programs, nor for Windows or OS/2 programs.
  68. TSCRUNCH cannot be used for files containing VID or
  69. CodeView debug information.
  70. TSMKHELP - TopSpeed Help File Compiler
  71. --------------------------------------
  72. You can use TSMKHELP to make your own help files for use within
  73. the TopSpeed environment. Help files are compressed files with
  74. the extension .HLP and are generated from specially formatted
  75. text files (with the extension .HTX). To run tsmkhelp just type
  76. tsmkhelp <helpname>
  77. and <helpname>.HTX will be read and <helpname>.HLP generated.
  78. The file TSMAIN.HTX is supplied as an example HTX file which
  79. allows you to re-make the 'root' TopSpeed help file. The format
  80. the HTX file is described in the supplied file TSMKHELP.DOC.
  81. TopSpeed Object file Disassembler TSDA
  82. --------------------------------------
  83. A new feature has been added to the TopSpeed Disassembler, so
  84. that if an object file contains line-number information, the
  85. disassembler will insert the lines from the source file into
  86. the output, making it much easier to determine what code has
  87. been produced for which source line.
  88. In order to produce an object file that contains source-line
  89. information, the pragma debug(line_num=>on) or the command-line
  90. option /b must be specified when the object file is compiled.
  91. In addition, the object file must be compiled with either
  92. minimum or full debug information, using the pragma
  93. debug(vid=>min) or debug(vid=>full), or using the command-line
  94. option /v1 or /v2.
  95. The disassembler attempts to produce a result that can
  96. be re-assembled. However, there is a small problem with forward
  97. references to non-public labels, which can be resolved by
  98. declaring the symbol as extrn/public, or by re-arranging the
  99. assembler text. Disabling smart linking when compiling may give
  100. a clearer result and fewer forward reference problems.
  101. If you are disassembling object files for the purposes of
  102. comparing the quality of generated code, it is worth noting
  103. that the code generated when full debug is specified is
  104. considerably less eficient, as values must be kept in memory
  105. rather than in registers to ensure that vid can read and/or
  106. modify them. When minimum debug is specified, this does not
  107. apply and the code generated is close to the quality of
  108. code generated without debug information. Certain optimizations
  109. concerning re-ordering of jumps are not performed when
  110. even minimum vid is specified, as these would obscure the
  111. correlation between machine code and source-code lines to the
  112. point where vid could not operate. In order to generate optimal
  113. code, debug(vid=>off) must be specified.
  114. Using Microsoft's windows.h
  115. ---------------------------
  116. If you use Microsoft's version of the windows header file,
  117. windows.h, the declaration of pLocalHeap should be made an
  118. extern declaration, otherwise duplicate public warnings may
  119. be produced. (Such warnings can be safely ignored in this
  120. instance.)
  121.