home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / vp21beta.zip / WHATSNEW.TXT < prev    next >
Text File  |  2000-09-06  |  11KB  |  264 lines

  1.  
  2.    Virtual Pascal v2.1 Beta Build 229
  3.    Paris, September 2000
  4.    (C) Copyright 2000 vpascal.com
  5.  
  6.  
  7. This file is intended to give an overview of what has changed between
  8. Virtual Pascal v2.0 and this v2.1 Beta.
  9.  
  10. Both bugfixes and new features are mentioned.  Where a bug of a new feature has
  11. been assigned a reference number, the reference number is mentioned as well.
  12.  
  13.  
  14. Integrated Development Environment (IDE) and utilities
  15. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  16.  
  17.  * When debugging a GUI application using the Windows IDE, a  warning message
  18.    was displayed. This message applies only to the OS/2 text mode IDE and has
  19.    been removed. (Bugfix/101)
  20.  
  21.  * The Tph2Vph utility, which converts Turbo Pascal help files (*.TPH) to
  22.    compressed Virtual Pascal Help files (*.VPH) hung in Windows 95/98.
  23.    (Bugfix/102)
  24.  
  25.  * The Tph2Vph utility now has the ability to add "[Name]" to the end of index
  26.    entries. This is useful because some index entries are defined multiple
  27.    times after converting and using some help files. (Feature/103)
  28.  
  29.  * The IDE could not open directories with a "hidden" attribute. (Bugfix/106)
  30.  
  31.  * In Windows, filenames with national language characters were not displayed
  32.    properly in the IDE. Proper use of OemToAnsi and AnsiToOem API calls have
  33.    been introduced in the relevant VpSysLow functions, and the IDE now handles
  34.    these files correctly. (Bugfix/107)
  35.  
  36.  * The debugger has been changed to not display an error message if the debug
  37.    DLL returns  an error code of 9999 if the debugging platform (say, DPMI) is
  38.    not supported by the debugger DLL used. (Feature/108)
  39.  
  40.  * The IDE did not display directory names beginning with a dot, such as
  41.    ".pascal". (Bugfix/109)
  42.  
  43.  * When using Save As to save to a new filename, and that filename already
  44.    exists, a warning message is now displayed. (Feature/112)
  45.  
  46.  * When pressing Ctrl-Enter to open the source file under the cursor, the IDE
  47.    was not able to find some files because it concatenated the Unit Path and
  48.    the Include Path to a maximum length of 255 characters.  (Bugfix/113)
  49.  
  50.  * The Window List dialog has been made larger to better accomodate long path
  51.    and file names. (Improvement/115)
  52.  
  53.  * The debugger now highlights Watch items that change during exection, such as
  54.    single step. (Feature/116)
  55.  
  56.  * The IDE syntax highlights nested {} comments correctly, up to a level of
  57.    32 nested comments. (Feature/605)
  58.  
  59.  * The default extension for Pascal source files has been changed from .PAS to
  60.    .pas. (Improvement)
  61.  
  62.  * The IDE now preserves the case of source files, by utilising the new
  63.    VpSysLow.SysFileAsOS function.  (Improvement)
  64.  
  65.  * The IDE now is aware of read/only attributes.  When trying to save a file
  66.    with a read/only attribute, the IDE prompts whether the read/only file should
  67.    be overwritten anyway. (Improvement/117)
  68.  
  69.  * The IDE now shows an "r" in the status line when a file has a read/only
  70.    attribute.  It does not prevent the file from being edited, however.
  71.    (Improvement/117)
  72.  
  73.  * When copying and pasting to and from the VP clipboard in Win32, national
  74.    language characters were not preserved. The IDE now performs OemToAnsi
  75.    conversion for clipboard content. (Bugfix/120)
  76.  
  77.  * In the Dump window of the OS/2 IDE, Dump to file didn't work. (Bugfix/121)
  78.  
  79.  * When the last action in the IDE was a Paste operation, and the program was
  80.    then single-stepped in a debug session, pressing F8 to step could cause the
  81.    block to expand unexpectedly.  (Bugfix/122)
  82.  
  83.  * The command line compiler is included as an experimental Linux executable.
  84.    The compiler does not include a native ELF linker; programs must be compiled
  85.    with Windows as the target platform, and the PE2ELF utility run to convert the
  86.    executables to native ELF format.
  87.  
  88.    Please refer to other documentation for Linux-specific instructions.
  89.  
  90.  
  91. Installation
  92. ~~~~~~~~~~~~
  93.  
  94.  * Some Windows printer APIs were not imported through Import32.Lib. The
  95.    relevant API definitions have been added to the .Def and .Lib files.
  96.    (Bugfix/203)
  97.  
  98.  * The new OS/2 JFS file system was not recognised (Bugfix/204)
  99.  
  100.  * The binary RTL installed in \Units.%p now only includes those units that
  101.    are shipped without source code in addition to the System unit: Classes,
  102.    TypInfo and SysUtils.  For users with Delphi, source code upgrades
  103.    are of course included.
  104.  
  105.  
  106. Documentation and Online Help
  107. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  108.  
  109.  * The help for ErrorAddr was incorrect: When Halt() is called, ErrorAddr is
  110.    nil. (Bugfix/301)
  111.  
  112.  * The help for FindFirst did not properly describe the Required and Allowed
  113.    parts of the Attribute parameter. (Bugfix/302)
  114.  
  115.  * Several minor typos in the OS/2 API help were fixed. (Bugfix/308)
  116.  
  117.  * The IDE online help has been updated to cover new features, such as
  118.    nested comments.
  119.  
  120.  * On-line help for the Classes unit has been added.
  121.  
  122.  * On-line help for System.TObject has been added. (Fix/309)
  123.  
  124.  * The Language Reference and User Guide PDF manuals have been updated to
  125.    cover v2.1 features.
  126.  
  127.  
  128.  
  129. Run-Time Library (RTL)
  130. ~~~~~~~~~~~~~~~~~~~~~~
  131.  
  132.  * The values of the two constants Local_Machine and Current_User, defined in
  133.    Windows.Pas, were swapped around. (Bugfix/402)
  134.  
  135.  * The FileExists function returned TRUE, if the argument was an existing
  136.    directory name.  This has been fixed, and the function now only returns TRUE
  137.    if the argument is an existing file name. (Bugfix/403)
  138.  
  139.  * The IncreaseHandleCount function did not use the Count parameter.
  140.    (Bugfix/404)
  141.  
  142.  * Several RTl units assumed a certain state of compiler directives, and did
  143.    not work if recompiled with different settings. The relevant directives have
  144.    been added. (Bugfix/405)
  145.  
  146.  * Calling 16-bit OS/2 API functions can be dangerous, as parameters passed must
  147.    not cross a "segment boundary", once converted to 16:16 pointers. Appropriate
  148.    wrapper functions have been added to VpSysOs2, safeguarding from this
  149.    particular problem. (Feature/406)
  150.  
  151.  * Several changes have been made to the RTL, preparing for proper support of
  152.    the Linux platform.  The core RTL, including much of the System unit, compiles
  153.    for Linux.  (Improvement/407)
  154.  
  155.  * Several changes have been made to the RTL to support DPMI32.  Please refer to
  156.    Veit Kannegieser's web page for details on this functionality.
  157.  
  158.  * The Thread Local Storage (TLS) mechanism, used to manage variables declared
  159.    as "threadvar" has been improved markedly.  Heavily threaded programs
  160.    compiled with VP v2.0 experienced problems in this area, which are now fixed.
  161.    (Bugfix/409)
  162.  
  163.  * The definition of the Windows.TDeviceMode record was incorrect. (Bugfix/410)
  164.  
  165.  * The Os2PmApi.MLE_SEARCHDATA structure definition was incorrect (Bugfix/411)
  166.  
  167.  * The Math.IntPower function did not work when a negative Power argument was
  168.    passed. (Bugfix/412)
  169.  
  170.  * A function retrieving a pointer to the current memory manager,
  171.    GetPMemoryManager, has been introduced to complement the memory management
  172.    interface. (Feature/413)
  173.  
  174.  * The VString member of the System.TVarRec record should be of type
  175.    PShortString; fixed.
  176.  
  177.  * The heap manager was not thread safe on multi-processor machines. Fixed.
  178.  
  179.  * A new function, SysFileAsOS, has been introduced in VpSysLow.  It takes a
  180.    file name as parameter, and returns TRUE if the file exists.  If the file
  181.    exists, it also changes the case of the parameter passed to match the case
  182.    of the file as it exists on disk. (Feature)
  183.  
  184.  * The SysFileSearch function now uses SysFileAsOS, and also returns the file
  185.    name in the correct case. (Improvement)
  186.  
  187.  * The VpSysLow.SysTVGetScrMode has been changed to return a maximum of 234
  188.    lines in Windows.  The Windows console mode APIs do not appear to handle
  189.    consoles larger than this.
  190.  
  191.  * WinCrt.ShowText and WriteBuf have been improved to handle TAB characters
  192.    correctly. (Improvement)
  193.  
  194.  * The Os2Rexx unit has been renamed to Rexx.Pas, and placed in the RTL
  195.    directory instead of in the Os2 one.  A free third-party REXX interpreter
  196.    is available for Windows, and can be used with this unit. A new unit alias,
  197.    Os2Rexx=Rexx, assures compatibility with old programs. (Improvement/705)
  198.  
  199.  * The Classes and SysUtils units have been extended with classes and methods
  200.    introduced in later versions of Delphi.
  201.  
  202.  * The TWin32Cell type defined in VpSysW32 has been moved to the Windows unit.
  203.  
  204.  * The SysReadAttributesAt function in VpSysOs2 has been changed to not AND
  205.    the returned value with $7f, making it possible to read highlighted background
  206.    colours.
  207.  
  208.  * Introduced a new function, VpSysLow.SysGetVisibleLines, used to retrieve
  209.    the numbers of the top and bottom lines visible in the current shell
  210.    window.
  211.  
  212.  * Introduced a new function, VpSysLow.SysGetPlatformName.  It returns a string
  213.    containing the name of the current platform and is used by the new drive
  214.    substitution logic described in the user's guide.
  215.  
  216.  * The Win32Cell type defined in VpSysW32 has been moved to Windows.Pas.
  217.    (Improvement/414)
  218.  
  219.  * The SysClipCopy function allocated global Windows memory that was never
  220.    freed.(Bugfix/415)
  221.  
  222.  * The Printer unit from Borland Pascal 7 was not included with the
  223.    RTL. (Bugfix/416)
  224.  
  225.  
  226. Compiler and Linker
  227. ~~~~~~~~~~~~~~~~~~~
  228.  
  229.  * Calling the Insert function with mixed AnsiString and ShortString parameters
  230.    did not work; fixed. (Bugfix/602)
  231.  
  232.  * The compiler now supports nested { } comments, and the IDE is able to
  233.    syntax highlight these correctly. (* *) and // comments are not nestable.
  234.    For compatibility reasons, the ability to nest comments is controlled by
  235.    the new {&Comments} switch directive, which by default is {&Comments-}.
  236.    (Feature/605)
  237.  
  238.  * The help screen of the command-line compiler (vpc.exe) has been changed to
  239.    display the directives in a manner that is easier to read.
  240.  
  241.  * A bug in the linker's stub handling code caused programs with a Dos stub
  242.    to be inconsistent in 1 of 512 times.
  243.  
  244.  * The compiler now implements a drive substitution scheme, which allows
  245.    the source and other directories to be placed on different volumes based on
  246.    the current operating system.
  247.  
  248.    For more information on this, please refer to the User's Guide, chapter 10,
  249.    section titled "Defining new targets in the IDE".
  250.  
  251.  
  252. 3rd party tools
  253. ~~~~~~~~~~~~~~~
  254.  
  255.  * A memory leak in TApplication.Done was fixed. (Bugfix/702)
  256.  
  257.  * A bug in OpDos.TextFileSize was fixed. (Bugfix/703)
  258.  
  259.  * A bug in OpDos.ExistOnPath was fixed. (Bugfix/704)
  260.  
  261.  * The VCL update now works with the original VCL from Delphi 5.
  262.  
  263.  * The Turbo Vision files are now included with full source code.
  264.