Pro/file Updates

The Newsletter For ZX Pro/file Users

Vol. 1, No. 2 April 1984

TIMEX COMPUTER CORP. FADES

If you haven't heard already, Timex followed in the footsteps of Texas Instruments not long ago, leaving computer owners and third party supporters alike holding the bag. Ru- mors are flying fast and furious. Only one thing is certain and that is that we are all in for some uncertain times. Preliminary fears that the entire software-hardware mar- ket would collapse have proven false. Some manufacturers I have spoken with are jump- ing ship, but the vast majority are hanging in there.

ANALYSIS for PRODUCERS and CONSUMERS

Don't let the bungling of the big-boys get you down. Your computer is just as good now as it ever was, and it is going to get even better as new software emerges. Is there going to be new software? I predict yes. It is true the number of potential customers is now as big as it ever will be, and the influx of new computerists has ended, but just because there aren't any new computers being sold doesn't detract from the large number of owners already out there.

The quality of new software is going to soar. Manufacturers will put their heart and soul into everthing they sell--as if their livelihoods were at stake (and now, boy is it ever!). Timex's quitting is going to have a cleansing effect on the entire industry. The purveyors of "junk" will get weeded out a whole lot faster than originally expected. The number one contributer of confusion to the industry is now out of the picture.

The future of the ZX/TS is in your hands. Producers will come and go, the most im- portant thing you can do to insure that people will still be using their computers a year from now is COMMUNICATE. Keep those lines open. Join a user group. Pay your dues. Subscribe to SYNC, SYNTAX, TS USER Newsletter, (and UPDATES, of course!) or your favorite ZX/TS publication. COMMUNICATE. Unite. This is a new beginning. In everything, there is difficulty in the beginning, but I predict that six months from now we will all look back and see that Timex's leaving the industry was really the best thing that could have happened.

NOW TO THE TASK AT HAND

People write to say that they use Pro/File for everything from cataloging arts

and crafts projects in Sunday Schools to inventorizing and matching donors and recipients at a sperm bank at a California medical school. It is used in homes

and nuclear power plants, in political campaigns and small businesses. Two ob- stacles prevent ZX Pro/File from being a full fledged business machine: mass storage of files, and the physical package itself (keyboard, case, wobble, and wires). This issue connects Pro/File to the AERCO disk system (WOW!). Issue 3 will solve some of the package problems. Read on..... ,

Q-SAVE WITH PRO/FILE

John Willi, Louisville, KY and Phil Williams, Wilmington DE sent these instructions to make PRO/FILE work with Q-SAVE:

1. LOAD Q-SAVE 2. LOAD a cleared copy of "ZX" 3. CHANGE line 25 so it reads: 25 IF XS="SAVE" THEN GOTO 4050 4, ADD these lines: 4050 CLS 4060 PRINT USR 32383 4070 GOTO 17

Willi comments, "I Dimmed DS to 9700 char- acters to allow 100 bytes for the NOT search and 500 for the file count. One could other- wise probably increase DS's length. Load time is 27 seconds!"

Williams adds, "According to the Q-SAVE in- structions, the proper save command is PRINT USR 32383. Editing PRO/FILE's line 25 to:

25 IF X$="SAVE" THEN PRINT USR 32383 successfully saves PRO/FILE but the program breaks with a 5/25 error report. This is prob- ably due to the fact that Q-SAVE completes a save or load operation by printing a number on the next available line and PRO/FILE's Main Menu uses all 22 lines. (has anybody tried to edit line 25 so it says: IF XS="SAVE" THEN PRINT AT 6,0; USR 32383 -ed)

PRO/FILE REPLACES THE CARD CATALOG by John R. Willi

Got a library? Or a Sunday school library? PRO/FILE with the NOT Search and file count is an excellent library program. I use it with 48K. Smaller memories may be a little re- strictive. Titles can be stored like:

*ROBBINS, HAROLD THE PLAYBOYS N;

where "N;" could signify "novel", "Ps" could mean "politics", etc.

Most titles and data average 40 to 50 slots. I have 2 libraries cataloged at the present time. You should be able to get at least 800 books in one library file--possibly up to 1000 if the authors initials are used in place of his first name. The file count works great when it is used with the comment line. A search for

N; for example would tell you how many nov- els you have in your library.

ey

AUTOSEARCH WON'T WORK

Several readers have written of problems when trying to make an ordered search. In order to utilize this function in PRO/FILE you must enter your data carefully or the computer w—< not be able to find the number you type in.

Remember that the number held in the file MUST be the last word of the file. Equally important, the number MUST be preceeded by a space if it is less than 5 digits in length.

If you were to create several test files like:

*TEST *TEST *TEST *TEST 2 1 4 3

the program would not recognize the num- bers even though they are the last words of each file. They don't have a space in front of them. If you edit each file so they read:

*TEST *TEST *TEST *TEST NO. 2 No. | NO.'4 . NO. 3

an ordered display would be successful because before each number there is a space.

Another problem that crops up occasionally is that files added using the "tricks" on page 24 of the manual cannot be ordered. This "bug"

is caused by the fact that files added in this. 4 manner have an inverse pound sign tacked

on to the end of the last file line (see manual page 28). This fools the computer when it looks for a number. It finds a "£" instead of

a number and goes on to the next file.

Normally the last word of a file has an aster- isk immediately following it and this is what the machine is expecting.

Fortunately there is a fix that is relatively painless. Look up each file using the "*" as a Search Command. Some other appropriate character would work equally well. Then, with the file displayed on the TV, press "E" to EDIT followed by "C" to CLOSE. This doesn't change any of your data, but the inverse "E" at the end of each file is taken off. After you do this to every file, ordered searches are possible.

THE PRO/FILE--AERCO CONNECTION

Linking Pro/File's data management capabil- ities with the rapid access and large cap- __vity of a disk system is probably the single greatest improvement you can make to

ZX PRO/FILE. if you obtain a disk system manufactured by AERCO you can make these modifications to PRO/FILE to pack your data base with enormous whollop. Here is what you get if you use a 16K RAM:

*Each disk holds 16 different programs.

*Any one of them can be accessed in under five seconds.

*PRO/FILE's Main Menu tells you which pro- gram is currently in the computer, and

*Gives you the option to either LOAD a new data base or SAVE an updated one.

*The Display Option Menu gives you similar capabilities. A new selection, "D" (for disk) has been added.

*The disk operating system (DOS) is stored on the disk and: is always accessible simply by LOADING it. This DOS contains a directory or index which lists the names you choose to give to each copy of PRO/FILE.

*One "page" of the 16 which are on each disk is left blank. This is where you can put other frequently used programs. You could even

\_ store a 15th copy of PRO/FILE on this page if it is needed.

With capacity like this in addition to the 5 second loading time for any PRO/FILE on the disk, you will have a file manager that can hold its own against any other file manager on the market for any other computer and you will have spent just a tiny fraction of what it would cost to get the equivalent for a differ- ent brand of computer.

To run the cassette version of PRO/FILE on the AERCO system, several important changes are necessary. In the machine language, the address of FILE PEEK (16507 and 16508 decimal, 407B and 407C hex), the variable which stores the address of found files, must be changed because the drive software also uses these bytes. The new address for FILE PEEK will become 16622 and 16623 decimal. This pair of bytes is loc- ated in one of PRO/FILE's REM lines and is not used for machine language.

235

As you scan the machine language listing given in the manual, every reference made to the old FILE PEEK (407B) is changed to 40EE which is the hex equivalent of 16622 decimal. A total of nine bytes need to be changed to accomplish this. Load the PRO/FILE cassette and BREAK from the main ZX menu. Then make the follow-

ing POkKes- HOKE 16591,238 POKE 16626,238 POKE 16643,238 POKE 16662,238 POKE 16690,238 POKE 16696,238 POKE 16719,238 POKE 16785,238 POKE 16892,238

Translated into hex, these represent addresses 4OCF, 40F2, 4103, 4116, 4132, 4138, 414F, 4191, and 41FC respectively. All are given the hex value of EE.

BASIC program lines are added or altered to facilitate accessing the disk drive. The extra memory required to hold the new lines plus the need to free up 512 bytes for use by the drives themselves makes it necessary to reduce cap- acity of DS to 10120 characters. Follow the instructions given in the manual or in UPDATE No. | to do this. Then add or edit the lines shown in figure lI.

A new BASIC variable, called F, is used by the disk version to tell the computer which "file" is currently loaded in the machine. When you wish to SAVE or LOAD onto the disk, this var- iable is also responsible for making the correct USR call to the disk ROM software.(See lines 9050 and 9100)

After you make the program changes, but be- fore you save the program on disk, initialize

the variable F by typing in the immediate mode: LET F=2 and ENTER

Then run the disk initialization routine as shown’ in the disk operating manual:

RAND USR 12865 (for double density)

Once done, GOTO 17 to get back to the main menu. Type SAVE from this menu and the pro- gram will go onto page 2 of the disk. To make more copies on different pages, break from the main ZX menu and type:

LET Fs3 and ENTER

GOTO 17 again, type SAVE, and the program goes onto the third page of the disk. Repeat this sequence for each disk page you want.

To use the disk PRO/FILE, power up the com- puter and activate the disk by typing:

RAND USR 13303

This loads page 1 of the disk. From here you can select which PRO/FILE you want and in 5 sec- onds it will be loaded into your computer. With the disk PRO/FILE loaded, you can load a dif- ferent one by typing LOAD from the main menu. The program asks if you need to re-save the Current program, and then asks you which file you wish to load. Any of the 16 possible pages on the disk can thus be loaded.

DISKS AVAILABLE: If you feel that you could benefit by having PRO/FILE work on disk, but you lack the courage or ability to make the necessary changes, you can purchase the disk version of the program, including an expanded 5 pages of explanations for $39.95. To order write to Thomas B. Woods, PO Box 64, Jef- ferson, NH 03583.

A complete disk system, including a free copy of the disk PRO/FILE can be obtained from 21st Century Electronics, 6813 Polk St., Guttenberg, NJ 07093 tel: 201-869-2616.

NEW PROGRAM LINES

7000 IF X#="SAVE" THEN GOTO ico 9005 PRINT AT 14,0;0%;0%:0¢;0%;0

$;Q$;AT 18,0;"HAS THIS FILE BEEN SAVED? CY/N)"

9010 INPUT xX

9015 POKE 16390,4

7020 IF X$="N" THEN GOTO 9100 9025 IF X$<>"Y¥" THEN GOTO 9120

7030 PRINT AT 16,0;"SAVE COMPLET E" ;Q% ;0%;Q$;AT 18,0;"INPUT FILE

NUMBER YOU" ;TAB 0;"WISH TO LOAD" 7031 POKE 16390,0

9035 CLEAR

7037 LET 2%="00000"

7040 GOSUB 1200

7045 IF VAL 2#>16 THEN GOTO 9040

9048 LET F=VAL 2%

7050 RAND USR (12290+F)

9060 GOTO 17

9100 RAND USR (12720+F)

7110 IF PEEK 16390=4 THEN GOTO 9 030

9120 POKE 14390,0

9130 GOTO 17 Aiea

EXISTING BASIC which is ALTERED

13 PRINT "zx pro vfile FILE:"3F gyss enter & Search command ae or type "a" to add "S "sau e" ar "load" for disk","SPACE OP ~ EN: ";LEN D$-P:" SLOTS" :aT 10,0; "SEPARATE MULTI-WORD" , "COMMANDS WITH 4 nha 7" nou sige "TYPE n "AUTO" 1] F OR AUTO-SEARCH"

25 IF X#="SAVE" OR X$="LOAD" T HEN GOTQ ¢n04

35 IF X#CLEN X#.="/" OR LEN xs >28 THEN GOTO 18

220 PRINT AT 146,0:"hit enter to cantinue searching,"c" ta capy,

"qd" to load disk, "rn" to retur mn to previaus files,"e" ta edit this file, "nan" to begin

& new file search " 235 IF Y$="0" THEN GOTO 9005

A FORUM ON HARDWARE SUPPLIERS?

How 'bout some comments on Timex hardware suppliers? There are lots of ads in SYNC and elsewhere, but who is reliable and who is not-~

Richard E. Koehler Indianapolis, IN

Finding reliable hardware (and software)

is fustrating for all of us. UPDATES definate- ly will comment on hardware, software and everything else that enhances ZX PRO/FILE, but a straight and narrow course will be fol- lowed: If a product is good and it serves to make ZX PRO/FILE a better program, you'll read about it here. If the product stinks or does not add to PRO/FILE's capabilities, you'll have to read about it in the advertisements.

If you need straight comments on all things Timex, subscribe to TS USER Newsletter, P.O. Box 155, Vicksburg, MI 49097. This newsletter is not to be confused with the magazine of the same name. TS USER has a firey shoot- from-the-hip style that makes very enjoyable reading. They are not afraid to call a spade

a spade. Annual subscriptions to this monthly are $26.95 (expensive) but through a special arrangement PRO/FILE Updates subscribers can get 12 issues for $16.95 (a bargain). To ~~ get this $10.00 discount, say you subscribe

to UPDATES.

MACHINE CODE IN PRO/FILE Where to stick it

Enhancements to PRO/FILE that are written in chine code can present a problem in deciding Where in memory you should keep it. A long addition like Q-SAVE or FASTLOAD will usually be placed either above RAMTOP or somewhere

in the 8-16K area of RAM if you have it to use.

The biggest drawback to keeping code in these areas is that to place it there conveniently, you must LOAD 2 or even more separate programs before you have PRO/FILE up and running.

With a long enhancement, particularly one that speeds loading time, the extra hassle is justi- fied. But what do you do with a short machine code routine that is indispensable but so short that it hardly seems worthwhile to go through a separate LOAD procedure for just 10 or 20 bytes of machine code?

One place to put it is right in with all your files in the DS array. ‘Any code you have there will get loaded right along with the program and files. This procedure causes ZX PRO/FILE's search, add, and edit routines-to ignore the first 256 bytes of DS. This makes it possible to safely store machine code there without the

“sk of accidently deleting it just by running \.e program.

Break into the listing by typing SHIFT 1, STOP, and ENTER when the Main ZX menu is on the TV screen. Then type in the immediate mode:

POKE 16670,1 and ENTER

Chane line 18 so that instead of printing SPACE OPEN equal to LEN DS-P, it prints LEN DS-255-P.

Q

hange line 50

You also need to

If you run PRO/FILE with 16K of RAM, you will need to reduce file capacity before you can edit line 18. Follow the procedures given on page 40 of the manual or the file reduction method published in UPDATE: Vol. 1, No. 1. Always be sure to free up enough space for

any extra BASIC lines you may wish to add.

Then in the immediate mode type:

St

-5-

The computer now starts searching from the 257th character of DS. Machine code that you place in the first 256 characters is safe from being overwritten by data, and it LOADS as part of the program.

Before you make this modification, be sure to take a note of what you have stored in the first 277 characters of D$ because they are forgot- ten by the computer.

These first few files must be added back to the data base. Also, it is likely that the 278th char-

acter of DS will be somewhere in the middle of

a file rather than conveniently at the beginning of one so you'll need to restore the first file to its original form after the array changes have been made.

Program operation is not affected by this mod. Searching, Editing, and Deleting functions are the same as before. The only indication you have of reserved space is: that SPACE OPEN is less than the original.

Now you can ask, "Why should I go to the trou- ble of reserving space in DS for machine code enhancements?

Following is one very very good reason.

THE AMAZING "LINE INSERT" COMMAND by Dan Pinko, Parksville, BC

I found that I required an INSERT facility for a filing job I was working on. This one works very well. After these changes are made to ZX PRO/FILE you can create an open line between two existing ones in order to insert a new line of text. Whenever the cursor is blinking while you add or edit files, press

"I" to INSERT.

1. LOAD ZX PRO/FILE.

2. Reduce capacity by at least 400 bytes by re- dimming DS or by following the method given in UPDATES Vol. 1, No. 1.

3. Reserve the first 256 characters of DS for machine code as explained in the previous article.

4, Add these lines to PRO/FILE and GOTO 9900. Lines 9900 to 9930 can be deleted once everything is entered correctly. Their only purpose is to allow you to enter machine code into DS.

PonO-FOR x=i TO 21 PSi0 INPLIT ¥

920 (ET G8¢K)=CHRS ¥ PF30 NEXT X

5. Enter the numbers given in column 2 of the "INSERT" listing. Ex: 1, ENTER, 239, ENTER, 1, ENTER, 42, ENTER, 12, ENTER, 64, ENTER, and so forth.

6. Add BASIC lines 400 to 495 shown below.

ann ait 420 430 44i1 445 450 440 4?q 420 485 470 495

LET F=n

LET G=ti

TF vYe3 THEM GOTO Sa? PRINT AT Y,fs" 0 LET Ge(15-Yr#es3 TF G<¢=ft THEN GoTo IF 3254 THEN LET LET O€189=CHRE F TF G>256 THEN LET G=G-254 LET DS¢1 7 3=CHRS G

RAND USF ¢L-2543

PRINT AT ¥,0;0%

GOTO 5a¢

470 F=1

7. Change line 506 to:

SQ6 PRINT AT 16,0;"PRESS "p04 TO CLOSE THE FILE. " TO INSERT ARRO WS MOVE THE "" p08 HI To enter TO INPUT DATA" 30% 50%

8. Add line 525. It should read: S25 TF ¥¢="I" THEN Goto 400

9. Now GOTO 17 to get back into the program. When you press "I" while in the ADD/EDIT mode, every line of the displayed file from the cursor on will move down one line. If you have something written on the bottom line, it disappears.

an T nu

a a HELP!

Many readers have asked how to modify "ZX" so CAI printers will function identically to that described in the manual. If anybody finds a way please tell Updates how you did it. If you think you know how to do it, but need advice on how PRO/FILE works, Updates will assist you in any way it can.

eS

"INSERT" Disassembly DS Dec ;Mnenomic

LO BC,4e5

LO HL,ti sara)

PUSH HL ADD HL,BC LO OH PLO E,L

LO BC,442

POP HL ADD HL,BC LD BC, 231

el ee olin eee Maa Vs Te ee i ra] OO Rin bight oO gS Ne a ae

LDODR

J =

ra

RET

fl

BYTE-BACK P-2 PRINTER SOFTWARE MODS

Add or alter these lines of ZX PRO/FILE to make it work with Byte-Back's P-2 serial print< er driver. P-2 can be located in any convenient memory location. Once you decide where you want it to be, determine the address of both the LPRINT and the LCOPY routines. The ad- dress for LCOPY will be stored by the program as a variable-called MC.

24 LET MC=(your configured LCOPY address) 2055 POKE MC+442,14 2056 POKE MC+1,C2 3010 delete this line 3020 RAND USR MC 3032 PRINT AT 9,03;q$;Q$;Q$; AT 4,6; 3036 RAND USR (your configured LPRINT) 3038 IF C THEN GOTO 110 3040 GOTO 125

After the modification is complete, GOTO 17 to get the program running. Run through a DEFP procedure to initialize everything. Once done, you can use P-2 exactly as the PRO/FILE manual describes. As with any machine language modification or utility, do not try to LPRINT

if the P-2 driver is not present in memory. The results of doing so are at best unpridictable, and usually fatal. Thanks goes to Tom Lawfin, _ Hillsboro, NH for his help in debugging and testing this routine.

LINE INPUT IMPROVEMENT by Tom Kennedy, Ft. Wayne, Indiana

I was using PRO/FILE to handle a file and ~rint-out of one line sales transactions, but

\_atering the data of varying length and still keeping all segments of lines properly aligned caused me grief as well as a lot of "Data Too Long" errors. This revision of line 552 and an added line 554 prints a guideline at the bot- tom of the screen that clearly shows the spac- ing allowed. It eliminates much guesswork.

FAST LOAD PROGRAMS Update

There are several brands of Fast Load type programs that speed SAVES and LOADS dramatically. It seems a bit anticlimactic

to discuss them at length in this Disk issue, but these programs remain an inexpensive al- ternative to disk drives.

\_sesides Q-SAVE (see page 2), I have 3 favor- ites. Each has its strong and weak points, but all are reliable and of high quality:

FASTLOAD by Pearson

ROBOTEC, Inc

59 C Street, Ampoint

Perrysburg, OH 43551 $19.95 cassette

ZXLR-8&

G. RUSSEL ELECTRONICS

RDI, Box 539

Centre Hall, Pa 16828 $11.00 cassette

QUICKLOAD CARTRIDGE

ROM PACK

8206 Blackburn Ave.

Los Angeles, Ca 90048 $29.95 plug in ROM In a related topic, the "new and improved" stringy floppy alluded to in Updates #1 is now available and being sold by A&J Micro Drive, 1050 East Duane Ave, Suite "I", Sunnyvale, CA 94086 (408) 732-9292. I have one of these drives and can report it to be a top notch

. _lece of equipment that loads 16K in 15 sec-

“~onds. Price: $149.50 plus $3 s/h

ate

DEBUGGING AID by Irving Helbling, Altadena, CA

When DS is longer than 704 characters, report

5 errors prevent you from displaying the array when you PRINT DS. This short routine appended to PRO/FILE lets you read all the contents of DS without a lot of fuss. Begin numbering the lines at 9000 or some other place where there's room.

UNCLASSIFIED

Sell that piece of gagetry that failed the smoke test, or that extra printer, or mem- ory pack. Non-commercial ads: $5.00 for

5 lines.

Great Buy: T/S 1000 mounted in SUNTRONICS keyboard, Memotech 64K, Flexible ribbon,

T/S 2040 Printer w/extra paper, Q-SAVE (A/C) Byte-Back MD-2 modem, 9" b/w TV/monitor, cables and several T/S books. All excellent condition-MUST SELL! $500.

R.L. Peeler, 400 N. Ist., apt. 7C, Hampton, Virginia 23664 (804) 380-4048

FOR SALE: CAI Stringy Floppy and I/O board. Used, but works like new. Lifetime supply of wafer tapes and holder included. CAI centronics ROM. The first hundred bucks takes it all. Tom Woods, P.O. Box 64, Jefferson, NH 03583

Pro/file Updates is published 4 times a year, in January, April, July, and October.

Subsciption rate is $9.95 annually. Edited and Published by: Thomas B. Woods

P.O. Box 64, Jefferson, NH 03583 (603) 586-7734

Copyright 1984 Thomas B. Woods