°±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± °°±±±°ÞÞÞÞ±°ÞÞÞÞ±±±±°ÞÞÞÞ±±°ÞÞÞÞÞÞ±°ÞÞÞÞÞÞ±°ÞÞÞÞÞÞ±±°ÞÞÞÞ±±± °°±±°ÞÞ°°ÞÞ±°ÞÞ±±±±±±°ÞÞ±±±±°ÞÞ°°ÞÞ±°ÞÞ°°ÞÞ±°ÞÞ°°ÞÞ°ÞÞ°°ÞÞ±± °°±°ÞÞ±±°°±±°ÞÞ±±±±±±°ÞÞ±±±±°ÞÞ±°ÞÞ±°ÞÞ±°ÞÞ±°ÞÞ±°ÞÞ°ÞÞÞ±±±±± °°±°ÞÞ±±±±±±°ÞÞ±±±±±±°ÞÞ±±±±°ÞÞÞÞÞ±±°ÞÞÞÞÞ±±°ÞÞÞÞÞ±±°ÞÞÞ±±±± °°±°ÞÞ±±±±±±°ÞÞ±±°Þ±±°ÞÞ±±±±°ÞÞ°°±±±°ÞÞ°°ÞÞ±°ÞÞ°°ÞÞ±±±°ÞÞÞ±± °°±°°ÞÞ±±ÞÞ±°ÞÞ±°ÞÞ±±°ÞÞ±±±±°ÞÞ±±±±±°ÞÞ±°ÞÞ±°ÞÞ±°ÞÞ°ÞÞ°°ÞÞ±± °°±±°°ÞÞÞÞ±°ÞÞÞÞÞÞÞ±°ÞÞÞÞ±±°ÞÞÞÞ±±±°ÞÞÞÞÞÞ±°ÞÞÞÞÞÞ±±°ÞÞÞÞ±±± °°±±±°°°°±±°°°°°°°±±°°°°±±±°°°°±±±±°°°°°°±±°°°°°°±±±°°°°±±±± °°°±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°° Volume 2, Number 11 28 April 1992 (c) Daniel Do‡ekal, All Rights Reserved The BBS Clipper magazine, published SEMIWEEKLY, every FRIDAY Some of the material used comes from scanning CLIPPER echoes which are carried in various BBS throughout the World. These Echoes are very often the source of the most often asked Questions and Answers about Clipper. Other material, which is fully signed or abbreviated is the copyright of the appropriate persons. The publisher is not responsible for other authors submissions.... Published material is not necessarily the opinion of the publisher. Redaction: Publisher...................................Daniel Docekal Chief editor ...............................Daniel Docekal Language editor .................................Dave Wall Table of Contents 1. ARTICLES ............................................................... 1 Nantucket Code Guidelines .............................................. 1 Hitch Hikers Guide To The Net (8) ...................................... 5 Available papers from Nantucket ........................................ 8 High Memory Area (HMA) what is it ...................................... 9 COMMIT in Novell Netware 3.11 .......................................... 11 DBFSIX - A revolution in RDD? .......................................... 12 2. SOFTWARE ............................................................... 16 What is what (2) ....................................................... 16 3. NEWS ................................................................... 22 Clipper books .......................................................... 22 4. ANOMALIES .............................................................. 24 ANOMALIES reports and commets .......................................... 24 5. CLIPPER NET ............................................................ 25 Index of described files in Clipper BBS Magazine ....................... 25 6. CLIPBBS ................................................................ 27 CLIPBBS distribution ................................................... 27 CLIPBBS, how to write an article!!! .................................... 29 - - - - - CLIPBBS 2-11 Page 1 28 Apr 1992 =============================================================================== ARTICLES =============================================================================== Nantucket Code Guidelines 13 Tabs 13.1 Fixed tabs are at three-space intervals. This does not mean that a tab always expands to 3 spaces. COMMENTS: Tabs are at FOUR spaces interval (it's more standard and better for all cases of formatting - 4 is 2*2 and 2 is natural number in computers). What i don't understand fully is second sentence in (13.1) paragraph. Maybe Nantucket will later give info what means if TABs are 3characters that they are not expanding to them. 13.2 Tabs are always used to indent code. COMMENTS: Twice defined guideline..... 13.3 When placing an in-line comment in your code, use one tab between the end of code, and the beginning of the comment. No other intervening white space should exist. (for the purpose of this example, tabs are shown as ): IF nTabs > 1// Only 1 tab . . . ENDIF See also section 15 (Indentation) and 17 (Comments). COMMENTS: Weak guideline. It cannot be used as is defined, because size of lines of code is changing from line to line and comments will then flow from collumn to collumn: IF nTabs > 1 // first comment is here clear // and second comment is here???? ENDIF // and third is coming here? It should be like this: IF nTabs > 1 // first comment is here clear // and second comment is here???? ENDIF // and third is coming here? Difference is, number of TABs used on every line.... 14 Missing Code 14.1 The fact that code is missing from an example is indicated by a line containing a period, followed by a line containing a CLIPBBS 2-11 Page 2 28 Apr 1992 period and "," followed by a line containing a period. The lines are indented as though they contained code (see section 15): IF nNumber == 0 . . . ENDIF COMMENTS: This guideline is to be used when writing books or articles about CLipper. This is not for writing programs, becase in program code cannot be missing and above construction will generate error. 15 Indentation 15.1 Tabs are used for all indentation. DO NOT uses spaces: it makes layout extremely difficult. COMMENTS: This is THIRD time defined the same thing 15.2 Control structures and the code within functions and procedures are indented 1 tab. The same is true of a function or procedure's RETURN statement. Clipper control structures include BEGIN SEQUENCE...END, DO CASE...ENDCASE, DO WHILE...ENDDO, EXIT, LOOP, FOR...NEXT, and IF...ENDIF: PROCEDURE SaySomething DO WHILE .T. IF nTotal< 50 ? "Less than 50" ELSEIF nTotal == 50 ? "Equal to 50" ELSE ? "Greater than 50"" ENDIF ENDDO RETURN COMMENTS: This is good guideline, well known from other languages. It's good for better readability of code and easy to control if all constructions are correctly ended and what is connected with what. 15.3 CASE statements in a DO CASE...ENDCASE structure are aligned with the "DO CASE:" DO CASE CASE nChoice == 1 . . . ENDCASE COMMENTS: Disagree. CASE statements in a DO CASE...ENDCASE CLIPBBS 2-11 Page 3 28 Apr 1992 structure are not aligned with the "DO CASE". They are indentet on position more: DO CASE CASE nChoice == 1 . . . OTHERWISE . . . ENDCASE This is anyway standard common way of writing case like constructions in other languages also. 15.4 Do not use abbreviations of control structures, such as WHILE for DO WHILE and END for ENDIF or ENDDO. Always type the entire word. COMMENTS: Interesting. Why Nantucket provided abbreviated forms like "WHILE" or "END". It's more "C" like what they did and now they are asking to not use it? 16 Line Continuation 16.1 When a line of code reaches column 60 (or at the previous logical break), interrupt the code with a semicolon and continue on the next line. Indent the line by one tab to indicate a continuation: SET FILTER TO CustFile->Name == "Jim Bowie"; .AND. CustFile->State == "CA" COMMENTS: Why collumn 60, it's quite interesting. Can be logical only in case, that Nantucket will use collumn 60 as START of comments (with // way) and therefore complete 60~80 block will be only filled with comments. But there is no sign of this.... Anyway is NOT good to flow code OUT of your screen and it's usually 80 characters, the same is valid about most matrix printers where is source mostly printed... 16.2 To continue a character string, end the first line with a quotation mark and place the remainder on the next line. Indent the line to indicate a continuation: @ 10,10 SAY "The lazy brown fox tripped over" + ; "the broken branch." COMMENTS: Agree, only little bit different: @ 10,10 SAY "The lazy brown fox tripped over" + ; "the broken branch." CLIPBBS 2-11 Page 4 28 Apr 1992 Difference is in fact, that indenting is exactly under beginning of original string... ------------------------------------------------------------------------------- CLIPBBS 2-11 Page 5 28 Apr 1992 Hitch Hikers Guide To The Net Episode 8 - The Flamers Return (The crew of the Infinity are proceeding to where the TTY directed them. A place where they would find out more about the answer to Life, the Net, and Everything.) Arnold Lint:This is sure a long trip. Martin : Why even bother to travel through the Net. All that happens is that you are bombarded with countless meaningless messages from Singularans about how they feel, and how they feel they should feel, and how others feel they should feel. You just get over that and some droning Flamer gets on about how drunk drivers should be allowed to retain their licenses only if they have oral sex with a diseased Yak, and they go on, and on, and on, not even realizing that no one is really paying attention. Just when you finally get up nerve to post something, some jello-brained fanatic gets on your case about how you should spell things correctly and "we always do things proper where I work", and then someone else gets on trying to correlate the right to spell terribly with the constitution. And you never know how people will take things, either they're offended when they shouldn't be, or they take insults as just good conversation. And if you try to keep personalities out of what you post, some half wit from a fabled crappy state on the eastern sea-board comes along and starts getting personal with the insults, not realizing what he is really getting into. And then some emaciated loony starts posting 150 line complaints about people posting 150 line articles, which they don't have to read anyway, but feel obliged to comment on simply because their minute egos need the boost of ragging on someone they've never met. And then some deranged cat-molester starts some boring discussion about the role of contraception in the development of the ball point pen, which goes on, and on, and you find that before long your 'n' key has lost the printing on it from over use. And then people start sending endless messages about stopping the endless messages of the ongoing debate. And then your brain bursts from frustration and even if you try to contribute something worthwhile to the Net, someone's always getting his rear out of joint about something . . . Xaphod : Will you shut the @#$% up| Martin : Sure, why not, you weren't really interested anyway. Rod : You're bloody right about that. (All of a sudden, the hall they are travelling darkens. Twenty-two Flamers beam into view. They are noticably ticked off.) Commander : Look you, we told you to take your mindless drivel off the Net. Number 1 : Yah Number 2 : Yah Rod : Yah . . . yah, yah, yah. Xaphod : Since when. Commander : Well, it was in a different time, we boarded your vessel, acted like the mindless, malodorous, sodomistic necrophiles CLIPBBS 2-11 Page 6 28 Apr 1992 that we are, did a lot of shouting, and told you to forever leave the Net. Xaphod : Oh yeah, you must be the Flamers from Kekraphoon, you're the ones with the delusions of representing the consciousness of the Net. Rod : What a pack of twits, don't you know that the HHGttN has received almost overwhelming support from all over Netland? Number 1 : We'll have to blast you. Xaphod : You had your chance torch-head. You should have spoken up when we started. But now we have a loyal following. Number 2 : But you are taking up valuable space. Rod : You must be kidding, with the vast quantities of stuff that are considerably longer than HHGttN that go out on the Net, and ignored totally, you have the narrow mindedness to use such a worn out argument. Commander : What do you expect| Gillian : Haven't you noticed people asking for missed episodes? Number 1 : Well . . . we choose to ignore that. Commander : Now hold it, we want you OFF. You're upsetting the balance. Time was when we Flamers had the run of the Net. Those were the good old days, pouncing on innocent people posting messages for no reason at all. People cowering in their offices, wondering if we would cut them to ribbons for spelling errors. Now you've ruined it. We just can't deal with . . . satire (Dinsdale?). Our weak attempts to counterattack fade quickly. No, you've got to GO, so we can retain our purity of essence and have no contamination of our precious bodily fluids. Xaphod: PUSH OFF you stiff. You aren't the bloody consciousness of the Net, you aren't even conscious. If you don't like the stuff, nobody is forcing you to read it. What are you, one of those Moral Majority types. Yah, that's it, you don't like what people say, so you try to make sure that nobody hears it. That's censorship, mate. Just because you don't appreciate or understand something, doesn't make everyone who does wrong. Commander : Uh, uh . . . Rod : Why don't we start throwing insults at the guy who sent the Flamers. We could kick around his childhood and stuff like that. Xaphod : No, let's not go down to that level. Gillian : Yah, lets keep our values. [The editors of "The Hitch Hikers Guide To The Net" point out that every attempt is made NOT to name names or point fingers. The HHGttN is a compendium of commentary intended to help understand what goes on in Netland, a place often billed as a "wheatfield of mental disorders". The editors also point out that all episodes are intended purely in the spirit of comedic-satire. Any insults to any individual's religion, political views, or anything like that is either purely accidental, or definitely intentional. The HHGttN complaints department is open at all hours, but has so far only received one (well intended) complaint, which was kindly accepted and acknowledged to the sender. The editors remind all Netlanders that there is no evil spell forcing them to read HHGttN (even though it makes perfectly good sense to do so)||| ] (In a fit of frustration, the Flamers depart, muttering something about CLIPBBS 2-11 Page 7 28 Apr 1992 "We shall return".) Arnold Lint: Well, that was exciting. Xaphod : Now let's get going and find the answer. Rod : Yah, and the dirty books. Gillian : (Looking at a huge mural on what could be considered the wall) Look over there, it looks like a whole new Net| Martin : Oh no, not another. ******************** End Of Part 8 ******************** Will the crew of the Infinity ever find the answer, or will they get interrupted again, to find out . . . Tune in next time . . . same Net-time . . . same Net-channel. ------------------------------------------------------------------------------- CLIPBBS 2-11 Page 8 28 Apr 1992 Available papers from Nantucket The following papers are available upon request from Nantucket: Whitepapers: ----------- Clipper 5.0: An Introduction for Summer '87 Developers Clipper 5.0 for dBASE Developers Clipper 5.0 for C Developers Rightsizing Developer Conference Materials: ------------------------------ The Living Application: Techniques for Writing Durable Code Arrays and Code Blocks RMAKE Error Handling Strategies Introduction to the Get System Introducion to TBrowse Designing Modular Applications Miscellaneous: ------------- Clipper Summer '87 Memory Management Notes To receive copies of any of these papers, please send CIS email to Savannah Brentnall (CIS ID. 76702,277) or Jennifer Ramras (CIS ID. 70511,2056), both of Nantucket's Technical Marketing department. Let us know which papers you want, and please include your mailing address (these documents are not available in electronic form at this time). ------------------------------------------------------------------------------- CLIPBBS 2-11 Page 9 28 Apr 1992 High Memory Area (HMA) what is it PUBLIC DOMAIN This text file is released to the Public Domain by its authors:- C Hart Computer Software & Services Brookfield Nursery Hathaway Lane Stratford-upon-Avon Warwickshire CV37 9BL ENGLAND Compuserve ID 100014,3307 On 15th February 1992. A description of what High Memory Area (HMA) as used by DOS 5 etc, is. High Memory Area is possible because of a quirk of the 286/386 Processor architecture, which is that in real mode it is possible to address more than 1 Mbyte of memory. As you may know real mode addresses are made with a segment and offset. So the address with the segment B000h and Offset 8000h is actually address B8000 which is the start of CGA (Colour Graphics Adaptor) text mode RAM. In other words, multiply the segment by 16 and add to it the offset to get the full 20 bit address, as follows:- Segment B000h 16 bit segment address Offset 8000h 16 bit offset address Segment B0000h 16 bit segment multiplied by 16 Offset 8000h 16 bit offset address ======== B8000h Full address. -------- In the 8088/8086 chips this was true, and the largest address possible in the 20 address bits available on these processors is FFFFFh, while anything higher wraps back through to 00000h, this range from 00000h to FFFFFh is the 1Mbyte of address space available. In the 286 and higher members of the family, address arithmetic involves more than 20 bits. The largest segment value possible is FFFFh as before and the largest offset is FFFFh also as before, but now when these segment/offset values are combined, with more than 20 bits available for the result the highest possible address obtainable becomes:- Segment FFFFh 16 bit segment address Offset FFFFh 16 bit offset address Segment FFFF0h 16 bit segment multiplied by 16 Offset FFFFh 16 bit offset address ======== CLIPBBS 2-11 Page 10 28 Apr 1992 10FFEFh Full address. -------- This means that addresses 100000h through 10FFEFh are now addressable in real mode, that is nearly another 64K over the 1Mbyte boundary. This is so far fairly straight forward, having seen how the processor is capable of addressing more than 1 Mbyte in real mode, now it is necessary to consider how to actually address this area in memory. To address 1 Mbyte 20 address lines are needed, these are numbered from A0 to A19, to address this extra High Memory Area another address line needs to be brought into play, that is address line A20. Bringing A20 into play is slightly complicated by the fact that due to compatibility and historical reasons it does not go directly from the processor to memory (via buffers etc.) as do the lower order lines, A20 is Gated(or switched), so that although the Processor might be driving this line, what it is putting on this line will not reach memory, unless the Gate is enabled. On an IBM PCAT this Gate A20 signal is controlled by the Mother boards Keyboard Controller chip, which is a small microcontroller in its own right, and has several output pins which are used to control various functions on the Mother board. The Keyboard controller in turns receives messages from the main Microprocessor telling it what to, so now we need some software that gets the main microprocessor to tell the Keyboard controller to turn the A20 Gate on and off as required. This software is part of Himem.Sys, a device driver provided as part of DOS 5, and also provided with several other Software Packages, if there is the line Device=Himem.Sys in the Config.Sys file, then when the PC is booted a message should appear during Bootup which says something like 'Installed A20 handler number X'. Himem.Sys has several different handlers for this A20 line, and will determine which one to use depending on the type of Processor etc. that it finds. Using the switch DOS=HI in the config.sys file will cause DOS 5 to tuck parts of itself into the High Memory Area, that would otherwise be in lower memory. All Trade Marks are acknowledged. DISCLAIMER This information is provided 'as is', without warranty of any kind, either express or implied, respecting its contents. The Author shall NOT BE liable to the user, or any other person or entity, with respect to any liability, loss, or damage, caused or alleged to be caused, directly or indirectly, by this information. ------------------------------------------------------------------------------- CLIPBBS 2-11 Page 11 28 Apr 1992 COMMIT in Novell Netware 3.11 COMMIT command, dbcommit() or dbcommitall() functions could be a source of many problems. In some cases those commiting requests are not filled with real commit ON SERVER cache buffers and it can lead in some kind of problem. What should be done to avoid problems with this? See following part from Novell Netware technical informations: API support was added to NETX beginning with v3.22, that when a program issues a DOS Commit File function call (Int 21h, function 68h)...this issues a Commit File NCP call to the file server...flushing any cache buffers used by that file out to disk. The Commit File NCP only exists in NetWare 3.x...and can be disabled by a SET command at the file server: SET NCP FILE COMMIT = OFF Remember therefore, in case of running on Novell Netware 3.11 network (server), check always if NETX.COM is really LATEST version. Good to check is also version of IPX.COM which is periodically updated or versions of DOS ODI drivers used at workstations before blaming Clipper of other programs for problems which can be made by OLD version of network drivers. ------------------------------------------------------------------------------- CLIPBBS 2-11 Page 12 28 Apr 1992 DBFSIX - A revolution in RDD? Succesware's DBFSIX database/index driver is something long time expected in Clipper community. At about 600 NLG price it come also finaly in Europe, sold by young software company MARCUS in The Netherlands can be a help for many Clipper Programmers. DBFSIX is full RDD for Clipper 5.01 which expands clipper into world of FoxPRO 2 compatible index and memo files. But what is main important thing is, that it allows something that Nantucket provided DBFNTX driver is not allowing. The SuccessWare Index Driver (SIx Driver) is a Replaceable Database Driver (RDD) for Clipper 5.0x. As an RDD, it connects to the low-level DBMS sub-system available in the Clipper 5.0 architecture. This means that you can literally exchange the default RDD (DBFNTX) with The SIx Driver and begin to use FoxPro indexes without re-compiling or having access to the source code. Compact indexes: ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Like FoxPro 2, The SIx Driver creates Compact indexes. This means that the key data is stored in a compressed format resulting in a substantial size reduction in the index file. The compact index size will be up to 90% smaller that the size of an equivalent .NTX index. Since the amount of compression is dependent on many variables, including the number of unique keys in an index, the exact amount of compression is impossible to pre-determine. Compound indexes: ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ A Compound index is an index file that contains multiple indexes (called tags). Compound indexes (.CDX's) allow you to have several indexes available to your application while only using one file handle. Once a compound index is opened, all the tags contained in the file are automatically updated as the records are changed. The first tag in the compound index (in order of creation) is by default the active tag when the index is opened. You can have several compound indexes for a single database file, giving you the ability to go well beyond Clipper's normal 15 index limit. A compound index can have as many as 99 tags, but the practical limit is around 50. Conditional and Scoped Indexes: ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ The SIx Driver can be used to create indexes with a built-in FOR clause. Think about it - fully maintainable conditional indexes! The condition can be any expression, including a User-Defined Function (UDF). As the database is updated, only records that match the index condition are added to the index, and records that satisfied the condition before but don't any longer are automatically removed. Clean and simple. Indexes can also be given a temporary scope after they've been created. The SIx Driver's SET SCOPE commands and functions let you set high and low key CLIPBBS 2-11 Page 13 28 Apr 1992 limits so that you see only the range of records that you want. The index scoping feature is similar to SET FILTER, except it work on indexes and is MUCH faster! Also, you can set a scope for each index or tag, and the scope remains active as long as the index in open. One limitation that index scopes have is that the specified values must be constant values. If an expression or UDF is supplied as the value, then the value of the expression or return value from the UDF is used for the value. This eliminates the slow-down from constant re-evaluation of a filter expression. Sub-Indexes: ÄÄÄÄÄÄÄÄÄÄÄÄ Sub-indexes are indexes that are built based upon another index, usually a conditional index. Instead of plowing through the entire database, a sub-index includes only the records that are contained in the index upon which it is based. This adds up to substantial time savings when all you want is to re-arrange the a conditional index. Roll-Your-Own Indexes: ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Roll-Your-Own indexes (or RYO's) are the ultimate in index control. You can create an empty index with the INDEX command using the EMPTY keyword, and then add or remove individual record to or from the index at will. RYO's are treated a bit differently from normal indexes. They are updated normally if the records they contain are changed, but records are not automatically added or removed. That way you have absolute control over what your index contains. Logical index record functions: ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Have you ever tried to build a positional scroll bar for a browse routine? You know, those cool things along the side that show where your are within the file. It's easy enough to do with a plain database - just divide the record count by RECNO() and you've got the position. So what do you do with an indexed database? And even more difficult, what if you have a conditional index? You don't even know how many records you're dealing with! The answer is simple: Sx_KeyCount() and Sx_KeyNo(), the SIx Driver's index versions of RECCOUNT() and RECNO(). Sx_KeyCount() tells you how many keys are in an index, and Sx_KeyNo() returns the current position within the index. Definable Memo block sizes: ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Tired of memo file bloat? The SIx Driver lets you set the block size for your memo files. Instead of the .DBT standard 512 bytes, our memo files have a default block size of 64 bytes, and can be changed to from 16 to 1024 bytes. And because the memo files are FoxPro compatible, you can use them with R&R Report Writer. Record edit rollback: ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ CLIPBBS 2-11 Page 14 28 Apr 1992 Single record rollbacks allow you to edit field values directly without worrying about getting the original values back. Any time before the record is written to disk you can use the SIx Driver's Sx_RollBack() function to restore the original record. Sx_RollBack() can also restore the current record for all child tables. RDD Utilities: ÄÄÄÄÄÄÄÄÄÄÄÄÄÄ The SIx Driver's RDD functions give you control over Clipper's Replaceable Database Driver system. You can get information about all RDD's loaded, such as number of RDD's available, RDD names, whether the RDD has been loaded or not, default file extensions, etc. You can determine which RDD is currently active, as well as change the default RDD. SIX commands: ÄÄÄÄÄÄÄÄÄÄÄÄÄ CLEAR SCOPE Clear index scope values DELETE TAG Delete a tag from a compound index INDEX Create an index file or tag REINDEX Rebuild open indexes for workarea SET DIRTYREAD Override index locking SET MEMOBLOCK Set block size for new memo files SET ORDER / SET TAG Set a new controlling index or tag SET SCOPE Set high and low index scope values SET SCOPETOP / SET SCOPEBOTTOM Set/Clear an index scope value SORT Copy to a new table in sorted order Six functions: ÄÄÄÄÄÄÄÄÄÄÄÄÄÄ RDD_Count() Get number of database drivers (RDD's) linked RDD_Info() Get information about a database driver (RDD) RDD_Name() Get name of a database driver (RDD) SetRDD() Make a database driver (RDD) the default driver Sx_ClrScope() Clear an index scope value Sx_Error() Get internal error code for last operation Sx_FNameParser() Trim path and or extension from a file name Sx_I_IndexName() Get name of index file being indexed/reindexed Sx_I_TagName() Get name of tag being indexed/reindexed Sx_IndexFilter() Get filter expression for a conditional index Sx_IndexName() Get name of an index file Sx_IsReindex() Check if a REINDEX is in progress Sx_IsSem() Tests for existence of a semaphore-lock Sx_KeyAdd() Manually add a key to an index or tag Sx_KeyCount() Get number of keys in an index or tag Sx_KeyData() Get current key value from an index or tag Sx_KeyDrop() Manually remove a key from an index or tag Sx_KeyNo() Get position of current key within index or tag Sx_KeysIncluded() Get number of keys included in index so far Sx_KillSem() Delete a semaphore-lock file Sx_KillTag() Delete a tag from a compound index (.CDX) Sx_MakeSem() Create a semaphore-lock file Sx_RollBack() Re-read current record from disk CLIPBBS 2-11 Page 15 28 Apr 1992 Sx_SetDirty() Override index locking on a shared index Sx_SetMemoBlock() Set memo block size for new memo files Sx_SetOptions() Set misc. options for index creation Sx_SetScope() Get/Set an index scope value Sx_SetTag() Set the active tag by name Sx_SetTagNo() Set the active tag by number Sx_SlimFast() Trim the fat from an expression string Sx_SortOption() Set the USECURRENT state for the SORT command Sx_TableName() Get the name of a table file (.DBF) Sx_TagCount() Get the number of tags in a .CDX file Sx_TagInfo() Get information about all tags in an index Sx_TagName() Get the name of a tag Sx_TagNo() Get the number of a tag Sx_Tags() Get the names of all tags in an index NEXT TIME: Compare of sizes and time of operations DBFNTX/DBFSIX ------------------------------------------------------------------------------- CLIPBBS 2-11 Page 16 28 Apr 1992 =============================================================================== SOFTWARE =============================================================================== What is what (2) DBDTALK Provides a visual anlyst of the prograss of commands INDEX, COUNT, SUM, AVERAGE and TOTAL with ascending/descending number or a horizontal bar. DBDWIND Collection of assembly language routines allowing add windowing function and special effects. dBEST TOOLBOX Over 130 functions in native language. Array, convert, maths, pop-ups calculator, calendar, typewriter, color utility, index.. DBFTRIEVE Interface between Clipper and BTRIEVE which contains all the tools and utilities needed to do productive work with BTRIEVE. Manipulated data directly or converts to/from DBF format. Includes over 50 functions, Clipper source code and comprehensive reference manual, Summer 87 and 5.0 compatible, also FOX compatibles. dbPUBLISHER Report publisher which can produce professional quality catalogues, price lists and all kinds of reports from within an application. Complete typographics control plus bar code generation. Accepts data from major database, spreadsheet, word processing and graphics programs. Supports more than 1000 fonts, postscript compatible printers, HP Laserjet Plus, Linotronic image setter and Phototypestter. Stacks of other features. dCLIP Programmers tools providing a complete interactive development environment for Clipper 5.0, dCLIP uses a 'dot' prompt program which supports nearly every Clipper command and function. Includes an assist system, report writer and interactive debuger. Now compatible witl all linkers, tested with many third party libraries, 80 more commands, support for 288 printers. DELTAFILE CLIPBBS 2-11 Page 17 28 Apr 1992 File updating system. Allows compare two files and extract changed, producing a change file. Then execute the change file against any old version to create a brand new files - thus one can ship only the changes to existing users of package. Save on disk space and time. Operated under a mouseable integrated environment. Works on any file type. DESQVIEW API LIBRARY Over 200 functions that gives a Clipper program full access to DV environment. Display information in windows and change the colour size, postiion and ordering Handle keyboard and mouse input, schedule processing, spawn subtasks, communicate with various tasks, modify the DV user interface, library manul and examples supplied. DESQVIEW API TOOLKIT DESQVIEW API LIBRARY plus debugger, panel designer and DV itself. DGE 4.0 Probably best database graphics package available. over 90 hi-res functions including pie&bar (2 and 3D) line, scatter, high-low-close, polar, time series. Mouse supports, Print to dot matrix, laser, inkjet or any HP-GL ploter. Comex with dGX a graphics design centre producing source code and gfont - a font creater/editor. Reads/writes PCX images. Requires 50K, overlayable with Blinkers. Works with over eight other db systems and C. Royalty free DGE ICON LIBRARY Selection of over 1000 icons for DGE 4.x. Symbols for computers, periperals, office equipment, desk accessories, application classes... DGE Font Library Collection of over 100 fonts in over 50 type faces for DGE 4.x. The fonts cover a wide range of needs, each one hand created, oncludes some foreign language fonts (Greek, Hebrew, Cyrillic), fonts can be sized using a supplied utility. dONETWOTHREE Compiled 1-2-3 functions for Clipper. Reads and writes WKS, WK1 and WR1 (SYMPHONY) files. View and worksheet without leaving an application, use @SAYGET to enter data into a workshet. Browse, create, modify cell format. Lots of calc functions. dQUERY 4.0 Query management systems. Allows you to use SQL and QBE to do ad-hox queries and report writing against dBASE, Symphony and CLIPBBS 2-11 Page 18 28 Apr 1992 Lotus 1-2-3 files. Build canned query and report systems. Query Lotus and dBASE files simultaneously using relational joins. Automatic file and record locking. Works with dBASE, FOX and Clipper files. Unlimited developers license $600, iunlimited end user licence per network $500 DR.Switch Memory switching utility that runs any size program from within Clipper through a function call. Lightning fast, on memory resident, network aware and royalty free, requires 4K DR.SWITCH ASE Turns a Clipper program into a 13K TSR which can be popped up anywhere just by adding a few lines of code. Includes powerful cut and paste facilities to move edata between applications and a function to replace keystrokes from disk. Supports expanded/extended memory and is fully network compatible. dSALVAGE PROFESSIONAL dBASE doctor, checks your data and reports on its health. Enhanced UNZAP which recovers zapped files even if partially overwritten, faster repair with "continue from here" feature, header builder, paste convert from any dBASE versions to any other versions. Includes record, hex, header and byte stream editor. ESCAPE Support for HP printers and compatibles, You are able to program forms and reports without nneedint to know compiulcated escape sequences, print objects, lines and boxes in different shades of grey, setup margins, no of copies and page layout parameters. Print centralised or right justified, download fonts, ue subscript and superscript features... EXPAND SHAREWARE library with MANY useful functions. MOUSE support, low level functions together with high level, DOS environment, disk/directories functions, file handles functions, file DOS low level functions, Sound functions, DOS PRINT access, modem DIAL function, Screen related functions, string functions, Lotus 1-2-3 files writing, date and time, EGA/VFA FONT support, joystick. EZ_PRINT printer support/driver system that links into your code supporting over 240 printers from laser to dot matrix. Clipper source supplied to allow printer selection adn driver loading allowing the use of advanced printer features. includes a printer instllation utility to enable easy modification of printer lists. CLIPBBS 2-11 Page 19 28 Apr 1992 FAST TEXT SEARCH Alternative indexing system written in C and ultra fast. Search memo fields, multiple data fields, multiple .dbf files for any character strings, words or phrases easily and quickly, included other usefuls 'status' functions. FLASHTOOLS Multi formatted bar selections, mouse support, window painting, screen design, dynamic menus, more than 20 special effects such as curatins, sliding windows, venetian blinds, low level function include vertical horizontal, tabular and free from bar selection with user defined prompts. FLEXFILE Variable length fields for Clipper. Store any Clipper data such as Savescreen(), memoedit(), array (5.0 multidimensional too), binary, graphics (PCX) as well as normal data types. Cut down disk file size eliminating empty 'white space' wastage - a handy replacement to MEMo fields. Alows unlimited file sizes, 5.0 and 87 compatible, written in C and assembler. FLIPPER Graphics package for CLipper with many features. Fonts compatible with Ventura and GEM. Mouse support, viewports, XY graphs, pie charts, font editor, automatic XY axis scalling, dot matrix, laser and HP supported. CGA, EGA, VGA and HERCULES plus 800x600 Genoa graphics. FUNCKY Advanced development kit with over 400 functions. Reads and writes arrays to text files, nested reads with savegets(), and restgets(), control with timeout() and onkey(), drop down adn tear off menus, dynamically resizable windows, mouseable scroll bars, 64 colour palette, different fonts on EGA and VGA, comes with Tom rettigs help database. GET-IT Offering GET manipulation, including true nested reads, save and restore gets as tou now save and restore screens. Dynamically refresh gets, call a procedure when NOKEY's have been pressed, create popup help for each input field. Not memory resident. GRUMPFISH LIBRARY Database Warehouse Collection of Clipper function for both Summer87 and Clipper 5.01, source code for both is included. What's in: CLIPBBS 2-11 Page 20 28 Apr 1992 pop up calculator, pop up calendar, pop up phone diary, pop up note editor, stopwatch facility exploding, imploding, shrinking, pop-up, drop down boxes, shadowing, menuing functions, horizontal LOTUS style light bar menu, vertical bounce bar menu, trigger letter menu. Context specific help for menu options, ticking clock on screen when waiting, timeout period for screen saver network user, locking and adding record yes/no prompts, error messages, verification of pritner readiness, on-line help system, passwording, validation system of adresses and postcodes for U.S., index bar function special printing methods on screen, spreading, ttying, dropping, bombing, unique screen clearing, text centering reviewing and modifying CONFIG.SYS, SHELL.CFG, screen blankers, copying of records between areas, random filename generator, saving arrays to disk and reading back simple spreadsheet, color configuration programs and functions, xsaving and restoring complete working environment, saving and restoring multiple getlists and move among them, saving and restoring complete SET variables replacement for inkey() function Norton guide documentation together with printed documentation GRUMPFISH MENU Fast, sleek pull-down menu generator/prototyping system with source code provided. Multiple config files contain different interface information including colors. embed source code within your menu structure. Installation program and tutorial. GRUMPFISH QUERY Utility which allow create ad-hoc reports without programming. up to 8 child databases, uses conditional indexing (not filters) saves and restore queries and supports memoes. processes 'between' 'starts with' and 'contains' operators. Subtotals, totals and groups. User definable headings and automatic formatting. 99% Clipper source included. GX GRAPHICS Complete graphics library supporting all graphics primitives. Full support for logical operations, clipping and drawing to off-screen virtual buffers in conventional memory or LIM expanded. Useful for smaller, faster, more portable code while accessing more video modes. CLIPBBS 2-11 Page 21 28 Apr 1992 IDL Low level library, DOS, interrupts, error handling, environment, printer, comms ports, hard disk and keyboard. Access to CLIPPER SET variables. Real time clock, no use of clipper internals. Entirely in assembler. ------------------------------------------------------------------------------- CLIPBBS 2-11 Page 22 28 Apr 1992 =============================================================================== NEWS =============================================================================== Clipper books (by George Jereza) /******* LIST OF CLIPPER 5.0 BOOKS CURRENTLY AVAILABLE: ********/ * CLIPPER 5: A DEVELOPER'S GUIDE ($44.95 W/ DISK) by Booth, Lief, and Yellick, 1991, M&T Publishing ISBN 1-55851-242-X * CLIPPER DEVELOPER'S LIBRARY ($39.95 W/DISK) by James Occhiogrosso, 1991, MicroTrend Books ISBN 0-915-391-39-2 * CLIPPER PROGRAMMER'S REFERENCE ($29.95) by W. Edward Tiley, 1990, Que ISBN 0-88022-677-3 * CLIPPER PROGRAMMING ($27.95) by Brett Olive and Jom Sheldon, 1992, Osborn/Mc-Graw Hill ISBN 0-07-881758-7 * CLIPPER PROGRAMMING GUIDE (?) by Rick Spence, 1991, Slawson Communications ISBN (?) * DYNAMICS OF CLIPPER ($24.95) by Arthur Fuller & Peter Brawley, 1992, Business One Irwin ISBN 1-55623-374-4 * PROGRAMMING IN CLIPPER 5 ($32.95) by Mike Schinkel w/ John Kaster, 1992 Addison-Wesley Publ. ISBN 0-201-57018-1 * ILLUSTRATED CLIPPER 5.0, 2ND ED. ($24.95) by John Mueller, 1991, Wordware Publishing ISBN 1-55622-231-9 * STRALEY'S PROGRAMMING WITH CLIPPER 5.0 ($?) by Stephen Straley, 1991, Bantam Computer Books ISBN 0-553-35242-3 * THE CLIPPER INTERFACE HANDBOOK ($27.95) by John Mueller, 1992, Windcrest/McGraw-Hill ISBN 0-8306-3532-7 * THE UNOFFICIAL CLIPPER 5.0 MANUAL ($?) by Vijay Mukhi, 1991, Tech Publications ISBN 981-3005-62-9 * UP AND RUNNING WITH CLIPPER 5.01, ($10.95) by Richard Frankel, 1991, Sybex ISBN 0-89588-693-6 * USING CLIPPER, 2ND ED. ($29.95) W. Edward Tiley, 1991, Que Corporation ISBN 0-88022-663-3 /******* Non-Clipper Books for Clipper Programmers: *******/ * APPLICATION DEVELOPMENT USING CASE TOOLS ($49.95) Kenmore S. Brathwaite, 1990, Academic Press ISBN 0-12-125880-7 * BUSINESS COMUTER SYSTEMS AND APPLICATIONS ($?) CLIPBBS 2-11 Page 23 28 Apr 1992 Alan L. Eliason, 1979, Science Research Associates ISBN 0-574-21215-9 * THE ELEMENTS OF FRIENDLY SOFTWARE DESIGN, 3RD ED. ($22.95) Paul Heckel, 1992, Sybex ISBN 0-89588-768-1 * THE ELEMENTS OF PROGRAMMING STYLE ($22.50) Kernighan and Plauger, 1978, McGraw-Hill Book Company ISBN 0-07-034207-5 * GET THE BEST JOBS IN DP ($23.95) David Krause, 1989, Mind Management ISBN 0-9622132-0-9 * HELP, THE ART OF COMPUTER TECHNICAL SUPPORT ($19.95) Ralph Wilson, $19.95, PeachPit Press ISBN 0-938151-14-2 * HOW TO COPYRIGHT SOFTWARE ($39.95) M.J. Salone, 1989, Nolo Press ISBN 0-87337-102-X * HOW TO WRITE COMPUTER DOCUMENTATION FOR USERS ($?) Susan J. Grimm, 1987, Van Nostrand ReinHold Company ISBN 0-442-23228-4 * MARKETING YOUR SOFTWARE ($16.95) William G. Nisen, 1984, Addison-Wesley Publishing Co. ISBN 0-201-00105-5 * MODERN STRUCTURED ANALYSIS ($?) Edward Yourdon, 1989, Yourdon Press ISBN 0-13-598624-9 * THE MYTHICAL MAN-MONTH ($22.95) Frederick P. Brooks, Jr., 1982, Addison-Wesley Publishing Co. ISBN 0-201-00650-2 * THE POLITICS OF PROJECTS ($29.20) Robert Block, 1983, Yourdon Press ISBN 0-13-685553-9 * THE PROGRAMMER'S SURVIVAL GUIDE ($?) Janet Ruhl, 1989, Yourdon Press ISBN 0-13-730375-0 * PROGRAMMERS AT WORK ($14.95) Susan Lammers, 1989, Microsoft Press ISBN 1-55615-211-6 * THE PSYCHOLOGY OF COMPUTER PROGRAMMING ($27.95) Gerald M. Weinberg, 1971, Van Nostrand ReinHold ISBN 0-442-20764-6 * SALVAGING DAMAGED DBASE FILES ($24.95) Paul W. Heiser, 1989, Microtrend Books ISBN 0-915391-33-3 * THE TAO OF PROGRAMMING ($7.95) Geoffrey James, $7.95, Info Books ISBN 0-931137-07-1 * WRITING AND MARKETING SHAREWARE ($18.95) Steve Hudgik, 1992, Windcrest-McGraw Hill ISBN 0-8306-2552-6 * UNDERSTANDING HYPERTEXT ($19.95) Philip Seyer, 1991, Windcrest/McGraw-Hill ISBN 0-8306-3308-1 (List date: 3/01/92. Compiled by G.Jereza, Sysop, Clipboard BBS, 415-239-0454, M-F, 8am-5pm only, PST, San Francisco, CA. ) ------------------------------------------------------------------------------- CLIPBBS 2-11 Page 24 28 Apr 1992 =============================================================================== ANOMALIES =============================================================================== ANOMALIES and their comments This part of Clipper BBS Magazine is dedicated to all discovered anomalies and comments about them in Clipper products. Because Nantucket is still unable to give own bug and anomalies reports (as actually did in past with Summer 87 version) is very handy to have results of many investigations done on many user places. I'm also doing my own investigatings, because i'm always very good when someting has hidden problems. Everything what i buy will first show all problems and then all normal things. This amazing part of my live is sometime making me crazy, but for testing of programs it's great . Daniel ------------------------------------------------------------------------------- CLIPBBS 2-11 Page 25 28 Apr 1992 =============================================================================== CLIPPER NET =============================================================================== Following is COMPLETE list of all published file descriptions in Clipper BBS magazine in previous numbers. Purpose of this index list is to allow anybody find needed file descriptions in growing number of described files. Short description after name will give first possible close image about file. Number enclosed in "[]" will mean number of Clipper BBS magazine. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄ¿ ³FileName ³Src ³Description ³Where ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄ´ ³ACCESS.ARJ ³Cln ³Source of speed testing program ³[1-06]³ ³ACH2TB.ARJ ³Cln ³Convert ACHOICE to TBROWSE ³[1-05]³ ³ACHOO2.ARJ ³Cln ³Replacement of ACHOICE with GET possibilites ³[1-06]³ ³ADHOC302.ARJ ³Cln ³Summer 87 inteligent report program ³[1-04]³ ³ASCPOS.ARJ ³Cln ³replacement of ASC(substr(cString,nPosition,1)) ³[1-11]³ ³BARNTX.ARJ ³Cln ³Displaying bar indication during indexing ³[1-13]³ ³BLOCK.ARJ ³Cln ³Tetris game written in Cliper ³[1-19]³ ³BUTTON.ARJ ³Cln ³@GET in form of BUTTON ³[1-14]³ ³CALC14.ARJ ³Cln ³PoPup Calculator ³[1-08]³ ³CIVMIL.ARJ ³Cln ³Upgrade of Civil->Military time conversion ³[1-19]³ ³CL5103.ARJ ³Cln ³Report of 5.01 anomaly number 3 ³[1-04]³ ³CL5REP6.ARJ ³Cln ³5.01 replacement of REPORT command ³[1-04]³ ³CLIP110.ARJ ³Cln ³Clipper Documentor program ³[1-05]³ ³CLIPFPCX.ARJ ³Cln ³Fast .PCX displayer for CLipper ³[1-15]³ ³CLIPLINK.ARJ ³Cbs ³Complete text of R.Donnay about linkers ³[1-04]³ ³CLIPPLUS.ZIP ³Cln ³Object extension for CLIPPER 5.0 ³[1-14]³ ³CLIPSQL.ARJ ³Cln ³Demo of complete SQL library for CLipper ³[1-05]³ ³CLIPWARN.AJ ³Cln ³Semaphore for convert WARNING: into ERRORLEVEL ³[1-11]³ ³CLPFON.ARJ ³Cln ³Set of fonts for EXPAND.LIB from author ³[1-03]³ ³COMET.ARJ ³Cln ³Demo version of communication library ³[1-19]³ ³COND.ARJ ³Cln ³Builder of conditional indexes like SUBNTX ³[1-03]³ ³CWDEMO.ARJ ³Cln ³Classworks lib written in CLASS(Y) ³[1-13]³ ³DBSCN2.ARJ ³Cln ³Screen designer generator ³[1-05]³ ³DIAL.CLN ³Cln ³Dialer with using of FOPEN() ³[1-07]³ ³DOC111.ARJ ³Cln ³Documentor, newer version ³[1-08]³ ³DTF102.ARJ ³Cln ³.DBT files replacement, fully functional ³[1-14]³ ³ENDADD.ARJ ³Cln ³replacement of incrementing last char of string ³[1-11]³ ³GETKEY.ARJ ³Cln ³Input oriented library, wordprocessing ³[1-12]³ ³GETPP.ARJ ³Cln ³Modified GETSYS.PRG well documented ³[1-19]³ ³GSR151.ARJ ³Cln ³Global Search and replace for programmers ³[1-07]³ ³HGLASS.ZIP ³Cln ³Hour glass for indication of index progression ³[1-04]³ ³HILITO.ARJ ³Cln ³Highlighting of keywords on screen ³[1-19]³ ³HOTKEY.ARJ ³Cln ³Makin unique hot key letter for every arrat el. ³[1-14]³ ³INDXSL.ARJ ³Cln ³User Fields selection builder for index generate³[1-03]³ ³IOBASYS9.ARJ ³Cln ³Demo of S87 library and calling Clipper from C ³[1-03]³ ³IS.ARJ ³Cln ³Several c sources of ISxxxx functions ³[1-11]³ ³JG2.ARJ ³Cln ³Jumping between GET statements in READ ³[1-08]³ ³KF_LOKUP.ARJ ³Cln ³Set of program for database relations ³[1-07]³ ³LUTLIB.ARJ ³Cln ³Another Clipper library ³[1-08]³ ³MK30.ARJ ³Cln ³Mouse library demo version ³[1-03]³ ³MOVEGETS.ARJ ³Cln ³GETSYS change for moving between gets via VALID ³[1-03]³ CLIPBBS 2-11 Page 26 28 Apr 1992 ³MSWIN.ARJ ³Cln ³Detection of Windows mode when running Clipper ³[1-14]³ ³NFDESC2.ARJ ³Cln ³NanForum library description list ³[1-06]³ ³NFLIB2.ARJ ³Cln ³NanForum library main file ³[1-06]³ ³NFSRC2.ARJ ³Cln ³NanForum library Source files ³[1-06]³ ³NOTATION.ARJ ³Cln ³Complete text of article about hungarian notat. ³[1-04]³ ³NTXBAR.ARJ ³Cln ³Bar of indexing via system interrupts ³[1-19]³ ³OCLIP.ARJ ³Cln ³Object extension, real (not #define/command) ³[1-12]³ ³OOPSCL5.ARJ ³Cln ³Another version of pseudo objects ³[1-07]³ ³PACKUP.ARJ ³Cln ³ASM source of PACK/UNPACK replacement SCRSAVE.. ³[1-04]³ ³PARTIDX3.ARJ ³Cln ³Partial indexing ³[1-12]³ ³PAT1.ARJ ³Cln ³CIX NanForum Libraryy PATCH ³[1-07]³ ³PAT2-2.ARJ ³Cln ³Fix for FLOPTST.ASM in Nanforum Library ³[1-13]³ ³PAT2-3.ARJ ³Cln ³TBWHILE improvement for Nanforum libray ³[1-14]³ ³PAT2-4.ARJ ³Cln ³FT_PEGS() patch for NFLIB ³[1-15]³ ³PAT2-5.ARJ ³Cln ³FT_TEMPFIL() patch for NFLIB ³[1-16]³ ³POPUPCAL.ARJ ³Cln ³Popup calender ³[1-05]³ ³POSTPRNT.ARJ ³Cln ³Postscript printing from inside of Clipper ³[1-14]³ ³POWER10.ARJ ³Cln ³French library ³[1-07]³ ³PRINTSUP.AJR ³Cln ³Low level BIOS routines for printing ³[1-11]³ ³QS20F.ARJ ³Cln ³Screen designer, demo, looks very good ³[1-11]³ ³READPW.ARJ ³Cln ³GETSYS change for password invisible reader ³[1-03]³ ³SCANCODE.ARJ ³Cln ³Database with scan codes ³[1-07]³ ³SCRSAVE.ARJ ³Cln ³Screen AntiBurning utility (inactivity snake) ³[1-05]³ ³SEGUE.ARJ ³Cln ³Novell library - demo ³[1-15]³ ³SHADO.ARJ ³Cln ³Creating shadow on screen ³[1-14]³ ³SHELP50A.ARJ ³Cln ³SuperHelp for Clipper ³[1-07]³ ³SHOWANSI.ARJ ³Cln ³Displaying a ANSI from inside CLIPPER no ANSI.SY³[1-15]³ ³SNAP497.ARJ ³Cln ³Beta version of SNAP, partially compatible to 5 ³[1-12]³ ³SNAP50.ARJ ³Cln ³dBASE/CLIPPER documentor supporting 5.01 little ³[1-15]³ ³SOUND.ARJ ³Cln ³Multiple TONE() used as one SOUND function ³[1-06]³ ³STATUS.ARJ ³Cln ³Timer interrupt hooked status indicator ³[1-12]³ ³SUPER160.ARJ ³Cln ³SUPER.LIB for Summer87 ³[1-13]³ ³SYMBOL.ARJ ³Cln ³Dumper of symbol tables of Summer87 .EXE ³[1-03]³ ³TBUNIQUE.ARJ ³Cln ³Browsing unique without unique index ³[1-12]³ ³TBWHL4.ARJ ³Cln ³WHILE browsing using TBROWSE, well commented ³[1-06]³ ³TICKER.ARJ ³Cln ³Real Time Clock, interrupt driven on screen ³[1-12]³ ³VOICE200.ARJ ³Cln ³VOICE synthetizing library for Clipper ³[1-13]³ ³VSIX711.ARJ ³Cln ³Vernon Six Clipper utilities and library ³[1-05]³ ³VSIX800.ARJ ³Cln ³Vernon's library, lot of functions ³[1-12]³ ³WIPEV11.EXE ³Cln ³VERY good screen manipulation library ³[1-11]³ ³ZIP2BAR.ARJ ³Cln ³Printing BAR (USPS) code on EPSON printer ³[1-15]³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÙ Src can be: Cln File is accesible on ClipperNet Cbs File is accesible in HQ BBS of CLipper BBS Magazine ------------------------------------------------------------------------------- CLIPBBS 2-11 Page 27 28 Apr 1992 =============================================================================== CLIPBBS =============================================================================== CLIPBBS Distribution CLIPBBS is special magazine about CLIPPER and CLIPPERing (or about another related problems and xBASE languages). This magazine is for free and articles aren't honored. Nobody can make a profit from the distribution of this magazine. CLIPBBS can be freely downloaded and uploaded to any BBS or any other public system without changes of original contents or number of files in original archive (kind of archive can be changed, but we are sup- porting ARJ archive because is best and smallest). If you are interested in CLIPBBS and would like to become a DISTRIBUTION site, contact publisher on 2:285/608@fidonet or 27:1331/4412@signet or just call to 31-10-4157141 (BBS, working 18:00->08:00, top is V32b) or voice to 31-10-4843870 in both cases asking for DANIEL (Docekal). Distribution sites: Clipper BBS Home system ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ NETCONSULT BBS, SYSOP Daniel Docekal, phone 31-10-4157141 Daily 18:00 till 08:00 (GMT+1), sat+sun whole day Modem speed 1200, 2400, 9600, 12000, 14400 (V32b) 2:285/608@fidonet.org United Kingdom ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ Welsh Wizard, SYSOP Dave Wall, phone 44-656-79477 Daily whole day, modem speed HST Italy ³ ÄÄÄÄÄÄÄÄÙ Lady Bright BBS, SYSOP Gianni Bragante, Phone: +39-15-8353153 20:00-08:00 monday to friday, from saturday 13:00 to 08:00 monday 24h/24h holydays, 300-9600 baud v21,v22,v32,v42bis 2:334/307@fidonet.org United States of America ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ The Southern Clipper, SYSOP Jerry Pults, phone 1-405-789-2078 Daily whole day, modem speed HST The New Way BBS, SYSOP Tom Held, phone, 1-602-459-2412 Daily 24hours, 1:309/1@Fidonet.org, 8:902/6@RBBS-Net Canada ³ ÄÄÄÄÄÄÄÄÄÄÙ SYSOP Gordon Kennet, phone 1-604-599-4451 Daily 24houts, 2400bps V42b, 1:153/931@fidonet.org CLIPBBS 2-11 Page 28 28 Apr 1992 WORLDWIDE ³ ÄÄÄÄÄÄÄÄÄÄÄÄÙ Clipper File Distrubution Network (ClipperNet, area CL-DOC) Various systems around whole world ------------------------------------------------------------------------------- CLIPBBS 2-11 Page 29 28 Apr 1992 How to write articles in CLIPBBS? Submission of articles to CLIPBBS is really easy: Maximum of 78 characters per line, as long or as short as you like ASCII text. Choose from the list of extension which most describes your text, or just name it .ART as ARTicle and send it to publisher or to any distribution site via modem to BBS or with mailer as file attach. Article will come automatically appear in the next free issue. Extensions are: Articles (anything) .ART Software .SOF News .NEW Question and Answers .Q&A ANOMALIES and their comments .ANO Letters to editors .LET Advertisement .ADV Wanted .WAN Comments .CMS DUMP from conferences .DMP Clipper Net .CLN That's all at the moment, there will probably be changes later, as the magazine evolves. If you have any ideas for a new section of CLIPBBS, please tell us, or just write an article about it. Daniel, publisher -------------------------------------------------------------------------------