1

I

11

iiiiitiiiiiiiitiiiiiimiiniiiiiiiii

NOV - DEC '9 1 VOL. 9 NO.6

EARLY WINTER ISSUE

page

2

Club Stuff

page

3

Editorial

page

Bob's Notebook (2068)

page

6-10

Printer I/f's & Driver Software 2 (2068)

page

11

QLips - More on the GOLD (QL)

page

12

ZX Resources - Transferring Files

page

13, 14

Superbasic Tutorial Part 3 & 4 ( QL )

page

15

One Sided Disks Do Not Exist Part 2

page

16 - 18

Reader Writes (2068)

page

19

GOLD CARD Update & Update Update (QL)

page

20,21

DISCAN - Larken Utility (2068)

page

22,23

Montreal Renegade - General Interest

page

24

More QLips (QL) & Error Correction (2068)

page

25

Code Transfer ( ZX8 1 /TS 1000 )

page

26

Font Demo (2068)

page

27

Advertisement

page

28

QL Quicky, Ad & Funnies

page

29

Tape & Disk Utilities (2068)

page

30

Holiday Greetings

TORONTO TIMEX-SINCLAIR USERS CLUB

NOV - DEC *9 1 VOL. 9 NO.6

SINC-LINK IS A PUBLICATION OF THE TORONTO T I ME X -SINCLAIR USERS CLUB AND IS ISSUED 6 TIMES A YEAR. COPIES OF THE NEWSLETTER ARE $1.50 EACH FOR NON-MEMBERS. CLUB MEMBERS RECEIVE FREE COPIES AS PART OF THE $20.00 ANNUAL MEMBERSHIP FEE. A NEWSLETTER SUBSCRIPTION ONLY IS AVAILABLE FOR $12.00.

NEWSLETTERS ARE EXCHANGED, FREE OF CHARGE, WITH OTHER

TIMEX-SINCLAIR USERS GROUPS.

PLEASE CREDIT THIS PUBLICATION AND THE AUTHOR IF YOU COPY MATERIAL.

THE CLUB MEETS ON THE FIRST WEDNESDAY OF EACH MONTH AT FOREST HILLS COLLEGIATE INSTITUTE, 730 EGLINTON AVE. W. f TORONTO. START TIME: 7:00 PM.

SEND CORRESPONDANCE TO:

Attention: SINC-LINK EDITOR TORONTO TIMEX-SINCLAIR USERS CLUB, 14 RICHOME COURT,

SCARBOROUGH, ONTARIO, CANADA M1K 2Y1

TORONTO TIMEX-SINCLAIR USERS CLUB

EXECUTIVE OFFICERS:

PRESIDENT TREASURER SECRETARY ACTIVITIES QL CONTACT NEWSLETTER LIAISON OFFICER: ( Out-of-town members )

(Area Code 416) RENE BRUNEAU ( 531-9749 ) BILL LAWSON ( 444-8772 ) GEORGE CHAMBERS ( 751-7559 ) LOUIS LAFERRIERE ( 820-3725 ) HUGH HOWIE ( 634-4929 ) JEFF TAYLOR ( 244-8583 ) GEORGE CHAMBERS, 14 RICHOME COURT, SCARBOROUGH, ONTARIO, M1K 2Y1 ( 416-751-7559 )

TORONTO TIMEX-SINCLAIR USERS CLUB

2

SINC-LINK

Editorial

I've been disturbed by what I've read in the editorials of some of the out-of-town newsletters. Seems some people have been setting out a figure of what they feel to be the minimum percentage of Timex-Sinclair content to still qualify as a TS newsletter, others have been publishing TS newsletters with no TS content, some claim that there simply isn't any new software or hardware to report about and still others are actually bad-mouth img particular publications.

EVERYBODY STAND BACK AND TAKE A DEEP BREATH.

The Timex-Sinclair world is simply not large enough to allow such squabbling to continue. There are few enough publications and newsletters available now and if these editors continue in this fashion there will a lot fewer very quickly. If you don't like what you read or see in a newsletter, write a letter to the editor of that newsletter or cancel your subscription. DON'T use your newsletter as a weapon against the few remaining TS publications. The last thing we need is bad blood between groups .

The reason clubs, groups and newsletters exist is to exchange ideas and information. Have we forgotten that? I hope not. Here in the Toronto group, we are lucky to blessed with some excellent programmers, prolific writers, active out-of-town members and a core of people who try to make a difference, who try to help. If any of these qualities is missing from your club maybe you should take a look at what you need to improve things. Criticism isn't one of them.

The TS world is shrinking, let's not hurry the process.

Club Executive

By the time you read this, a new club executive will have been formed. Most of the faces are the same except that we have a new activities director in Lou Laferriere. He'll be bugging everyone for ideas and requests to demonstrate at the club meetings. The tape librarians' names have been removed from the newsletter blurb because of lack of requests. Don't forget that we have extensive ZX81/TS1000 and TS2068 tape and paper libraries as well as our disk library. Just ask.

That's all for now...

J.T.

SINC-LINK

BOB'S NOTEBOOK

UHfiT DO YOU USE YOUR COMPUTER FOR, EH?

Uhen z tell someone that I have a computer, often the reaction is a narrowing of the eyes, a look, of puzzlement crossing the face and the inevitable question, "Just what do you use it for?" or "Uhat do you do ujith it-?"- Often I say, "Oh, I Just mess about with it." But sometimes the question seems to call for a more serious response and, not wanting to bore the questioner, I count off six categories:

1) Programming (the hobby part) ;

2) Uord Processing (the typewriter part);

3) Data Processing (the filing part); 4.) Spreadsheets (the accounting part) ;

5) Graphics (the picture part);

6) Entertainment and Education (games and such) . If pressed, I am ready to expand a bit:

PROGRAMMING,

This is my key activity with the TS2068 and involves mostly BR5IC programming with some compiling using Timachine and a modicum of machine language work, nil this is the fun part, the learning experience, for me. I probably would buy another computer if I thought I could have as much enjoyment writing programs and generally controlling the system. Usually the first thing X do when I get hold of a BASIC program written by someone else is change it. Not because it is wrong, but because I like to make it suit my needs better.

Included in this category, would be all those "utilities" for the 2068 such as copy programs, repair and recover files for disks as well as disk doctor collections, niso machine code disassemblers and assemblers and the recording of file names and locations in an index file.

I enjoy passing on the fruits of these endeavours to others which is what I have been doing for several years in writing this column. I also like exchanging ideas with other club members all over North America via letter and disk. Uithout the club as a catalyst, I gravely doubt that I would have used the computer as much as I have done.

But putting this messing about to one side, I get to the proper reason for having a computer: using programs written by others including commercial products and by myself to do some of the more serious things:

UORD PROCESSING.

Much of this involves writing these columns but I do all my letter writing this way, too. I have developed terrible handwriting over the years to the point that I even use the computer to address envelopes. I don't use fancy self-adhesive labels. Just plain paper which I stick onto the envelope with a glue-stick. Sometimes I put the address for a letter at the tail end of the text file and issue commands to print it in large letters. Other times I use my address file, (more on that later). The result of all this is that the recipient can read my messages more easily and hopefully the large type for the address label will help the post office get the letter to destination faster and with more certainty.

My favourite program for word processing is Mscript due to its greater flexibility over Tasword (for example, I like to be able to alter the line length as I switch from Pica to Elite or Condensed pitch). But I still prefer Tasword for lists of information because it is easier to do an alphabetical sort. Many lists arise out of the use of the computer, such as my file of disk names; but others in my collection include the contents of the freezer in the garage and of the larder in the basement.

Tasword is also better when the data is to be displayed on screen or printer using the LKDOS command <PRINT USR lee: PRINT (or LPRIMT) "name". Mscript files need a Line Feed at the end of each line to ensure the display does not break up words at the end of lines. R useful addition to my collection is a utility that will convert Mscript files to Tasword and vice versa.

DflTfl PROCESSING.

Mostly, I use Pro/Fi le for my data storage and handling. For example, my address "book" is used a lot. it keeps addresses along with all sorts of miscellaneous info. Under an address for an insurance company I keep the policy numbers, my OHIP number under the OHIP address. I keep my address file in my RAMDISK because I use it quite frequently. Most of the other files

SINC-LINK

relate to the computer hobby, such as the Sinc-Linfc file used for searching for topics in old issues.

But other collections of data often require other specialized programs and I have a few pet ones such as budget, income tax, bank, accounts, auto maintenance, short wave listening logs and da te boo k .

The Larken Random Sequential file program gets used only when the amount of data exceeds the limits of Profile- I have used it for storing my ROM disassembly con 55 tracks!}, but searching is rather tedious as it scans tracks one by one.

Finally, there is a bank-switching file used to store huge amounts of data and quickly sort, search and display selected portions. Here is where I keep my audio music collection and, someday, my slide collection.

SPREADSHEETS.

Despite its inherent limitations, Uu-Calc is the winner. Omnicalc is used sparingly and only when Uu-Calc will not do the job, mostly when the numbers are too large, or formulae must be more complex than Uu-Calc can handle.

My spreadsheets include: Gas and Hydro usage where average use per day, etc, are readily calculated, and Car Hi leage which gives miles per gallon and litres per 100 kilometers, etc. Uu-Calc was recently used to do some calculations for conversion of RRSPs to RRIFs Cyes, I have reached that age!) .

This application required several recalculations (reiterations) to give a final and correct spreadsheet.

I also have a sheet for capital expenses (big ticket items that I no longer put in my budget file); income and realty tax data for years back; income for the year from various sources.

GRAPHICS.

This includes Pixel Print Plus and Professional (aka Desktop Publishing) which are mostly used for fancying up my columns for Sine-Link. Fancy labels for my 5.25 inch disks are done using the SCREEN saves via Pixel Print Professional. The latter was also used to create keyboard overlays for various programs such as Hscript and Artist II, not to mention Pixel Print Plus i tse If.

I have also used flrt Uorx, Art Studio and other design programs to make some graphics that are then printed in regular, wide or giant size on the wide printer. I recently drew some aircraft used in the Gulf Uar but they were hard to perfect using the joy stick. Perhaps a mouse would have worked better.

As I am also a shortwave listener, I have a program to produce graphs depicting the maximum usable frequencies on any given day between any two points on the earth's surface under certain sunspot conditions.

ENTERTAINHENT, SCIENCE & EDUCATION.

To me, entertainment means "games". I'm not into games much but I have a collection of a few favourites, some via Spectrum and other on the 2068. The card games are not bad, cribbage being among the better ones. Scrabble is very good but the dictionary is I imi ted .

Some programs that fall in the general classification of science and education are: calendar making, calculating days between two dates, financial packages and statistical analysis.

Many of the programs mentioned above are creations of club members who have put in hundreds of hours in what is truly a labour of love and who have passed the results to our librarian for distribution to others at no charge (ie, in the public domain). I doubt that there is a club anywhere for any computer that has as many people making these types of contributions. To all, let's give a hearty thank you and heartfelt wishes for more

0 f the same .

1 am sure other readers have their own lists of what they do on their computers (things like midi or sound creation). I have yet to make much use of LKDOS windows but I do have a graph program that makes use of the LKDOS shading patterns. There is really no limit to what one can do with this machine, given its memory size. Perhaps this summary will have egged others to pass on different uses they have discovered and invented.

Bob Mitchell 20 Ui Id Briarway Ui I lowda le Ont M2J 2L2 SEP 11991

SINC-LINK

PRINTER INTERFACES AND DRIVER SOFTWARE A Primer by George Chambers - Part 2 - T ASM AN

In the first article of this series we went over the general features of the several printer driver softwares. In this article I shall cover the features of the Tasman drivers in greater detail, including a number of short model programs to demonstrate the type of Basic programm ing which can manage the software.

Note that in these articles I tend to use the words driver, software, and code i nterchangeab I y. In every case these terms refer to the software code that is used to translate the computer i n format ion being output to the printer, into signals that the printer responds to correct I y.

There are two vintages of the Tasman printer interface hardware. The initial Tasman hardware had an incompatibility with some add-on units. A second vintage, ident if ied as Tasman B, was introduced to cope with this incompatibility. It is not clear to me whether the new version was designed to overcome problems with Spectrum add-ons, TS206S add-ons, or possibly both.

In any event, the initial Tasman hardware is i ncompat i b I e with the Larken disk system. When installed, although the printer operation is sat is factory, the Tasman interface prevents the Larken system from operat ing. Larken disk CRC errors result.

I think that in order to make this article complete in itself I shall have to repeat some of the material from the last article. Please excuse this.

Before we get into a detailed descript ion of various Tasman printer drivers, I should briefly identify the appl icat ion of each. The main driver is "tasincode". It contains a great number of features, and would be the one normal I y used. However since it occupies upper memory, and may conflict with programs which also occupy this memory space, Tasman have provided several shorter versions which are placed in the 20U0 printer buffer area. Each short version has a cert ian capabil ity; which version you use depends on the type of printing you want to do.

For example:

Use "tasmini" if you wish to use the screen (text) COPY feature. Use "tasbuff" if you want to make use of the LUST and LPRINT commands.

Use "tasepson" if you wish to make a high resolution copy, i.e. copy screen graphics. 7

Then there are several other versions similar to "tasepson", which provide high resolution screen copies for various makes of printers, which we shall not cover in this series.

TASMAN Printer Driver Softwares "tas i ncode" " "

The Tasman software, called "tasincode", comes with a Basic program which allows the user to customize the software to the needs of the particular printer it is to be used with. Once the software has been

conditioned", it can be tested, and then re-saved to tape. The Basic could also be customised to save to disk, if desired.

SINC-LINK

The "tas incode" software loads at address 64716, and is 652 bytes in length. When loaded it is in it ial ized by RANDOMIZE USR 64719. This USR call, among other things, POKEs values 238 and 253 into the "pointer"

2e?03l°* respectively. This points the 2068 to the driver code start address of 65006.

i„J+1e, "tasinc°de". a" interesting feature, in that it allows one to

mstal several printer control functions; designating various 2068 fun^';03 symbol.s t0 '"Plement them. Whenever one wants to engage a nr-int*r 'unction one simply enters the graphic symbol for that function, into 'the

loots u'onl trAnited-,WhenJhe driver *°ftxare encounters this symbol it

* ,1 taTb'e an* sends out the printer control seguence assigned to the symbol. The printer control function comes into effect immediately.

unr*TJlZ~"taS ' ncode" softvare appears to be imbedded in the Tasword TarSword.eeSOr Pr°gram a'S0- °" thS ^tures of this code be ing 'present in

S^'^HtS-0*?? coZsTthicT^Z 'pVo^VrlZ^ ?f'Vn'e°V°

zreZt;rtai:'^

+ h» ril"1"* L'S ° Basic Program which will demonstrate the operation of the Tasman "tasincode" driver software. For this demonstration t have used fn, *L'*' 1nd P,ca S°nts, and the Underline ON/OFF opt ions. The codes ussrt for these four options seem to be universal among printers.

Flair*! %lffnna,T*rS °f int*r°sting things to observe in the listing in figure I. The following paragraphs will detail them:

tio'nedL 'earner™* RAND0MlZE USR 6«7'* *°ts the 2068 ••pointer-, as

men

r^'vA Site z/LriZT,r,z'i^: iisrjzr^izr

ThiV iTlliluV tonthLnTS '°' 30 ' *°' et°" there is a d°«b'° CHRSS 27. tnis is unique to the Tasman code. The "tasincode" driver „„..i~JL ~

a

in llnTln 10 we are usina the Instruction "CHR$ 77", while

name v tin +»Te w"5 V A$C." character "M». Both have the same effect f \ frhl, t the printer to print in elite font. If you look in Appendix

v-cr^^r%;o,?^o^ww Manual you /ee that <*•

SINC-LINK

/«*«/»«. ro ,mp,ement the under, in\ ? feature an'd'in't^ " C""** remote We could have used ChrT u A *h la in the second instance, to

Also you might note Zat^Tne^empiZ ' ' \lnYl?nl 'iV'

-0" . we have used these as examni** ' ' wh.',e Llne 70 "*es

i:LpPiz:ssibi°- see "™ " - ' & - irn*r%rzs%?j.ai& that

coJel lleWhVgrZlfc <»«

nTLj^'/r Ze'Ts'ToTnTa ^r^W program fs LLISTed the printed I istTnaZ in' ^ F°r e"amP'e' »hen thi* first guote in Line 51 (even though ?t is a IZTf* , 7 ' Qt ™e

ceases immediately after the f l Vi * J J ■ . ■ Una!), and underlining is a REHmed line). q"°te "ne 71 ("gain, even though it

code" TtdiiVTosl0,btleetoLdVNT ^ U/ST C°mmandS bein° Effective with this This'.i), copy the 23 Unes orCtZ\C°Py b\d°ir>3 ° RANDOM I ZE USR 647/6. text; graphic's and graphic symbols tilVnoSV/ "Tw C°Py 'S °°"f'°°« to within a character area !il 11* J J, "0t °e Prlnted. If the pixels

will he printed Wo, ■ tZt lhaVacteTa'rlaT^ ° *** Chara^ * space

"tasbuff" Driver

■•VallVcVd'e^ ZTvf/LTuVnerr^r LPR'NT fUn°*!°™ «

the 20*0 printer buffer area lanv Jf * /J""" f°r 256 ^fes °f '»

have been dropped "tasbuff* f"! ot.her featurss of "tasincode"

This driver is initial ized hi +hJ U'th Pr°orams such as Omnicalc.

responds to t'ht /rjl^^^^^f RANDOM,X US» » then

replTed™ i^Vhe^dt £ iZ^rilan To'iVarV^T **»< » ~ "

"tasmini" Driver

^o";0/^^;:--/^-c^;/«^ to occupy the printer buffer area of

above 6*715. This driver is used at a substVtute^for ¥1?°'™ USed memory command. Simply replace all rnpv AJl s"°s*'tute for the normal COPY

command R^o/uE ^ cZTSnV, e '"on I ' y^e'xt , VoV g rabies!

ZJ^VZKlJFojrZ 1Z^'gf^l!^-^S^t»r code at location copy, /t is set to zero on < the oriail.t A V Lne dUr,ng a text screen into it; a 1U, for example will r JJniV ■ PY "Ut yOU can P0KE a """ber on many printers. eX°mp,e wl" result "> " screen copy in enlarged text

retlTnVnd'TiVe^Vd.'ff0^ the codes for printer carriage

into 23301 to prevent doiTle nlVeZs^ToWxaL'",?'** '°U ^ °

spaTeTZ il7r ™te?3o°u2t aT^te* • ■ " > ^ber of

i.e. a left margin sett i no The A9; '""'?g 0f each °f screen copy,

WE a differenV:utlll'?ntoTTt To' VhTn'ge'Zi ^ â„¢

8

SINC-LINK

"tasepson" Driver

A driver with which you can make screen copies including graphics. It /s located in the printer buffer area. A high resolution screen copy can be made by executing RANDOM I ZE USR 23296.

The documentat ion states that you can get a small size screen copy by POKE 23551,1; and a large size (about double-size) copy by POKE 23551,0. I have only been able to produce the double-size with a Fastext 80 printer, on my printer POKEing the small-size mode produces a page full of

s\ S .

The image can be positioned on the page by a POKE 23530, X, where X equals the number of spaces on the left margin. 4

/ InJhe.examPle Basic program (Listing 2) you may notice a Line 140. I placed this line to change the line spacing in the graphics mode, because otherwise my printer left a narrow unprinted space between each pass of rZ;„ + arSLa9Z' JS reduced the <™ount of linefeed on each pass of the Pinter head You may not need this sort of correction in your program, but it could be useful to realize this change is possible.

/ have described four of the most useful Tasman drivers that can be nil- w,lhJhe Tasmâ„¢ interface. There are several others which have been designed for specific printers, such as the Star DMP 515/510, the Tandy

^Vninnuit iiTo^Tlr,,'^ i%,stKr Mr Seik°s»a

„J*heSe °fl interestin9 aspect to this however. The documentation that

was supplied for the HacKsel printer drivers contained a fist of POKES

i '^V! applied to the Tasman drivers to make them effective on the

Hackse, POKES^^Vh^V th* AJr-°o) pHnter <^dware) interfaces. The follows. Tasman drivers described in this article are as

"tas incode" POKE 64947, 127 " 64952, 96 " 64958, 127 " 64963,219 " 64964, 127

"tasbuff" 23326, 127 23331 , 98 23337, 127 23342,219 23343, 127

"t asm in i" 23330, 127 23335, 98 23341 , 127 23352,219 23353, 127

"tasepson" 23507, 127 23509, 103 23514, 127 23517,219 23518, 127

Errors in Part 1 of "Printer Interfaces and Driver Software"

^ Steven Gunhouse has recognised some errors in the article in the last

issue of the newsletter. You will find a lot more information about

drivers etc., in addition to the corrections. Do review his letter in this issue.

The errors in my article are:

Page 10 - 2nd para. - LPRINT USR 1, should be LPRINT CHR$ 1 Page 10 - 1st Para. - POKE 643256, w idth-1 ,

should read POKE 64259 , w idth-1 Page 10 - 1st para. - POKE 26703,0 : POKE 26704,251,

should read POKE 26703,5 : POKE 26704,251. *********************** SINC-LINK

fjaure 1

1 REM A test program for the Fastext 80 printer. Using the Tasman printer iff and "t as i ncode " software.

2 GO TO 10

3 CLEAR 64715

5 LOAD "tas incode"CODE

6 RANDOMIZE USR 64719

10 LPRINT CHRS 27;CHR$ 27;CHR$ 77: LPRINT "This is Elite" 20 REM LPRINT CHR$ 27;CHR$ 10

30 LPRINT CHR$ 27;CHR$ 27;"P"; "This is Pica"

35 REM LPRINT CHR$ 27 ;CHR$ 10

40 LPRINT CHR$ 27;CHR$ 27;"M"; "Th is is Elite"

45 REM LPRINT CHR$ 27 ;CHR$ 10

50 LPRINT CHRS 27 ;CHR$ 27;"-"; "1";"This is Elite under I ined"

51 REM LPRINT "mmThis is Elite under I ined"

60 LPRINT CHRS 27 ;CHR$ 27;"P"; "This is Pica underlined"

70 LPRINT CHRS 27 ; CHRS 27; "-0"

71 REM LPRINT »m»

75 REM LPRINT CHRS 27; CHRS 10

8999 STOP

9000 SAVE "tas i ncode" LINE 3: SA VE "tas incode"CODE 64716,652

Figure 2 10 GO TO 130

20 REM A Demonst rat i on of the TASMAN printer driver "taspson" which produces a printout on a large printer of SCREENS image.

21 REM

30 REM You can POKE a number into 23530 to shift the margin to the left. One more than the

number of spaces to be shifted.

31 REM

40 REM Try POKE 23551,1 to get

a small size screen copy. Works on some printers

41 REM

100 LOAD "tasepson"CODE

140 LPRINT CHRS 27; CHRS 27 ; CHRS

65; CHRS 27; CHRS 8

170 CLS : FOR n=1 TO 55: PRINT "mmmumJmm : NEXT n

175 PRINT "» You should t

urn off your printer momen

tari/y, to empty it's

buffer"

180 PRINT '"Printer Ready? ,Pr ess a key...": PAUSE 0

190 RANDOMIZE USR 23296

200 STOP 9000 SAVE "tasepson" LINE 100 9010 SAVE "tasepson"CODE 23296,2 65

4.4 2 Software acceptability

For the software to be acceptable, SOF must satisfy*: (1) Vm' ViJ W Vc' [IN(m'f £') a SOF(i', gl) a OUlV, q ') a NAlV, c') =* REQ(m', g ')] .

Note, that if one or more of the predicates IN(mr,/'). OUTCo'.c*), or NATCm'.c1) are false, then any software behaviour will be considered acceptable. For example, if a given value of rrf is not in the domain of IN, the behaviour of acceptable software in that case is not constrained by (1).

If we assume that relations REQ, IN, OUT, and SOF are functions, we can use functional notation to rewrite (2) as follows:

(la) Vw* [mf € domain(NAT) =* (REQ(m') = OUT(SOF(IN(m')))) ]

SINC-LINK

QLIPS

More on the GOLD

QLIPS

By Hugh H. Ko

In the September issue of Sine-Link I had a preliminary review of the GOLD Card, in which I expressed considerable concern, especially about how it treated my text87/two-column print-out, where the two columns were mixed up by the printer, and not printed neatly like this.

Well I wrote to Miracle Systems and got the reply back just in time to get a short note into the same Newsletter. Here is the story and also some further observations.

The reply I got from Miracle was a replacement ROM, version 2.22, to replace the one supplied which was a 2.15. This changed, my printer behaved itself and I am now happy from that point of view. I had mentioned that I was having trouble with my 1.61 Minerva and their reply was that I should try the later version of Minerva. By this time I had taken Minerva out and up to now I have not done anything about it, but I do miss some of the 'quircks' in Minerva; however, back to the GOLD.

Last time I mentioned the Clock, and here is an improvement which I find very useful, A 'Clock protect' command which separates the GOLD clock from the QL clock. We all have experience with the program which asks for a time before doing anything, and if you ignore the time adjustment, the QL clock is reset to the time of the program, and it is sometimes a nuisance to have to go through the clock reset to protect the QL time. Well in the GOLD there is this command which protects the Gold time from the QL time. You can have the QL work in one time frame, while the GOLD retains its own time. At reset the GOLD time predominates.

I am sorry to say that for those of you who like to Network, there does not appear to be a Network facility in the GOLD, at least I have not been able to find it, so I will have another letter off to Miracle for their comments. My two systems are always connected up for Network, and when I tried it with the GOLD there was no action. I took out the GOLD and replaced it with my Cumana- Expanderam-TK2 setup, and the Network was OK, so the conclusion is my system is OK, but the GOLD does not provide this

wie

facility.

Another little thing is that you can have a 'Sub -directory' on the disc. With this you can save a whole stack of stuff to disc and with a DIR-ectory of contents only the title of the Sub Directory shows. Say you call the sub-directory "Letters" the DIR-ectory will only show 'Letters', and to read the contents of this file you would have to ask for 'DIR xxxx LETTERS' Now I have not worked out the necessity of this, but someone must have thought it worth while as it still takes up space on the disc. Miracle advise that this disc will not work on the TrumpCard.

When I was in Dayton at the Fest, I picked up a 3 1/2 disc drive as a spare. (I got it at the start of the show before the prices went up later on.) When I got home I was in a store and bought some discs just to keep my stock up, and when I tried to format the new discs on the new drive from Dayton, I got 2880/2880 sectors! It was then I noticed that I had bought 'double-track' discs locally, and that there-fore the drive I got in Dayton was Hi-Density! At the price I paid for this drive I wish I had bought a few more, but I have often wondered if the vendor KNEW what he was selling? I should complain. It gives a funny feeling to see a disc formatted to 2880 and to see Free_mem of 1.844256E6. (The same drive on Trump only gives 1440 sectors) The GOLD will handle the new 3.2M discs, and automatically detects what disc size is in use.

From the GOLD it is possible to restore the Capacity to your desire for those programs that do not like large chunks of memory floating around, but I have observed that at 128k it is not possible to activate TK2.

I do not have Hard disk, but if you do, all the WIN_REXT extensions are available. With all I have I don't think I need more, Or do I?

Final opinion is that the GOLD CARD is what makes the QL well-nigh perfect. Who needs more? Speed and Capacity and Capability.

Tha-tha-thats all folks. §

SINC-LINK

11

ZX RESOURCES

Rene Bruneau

Transfering Files Between Computers

Picture this.... You have just been ejected from your publisher's office with these angry words shouted in your ear... "Last time you brought me a manuscript typed up on toilet paper , now you say you've got one on disk but my Mac can't read it !?...

Don't dispair, That priceless manuscript that took you three years to type into your 2068 or TS1000 can easily be transferred to any other computer with the right equipment and software.

To transfer files, you will require communications programs and serial ports or Modems for each machine.

Run your communications software on each machine, and set baud rates, parity and stop bits to match. Connect the two systems via the software (read the manuals !), and confirm that data is transmitting between the two systems... simply enter a string of key strokes and see if it appears on the other monitor. If the software allows it, set up one of the systems in Host mode (ie: your very own BBS) and handle the file transfers from the other system. For example, with a 2068 using MAXCOM in BBS mode, you would "call" from the target system and "download" your required files from the 2068.

Source Computer 2068 or TS1000

2050 lodei

Z-SIO (2068) Meiotech RS-232 Byte-Back RS-232

Target Coaputer APPLE, IBM, etc

requires a sodei (external or internal)

serial interface (usually installed)

Before you transf&r your document file to the target system, it is recommended that you remove all punctuation and embedded codes to make the job of reformating the file on the target system easier. This is standard proceedure for desktop publishing.

If you are using a 2050 modem, simply connect the phone cable that comes with it to the target modem. To connect serial ports (the prefered choice), you require a 'Null Modem' cable. Shown are the connections required for standard DB-25 and DB-9 (IBM-AT) serial ports,

If your software does not have this feature, you must set up the target system to "download" your file, and while it waits for the file, have the source system "upload" the file. Note that while the process is fairly straight forward, complications can occur if you are not familiar with the software so read the manuals.

Once your document is transfered, you can load it into the target word processor and reformat it to your requirments.

this transfer process can also be used for other purposes. For example, a hex file could be transfered from one system to another that has a eprom programmer. Thus, the source code for an eprom on an embedded microprocessor board, compiled on an IBM XT clone, could be downloaded to a TS1000 with John Oliger's eprom burner... eprom burners for the IBM start at about $100 US and go up from there.

DB-25 TO DB-25

DB-25 TO DB-9

TxD

2-

Rxd

3-

RTS

4-

CTS

5-

DSR

6 -

GND

7-

DCD

8 -

DTR

20

— w-2

3

4

5

— *-6

SINC-LINK

SuperBASIC Tutorial - Part 3 (or maybe 4!)

I'm sorry there wasn't an episode of this saga in the last issue of SincLink. I suppose it's my fault for trying to get ahead and sending in two episodes at once; I won't make that mistake again! But at least you got double measure in the previous one. I should also apologise for an error in part 1 - all references to line 210 actually should have referred to line 220 in the final version of the program that accompanied the listing. I must have got my versions mixed up somewhere. Since I have received no complaints about this (or any other comments apart from Hugh's in the last issue!) I suppose that either no-one read it or everyone who did realised what I had done

Listing 3-4 Upgrade

100 nm$ - "Prt_dir4"

110 REMark hjc 1991.09.09 Ver 0.42 165 WIDTHl»3.chars%

168 abc%=l: REMark Alphabetical flag

770 LOCal a$,c%,i,t%: c%=ch%+l

830 t%=cols%*rows% 840 DIM ddir$(t%,nl%)

905 IF abc%: Shellsort ddir$(T0 n%)

1120 REMark

1130 DEFine PROCedure Shellsort (a$)

1140 REMark Ascending order.

1150 LOCal gap%.i, j , k%, n%, sort , w$

1160 n%=DIMN(a$): gap% = nX DIV 2

1170 REPeat sort

1180 FOR i=lT0 n%-gap%

1190 FOR j=i TO 1 STEP -gap%

1200 k%=j+gap%

1210 IF a$(j)>a$(k%)

1220 w$=a$(j): a$(j)=a$(k%)

1230 a$(k%)=w$

1240 ELSE EXIT j: END IF

1250 END FOR j: END FOR i

1260 gap%=gap% DIV 2

1270 IF gap% = 0: EXIT sort

1280 END REPeat sort

1290 END DEFine Shellsort

At the end of part 3 I left you with the cryptic comment "Afferbeck Lauder". (This is the pen name of the author of a famous book on the pronounciation of English in a country where they celebrate Christmas in mid- summer. ) The one difference between our listing of file names and the telephone directory is that they were still in random order. This is readily remedied since there is a useful collection of ready made PROCs in a program available from the QL library which contains the PROCedure "Shellsort" (nothing to do with conchology, it was invented by a Mr Shell. ) All we need to do is to add this to the end of our program and include the appropriate call. This can be achieved (as long as you haven't RENUMBERed anything) by typing in the Listing 3-4

2,

upgrade, saving it in a temporary file, loading Prt_dir3 and then MERGE ing the upgrade on top of it. This should produce Prt_dir4. Do NOT try to run the upgrade alone, it is not a complete program! (If you are lost don't worry, I'll give the complete listing in the end, and send it to the library. )

The first two lines bring the version info up to date. Line 168 introduces a new global variable abc% which is a flag to switch the alphabetical ordering on and off. Set it to zero to switch alphabetical order off and save time; any other value is treated as "true" in line 905 and the call to Shellsort goes ahead. I put the option in since the ordering will take a significant amount of time, especially if you have a diskful of files - but that is of course where it is most useful .

A few lines in the PROCedure Make_array had to be altered too. If you sort the whole array and it isn't a full rectangular one, the empty elements, which we want at the bottom of the right hand column get shifted to the top of the left. To sort only the first part of the array which actually has file names in it required the introduction of a new local variable t%, replacing n% in a couple of lines of version 0.3.

Shellsort comes straight out of the library, except that I have removed a few REMs and adjusted line lengths to fit the narrow columns I am using in this article. I adapted it ages ago from a version in some sort of lesser BASIC and cannot remember for the life of me exactly how it works, but it does! As far as I remember it is quite fast and doesn't require a lot of memory, this was more important in the days when 64k was a huge amount - we QLers shouldn't have to worry! To reverse the order change the > in line 1210 to a <. It will work on string "slices" (e.g. fred$( 3 to 67) but there is one minor bug in the procedure if you do. If you send a string sliced at the beginning (eg fred$(3 to 67) it treats the first element (fred$(3)) as a$(0) and ignores it, so if you want fred$(3) to be included in the sort you have to send fred$(2 to 67) and let it ignore element 2 instead. It's all to do with people counting from 1 while computers start at 0! In line 905 our array is only sliced at the end, so we don't need to worry here.

When I experimented with smaller typefaces I found that it was necessary to make one other small addition to the program - the WIDTH command in line 165. This sets the line length on the serial port. The default is 80, so this only matters if you are trying to save even more trees by typing your listing in elite or condensed type. You will also have to instruct the printer with the appropriate control codes. If your printer is Epson compatible then the following trick should work :

SINC-LINK

PRINT»3 , "QM" ; : PRINT*3, "e"; :

REMark Elite type REMark Condensed

The ti character is produced by <CTRL+;> and g by <CRTL+/> , if you think you can read condensed elite then use both ( "QMS " ) but it Mill be very sull and you mil need very good eyesight!

Slip this in somewhere soon after OPENing channel *3. (See my article in QL World April 1991 for more details.)

There is also a bug in the QL's string comparison routine, it treats upper case letters as 'â– earlier'" in the alphabet than the corresponding lower case one. So, for example "CHports_doc" comes before "Change_ports " , so you only get "sort of" alphabetical order - but at least all the 'â– A"s, "B'*s, "C"s etc come together. My first thought was to convert all the names to the same case before the comparison.

Type in the following few lines and MERGE them ON TOP of version 0.42 in the usual way. (Lower$() comes from the PROCs library too. ) A small alteration to Shellsort is needed to call Lower$( ) . Note that only the sorting is done using the lower case version of the name; it is not changed in the listing. Don't loose your copy of version 0.42 though, you will find that it slows up the sorting routine enormously. It might be tolerable if you are using mdvs, but could take minutes to deal with the directory of a floppy disk. I doubt whether many people will think it worthwhile !

100 nm$ = "Prt_dir4b"

110 REMark hjc 1991.09.11 Ver 0.42b

1155 LOCal p$,q$

1205 p$=Lower$(a$( j ) )

1 207 q$=Lower$ ( a$ ( k% ) )

1210 IF p$>q$

1300 REMark h.j.c 1989.02.14

1310 DEFine FuNction Lower$(a$) 1320 LOCal i , 1%, c , t$: t$=a$ : 1%=LEN( t$) 1330 FOR i = 1 TO 1% 1340 c=C0DE(t$(i) ) : SELect ON c 1350 = 65 TO 90 : t$( i ) =CHR$( c+32 ) 1360 =160 TO 171: t$( i ) =CHR$ ( c-32 ) 1370 END SELect : END FOR i 1380 RETurn t$: END DEFine

This route is obviously a dead end, it is just too slow. I shall go back to version 0.42 for my next step. I included it here as I am trying to illustrate the actual process of writing a program, sometimes you do have to backtrack! I'll show you how to do it with a new extension in a later article.

Last time I left you with a couple of problems, both involving adaptation of the FuNction Line_count that starts at line 930. As written it returns the number of lines in any file - we used it to count the number of file names in a directory. I suggested that you might alter it so that

4.

it also returned the length of the longest file name i.e. the longest line in the file. Note! I said "also" - you cannot do that since a function can only return one value can you? Well yes you can! Using a little used trick, which is in fact documented in the manual. Look at the following listing:

10 REMark m% is the length of the longest

20 REMark line in the file.

30 PRINT Count(4, "mdvl_Prt_dir3",m%)

40 PRINT "Longest line ="!m%

930 REMark -

940 DEFine FuNction Count ( chX, f$, mx%) 950 LOCal a$ , ct , n% , 1%: n%=0 : mx%=0 960 REMark Count no. of lines in file 97Q_ 0PEN»ch%,f$ 980 REPeat ct

990 IF E0F(#ch%): EXIT ct

1000 INPUT#ch%, a$: l%=LEN(a$)

1005 IF l%>mx%: mxX=l%

1007 n%=n%+l

1010 END REPeat ct

1020 CL0SE#ch%

1030 RETurn n%: END DEFine

Note that the variable m% in line 30 which appears to be a FuNction parameter is undefined on entering the FuNction. It is given a value as its alias mx% within the FuNction at line 1005 - although I had to set mx% to zero earlier (950) or the comparison at 1005 would generate an error message. Any time the loop meets a longer line the value is increased accordingly. After the FuNction has returned its value mX has a value and can be printed in line 40.

The other problem was to convert it return the length of a file in bytes. This is easier:

10 PRINT Byte_Count(4, "File name")

930 REMark r -

940 DEFine FuNction Byte_Count ( ch%, f $ )

950 LOCal a$,ct,n%: n%=0 : mx%=0

960 REMark Count no. of lines in file

970 0PEN#ch%,f$

980 REPeat ct

990 IF E0F(*tch%): EXIT ct

1000 a$=INKEY$(*ch%,-l): n%=n%+l

1010 END REPeat ct

1020 CL0SE»ch%

1030 RETurn n%: END DEFine

As you will see, only line 1000 has to be altered, INKEY$ reads a byte at a time, while INPUT takes in a whole line. If you have Toolkit II then the WSTAT command does this much quicker - by reading the value from the file header!

Something to think about for next time. Write a FuNction that checks if a single character is a digit within a specified range (e.g. 3-6) and returns TRUE (1) if is is and FALSE (0) otherwise.

Howard Clase, © W I KU.Clftse

Box 9947, Station B, St. John's, Nfld,

Canada A1A 4L4. Tel. (709) 753-6415

e-mail hclase@morgan. ucs . mun. ca

SINC-LINK

ONE-SIDED DISKS DO NOT EXIST,

PART TWO, by Gil Parrish

In the Sept/Oct issue of Sine-Link, Hugh Howie wrote that "one-sided" disks (sometimes called "single-sided" or "SS" disks) did not exist. Hugh noted that all disks have magnetic media on both sides (making them "dual-sided" or "DS" ). However, he explained it is possible to have a dual-sided drive format one side of a disk only, although he did not know what value such a disk might be.

None of the foregoing comes as news to those familiar with Commodore equipment. The "standard" Commodore drive, a 1541, is single-sided and will use only one side of a disk. Originally, 1541 owners bought SS disks, which were a bit cheaper than DS disks, since the back would be "wasted" anyway. The story being told at that time was that, even though manufacturers always put magnetic media on both disk sides, they "certified" the disks as SS or DS based on results of tests of both sides: if one side was bad, the disk was certified as SS, and if both were good, it got the DS seal. So it was presumed that the back of those SS disks could not be used, even if the 1541 allowed it, which it did not. However, as time went on, two things became apparent. (1) The backs of SS disks seemed to be, 99 times out of 100, just as good as the front. Manufacturers apparently were not using the SS label for rejects. Perhaps they were testing only the front, or perhaps they knowingly labeled perfectly good DS disks as SS to supply that market of folks who thought they wanted and needed SS disks. (2) It was entirely possible to flip an SS or DS disk over in a 1541, and use the back of it. The 1541 did not depend on the "read hole" to tell it where the disk was, so it did not matter that flipping the disk put the read-hole in a different spot than normal. And although the flipped disk did not have a "write protect notch" in the correct position, it proved easy enough to cut one (indeed, "disk notchers" are sold by various vendors to this day) . For a while, some folks worried about damaging the drive by spinning these flipped disks "backwards" and having dust already collected on a pad within the disk jacket being dislodged and ejected into the mechanism. But this proved not to be a genuine problem.

Is there an advantage to formatting each side separately? Occasionally, an SS disk helps to organize things. All of one side might be one topic, and all the other side might be another. Not that you could not put everything on a DS disk, but at least when the programs are separated out the directory will show only the programs on the topic you want to view — a de-facto partition. It might also be true that your data is less prone to certain types of disasters when separated, e.g. a mistaken command to erase multiple files would not reach the files on the back of the disk that the drive did not "know" were there. But on the other hand, those of us who are less organized might simply end up with twice as many directories to check for a missing program, and some types of errors might become more likely, such as having a user give a double-sided format command because he does not realize critical files that do not appear in the directory for the front of the disk are hidden on the back. So as usual, you "pay your money and you take your chances" either way.

SINC-LINK

15

323 1/2 N. Church Street Bowling Green, OH 43402 October 17, 1991

Dear George,

I received the Sept/Oct Sine-Link a few days ago. Oh, sorry the copy on the article was too light; I have since replaced my printer ribbon.

I noted a few minor errors of various types, and as usual I am informing you about them. The most glaring was at the top of page 10. To print a screen copy, the command should be LPRINT CHR$ 1, not LPRINT USR 1. USR 1 will reset the computer, with or without the LPRINT!

Also of note, in my AERCO printer driver (from the original tape), the POKEs to enable the Centronics printer are POKE 26703,5: POKE 26704,251. Also, somehow a 3 ended up in your printer width POKE address, it should be POKE 64256, width-1. Maybe that number is incorrect, I see you used this address for the LITERAL mode earlier. I'll have to dig out my code and check which is what.

As a side note, most of the AERCO customizing has to do with setting up the control codes for the screen dump. Other than those control codes, there is little to customize from one printer to the next.

Theoretically you might be able to use OUT for the Tasman interface. I don't have one and so can't verify timing, but it would require at least 3 OUT commands for each character sent to the printer. I will have to dig out the LKDOS ROM code for that driver, and give you the BASIC equivalent for someone to try out .

The LKDOS Tasman driver consists of the following:

DB

BF

IN (191)

CB

47

BIT 0,A

28

06

JR Z,+6

DB

FB

IN (251)

CB

47

BIT 0,A

20

C4

JR NZ,-60

;If not ready, jump to test for BREAK

AF

XOR A

;Sets A to 0

D3

FB

OUT (251)

3D

DEC A

;So A now FFhex

D3

7B

OUT (123)

D3

FB

OUT (251)

Fl

POP AF

;get character to send to printer

D3

7B

OUT (123)

3E

F7

LD A, 247

D3

FB

OUT (251)

;signal printer character is ready

3E

FF

LD A, 255 OUT (251)

D3

FB

C9

RET

All of this seems rather complicated, and some of it may not really be necessary every single time. Obviously, we could leave out the test for the BREAK key. Other than that, I would just be guessing (but I would guess the lines from XOR A to just

16

SINC-LINK

before POP AF are set-up, and only really need to be done the first time). If that is correct, we still have 2 INs and 3 OUTs that they expect us to do for every single character.

It is probably easier to just go ahead and use the CHR$ 27. Incidentally, from what I have seen, Tasman interprets a CHR$ 27 to mean the very next code should be sent exactly as it appears. This leads to sticking a CHR$ 27 in front of everything which would normally be converted, but regular characters could be skip'ped in that regard.

I see I probably made a mistake of my own. On page 15, a proper assembler would likely want the two different LD A, 8194 commands to be typed as LD A, (819 4) . I don't use an assembler, so I could easily have left out those parentheses without thinking about it.

Bob neglected to mention (page 24) that in the new Grafix24 code there is a byte in front of the printer control codes which determines how many character are in the control code. If someone were to try and change these codes for his printer, and not change the length byte for that code, they may get some strange results. So at 60B3hex is a 3 for the 3 bytes to set the printer spacing to 8/72, at 60BBhex is a 5, and at 60C3hex is a 2. If anyone writes you with questions about customizing the code, that is most likely the problem they had.

As a sidenote to Hugh, he is correct that there is no such thing as a truly single-sided disk. However, single-sided disks have not been tested on the other side. So if you buy a SSDD diskette expecting to use both sides, you could have a surprise coming. Not likely, but still possible. By the same token, a disk does not have physical tracks on it like the grooves on a record, so it may be possible to buy a DSDD disk and format it in 80 track format. But if you need a high-density diskette and buy double-density thinking it will work, it may not.

Way, way back, when it seemed like everyone owned a Commodore 64, there was a big debate in the magazines over just such an approach to single-sided disks. I am giving you the consensus of those articles. If you have a single-sided drive (and there are some out there), go ahead and buy the cheaper SSDD diskettes. If you have the more common double-sided drives, unless you are going to format the disk as single-sided (say, to send to a friend with a single-sided drive), you are safer buying the "double-sided" disks.

I have been trying to figure out why an NMI might crash Bob's clock routine, but I don't know for sure. I re-wrote the clock (shortening it by 128 bytes in the process) and my knew clock works fine with the NMI. I presume it may be that an interrupt occurs at the wrong time or something of the sort. Oh, both routines may give you trouble with PRINT #4: NEW. The clock must be turned off before you try that. The other comments about Bob's clock apply to mine as well (except the address 65289 to adjust timing). Any command which enables the cartridge or disables interrupts will temporarily stop the clock, of course. Incidentally, the adjustment is on the order of 1 second per minute - if the clock counts 61 seconds in a measured minute instead of 60, change 65289 to 61. If we removed the seconds from the display, we would be able to make

SINC-LINK

finer adjustments, though there isn't much point if you plan to use the cartridge.

I'll send you the revised clock (and send it to Bob, too). That will do it for now - I started this letter 2 weeks ago, but just now wrote the new clock. Hopefully, since I did replace my ribbon, it should be printed dark enough. Write you next month.

S incerely,

ib tk, }\J>*\ vm \m 1007 YowO^Vscw^

100 101 102 103 104 105 106 107 108

REM REM REM REM REM REM REM REM REM

Revised 24-hour clock

RUN 3000 to enable RUN 4000 to disable

to adjust timing, change first 60 in line 1005 to counted seconds per real minute

109 REM

1000 DATA 23,0,253,17,1,253,1, 0,1,54,254,237,17 6,62,253,237

1001 DATA 71,237,94,201,237,86, 62, 63, 237, 71, 201, 126, 43, 14,0, 12

1002 DATA 214,10,48,251,13,198, 10,20 5,227,254,121,213, 2 29,135,

135,135

1003 DATA 33,128,61,133,111,6,8, 126, 18, 20, 35, 16, 250, 225, 209, 27

1004 DATA 201,0,0,0,0,0,245,229, 19 7,213,33,253,254,126,60,119

1005 DATA 254,60,56,53,175,119, 43,126,60,254,60,56,19,175,119,

43

1006 DATA 126,60,254,60,56,10, 175,119, 43,126,60,254,24,56,1,

175

1007 DATA 119,46,252,17,31,64, 205,211,254,62,10,205,227,254,

205,211

1008 DATA 254,62,10,205,227,254, 205, 211, 254, 2 09, 19 3, 2 25, 241, 19 5, 56,0

3000 CLEAR 64767: RESTORE 1000: FOR i=l TO 14 4: READ a: POKE 6 52 07+i,a: NEXT i

3005 INPUT "Position on screen: row? ";r, "column? ";c: LET rl=r- 8*INT (r/8)

3010 POKE 65324, 32*rl+c+7: POKE 65325, 64+r-rl

3015 INPUT "time? (hhmmss) "; LI NE t$: POKE 65277,0: POKE 65274, VAL t$(l TO 2)

3020 POKE 65275, VAL t$(3 TO 4) 3025 POKE 65276, VAL t$(5 TO 6) 3030 RANDOMIZE USR 65208: STOP 4000 RANDOMIZE USR 65228: STOP 9999 RANDOMIZE USR 100: SAVE "cl ock.BD" LINE 3000

sUiU«j Co to y$\ *W vtkx<l K

SINC-LINK

GOLD CARD UPDATE

Here is the latest on my "Saga of the Gold Card", where I have been, where I am going, and the type of service I have received from Miracle Systems.

The service I have received from Miracle Systems is just terrific. They could not have done more for me. Judge for yourselves.

I am not going to tell you about my impressions as I have done that before, just tell you the problems I had and how they were resolved.

I ordered direct from Miracle in England, and five weeks later I had the Gold Card in my hand. Now don't be harsh on the five week span as they say the response was more than they anticipated, hence a slight delay.

My first problem was that when using text87 to print two columns, the columns got a bit mixed up. A letter to Miracle brought a 2.22 ROM to replace the 2.15 which was originally installed. Problem fixed.

Next I found that I was unable to network in any direction with the Gold, but was OK with Cumana + 512 Expanderam. Also, I had ordered a disc adapter card for the Trump Card so that the Trump could run 3 disc drives. It did not work! This card came at the same time as the Gold so I decided to combine the two problems in one letter.

14 days later I got a small package from Miracle enclosing (without charge) a 1.28 ROM to replace the 1.21 I was using in my Trump. That was that problem solved.

Along with the 1.28 ROM was a letter from which I am going to quote :- "Thank you for bringing the Networking problem to our attention. Tony Tebby has been notified and I will send you a replacement ROM when a fix has been found"

Hows that for Service?

Thank you M. Tomlinson for your help and kindness. §

Update to »>

the UPDATE

After I wrote the "GOLD CARD UPDATE" I decided I would like to change ly two QL's over so that the QL I had been using would be 12, and the spare would be it. I would of course, leave all the peripherals as they were, only the QL's would be changed.

This I proceded to do, and after a while I thought [ would once again try to get through on the Network, and by golly the darned thing worked! I could operate in each direction fro« each position, I had no problea!

Next step was to go back to the original setup and retry froa there, but this was a no-go so back to the new configuration and I could use the Network.

Now it aust be reaeabered that the ONLY thing to be aoved were the two QL's. Nothing else was ■oved. So soaewhere so«ehow there is a bug of ■aaaoth proportions in ay setup, a setup which handled the Net froa Cuaana/Expanderaa/TK2 but would not work with the Gold — in ONE setup — but is OK in the other setup! Please reaeaber ONLY the QL's are switched.

Soaeone suggested that the QL power supply light be faulty but I tried a spare power supply I had lying around, and in various conbinations, this was no better. So if anyone can suggest anything would you please drop me a line?

Of course this Beans that I will now have to write to Mr Toalinson at Miracle and tell hia the bug is aine and not that of the GOLD CARD.

Oh dear! Oh dear! Oh dear! How do I get involved in things like this?

At one tiie I was having a problea with Minerva, but I changed Minerva over also, and now Minerva is behaving, except for the Keyboard Reset which I can live without.

Not that all this would appear to be getting sorted I aust say that the Gold Card is all, and â– ore, than what Miracle says. It is faster than the claias Bade by Miracle. And the extra desk space available is wonderful. Nothing hangs out!

I aa extreaely happy with ay purchase. But would soaeone please write with an explanation?

Hugh H. Howie

586 Oneida Dr. Burlington. Ont L7T 3V3

SINC-LINK

19

D I S C fl N: fl Larken Utility for the TS2068 by Bob Mitchell To scan an entire disk looking for any string up to 256 characters or tokens. Best Compiled using Tinacnine.

This will probably have limited use but once in a while a need may arise to do a complete scan of a disk. This happened to me recently when I was trying to determine just which BASIC programs used certain code files appearing on a disk. Two examples of this: cat.CR did not ring a bell with me; also I wanted to check which files called up HCode.Cl, one of the Larken code files. Both are on the Omnibus disk.

It seemed too tedious to load every BASIC file on the disk, a quad with a few dozen of them. Besides, why not let the computer do the work. I set to work writing the routine which I call <discan.Bp>; the listing is on the next page.

Let me explain some of the lines:

56-98 Command lines for Timachine use.

110 Initializes b* to the same length as sS . DIM bSKLEN

s$) cannot be compiled as it changes length each time it is used. So this line gets around that. s$=search string; b$=string PEfcKed from the buffer. 120-140 This subroutine gives a choice of doing another

search or ending the session. 142 The first entry point for the compiled program.

150 Loads machine code to transfer each disk track

into the buffer area (starting at 56000>. This code will reside at 44000 and contain DATA line values. 160 Prompt for input string. Part is in IHU UIDE0 .

170 < t >= the variable for track number. This line sets

this at zero and pokes this value into 43900 which will be used by the code at 44000. 190 To a subroutine at 430 which will get the track

number of the last track used on the disk being searched, (routine courtesy of Richard Hurd>. The variable x will signify the last track. 230 When the last track has been searched, the program

toes to 1 ine 120

increased by

320 continues. Each time a track is loaded into the

240- frack number is increased by one and search

buffer, the first 24 bytes are evaluated to get the end of DATA on that track; also, only tracks with the extension .B in the file name will be searched. 340- The search starts at 50024 and continues to <end>;

410 this is the part that requires the program to be

compiled, even though using <enc> contributes to a speedier search. For those without the compiler, the program will run albeit very slowly. Also, each time the routine STOPs, it is waiting tor a <drv> number. Line 380 prints the file names and track numbers when b$=s$. I did not bother allowing for a TS2040 C0PV sequence or a wide printer one, either It should be easy to add, i f the mood moves you.

To make the program run properly, a 1 oader— manager

is required and its listing is given immediately below.

lOO REM discan loader 110 POKE 23658.0 120 RANDOMIZE USR 100: CLOSE #3

130 RANDOMIZE USR 100: LOAD d i scan . Cc CODE 60000

140 PAPER 7: INK 9: BORDER 7: CLS : PRINT PAPER 6; "DISCAN: used to_ scan disk tracks for the presence of input strings (characters, TOKENs, &c>"

150 PRINT '"However, this routine does not distinguish between TOKENs and other uses for their codes. """For example, it will find not only PRINT but any occurrence of its code <24S> that nay be used within a program. "Thus, the search string with a TOKEN should be accompanied by other characters, eg, PRINT #4."

155 PRINT '"The search string will also turn up if it exists in the variables area."

160 PRINT HO : "CENTER!" : PAUSE 0

180 CLS : INPUT "drv? " ; drv : RANDOMIZE USR 100 : GO TO drv 190 CLS : RANDOMIZE USR 60000 195 GO TO 220

200 CLS : INPUT "drv? " ; drv : RANDOMIZE USR 100 : GO TO drv 210 RANDOMIZE USR 60269

220 INPUT l=more 0=quit":mq: IF NOT mq THEN RANDOMIZE USR 100: GO TO 4: RANDOMIZE USR 100: NEW

230 GO TO 200 9899 STOP

9990 RANDOMIZE USR 100: SAME discan. Bb LINE 100

>C>::x>:;x;x;:<>c>:>^

Warning! If your compilation does not produce 60269 as the second point of entry and you are certain that you have not introduced errors info the listing, then change line 210 to suit your Timachine printout .

SINC-LINK

50 REM ! LIST 68 REM ! LPRIMT

70 REM ! INT +o , end , poke , t , i , s i d , nt , b 1 x , x , n , aq

86 REM !USR 68800

90 REM ! OPEN 41 188 PAPER 0: INK 9: BORDER 8: CLS : POKE 23658,0: GO TO 150 11© LET b*="": FOR i=l TO LEH s*: LET b*=b*+" " : NEXT i : RETURN 120 IF t=x-l THEN INPUT " END OF SERRCH ( 19 spaces J l=another 0=quit ' ;aq: IF NOT a«i THEN STOP 130 IF t=x-l AND aq THEN CLS 140 STOP

142 REM ! OPEN # 144 GO TO 155

150 GO SUB 530: GO SUB 148

155 CLS : INPUT ;: PRINT #1; "insert disk"' ' C ENTER 3 " : PRUSE O 157 IF CODE INKEVS013 THEN GO TO 157

160 INPUT ^*;l;IH:M*^i/«aU;«MI;M;[rj (10 sp.) string? ; LINE s* 17© LET t=0: POKE 43968, t 18© GO SUB 110 190 GO SUB 430

22© PRINT INUERSE l;s$; INUERSE O; found on: 230 IF t=x-l THEN GO TO 120 240 LET t=t+l: POKE 43900,t

250 RRNDOMIZE USR 44000: RANDOMIZE USR 44006 260 INPUT ;

265 LET end=50O24+<PEEK 50014+256*PEEK 50015>

27© DIM n*(9>: FOR n=500O2 TO 50016

288 LET n$<n-58881>=CHR$ PEEK n

298 NEXT n

388 FOR n=l TO 8

318 IF n*<n>=. • AND n$(n+l)="B" THEN GO TO 348 328 NEXT n

338 GO SUB 118: GO TO 230

340 INPUT ;: PRINT #8; Searching ;n*; Track ;t 350 FOR n=50024 TO end

360 IF CHRS PEEK n=s$(l) THEN FOR i=l TO LEN sS: LET b$<i)=CHR$ PEEK <i+n-l>: NEXT i 370 IF bSOsS THEN GO TO 390

380 IF b$=s$ THEN PRINT n*; " track ; PEEK 58001: GO TO 488 398 NEXT n 488 GO SUB 118 418 GO TO 238 428 STOP

438 RANDOMIZE USR 44000: RANDOMIZE USR 44006

440 LET s i d=PEEK 50020 : LET nt=PEEK 50021: LET blx = sid*nt: LET x=l : IF sid=l THEN LET x=2 450 FOR i=<50024+C2*nt-x>> TO 50024 STEP -x 460 IF PEEK i=245 THEN 80 TO 48© 470 NEXT i 480 LET x=i-50023

490 LET nt=x: IF sid=l AND X/20INT (x/2) THEN LET x=x + l 500 LET nt=x

510 IF sid=l THEN LET nt=x^2 520 RETURN

530 RESTORE 550: FOR o=44000 TO 44119: READ poke: POKE o,poke: NEXT o 540 RETURN

550 DATA INT 195,249,171,195,7,172,195,27 560 DATA INT 172,195,56,172,195,75,172,243 570 DATA INT 205,98,8,201,58,108,0,251 580 DATA INT 201,205,239,171,58,124,171,50 590 DATA INT 29,32,205,126,0,24,237,205 60© DATA INT 239,171,58,124,171,50,29,32 610 DATA INT 285,129,0,58,29,32,50,124 62© DATA INT 171,24,217,205,239,171,175,50 630 DATA INT 32,32,205,123,0,58,32,32 640 DATA INT 79,6,0,33,112,32,17,88 650 DATA INT 195,1,0,20,237,176,24,188 660 DATA INT 205,239,171,33,80,195,17,112 670 DATA INT 32,1,0,20,237,176,205,120 688 DATA INT 8,24,169,285,239,171,42,144 698 DATA INT 171,78,35,78,24,158,8,8

9988 REM ! CLOSE it

9989 STOP

2222 £tEftR : RANDOMIZE USR 188: SflUE discan.Bp LINE 9995 9992 STOP 9995 GO TO 18

SINC-LINK

THE MONTREAL RENEGADE

Why was the translation of QUICK AND DIRTY SHELL delayed? Well, in the first place I couldn't get it translated by my contact in TO. He wasn't into Timex Sinclair computers. Then, following an article I wrote on Indexing Family History Records - SINC-LINK Jul-Aug 1990 - one of our American readers asked George Chambers for help in tracking down her Canadian Ancestors. George told her if he had time he'd take a look and sent a copy of both letters to me. After much searching I located the ancestors.

Then somebody offered me second lead in CHRIST'S METEORITE, a short dramatic film that was going to be filmed in Montreal and Quebec. I accepted the part and edited the film as well. This kept me involved for a long time. If either First Choice/Superchanne 1 or CBC take the film you may yet have a chance to view my thespian activities at your leisure.

Finally in response to the note of castigation in last month's SYNC-LINK. I decided to have a crack at translating the bone of contention myself. Fortunately I have a good German Technical and Scientific Dictionary. Hard Work did the rest. You will find it elsewhere in this bi-monthly issue. It may not be perfect but at least it should clear up a few misunderstandings about running the program and what the program is supposed to do. There are some notes which should be read in case my left eye twitched as I pored over the German text .

AND, wait for it. I did complete our Texas member's pedigree. It ran to 37 pages, including Index, and is entitled THE LOYALIST ANCESTORS OF JOAN KEALY. Joan Kealy was in for a rash of surprises. They were as follows.

1. Her Loyalist Ancestors were MICHAEL VAN KOUGHNET and PHILIP EMPEY.

2. Her 2nd Great Grandfather was SALTER JEHOSOPHAT VAN KOUGHNET, M. A . . D.C.L. . Q.C.

Salter J. Van Koughnet was called to the bar in 1859. became Reporter of the Court of Queen's Bench and was well known at Osgoode Hal 1 .

3. Her 2nd Great Grand Uncle was THE MOST REVEREND ROBERT MACHRAY, D.D., Cantab., D.C.L. , LL . D . , Prelate of the Most Distinguished Order of St. Michael and St. George., Primate of All Canada and Lord Archbishop of RUPERT'S LAND.

SINC-LINK

4. Her Great Grand Uncle was HUGH JOHN MACDONALD, the son of the Right Hon. SIR. JOHN ALEXANDER MACDONALD, G.C.B., D.C.L., LL.D. Q.C., Knight of the Grand Cross of Isabella the Catholic.

Sir John A. MacDonald, Prime Minister of Canada 1855-1867 & 1878-1891, was the father of Confederation and the most eminent statesman in Canadian History.

It may seem extraordinary that Joan Kealy's link to this great Canadian should be revealed during his Centennial Year. It is even more fortuitous that it should happen at a time when Canada's nationhood is in jeopardy. Perhaps it is an omen of hope for the future. Everything Sir John A. MacDonald, as Leader of the Government of Western Canada, fought so hard to secure for the Dominion in 1867, may yet be preserved for the benefit of generations still to come. It's good to be able to report this in SINC-LINK the magazine of the TORONTO TIMEX-SINCLAIR USERS CLUB.

The translation is not yet at an end. There are still several other pages of bytes, bits and pieces I have to look at. This will take time. The writer has used some unfamiliar abbreviations that have to be worked out. I'll get round to it it one of these days and send the results to the Editor. Meanwhile, have fun with the first instalment and, above all, be patient.

Philip Hudsmith, Montreal, Qc . Sept. 12, 1991.

SINC-LINK

O L I F S

By Hugh H Howie

Came across a situation which many before have probably experienced, where in saving a file somehow an illicit or incorrect character has managed to get into the middle of the title, (leaving a square hash-mark where the character was inserted) with the result that it is impossible to load that file back as you cannot duplicate the error typed in.

When this happened to me last night I recollected writing about how to remove a prefix from a string of titles, and do it quickly, by using the COPY command from TK2. So I tried it.

I w_copied the unloadable file to a disc where that was the only file on that disc. This was to ensure that anything going wrong would not corrupt the whole disc.

When I had the offending file on this disc, it looked like this:- JACKSON§_T87. (where *§* is the illicit character) I placed this disc in flpl_ and typed in this command :-

WCOPY _T87, JACKSON _T87

And the file now had the title JACKSONJT87 and I was able to load it.

Another way to do this is with the "DIR_EDIT_BAS" program from the QL library. This program can be quicker, or slower, than the TK2 command, it all depends on the amount and types of changes to the titles which are required. Both methods have their place in your system.

If it is a matter of removing the same character or string from a number of programs at the same time, the TK2 method is best. But if a variety of changes are required the DIR_EDIT_ BAS method is better.

It would be a good idea if you were to try both methods before you really have to. Try them both to-day, at your leisure and not wait till you are in trouble. You will then know how to handle the situation when it occurs. §

ERROR CORRECTION - OMNIBUS Disk L-02

by George Chambers

There are two errors in the latest version of the OMNIBUS disk (v3.02g), a copy of which has been sent to several romoars.

The errors are contained in the OMNIBUS AUTOSTART program, and it's back-up copy OMNIBUS. B1 . The Lines which need to be revised are 1220 and 1810. The corrected I ines are I isted be I ow.

In add it ion, Lines 1050 and 1060 can be deleted. They appear to be lines left over from an earlier version, and have no present purpose.

When the program is loaded, BREAK out of it' and do a PEEK 2U-520. If the value is not 3, then POKE 2^520,3

Then select Main Menu option X and resave the Master and Data drive intormat ion. This will set the correct value in address 2^518 (See the revision in Line 131Q, be I ow ).

These modifications can readily be done on your personalized copy of the disk. After the above mods nave been completed, you should make an AUTOSTART SAVE, arc then a Back-up Omnibus SAVE, i.e. options Z and V on the Main Menu.

1220 PRINT #od: GO TO PEEK dO: P RINT #U: POKE 821 U, 16350: RANDOM IZE USR 21H+95: REM autoboot 1810 LET h=mdrv: LET h=h+oa: LET

h=2 h: IF h=32 THEN LET h=128 181 5" POKE 24518, h 1820 GO TO ml

24

SINC-LINK

CODE TRANSFER - ZX81

If you are exper i ment i ng with mach i ne-code programm ing on the ZX-81 the moment will arrive when you want to incorporate a mach i ne-code routine, which you have in one program, into another program. This can present a problem, since machine codes are often long and laborious to enter. The following process, however, enables machine-code to be transferred from one program to another with a minimum of effort, and error-free.

First, RAM TOP must be set at some convenient level. / generally set it at 32000 for this kind of work, which gives 768 bytes to play with, while leaving over 1 5K for Basic listing, display file, and variables.

The following routine enables RAMtop to be set easily at any desired level:

10 INPUT X

20 LET Y = lNT(X/256) 30 LET X = X-256 * Y 40 POKE J 6388, X 50 POKE J 6389, Y 60 NEW

Run the program, enter the number to set RAMtop, and press NEWL1NE (ENTER). The program promptly disappears - Line 60. If you want to check that you have set RAMtop correctly, the following command will print the number you entered:

PRINT PEEK 16388 * 256 * PEEK 16389

Now load the program containing the machine code routine which you want to '/o/ate and transfer. I assume here that the machine code routine is stored in a Rem statement in Line 1, but the program can be easily adapted by adjusting the initial value of J in line 9030. This should be the address just prior to the address at which the machine-code routine commences.

Add the following lines to your listing. I have chosen to number them from from 9000 but that is net ^porfont - simply slot them where you

Run 9000. When that has finished a few seconds later, load the program to which you wish to transfer the machine code routine. Again, I assume that you want to Poke the routine into a Rem statement in Line 1, but this can be changed by altering the in it ial iz ing value of J at Line 9010 to the address prior to that at which you want the machine code routine to start.

First you must reserve some space in the normal way:

1 REM XXXXXXXXXXXXXXXXXXXXXXX

Note that using this routine, it is not critical that you enter the correct number of X's at the first attempt. If you are short, the program will stop and tell you, so you can add some more. If you enter too many, It is a simple matter to edit them out afterwards.

9000 FAST

9010 LET J = 16513

9020 LET R = PEEK 16388 + 256 *

PEEK 16389 9030 LET X$-"n 9040 LET R = R + 9050 IF PEEK R = 9060 IF PEEK R = 9070 LET X$ = X$ 9080 GOTO 9040 9090 LET J = J + 1 9095 LET X = VAL X$ 9100 IF PEEK J ^ 118 9110 POKE J, X 9120 GOTO 9030

9130 PRINT "INSUFFICIENT SPACE -

EXTEND LINE 1 THEN GOTO 9/00" 9140 STOP

I

128 THEN GOTO 9090 0 THEN STOP * CHR$ PEEK A

THEN GOTO 9080

9000 FAST

90/0 LET RAMTOP = PEEK 16388 * 256

* PEEK 16389 9020 LET X$ - "" 9030 LET J = 16513 9040 LET J = J + 1

9050 IF PEEK J = 118 THEN GOTO 9080 9060 LET X$ = X$ + STR$ PEEK J +

"( inverse space)" 9070 GOTO 9040 9080 FOR J + 1 TO LEN X$ 9090 POKE RAMTOP + J, CODE X$(j) 9/00 NEXT J 9110 STOP

SINC-LINK

RUN 9000, OR GOTO 9000 if you have any data to preserve. When it is done, List; there is your machine-code routines safely lodged in Line I. If you want to tidy the program, Edit any surplus Xfs from the line.

You may be tempted to simplify this program by simply copying the REM statement data as it stands into a literal string and Poking that over RAMtop. However, be warned; that does not always work. Characters that are printed as a ? in the Rem statement are reduced to code 15. Thus although the Line may look identical to the original, it will not, in fact, work as machine code.

This article is authored by Nick Godw in, Eyemouth Berksh ire.

From Your Computer magazine June 1982: Retyped by G.F.C.

25

Jhis a dEHD qF a Font called itH.CF a n i c h I haue â–  deueloped Fnr use with Piiiel Print ProFessionai and Hhich can tie used Far other applications. This coluHn is being coHposEd using PPP,

The heading aboue and this paragraph ars being typed with a hern ualue oF -3- Let's explain.

flow ue are using a Kern oF -4 which puts the letters uery close together, but still readable. Kerning adjusts the spacing between characters: Hinus to decrease it, plus to increase. I deueloped this Font using Hg Font Editor/Rotator File redeF.Bl. This was necessary since the original tasuide code Placed the characters in the right-hand halF oF the standard 3 M S pixel square. Thus kerning Has not possible. The new Font uses only the left halF oF the square and allows kerning up to the closest -4 setting (that is, with nonial-sized characters. J The starting hern ualue is zero <D>.

Let* s try sane other sizes and hern ualues.

mil h soke dDuiilE height text.

n □ h he haue to use — S kerning uith doublB Hidtn cnaractErs.

This is -3 Htiicti is tfiE Unit-

Some double fiEignt, double uidtti.

Triple Hidtn. n o m using — dLS l-^je r~ m arid 5DHE wi"tli — dL == —

That's about all For noH, but it should be enough to interest you in eaperiHenting with the kerning Feature oF the FOflT Henu in Pixel Print ProFessionai. Bob Mitchell. 91D72D.

26

SINC-LINK

BYTE POWER

Super Special!!! All BYTE POWER titles at 50% off...

•Now-

12 BYTE POWER Magazines (Back issues) $27.50

6 BYTE POWER Magazines (Back issues) $16.00

1 BYTE POWER Magazine (Back issue) $3.00

1st Class Pack (6 back issues in vinyl album) $20.00

Mega Pack (12 back issues in 2 vinyl albums) $31.50

Issues Available...

August '86, September '86, October '86, November '86, December-January '87, February '87, Spring "87, Fall '87, February '88, May '88, Fail '88, Winter '89

BYTE POWER 1st Class Fonts II $10.00

2+FAST (Fast Load forTS2068) $10.00

The Print Factory $12.50

The Companion Volume 1 $12.50

Best of Business and Utilities $10.00

Best of Arcade Games $10.00

Best of Entertainment, Strategy & Board Games $10.00

For those with remaining issues ot BYTE POWER Magazine, you may use them as credit towards the purchase of any of the above packages...

Please add $3.00 for Shipping & Handling. U.S. Funds only...

BYTE POWER 1748 Meadowview Avenue Pickering, Ontario, Canada L1V3G8

SINC-LINK 27

QL "QUICKY" DIR

by Hugh Howie

There are so many ways of getting a directory of a disc, and there are soae that are not so good. Soae take a lot of typing before they coae through to the printer. For example how many of us have used this aethod: -

Open #3,seri:dir #3,f lpl_:close #3

A lot of typing which is not really required.

If you have TK2 or Trump Card here is a QUICKY way

to get a DIR of the default (flpl) drive.

I aust admit it is like the LONG method mentioned above, as it only gives the directory in one long list down the page, but if you can live with that —

Say your printer is attached to serl, and you want a directory of flpl_, here it is.

dir \serl

To speed things up if you are doing a nuaber of DIR's, don't forget the ALT ENTER coabination to recall last line typed.

'BYE

Berry's World

"It looks as though you've got a FLOPPY DISC."

Put some punch in your PRINT FACTORY© graphics!!

Collection* 1 Collection#2 Collection#3

Miscellaneous Animals

Mm/Boys Funny Woman/Girls Transportati Digitixed Misc. Sports

Computers Holidays Food Xmas

Digftixad Misc. Female Faces Male Faces

Funny Animals Zodiac Signs Holidays Transportation Xmas

I^S^e^TTT^Uffereri^arge & small | graphics' irt maoh oottmotiot%[__\

$12,93 ppd each, $19.95 ppd for two, or all three collections for $26.95 ppd. [Check or mortmy order* only. J Available on tape or 5 1/4 " DSDD LARKEN or OLIGER disk - please specify.

ED

28

Send order to i

John McMichael, 1710 Palmer Dr, Laramie, WY 82070

THE FAR SIDE

By GARY LARSON

Special commuter lanes

SINC-LINK

A TAPE I DISK SAVE SUBROUTINE The following routine is useful in , at it provides an option for both tape and disk SAVEs. In the case of a disk SAVE it provides for drive selection. Can be used with any Basic program.

9000>CLEAR : LET od=4:POKE 23658,0: PR IN T AT 13,9; "SAVE ROUTINE'" "' Press ""D" " key to save to disk,'"' " or ""T" " key to save to tape" :PAUSE 0: IF INKE Y$="d " THEN INPUT "Drive #? " ;dr:PR INT #od:GO TO dr

9010 IF INKEY$="t " THEN LET od=2 9020 PRINT Hod: SAVE "doctor. B1 " LINE 50: RUN

DISK CATALOG SUBROUTINE

The following subroutine may be incorporated into any program where it is desired to catalog a disk. The essential components of the subrout ine are in lines 20, 30, 1000 and 1010. Line 1000 is used to select a drive, •'hile line 1010 does the actual

ital og. Line 1010 also provides a se I ect ive catalog option.

Note the use of an ON ERROR routine in line 50. This is useful if a catalog requires more than one screen to display. It allows one to quit to the program by entering "n" when the scroll? prompt comes up. It is also effective in line 1000 where entering a "9" will produce an error report, thus causing an exit from the subrout ine.

The POKE in I ine 20 ensures that the input is in lower case.

1 CLS

10 PRINT AT 10,1 ;"A Disk Catalogue Su brout ine"

20 POKE 23658,0: INPUT "Catal ogue a D isk? ";c$: IF c$="n" THEN GO TO 50

30 GO SUB 1000: GO SUB 1010

i+O PRINT '"'PRESS A KEY TO CONTINUE": PAUSE 0: CLS : GO TO 1

50 ON ERR RESET : CLS : PRINT AT 10, ?: "Cont inue with program": STOP

00 ON ERR GO TO 1: INPUT "Drive #f 0/ «..9=quit) ";drv: RANDOMIZE USR 100: GO

TO drv: RETURN 1010 INPUT "Str$ ";c$: CLS : RANDOMIZE USR 100: CAT c$, : RETURN

COMPUTER OUTPUT SELECTION ROUTINE This subroutine permits the selection of computer outputs. Depending on the option chosen one can print to either the screen, the 2040 printer, or to a large printer.

The key is in the use of the variable "ch" to point to the type of output required. Making the "ch" variable 2 points to the screen, while 3 points to the 20U0 printer, and 5 points to the large printer. The large printer is accessed by opening channel 5 in LINE 60.

50 POKE 23658,0: PRINT AT 10,0; "S )cre en or P)r inter": INPUT c$: IF c$="s" TH EN LET ch=2: GO TO 70

60 LET ch=3: PRINT AT 10,0; "L Jarge or S)mall printer": INPUT c$: IF c$=" I " T HEN LET ch=5: RANDOMIZE USR 100: OPEN #5, "I p"

70 PRINT Itch; "Test Routine": STOP

"header. B1 " on OMNIBUS DISK - ERROR The program " header. B1" on the OMNIBUS disk requires an add it iona I line in order to work properly, when loaded from the OMNIBUS menu.

The program " header . B1 " is designed to output to screen, 20U0 printer or a large printer. It does this by opening Channel 5 to the large printer. The disk management system OMNIBUS opens a Channel 3 to the printer, so that when "header. B1" is loaded via the OMNIBUS menu, the large printer is already assigned to Channel 3. This prevents opening Channel 5 to the large printer.

One solution is to first close the channel 3 to the large printer, by installing a new LINE 52, as follows:

52 PRINT #4; CLOSE #3: REM Needed

when used with OMNIBUS

*************************

SINC-LINK

29

SfattUr Hke to htfsSfi oil tttemtenS anil tfjeir fwM iter? Qrifttni

0

Sappp art Wper^ fi eto gear.

SINC-LINK

Sept/Oct 1991

September 25, 1991

Dear Out-of-town Members,

This issue has an article about printer driver softwares. This is the first of several articles which I hope will help those of you who have a printer and are puzzled, and also those who are thinking of buying a printer. Comments on this series are welcome; we shall include them in later articles.

In following issues I shall cover specific softwares; the first being the Tasman drivers.

Relative to this subject the club still has three printer interface boards left over from the purchase we made of Peter Hacksel's remains. I shouldn't say "remains". What it really amounts to is three bare printed circuit boards. Two of them are designed to plug into the cartridge dock on the computer, while the third board is designed to fit on the rear of the computer. They are $10 each plus postage, and come with instruct ions and software. You need to supply the sockets, chips, and edge connectors. If you have difficulty with getting connectors, I can find something suitable at the local surplus e I ectron ics outlet.

m Also, with the next newsletter I am going to try to keep a pace going, aimed specifically at the Larken disk system. The next issue will have some short programming subrout ines. We'll see what follows.

The Hacker newsletter, from the TS User Group of Las Vegas, this month has a diatribe about another newsletter editor who had the temerity to suggest that newsletters that carried little or no information about our computers should be drocn&ri from n rii>h

Hacker" has carried little or no Timex info for months now. Seems to me there's enough magazines on the news-stands to service all the "other" computers. That a T imex/S inc I a ir newsletter that carries no info about that computer is a bit of a contradiction. Might as well exchange our newsletter with a club devoted to cat- fane i ers, or maybe hockey card enthus lasts. I note that only one member of that club actually has and uses a 2068. Maybe that explains everything'. I

Our club has received the third issue of the "FDD Newsletter". This is a newsletter devoted to the Portuguese Timex Disk System. It has 4 paces of interesting editorial material, plus another 4 pages of a program " listing on "Random Access and Sequential Data File" by George Gilder from a LIST newsletter. This listing is for use with systems that have the CP/M mode.

The Editor of this news I etter is:

Jay S. Siege!

1274 49th Street, #821

Brooklyn, New York

1 1219-301 1

Jay's telephone number is (718) 853-1759 evenings

(no Fri. Night - Sat. night calls)

There's no indication of what the newsletter will cost. While it looks like a labour of love, obviously he cannot publish it without some sort of funding. Drop him a line (I suggest a SASE), or phone him to inquire further.

Roc Gowan ( RMG Enterpr ises ) mentions in the Sept '91 issue of the "PLOTTER" newsletter that he received an updated copy of the Larken

ut if /ties and our current OMNIBUS disk from me, I felt he might as well offer these two programs to the Timex Larken users at large, as "freeware". Well, he will have to charge a bit for making up the disks, of course.

Rod mentions that he is going to be market ing a new piece of software from VECTORWARE. A "s I ideshow" picture viewer for the 2068 and LKDOS systems. I wonder if it is similar to the disk #75 in our library, which displays Spectrum game screens, but could be used to display most any image.

The "PLOTTER also contains a listing for a Chinese, fortune Cal endar. I'll not be entering it, but if anyone is interested I could send you a copy of the listing.

Jeff Taylor mentions that the news I etter did not come out quite to his satisfaction. Seems that the printer shifted the copy slightly to the side. So that when punching holes for a three-r ing binder, no copy would be lost. But this caused us to lose the even-numbered page numbers. I think they may have been too close to the edge. But theres's more to it than that. The second cover sheet should have gone onto the backside of the first coversheet. Because it didn't the copy is all shifted over by one page, and as a result the p I acement of some of the articles are not to Jeff's liking. Personally it looks pretty good. I suppose it is like a person who builds his own home; everyone sees it as a marvel, while the builder sees only the defects.'!

For you QL owners, Howard Clase has another article on the QL. It did not come on time for this issue but you can look forward to it.

1 have put a few items in the news I etter , for those of you i ntersted in the TS1000. I have not tried them out, simply lifted them from older magaz ines, I think I took them from some early Your Computer magaz ines. One time when I was on a visit to England I saw an advert for a set of Your Computer magaz ines. The offer was near where I was staying and I arranged to buy all the early issues I did not have. Came home with a great load of baggage.'!

Anyone that is waiting for a tape or disk, maybe you better drop me a line. I am just abit behind on some of my correspondence, and need my arm jogged a bit. I seem to have got involved in my Ne i ghbourhood Watch program a little too much for the good of the club!!

Short of news so I shall close off now. Sincerely,

George Chambers

Nov/Dec 1991

November 19th, 1991

Dear Out-of-Town Members,

Another fall season, and many of you should be getting back to your computers. Well, I never really got away from mine. I have been using it in many ways for my Neighbourhood Watch activities. Letter-writing of course. Then there* s the preparation of a bi-.monthly bulletin*

I have to confess that I do not use any Desk-Top Publishing program for it. Simply too much trouble ! ! Give me the good old cut and paste method. And sno?~pake ! ! I can see where I'm at, at all times with this approach. Then I maintain a record of my 38 block captains.

The police here also have a computerised dialing system at the police station. When the police have a message they would like to get out to the community quickly, they record it, put it into the computer, and it then calls every household listed in the system and gives this recorded message. People like it very much. Recently we have had a couple of reports of child enticement near the local school, and the dialer was used to warn people to be on the look-out.

The police won't put a name into the dialer without consent, so we, N.W., canvas our community to have names, phone numbers placed in the dialer. I maintain a record of all addresses in my community, that are on the dialer. So we can follow up on any updates that may be necessary, i.e. people moving.

I have been watching out for a cheap Commodore "mouse". Recently a store had them on sale for $10. They usually cost about $65 or so. So you can bet your life I snapped one up.

It works well. A fun thing. It works well with the Spectrum graphics programs, also with Spectrum games. Now, it works in the Kempston Joystick port that is on the Larken Disk system. It will work on any Kempston joystick port, such as is common with Spectrum games.

It does not work on the 2068 joystick ports. I should say, that I have not got it to perform when in the 2068 joystick ports. I think that is because the programs which have been written for the 2068 which use the joystick ports, respond to the STICK command, which is maybe not the same thing. I shall explore further. At the moment it seems that the plug on the end of the mouse is too bulky to go into the 2068 port far enough to make a connection. I did use an adapter cord, but there was still no response.

The instruction manual is a bit sketchy. It does have some m/c examples of joystick control, but these are for the chip used in the Commodore, not the Z-80 used in the Sinclair computers.

Well, let's review some of the newsletters . that we have received over the past several months, ********«*«•««

The PLOTTER, from the Clackamas County... (oops!), the Clackamas Computer Applied Training Society. I said oops! because there has been a name change. This club has been willing to acknowledge that they are not an exclusively Timex club anymore. They also cover the PC scene. 4.wWfU this is understandable. One of

;VefSrmfins V.membeTs is Rod Gowan, owner of RMG Enterprises, (arguably THE Timex dealer of North America). Rod has had to get into other computer lines as well, to maintain his business, so the make-up of the Plotter tends to reflect this. Rod writes a PC Plotter page (usually several pages), however the newsletter is definitely Timex oriented.

The Plotter is a 10-page (sometimes b-page) newsletter which is a must-read. They have topical news about the Timex scene, including coverage of the Larken system. This club is considering assembling and publishing a compendium of the 'best of The Plotter'.

In the Nov'91 issue Rod Gowan gives a 3 1/2 page restrospective of the club's ten year history, which is interesting reading. &

Each issue of the Plotter has a 'Bits & Bytes column, which is always

listingting* There iS often a Prograa ***************

TUT? r>Am* t>TTc? ~ ... * „ .. _

----- — --- .w««4,c?(,ei 01 *ne way Ton

Ohio Microcomputer Association. We have received several issues of this newsletter, probably related to the ComputerFest that was put on this past summer. This club is an umbrella group for computer enthusiasts in that part of the world. They have Special interest groups for several types of computers. Timex is one of their SIG's. The newsletter has a Timex column. Pretty sparce on Timex info, mostly mention of forthcoming meetings and things of local interest. * ***************

FDD NEWSLETTER A new-on-the -scene newsletter put out by, well, it's not always clear, but I think it is Jay S. Siegal. Not a club newsletter, Jay is putting it out as a service to owners of the Zebra FDD 2068 disk-based system Functionally similar to the Timex TOS system,

A very worthy effort, and one that FDD owners would do well to support. Jay has not mentioned a subscription price, he should have made some suggestion. He is out of pocket in doing this, so if you FDD owners are interested in maintaining a resource, I suggest you write him supportively, i. e, include some monev! !

The current issue (Vol.1, No. 4) contains considerable gossip from the FDD and CP/M world. Maybe what would be of considerable interest to Larken system owners is inclusion of the specs (20 pages!) for the

^i^0/72.disk controller chip used in ihe LKD0S system. Ask me for a codv ************* yj*

THE SINCLAIR DESKTOP PUBLISHING JOURNAL, by Mike Felerski. We have the Vol. 2 Issue 3 Summer 1991 issue at hand. It consists

of 4 pages*

This newsletter is a must if you are into DTP on the TS2068 in any way Lots of interesting stuff*

Among it's contents it mentions that Bob Swoger is offering a Spectrum Emulator kit for the Larken LKDOS system for approximately $12US. Needed if you want to use the WordMaster DTP program that is offered by Jack Dohany* Well, the Spectrum Emulator is also a must if you want to run all those marvellous Spectrum games and programs I have!

There is also a review of 'The Companion' , by BytePower, and of a recent graphic manipulator program, 'PIX-.FX •

Again, no mention of a suscription

price* But I'll send you a copy if you

want to take a look at it* ***************

CATS NEWSLETTER, put out by the Capitol Area T/S Users Group A 8 or 10 page newsletter, it comes out every month, regularly as clockwork. Lots of gossip (I mean in the nicest sense) about Timex goings-on around their part of the world, and at large* Their Editor is Tim Swenson* The club has a strong orientation to the Ql, and their newsletter tends to reflect that*

In the Nov' 91 issue Peter Hale has a chronology of the OL's in North America,. ******************

TIMELINEZ is a publication of four T/S groups in, well, they say US* We seem to get this newsletter on a spotty basis. Although we used to send our n/l to them regularly, we would periodically get a notice saying they were going to cut us off if we didn't reciprocate. Recently we received a copy identified as their May-*Aug '91 issue.

Anyway, this 4-, page n/l has 2 pages of editorial material, one page of advert, and another page and a third of club information. It has an article about T/SNUG, and an article titled 'Vu-File 80 column Printer Control'. But don't be fooled by the title. It is a good article, but you still get only 32 character lines on the big printer* A problem that a m/c expert might be able to solve. ******************

SMUG BYTES, the n/l of the Sinclair

Milwaukee Users Group. The Aug* 91 issue is

a terHpage newsletter. Two pages are club

information, 2 pages are adverts, there

are 2 1/2 pages of cartoons, and 2 1/2

pages of a QL listing. Well, there is

about 3/4 page of editorial material.

The Sept '91 issue is 6 pages* Two pages

are Club information, 2 pages are adverts,

a page of editorial, and 3/4 page

cartoons* **************

INDIANA SINCLAIR-TIMEX NEWSLETTER, Edited by Frank Davis The Sept/Oct issue has a good review of the Dayton Computer/Fest » plus a 2-page section by Mike Felerski.

Topics by Mike include an update on Clive Sinclair's activities, ideas for using Vu-File, and a report on the ISTUG BBS, i.e. a how-tto-use-it article* Then there are full page adverts for BYTEPOWER, EMSOFT, and DJW Software (QL stuff, British firm)

**************

SWYM, the newsletter for the Seattle U.G. A four page newsletter, which customarily is full of interesting Timex stuff* The Sept/Oct '91 issue is no exception. A column entitled 'Random Bits' talks about TSlOOO's for $1 and $2i about the FDD and TOS disk systems, an article about a forthcoming program listing, and an article by Mike Flynn entitled 'TOS Revealed by CP/M!'#

*****************

MILE HIGH, a newsletter from the Mile High

Chapter of the T/S Users Group* This is

the first copy we have received from this

club. The newsletter is a single sheet, 2

pages of interesting content* Various news

items, plus an article about experience

with a 2068 digitizer* ******************

The HACKER, from the T/S User Group of Las Vegas* A newsletter from a T/S group which, from a TS user point of view, is a nonostarter* It's mast-head states 'dedicated to all personal computers', but it seems as though unless a computer appears at the COMDEX show it does not rate a mention in their newsletter^ Alas.- no Timex in their November issue*

Well, that's about it in the Timex newsletter world for now. I hope it was interesting. We have a file for each of these newsletters; if you wish to see a file, just ask Jeff Taylor or myself.

Jay S. Seigal Mf~ 1274 49th Street pTVh ^Jtou^ki^A

Brooklyn, NY 11219-3011 ' ^AjJ^L.

I'm still a bit behind in answering members requests. I should be caught up shortly. But do write if you have been waiting for me for some time.

Our club tape and disk libraries are under0used. Is nobody looking at programs anymore? Puzzling. There are a lot of interesting programs on the ZX81 and 2068 tapes, that could be played with. Once upon a time I created a separate set of tapes to help me service the 00T members. It now looks as though we could consolidate themj the interest is so low.

There is another instalment of the printer driver software series this month. Also there is a letter from Steven Gunhouse which responds to, and adds enlightenment to the last article. That is what I like to see, some additional light on the subject.

I shall close off now with a wish for a Merry Christmas to all.

Sincerely, George Chambers