home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #1 / monster.zip / monster / BBS_UTIL / FDL_V410.ZIP / PROBLEMS.FDL < prev    next >
Text File  |  1994-04-03  |  4KB  |  67 lines

  1. Programs like FileDoor <tm>, MTS <tm>, RFW/RFC <tm> and MTA <tm> (and  a
  2. lot of programs from other people) which were written in Borland  Pascal
  3. 7.0 (and, as far as  I can see, those written  in TP 6.0 with a  special
  4. extender  unit  for  fast  calculations,  like  older FileDoor version),
  5. suddenly  worked  buggy  on  some  configurations.  Thanks to the Pascal
  6. forum and  especially D.J.  Murdoch, one  of the  creators of the famous
  7. TP/BP bug-lists), I could finally trap the problem.
  8.  
  9. BP7.0 (and extender units under TP6, as far as I can see) introduce  the
  10. so called 32-bit  arithmetic when the  compiled program runs  on a 80386
  11. or 80486. This will greatly enhance the speed on long integer  (LONGINT)
  12. calculations. Now there  is a 'slight'  problem with these  calculations
  13. under BP7.0 when executed  in combination with certain  operating system
  14. software, like Novell's dedicated file-server version 2.2.
  15.  
  16. This software has the habit  of trashing the extended registers  (Novell
  17. 2.2 seems to trashes EAX (extended) register at every timer-tick).  This
  18. makes long integer calculations (32-bit on a 80386/80486) under  Borland
  19. Pascal 7.0 unreliable in these environments. Later Novell versions  seem
  20. to have solved the problem.
  21.  
  22. There are routines available which can  help to detect if you have  such
  23. a problem (see the BP7BUGS2.xxx file with the Borland Pascal 7.0  bugs).
  24. Also there is  an option to  ignore 32-bit arithmetic  in BP7.0 programs
  25. and to  switch back  to 16-bit  arithmetic. This  option is available in
  26. all the new  DISP products and  will help some  users, at the  cost of a
  27. little bit  of speed,  to run  these programs  EVEN if their environment
  28. contains the bug described above.
  29.  
  30. In all new DISP-programs, a /8086 (or -8086 which does the same)  option
  31. can be coded on the command-line. This option is interpreted AS SOON  AS
  32. POSSIBLE when the program comes  active. If the option is  detected, the
  33. program will switch  to 16-bit arithmetic  and the calculations  will be
  34. correct again.
  35.  
  36. So far the ONLY problems  that were  reported, are  in FileDoor 3.10 and
  37. earlier versions. It  is known as  the 'Timeout/Inactivity bug'.  When a
  38. user  entered  FileDoor  she/he  got  an  error  'User timeout' or 'User
  39. terminated due to inactivity' and execution of FileDoor was  impossible.
  40. Also in RFC/F,  MTS and MTA  there are 'strange'  reports in combination
  41. with Novell 2.2 (and some other  software). I imagine that the usage  of
  42. the  /8086  command-line  option  will  solve  at  least  SOME  of these
  43. problems but there  can well be  other bugs in  my programs as  well. In
  44. any case, please report these problems !
  45.  
  46. The usage of the /8086 command-line  option has NO meaning when you  run
  47. a plain-vanilla DOS  environment (with a  known memory manager  and/or a
  48. multitasking program)  or when  you have  a 8086/80186/80286.  Only when
  49. you experience STRANGE problems AND you have a 80386/80486, you can  try
  50. to use the /8086 switch.
  51.  
  52. Currently,  the  /8086  (or  -8086)  command-line  options are (will be)
  53. available in the following releases of DISP programs:
  54.  
  55. - RFW            1.30
  56. - MTS            7.81
  57. - FileDoor-LITE  4.10
  58. - MTA           15.58
  59.  
  60. Based  on  the  result,  all  other  programs will be enhanced with this
  61. option, if there is  a need to. The  coding will be removed  if there is
  62. no  need  for  it  anymore.  The  overhead  involved with this coding is
  63. minimal (around 50 bytes of coding).
  64.  
  65.  
  66.                                            Thanks. Robert W. van Hoeven
  67.