80-Bus News


Summer 1985, Volume 4, Issue 2

Page 11 of 31

—ovlad=kdata__ptr; /* function pointer */

read(ofd,buff,128); /* read the next 128 bytes. We have */

/* no use for these */

read(ofd,ovla0,ovien); /* Read ovlen bytes into area */

/* pointed to by —ovlaQ */

/* ..& write base addr into the */

close(ofd); /* close overlay file */ (*k_ovlad)(); /* call overlay */

strepy(currovl, fname); /* update the current overlay name */ return(0K); /x return alls well to main prog */ pss


Please note that we intend the final issue of 80-BUS news to be a little silly. (Yes, OK, I know that virtually every issue has been silly, but that’s not what I mean.)

If you have any Nascom/Gemini etc related tales that you think will give other readers a chuckle then please send them in. Nothing Libellous though please!

You might like to relate an anecdote on the troubles you have _had building up your system, getting to grips with software, mis-understandings with the Mrs., or how YOU had to explain to the dealer what a RAM chip is!

I can certainly remember certain things; like the user who soldered his Nascom 1 together with all the components on the wrong side of the ‘poard. And another who melted a load of solder in a frying pan, and then dipped his Nascom 1 into it to "flow solder" it!!

An introduction to CBASIC by P.D.Coker

CBASIC is one of several dialects of BASIC available to users of 80-BUS machines. It originated from the fertile mind of Gordon Eubanks Jr. and first became available to micro users in 1977, quickly followed by an enhanced version, CBASIC2 in the latter part of 1978. Dr Eubanks had developed the idea of a type of compiled BASIC as part of his doctoral research, soon after CP/M had been released on an unsuspecting public, and this became known as EBASIC but has now been almost completely superseded by CBASIC which has many enhancements and is more suitable for programming purposes. CBASIC2 was originally a product of Compiler Systems Inc., the firm which Eubanks founded in California but is now under the tender care of Digital Research Inc. \n this article, CBASIC refers to the second release, CBASIC2. An expensive but versatile version including a true ‘native code’ compiler, known as CB-80 is also available from DAl.

Most people will have heard of Microsoft BASIC (MBASIC) in one or other of its forms, and once one becomes familiar with the quirks and deficiencies of the particular version one has available, one’s style of programming adapts accordingly. So why bother about another version of BASIC? Certainly, for many purposes, MBASIC performs quite adequately as an interpreted language, with the option of a compiler, while CBASIC is a ‘pseudo-code’ compiled (sometimes known as ‘semi-compiled’) language.

Unlike compilers, interpreted BASICs allow the programmer to develop and test sections of a program immediately using the built-in line editing facility, and syntax or other errors can be spotted when the program or segment is RUN. On-screen editing is available to enable offending lines to be corrected. Additionally, MBASIC has a means of compacting the code as it is entered, to save time and memory when the program is executed. From almost every point of view, a satisfactory situation. What are the drawbacks to this paragon of virtuosity? Essentially, the interpreter has to evaluate each line as it is executed, and this can slow down the execution speed of programs which handle large amounts of data or, more importantly, those in which loops or calls to subroutines, more familiarly known as ‘GOSUB ... RETURN’ occur. This can be significantly changed by converting the program after it has been fully tested in to a ‘compiled’ form, where the program is efficiently compacted and (in a true compiler), converted into machine code instructions. CBASIC does not have a true compiler, but instead produces an efficiently packed code from a source program which is

This is an OCR’d version of the scanned page and likely contains recognition errors.

Page 11 of 31