home *** CD-ROM | disk | FTP | other *** search
/ Black Box 4 / BlackBox.cdr / progbas / pbclon18.arj / PBCLONE.NEW < prev    next >
Text File  |  1992-05-08  |  12KB  |  303 lines

  1. PBClone 1.8, 05/08/92:
  2.  
  3.    A bug was fixed in SetComm, which was setting the baud rate
  4.    incorrectly. More importantly, however, I ran into a serious
  5.    Microsoft bug which I'd thought had long since been fixed.
  6.    It appears that QuickBASIC 4.0-4.5 and BASCOM/PDS 6.0-7.1
  7.    destroy vital comm port information in the BIOS data area,
  8.    making it impossible for any of the PBClone comm routines to
  9.    function. I have enclosed patch information for QB 4.5 in
  10.    QBPATCH.TXT.  If you have a different compiler or do not
  11.    wish to modify your BASIC libraries, use the following
  12.    work-around:
  13.  
  14.       SaveComm$ = SPACE$(8)
  15.       DGetSt &H40, 0, 0&, SaveComm$        ' save comm info
  16.       ' OPEN the comm port as desired
  17.       DPutSt &H40, 0, 0&, SaveComm$        ' restore comm info
  18.       ' now you can use PBClone comm routines
  19.  
  20.    In the new QBPATCH.TXT file, there is information about how
  21.    to permanently eradicate that comm-killer bug, among other
  22.    things.  It's been many years since Microsoft upgraded QB.
  23.    Maybe it's time for us to start fixing the bugs ourselves.
  24.  
  25.    Speaking of bugs... a lot of 'em have settled out in the
  26.    last few months.  Bugs were fixed in the MaxL and MinL
  27.    functions, which would return the wrong results if both
  28.    parameters were negative. A bug was fixed in FCreate, which
  29.    would lock the computer. A bug was fixed in the near-string
  30.    version of Xlate. A bug was fixed in the far-string version
  31.    of GetExecPath. Bugs were fixed in SubExist and SubExist2,
  32.    which changed the path.  They were also made insensitive to
  33.    a DR-DOS flaky. The PSortSt and SortSt routines were
  34.    incorrectly documented. The Date2Int and Int2Date routines
  35.    had a problem and return different values now.
  36.  
  37.    The various sort routines would not compile under BC7/PDS
  38.    due to use of a STACK array (STACK is a PDS reserved word).
  39.  
  40.    The TimeN2S routine will no longer translate zeros to the
  41.    current time.  After all, although "00:00:00" is an unusual
  42.    time, it is a valid one.  Getting the current time can be
  43.    more easily done with the TIME$ function anyway.
  44.  
  45.    The CatchError/GetError routines don't work any better than
  46.    they used to, but you can replace them with the new
  47.    GetError2% function, which appears to be more effective.
  48.  
  49.    The VARCDEMO program has been renamed to ARCVIEW.  As well
  50.    as the filename-only listing, it now allows a detailed view
  51.    of an archive-- try the /V option.  A new demo has been
  52.    added, DIRVIEW, to show the use of the LoadDirAll routine.
  53.  
  54.    If you use the excellent 4DOS command shell, try the new
  55.    ADD4DOS batch file-- it adds descriptions of all PBClone
  56.    files which will show up when you type DIR.  No more
  57.    guessing about filenames!
  58.  
  59.    Microsoft's simplified segment directives made it much
  60.    easier to create assembly language routines.  Unfortunately,
  61.    when you have a library as big as PBClone, they're
  62.    counterproductive.  I've converted the PBClone sources to
  63.    use the old-style full segment directives.  The added
  64.    flexibility this gave me provided a number of benefits:
  65.  
  66.      - the .QLB library is smaller, providing more QB/QBX
  67.        environment space
  68.      - data areas have been consolidated, providing more data
  69.        space
  70.      - common code has been consolidated, reducing memory
  71.        requirements (and often improving the speed, since near
  72.        calls can be used)
  73.      - improved granularity
  74.  
  75.    Many of the routines that were in BASIC have been converted
  76.    to assembly language.  Although few of these routines were
  77.    particularly time-critical, the translation allowed for
  78.    fewer segments and improved memory usage.
  79.  
  80.    Doc files have been converted to 64 col x 59 row pages to
  81.    allow printing on a greater variety of printers.  You may
  82.    want to think twice before printing out the PBCLONE?.MAN
  83.    files, though, as they total over 10,000 lines.
  84.  
  85.    New additions:
  86.       CeilD, CeilS, ExplainFAttr, FarPeekI, FarPeekL, FarPokeI,
  87.       FarPokeL, FileCount, FloorD, FloorS, GetError2, GetFSize,
  88.       Int2DateSt, Int2TimeSt, IsAlNum, IsAlpha, IsASCII,
  89.       IsCntrl, IsDigit, IsLower, IsPrint, IsPunct, IsSpace,
  90.       IsUpper, IsXDigit, LoadDir, LoadDirAll, LogicalDrives,
  91.       MPrint, MWindow, Num2Phone, Odd, OddL, Phone2Num,
  92.       PrinterInit
  93.  
  94.  
  95.  
  96. PBClone 1.7, 01/08/92:
  97.  
  98.    Argh, drat.  In the rush to release a fix for PBClone 1.5, I
  99.    forgot that I'd pulled the ARCHIVE.OBJ routines out to add
  100.    new capabilities.  Result? A bug fix that only had different
  101.    bugs!  My apologies.  I've added a group of beta testers to
  102.    prevent this sort of thing in the future.
  103.  
  104.    Bug fixes affect: CheckDisk, CheckDsk, CRC, GetTimeFx,
  105.    RenSub, SInput.
  106.  
  107.    I'm breaking PBClone away from its obsession with following
  108.    ProBas.  I am taking this opportunity to remove dummy
  109.    parameters from routines which only included them for ProBas
  110.    compatibility, and to delete routines which are obsolete or
  111.    have no function except in ProBas.  My apologies for any
  112.    inconvenience these changes may cause you.  This is a
  113.    one-time thing.
  114.  
  115.       Altered: CtrlKey, DCal, FindPatch, GrafRest, GrafSave,
  116.       HCls, HLine, HMode, HPrint, HSetPixel, HTestPixel
  117.  
  118.       Deleted: DrvSpace, GetMoveBack, GetSizeF, HInit, HPage,
  119.       SetRows
  120.  
  121.    The FindFirstA set of routines now supports ARJ and ZOO
  122.    archives.
  123.  
  124.    Some of the territory covered by the new routines includes
  125.    Windows and 4DOS detection, sorting and binary searches,
  126.    control over the Break key, graphics mouse cursors, printer
  127.    checking and formatted dollar input.
  128.  
  129.    New additions:
  130.       AllExtMem, AndSt, BinSeekD, BinSeekI, BinSeekL, BinSeekS,
  131.       BinSeekSt, BreakCheck, BreakOff, BreakOffDone, CRC1,
  132.       DInput, FloppyType, Get4DOSv, GetPrtAddr, InitPtr,
  133.       MouseCursor, OrSt, PrinterReady, PSortD, PSortI, PSortL,
  134.       PSortS, PSortSt, ReverseD, ReverseI, ReverseL, ReverseS,
  135.       ReverseSt, RolSt, RorSt, SetPrtAddr, ShlSt, ShrSt, SortD,
  136.       SortI, SortL, SortS, SortSt, WinCheck, XorSt, XQPrintOver
  137.  
  138.  
  139.  
  140. PBClone 1.6, 10/09/91:
  141.  
  142.    There was an error in the PBCLONE.INF entries for GetXMSm
  143.    and GetXMSv. This has been corrected.  The CheckDate routine
  144.    would bomb out if it was given an illegal month.  This has
  145.    likewise been fixed.
  146.  
  147.    The reference manual was getting too large for my favorite
  148.    editor, so I split it in half.  PBCLONE1.MAN covers A-F and
  149.    PBCLONE2.MAN covers G-Z.
  150.  
  151.  
  152.  
  153. PBClone 1.5, 09/25/91:
  154.  
  155.    Support for far strings has been added to PBClone.  This
  156.    means you can use PBClone in the QBX environment and with
  157.    the BC7 "PDS" /Fs option.  Only the registered version
  158.    provides this feature, since you must recompile the BASIC
  159.    sources with whichever PDS version you have.
  160.  
  161.    A bug in the DEMO.BAS file having to do with expanded memory
  162.    has been fixed.  This derived from my not reading the
  163.    documentation-- take heed! EVERYBODY needs to read the
  164.    documentation!
  165.  
  166.    Bugs of varying levels of significance have been collected,
  167.    labeled, and sent to the Smithsonian.  Fixed routines:
  168.    FindFirstA series, FindPatch, MMButton, MMButton3, ObjScan.
  169.  
  170.    In PBClone 1.4, a PBCOBJ.ZIP file was included which
  171.    contained all of the object files for PBClone.  This has
  172.    been replaced with PBCLONE.LIB.  Use the utilities included
  173.    with LIBWIZ (separate) to extract all of the .OBJ files from
  174.    the library to allow you to create your own custom libraries.
  175.  
  176.    Complaints of bugs in BarMenu have prompted me to add
  177.    MENUDEMO.BAS and MENUDEMO.EXE.  BarMenu works flawlessly,
  178.    but evidently was insufficiently documented.  The addition
  179.    of this example code should help.  I've added VARCDEMO.BAS
  180.    and VARCDEMO.EXE as well to demonstrate the archive-viewing
  181.    routines.
  182.  
  183.    Assembly language source code has been converted from OPTASM
  184.    to MASM 6.0. While MASM is still not up to OPTASM in many
  185.    respects, it's close enough, especially given that SLR has
  186.    not updated OPTASM in the past few years and it doesn't even
  187.    support 80386 codes yet.  Oh well.  MASM may be yucky, but
  188.    it's still (somehow) the standard, and as of v6.0 it's at
  189.    least tolerable.
  190.  
  191.    New additions:
  192.       FileCRC, GetXMSm, GetXMSv
  193.  
  194.  
  195.  
  196. PBClone 1.4, 03/28/91:
  197.  
  198.    This library is now too large for BASIC to cope with as a
  199.    unit.  Look for LIBWIZxx.ZIP (separate), a library manager
  200.    which will allow you to create custom libraries containing
  201.    just the routines you need.
  202.  
  203.    The Processor and Processor2 routines can now differentiate
  204.    NEC V20 chips.
  205.  
  206.    New additions:
  207.       AltKey, BarMenu, BarMenuM, CalcDate, CDROM2, CheckDate,
  208.       CheckDsk, ClearArea, CtrlKey, CWindowManager, DateA2R,
  209.       DateR2A, DCal, DCalendar, DGQPrint, DGXQPrint,
  210.       DGXQPrint1, EnhKbd, EuropeDate, EWindowManagerC,
  211.       EXQPrintC, FileCopy, FindFirstFx, FindNextFx, FindPatch,
  212.       ForceMatch, FormatDate, GetAttrFx, GetCommAddr,
  213.       GetDateFx, GetDView, GetHGA, GetLine, GetMoveBack,
  214.       GetNameFx, GetRows2, GetSizeFx, GetTimeFx, GetTView,
  215.       GetTVScreen, GXQPrint, GXQPrint1, KbdType, KbdType2,
  216.       KVal, LScroll, LVal, MemSwap, ObjScan, PatchDone, PrtSc,
  217.       Rand, RScroll, SetCommAddr, SetPatch, TypePrint,
  218.       UpdTVScreen, WeekDay1
  219.  
  220.  
  221.  
  222. PBClone 1.3, 02/21/91:
  223.  
  224.    The GetLabel and GetLabel2 routines were fixed to overcome a
  225.    DOS 2.x bug. They should now work properly with DOS 2.0 on.
  226.  
  227.    A crude TSR file viewer, FV.EXE, has been added to make
  228.    syntax and usage questions less of a bother.  It would be
  229.    wise to try it out on something nonessential first-- it
  230.    seems to work fine with QuickBASIC, but it locks up my
  231.    favorite editor.  See PBCLONE.DOC for details.
  232.  
  233.    New additions:
  234.       CheckShare2, CloseA, CPrintScreen1, CPrintScreen2,
  235.       CursorInfo, EMSBuffer, EMSClose, EMSGet, EMSOpen, EMSPut,
  236.       EMSRest, EMSSave, FindFirstA, FindNextA, GetCRCA,
  237.       GetCRCAL, GetDateA, GetMouseLoc, GetNameA, GetSerial,
  238.       GetSizeAL, GetStoreA, GetTimeA, GQPrint, HandleInfo,
  239.       HCls, HInit, HLine, HMode, HPage, HPrint, HSetPixel,
  240.       HTestPixel, MaxD, MaxS, MinD, MinS, NumFormat, NumProc,
  241.       NumProc2, ParseFSpec, PrintFile, Processor, Processor2,
  242.       ReadBitF, RedirectIn, RedirectOut, SetBit, SetLabel,
  243.       SetMouseLoc, SInput, SInputSet, SInputSet1, SInputSet2,
  244.       WriteBitF
  245.  
  246.  
  247.  
  248. PBClone 1.2, 01/28/91:
  249.  
  250.    A bug in the Floppies and Floppies2 routines has been
  251.    fixed.  Thanks to Dennis Allen for bringing it to my
  252.    attention and suggesting a solution.
  253.  
  254.    A bug in the StrIns routine has been fixed.  Thanks to Birk
  255.    Binnard for bringing it to my attention.
  256.  
  257.    New additions:
  258.       DRecDel, DRecIns, DReColor, DReColorArea, DWindowManager,
  259.       DWindowMan2, DWindowMan3, DWindowMan4, DXQPrint,
  260.       EGARest7, EGARest8, EGARest9, EGASave7, EGASave8,
  261.       EGASave9, GetKbd2, GrafPrint, GrafRest, GrafSave, LClose,
  262.       LGet, Locase1, LOpen, LPut, StrSqu2, StrSquLen2,
  263.       StrUnsqu2, StrUnsquLen2, TInstr, UnSplit, Upcase1
  264.  
  265.  
  266.  
  267. PBClone 1.1, 12/28/90:
  268.  
  269.    The QLB version of the library is no longer included, to
  270.    help reduce the size of this burgeoning package.  You can
  271.    create it from the LIB like so:
  272.  
  273.       LINK PBCLONE.LIB/Q/SE:512,,NUL,BQLB45
  274.  
  275.    See the LIBRARY.TXT and QUESTION.TXT files if this doesn't
  276.    work for you.
  277.  
  278.    The manual has been split into two parts to allow easier use.
  279.  
  280.    Several of the memory and string routines are now faster.
  281.  
  282.    The mouse-handling part of CheckKey, CheckKey3, GetKey, and
  283.    GetKey3 has been enabled.
  284.  
  285.    New additions:
  286.       AscI, BIOSInkey, CalcAttr2, DelayV, DGetRec, DOSErrM,
  287.       DOSInt, DPutRec, DScrRest, DScrSave, ElapsedTime, Exist2,
  288.       ExtendFSpec, Extract, FGetLoc2, FSize2, GetCRT2,
  289.       GetDrive, GetEGA2, GetSub2, GetSwitch2, GetVGA2,
  290.       IntVector, IStr, IVal, MaxL, MinL, MMButton, MMButton3,
  291.       MMCheck, MMClick, MMClick3, MMCursorOff, MMCursorOn,
  292.       MMGetLoc, MMSetLoc, MMSetRange, MousePen, MouseRest,
  293.       MouseBuffer, MouseSave, NameCase2, ReColor, ReColorArea,
  294.       ReplaceString, Sec2Time, Split, SubExist2, Time2Sec,
  295.       WindowManager, WindowMan2, WindowMan3, WindowMan4
  296.  
  297.  
  298.  
  299. PBClone 1.0, 12/03/90:
  300.  
  301.    This is the initial release of the PBClone library,
  302.    featuring 222 routines.
  303.