MAILBAG
 
To: Will Watts (Editor: EUG #0 - EUG #13)
From: Mick Comley <address hidden>
Subject: PROLIFIC PROGRAMMER
Mail Ref.: EUG #09

You will find on this disk a few machine code utilities for the manipulation of BASIC programs that I have written over the years. Please publish them at your discretion. They are as follows:

PROCLST - A BASIC procedure lister which I have only just finished after it began life as a BASIC procedure itself. Save the machine code as PROC, i.e. *SAVE PROC 7000 +250 on a 64K Elk, or wherever you wish to run the program.

If assembling at Page &900, it will overwrite the character definitions and function keys. Type *PROC if saved to disk or *RUN if on tape. The program replies with LISTPROC type in the procedure name; if it is a function, precede the name with "FN".

The program steps through the BASIC program in memory after finding PAGE until it encounters the appropriate DEFPROC. It then stores the line number. It then looks for the next DEFPROC, DATA statement or end of program flag, and stores the preceding line number or the last one. It then decodes the line numbers and puts LIST (first number),(second number) into the keyboard buffer before exiting the program.

The Elk should then list the procedure or tell you if it could not find it.

KEYLIST - Function key lister that lists all sixteen keys ready for editing and takes less than one page of memory. If only function keys 9 are needed, delete lines 150 & 160 and delete from line 170 CLC:LDA &75, and finally change CMP #16 in line 240 to CMP #10. Save the m/code file with *SAVE K 900 +100. The utility can be used as a star command from disk (*K) or *RUN from tape.

LIST - Variable and procedure name lister, like KEYLIST takes less than one page of memory. The machine code picks out the procedure names from the BASIC program stored and declared variables from the linked link at Page 4. Dimensioned arrays are shown with a pair of brackets. Save the code as *LOOK 7000 +100 or wherever you wish to save it to.

A few queries for the Mailbag section. Has anybody got a spare VIEWSHEET ROM cartridge they wish to sell for a paltry sum? THe application I am using at present has run out of memory using the 'Microl' disk-based spreadsheet that I normally use.

I recently bought a complete Elk system from another chap, mainly for a second disk drive; with it is a Project Expansions' User Port and a Slogger 32K Sideways RAM cartridge. Both of them crash all three of my Elks! Has anybody got any ideas as to why because they both puzzle me and I would like to use them.

On Printer Drivers, I see no-one mentioned Dabs Press' HYPERDRIVER ROM-based Printer Driver for the Elk, BBC B/B+/Master series which uses nemonics and is very versatile. I thoroughly recommend it as I have used it for the past two years.

The problem of a 64K Elk crashing every now and again, I pinned down to dry joints on the chip holders that the Master RAM Board plugs into on the main circuit board, apart from the ULA being dislodged. The course of action was to re-solder all the joints. Can anybody offer help on a Ferguson monitor where the screen sometimes flicks to a bright horizontal line across the centre of the screen and back again?

Mick Comley, Faversham, Kent
EUG #9