Micromail

Volume 1

Number 11

January 1984

Tape-to-disc copying problems

HOW much software have you bought on cassette that is deliberately written to tape in such a way as to make transfer to disc difficult, if not impossible?

A determined software thief only needs two cassette recorders to copy a tape, and there are plenty of two-cassette music centres around to make this very easy.

It seems only fair to me that if a cassette version is protected from "backup" (illegal copying) then the manufacturer should give you the option of swopping the cassette for a disc plus a cash payment, if and when you move to a disc filing system.

A number of software houses do allow this but the majority do not.

In Britain ridiculous record prices move people to illegally tape music.

In the same way, most software firms are cutting their own throats, and at the same time allowing yet other software firms and sometimes even themselves to line their own pockets by producing tape-to-disc copying aids.

Of course the fact that nearly all the big record companies are moving into software has nothing to do with this problem at all. - Neil Palmer, Bath.

• It would be interesting to have comments on this subject from readers and software houses. Certainly, it seems to cause a lot of customer relations problems.

BREAKing BAD habits

WE have a BBC Model B in our school fitted with a disc interface.

At present due to lack of funds we load from tapes. One of the programs supplied by MEP loads satisfactorily and runs, but if you press BREAK it cannot be retrieved using OLD and RUN commands.

All we get is "Bad program".

If however we load, then LIST the program, things are different.

While the listing, is on screen, pressing BREAK then OLD and RUN commands does not lose the program.

Why is this and is there a way of getting round the problem ? Or do I remove the BREAK button when the children are using the computer, as I feel tempted to ? - MJ. Barrie, London SW16.

• There are two possible causes for the "loss" of the program, and short of removing the BREAK button, there is no simple remedy for either.

Firstly, MEP could be doing something to cause BREAK to destroy the program (for example, an FX call).

Secondly, the program could download itself to &E00, so pressing BREAK corrupts several bytes if a DFS is present.

Adelaide network

BEEBNET is a user's group based in Adelaide but servicing users throughout South Australia and in other states.

A fair proportion of teacher-users is involved, hence the "net" for Econet or network in the title, but it is by no means exclusively a teacher based group.

Schools include private, public (state), primary, secondary, and tertiary plus various tech studies bodies and computing centres.

Plus, of course, several trade representatives including Jim Reed of Northgate Computing.

In July we were 64 strong and growing - to quote our monthly newsletter.

We meet once a month and have either guest speakers or fellow members address us on prearranged topics. For example, last month was on the use of View.

Hope this is of some interest to you (if somewhat slow in coming!) - Ron Co, Moonta, South Australia.

Unhappy eproms

IT may not be well known that certain makes of 2764 eprom do not like the BBC Micro in which to live. My recent experience with a

Mitsubishi 2764 for use in the sideways ROM sockets required a little work with the soldering iron within the bowels of my series 3 board.

Although the pin layout of the 2764 shows no connection on pin 1, this is not strictly true.

The fact is that you may well get away with it with certain makes of eprom, while others refuse to work after a while.

The answer is very simple, although only for the brave.

What is required is the fitting of a suitable pull-up resistor soldered from pin 1 to the +5v rail, and this is easiest done by removing the board and fitting it across from pin 1 to pin 28.

I have it on good authority that Acorn are aware of this problem and may well have modified the later boards.

I have used a value of 18k which seems to work OK. The whole operation takes about 20 minutes. - S.J. Gilbert, Manchester.

MACE system

REGARDING Mr Taurin's letter (Micromail, October 1983) concerning the use of 380Z disc drives in a network of BBC Micros, MACE (Microelectronics and Computers in Education) have a network which will allow up to seven BBC Micros to use a 380Z as a file server and as a printer.

I have used this sytem for some time and find it an excellent one and quite reasonably priced.

Apart from this single, and may I say uncharacteristic, error, I have found your magazine to be the best on the market.

Indeed the articles on Body Building are especially useful and other periodicals are particularly weak in this area. - J.A.McBride, Deramore School, Belfast.

Enigmatic code

I AM interested in writing machine code programs, but I haven't the faintest idea about it. Is assembly language machine code?

Also, I have tried various ways of entering binary code, but none of them seems to work.

In one of your issues, it displayed binary by placing a % sign in front of the code, for example %11100101.

When I tried entering this, it said something like, "No such variable", and when I typed the same back to it, it then said, "Syntax error".

Now on to my Beeb's baby brother, the Electron. From all the reviews I have read, it sounds as good as the Beeb apart from the graphics speed, so am I paying £200 more for graphics speed? - A. Jones, Keighley, Yorks.

• Last point first. For your extra £200, not only do you get more speed, but the user port, RS423, A/D converter, Centronics interface, Mode 7, etc.

Assembly language is an easy-to-use computer language, that the assembler translates into machine code, which is a sequence of numbers.

You cannot enter binary directly into a BBC Micro - the "%" sign is just to show we humans that we're dealing with binary. The computer does not recognise it.

Sparkjet graphics

I ENCLOSE a copy of the listing of a program to dump Mode 0 or Mode 1 graphics on the BBC Model B to the Olivetti JP1 "Sparkjet" printer.

The program accesses the memory locations directly and is consequently quite fast - certainly much quicker than if the POINT function in Basic is used to inspect individual pixels.

On another subject entirely, I would like to say how much I enjoy reading The Micro User, and particularly the recent discussions on the benefits or otherwise of writing structured programs.

Having had experience of several different micros before coming to the BBC, it has really made me appreciate the machine to be able to write and use procedures again, just like using Algol on large mainframes at university.

Structured programming is not an intellectual game — it is an essential discipline for any programmer who wishes to graduate from the limited arena of micros to bigger and better things.

There has been much criticism of the teaching of computing in schools by those in higher education in recent years, often because sixth formers come to a college or university full of bad habits picked up on micros, and indiscriminate use of GOTO is one of the worst.

It is my opinion that the BBC dialect of Basic will become increasingly more widely used as the benefits of its structure in curbing the wild enthusiasm of GOTO and GOSUB users are more generally recognised.

Having said all that, I apologise for the two GOTOs in my program — bad habits die slowly! - John Fryett, Head of Mathematics, Yehudi Menuhin School, Cobham, Surrey.

10 REM MODE 0 Graphics on printer (for black background)
15 m%=?&355 :REM graphics mode
20 VDU 2 :IF M%>0THENVDU1,27 :VDU 1,47 :RESTORE 80
30 VDU 1,27:READ I$:L=LEN I$:FOR I%=1TO L%:Z%=ASC (MID$(I$,I$,1)):VDU 1,Z%:NEXT:VDU 1,27:VDU 1,90:IF M%>0 THEN 70
40 DATA "G100;80;33;4"
50 FOR I%=&3000TO &7FFF STEP 640:FOR C%=0TO 7:FOR J%-I%+C%TO I%+C%+639STEP 8:VDU 1,?J%:NEXT:NEXT:NEXT
60 GOTO 120
70 REM MODE 1 Graphics on printer (for black background)
80 DATA "G100;40;33"
90 FOR I%=&3000TO &7FFF STEP 640:FOR C%=0TO 7:FOR J%=I%+C%TO I%+C%+639STEP 16
100 P%=FNS(J%)*16+FNS(J%+8)
110 VDU 1,P%:NEXT:NEXT:NEXT
120 VDU 1,&1B,1,&30,3,7:END
130 DEF FNS(Q%)=(?Q% DIV &10) OR (?Q% AND &F)
Reader John Fryett's program to dump BBC graphics to the Olivetti JPI sparkjet printer

Mode markers

YOUR reader D.L. Harper (Micromail, November 1983) says that by looking at memory location &367 you can find out which screen mode you are in.

On my machine (OS 1.20) this location contains the value 15 for all modes. But location &355 does contain a value 0 to 7 which corresponds to the current screen mode.

Why the discrepancy, and is this normal? - G.A. Rooker, London.

• As mentioned in the letter, the location given were for OS 0.1. The location containing the screen mode is indeed &355 in OS 1.2.

Look, no mods!

I REFER to your September 1983 issue and the article about the Watford DFS.

I recently installed the Watford DFS and note that the instructions I received and your article refer to modifying the circuit board particularly with an issue 3 BBC Micro.

I have the issue 3 but had a couple of months ago inserted the OS 1.2.

On inserting all the chips for the Watford DFS I found that the whole Micro runs without making any modification, cutting of wires, pins etc. Everything works without any problems whatsoever.

Am I right in assuming that the new OS 1.2 removes the necessity to modify the circuit board on issues 3 and older? - R.H. Langdon, Houghton le Spring, Tyne and Wear.

• The answer to this one, we are reliably informed, is that some boards which were screen printed "Issue 3" were in fact Issue 4.

Pressing problem

I HAVE a Model B machine, operating on OS 1.2.

One of my applications requires the use of a cassette tape to hold up to 100 separate files, any of which requires to be updated, without affecting the remaining flies.

Clearly, fairly accurate tape positioning is necessary, and the recorder's tape counter would not be reliable enough. My recorder has motor control.

The need is therefore for the computer to be able to control the positioning of the tape. This is straightforward enough by using the MOTOR commands, except in one vital case.

The exception relates to the OPENOUT command. The OS displays the message RECORD then RETURN, and while it waits for the operator to RETURN (a variable and uncontrollable amount of time), the tape remains in motion, and may have information written to it in the wrong place.

In this case, the computer does not have control of the tape's position.

Can you suggest a way to overcome this problem? It seems that I may have to abandon OPENOUT, and reproduce in assembler, a variant of the command; (if so, what exactly does OPENOUT do?).

A second problem again relates to OPENOUT. When I am writing all 100 files, one after another, which happens in one instance in my program, I have to sit at the computer, pressing RETURN, once for each of the 100 files, whenever the RECORD then RETURN message appears.

In all cases, except for the first file, the OS message is strictly wrong, because RECORD is already pressed down.

In theory, there should be no need to have to keep pressing RETURN. Is assembler the only answer here? - David Pentecost, Leighton Buzzard, Beds.

• We're stuck by this one. Can anybody help us?

Hong Kong phooey

I HAVE just read in your August edition a rather curt letter from Colin Malone of BBC Enterprises which stated with reference to BBC Micros that "machines manufactured in Hong Kong will not be sold in the UK".

The letter went on to instruct you to correct "any misunderstanding which could well have occurred, at the earliest opportunity".

It may interest you (and him!) to learn that on August 12 I purchased from my local Acorn dealer a BBC model B which is clearly labelled "assembled in Hong Kong".

Who's kidding whom? And why? - D.R. Stafford, Cam-berley, Surrey.

Restricted joy

I AM writing to seek advice from you further to your article in the May 1983 issue of BBC Micro User on constructing a joystick controller.

Although a BBC Micro owner and enthusiast I am a novice at electronic construction. However, I felt your article made the task seem straightforward enough even for me to attempt.

I accordingly bought what seemed to be the requisite parts by mail order. I used a two axis joystick control fitted with two 220k lineas potentiometers.

I find that I can only effectively use one quarter of the joystick's area of movement.

This seems to be because ADVAL(l) and ADVAL(2) return the value 65520 when the arm of the joystick has travelled only half of its full movement. - Alan Thomas, London.

• The wire you have connected to PIN 1 of the analogue port should be connected to Vref (Pin 11) instead, for your type of joystick. I think this applies to the Tandy joystick as well. Mike Cook

Drifters

WE own a BBC 'B' and use with it a Sony portable colour TV.

Our problem is that when we have graphics on the screen, particularly large blocks of colour (as on your "Fishing" program) we have lines continually drifting across.

I believe this is to do with the modulator, but have been unable to discover a cure. - T. Barnett, Southampton.

• By altering the trimmer capacitor near the colour burst crystal, you can slow down and eventually stop the drifting colours.

More adventure

I MUST firstly praise the high standard of your excellent magazine, in my opinion it is THE magazine for the BBC user.

Secondly, I would like to endorse J. Bibby's (Volume 1, No 9) request for an adventure column.

I too, am fed up with buying magazines purporting to have an adventure column, only to find the author has never heard of the BBC Micro.

Please rectify this, the only fault in an otherwise perfect magazine.

Also, about M.B. Holland's problem (Volume I, No 8) of the "Rampart Robot", try <FLEZ>! - P.B.C. Gardener, Manchester.

• The adventure reviews in this issue mark the start of a regular column, devoted, of course, to the BBC Micro.

Getting it all together

ONE question has been nagging me ever since I unpacked my model B.

There are many disc drives on the market and I was wondering if they all included DFS, cables etc (especially the Acorn disc) and whether they are all compatible with each other. - Neil Graham, Doncaster.

• When you buy a disc drive you always get the cables you require. However, DFS, manual and formatter programs come separately.

There should, however, be absolutely no difficulty in purchasing these together with your disc drives from the same dealer - thus ensuring compatibility.

Line changer

IS it possible to write a program which when run will make up a new line and add it to itself?

In other words, is there a method by which a program can change itself other than by "merging" with another program ? - J.P. Williams, Norwich.

• This can be done if you understand how the Basic program is stored. Changing lines is very easy. Try this:

10 REM TRIAL PROGRAM TO SHOW THAT A PROGRAM CAN CHANGE ITSELF
20 KOUNT = PAGE +4
30 REPEAT
40 READ BYTE : ?KOUNT = BYTE :KOUNT = KOUNT+1
50 UNTIL BYTE=0
60 KOUNT=KOUNT-2
70 REPEAT
80 KOUNT=KOUNT+1 :?KOUNT=32
90 UNTIL ?(KOUNT+1)=&0D
100 END
1000 DATA 241,34,73,84,32,87,79,82,75,83,34,58,65,61,166,40,49,48,48,48,41,58,241,34,79,75,34,58,224,0

Disc link

IN Micromail Simon Taurins enquired whether a BBC Micro could use the disc drives of a RML 380Z. I can see no difficulty in doing this, provided that the two machines are connected together via their serial ports and that the 380Z has commands equivalent to *FX2,1 and *FX3,1 in the BBC system. Storing BBC Micro programs on the 380Z discs will require the BBC Micro to LIST to the RS423 as well as to its own screen and the 380Z will need to be able to load the incoming data as a Basic program, and then store it.

If this cannot be done the 380Z will require a machine code utility to load incoming data byte by byte into memory (or straight onto disc).

Transferring Basic programs from any other micro to the BBC Micro requires only the baud rate (*FX7,n) and word length/parity/stop bits (*FX156,227,n) to be correctly set up and then *FX2,1.

Following this command the program can then be sent and will be LOADed by the BBC Basic interpreter.

Machine code programs and data will require special utilities to be written for both machines, however.

I have been able to load numerical data into the BBC Micro memory from the disc system of a mainframe computer, and also store BBC Basic programs on the disc. - R.D. Wright, Leatherhead, Surrey.

Cut the crackles

I HAVE constructed the circuits for the BBC Micro in your July to September issues for the user port control.

The circuit works, but I am controlling two small 3v DC motors. The motors create flyback over the screen and eventually "crash" the program.

Being new to electronics, could you possibly suggest a way of suppressing the motors? - Derek Harper, Eastleigh, Hants.

• Place a 1 microfarad disc ceramic capacitor across the power terminals of your computer, as physically close to the motor as possible.

If that doesn't work, you could, in addition, put an inductor in series with the power lead.

Teletext

CAN you please clarify two points concerning teletext for the BBC Micro/Electron?

If a Teletext TV is used as the

computer monitor is there any need for the £225 teletext adapter or is a simpler (cheaper?) device available?

Are there any plans to enable teletext to be used with the Electron? - M.F. Kelland, Southampton.

• Unfortunately even if you have a Teletext TV you still need the teletext adapter.

Several people are planning a teletext adapter for the Electron, though when one will appear is a matter of doubt.

Electron programs

ABOUT four weeks ago I bought an Electron. Today I have bought your magazine.

There is one question I couldn't find an answer to. That is, will BBC Micro programs which are on cassette work on my Electron?

Please write back giving me an answer. - Mark Ivens, age 10, London.

• Congratulations on buying an Electron.

The answer is that all programs that work on the BBC Micro without using Mode 7 should work.

However, they will be slower and the sounds could well be different.

Also, of course, programs that use joysticks, printers and such like that the Electron hasn't got yet, will fail.

TV signal

I AM now the proud owner of a teletext adapter, but find the signal via the TV aerial needs to be very good. My aerial was in the loft giving me an adequate picture, even being split two ways for two televisions.

However even with a direct feed to the teletext adapter I was unable to get Ceefax on BBC2, Oracle on CH4 and certainly no hope of downloading any programs.

Eventually I had the aerial conventionally mounted on the chimney stack curing all reception and down-loading problems. - W.D. Lowe, Nantwich, Cheshire.

And finally, with tongue firmly in cheek . .

It's a case of over-exposure

Dear Trev,

Have you ever felt a fool? Well if you haven't, come on over and feel me because I am a grade one nit.

It all started when I wrote to Micro User asking why is it I keep on typing in their listings and can't get any of the mistakes all those people keep writing in about. Anyway they published it with a very nice little note from the editor.

So far, so good. It's nice to see your name inprintbut, sadly, it didn't end there. Oneof Andrea's little cronies at the bellringers is the wife of a reporter on the Romchester Chronicle.

Of course A. had to mention my little bit of "media exposure" as she insists on calling it.

And, of course, the wife told the husband and he rang me. I don't know who it was suggested that we meet up in the Ram and Buffer, but it was a mistake.

The first part of the evening was quite pleasant. It's nice to be bought drinks and treated like an expert, even if I had to put up with questions like "Have you stopped using your micro to defraud banks and cause World War III?".

Sadly as the evening wore on the drinks began to take effect and I forgot that I wasn't an expert.

I can vividly remember spouting away on all sorts with the reporter scribbling away like mad. If only I could forget! Not that A. will let me.

"In the Eighties, not being able to program is like being illiterate", she keeps repeating with a wicked grin.

For some reason I invited the guy back to my place and let him take photos of me and my micro.

Which explains the picture that appeared next day in the Chronicle under the headline "Computer wizard slams education system".

There I am sitting at my micro grinning inanely at the camera while a syntax error message is displayed on the screen. What I was supposed to have said is so horrible that I won't repeat it.

But A. knows it all, word for word, and she does repeat it. Incessantly.

She's even taken to answering the phone by saying "Computer Wizards Ltd. Do you want to speak to the Chief Warlock?".

It's not easy, being a micro user.

Bob.

P.S. I've even had a phone call from my bank manager asking if it's true that I use my micro to embezzle funds, and could he borrow it for a while? I'll never drink again.