Информационный сервер для программистов: Исходники со всего света. Паскальные исходники со всего света
  Powered by Поисковый сервер Яndex: Найдется ВСЁ!
На Главную Pascal Форум Информер Страны мира
   Турбо Вижн    >>    stream15
   
 
 Wierd Stream Tricks 1.5 - Streams Support for TV   D.J. Murdoch 28.03.1993

Модуль, расширяющий возможности потоков в TurboVision.
"Wierd Stream Tricks" might be a good name for this unit. It contains a miscellaneous collection of objects and procedures, all on a theme of adding functionality to the streams in Borland's Turbo Pascal libraries TurboVision and ObjectWindows.



66k 
 

STREAMS - TP/BP/TPW unit to supplement TurboVision/ObjectWindows streams Version 1.5. Copyright D.J. Murdoch (1992,1993). DESCRIPTION "Wierd Stream Tricks" might be a good name for this unit. It contains a miscellaneous collection of objects and procedures, all on a theme of adding functionality to the streams in Borland's Turbo Pascal libraries TurboVision and ObjectWindows. Most of my testing has been in TP 6 and BP 7 real mode; the code and demos also appear to work in BP 7 protected mode, and compile under Windows, but use it with care in those "foreign" environments. LICENSE This unit is *not* public domain code. You may use it for non-profit purposes at no charge if credit is granted, but written permission must be obtained from me for use of this unit in commercial products. A lot of the code in this unit is code that's been made freely available by others, some of it under their copyright, other parts public domain. As far as I know, all code included here may be used non-commercially for free. See the list of credits at the end for all the (known) authors. This is the third release of the STREAMS unit. There are probably still bugs; I would really appreciate reports of any, or other suggestions for improvement. Please send either one to me at one of the following addresses: dmurdoch@mast.queensu.ca (Internet) 71631,122 (Compuserve) DJ Murdoch at 1:249/99.5 (Fidonet) D. J. Murdoch 337 Willingdon Ave. Kingston, Ontario, Canada K7L 4J3 FILES IN ARCHIVE Streams.doc - this file Streams.pas - main source file for unit Lzwstrea.asm - source for LZW compression StDefine.inc - a few conditional compiler defines Xmsstrm.inc - source for XMS stream Crc16.asm - source for 16 bit CRC Crc32.asm - source for 32 bit CRC Crcarc.asm - source for ARC-style 16 bit CRC Lzwstrea.obj - assembled code for external linking Crc16.obj - " " " " " Crcarc.obj - " " " " " Crc32.obj - " " " " " Demo programs: Encrypt.pas - encryption program, using TEncryptFilter Compress.pas - file compressor, using TLZWFilter Huffman.pas - defines a Huffman encoding filter, using TBitFilter HuffComp.pas - file compressor using THuffmanFilter Logdemo.pas - simple demo of TLogFilter Ovrdemo.pas - simple demo of multiple overlay files ovr1.pas - one overlaid unit ovr2.pas - a second overlaid unit Textdemo.pas - simple demo of TTextFilter Release history and credits 1.0 - First release, missing LZW. Immediately replaced by 1.1 - First correct release: TFilter, TEncryptFilter, TTextFilter, TLogFilter, TRAMStream, TNamedBufStream, TTempBufStream, TempStream, overlay procedures (my ideas), TLZWFilter (from code by Wilbert van Leijen) 1.2 - TNulStream, TXMSStream added (from Stefan Boether) TBitFilter added (suggestion of Rene Seguin) TFilter.Done calls Flush TRAMStream.UseBuf and OwnMem added. 1.3 - TDupFilter, TSequential, TChksumFilter added (my ideas), TCRC16Filter, TCRCARCFilter, TCRC32Filter and related procedures added (from code by Edwin T. Floyd, Stephen Satchell, Chuck Forsberg, Mark G. Mendel, R. P. Byrne, J. R. Louvau and probably others); TFilter.Flush added; HUFFMAN demo added. 1.4 - Recoded several of the TRAMStream methods in assembler for more speed; fixed numerous TTextFilter bugs and added TTextFilter.AssignStream and TextDemo.pas; fixed TXMSStream.Seek bug. Changed xms_Memavail and xms_Maxavail to report in bytes, and added ems_Memavail and ems_Maxavail (based on code sent to me by Eyal Doron) and disk_Memavail and disk_Maxavail. Changed TXMSStream.Init to match TEMSStream.Init. Added TConcatFilter, TLimitFilter, TLoopFilter, TReverseFilter and TWorkStream. Added OwnsBase field to TFilter. Did some testing to assure that the unit works in BP 7 protected mode. Thanks to Max Maschein, Eyal Doron, and others for bug fix help. 1.5 - The first public release of the 1.4 enhancements.