(C) S. Galustyan, Cherkessk
About the compiler BLAST
Hello!
You wrote your reader from
Cherkessk Galustian S.N.
(Cyberdyne Synthesis inc.). In ZX
REVIEW repeatedly written about the
poor quality of existing
programming languages. C compilers, ROM BASIC is the same
situation. We can confidently say that to date
for ZX-Spectrum does not exist
compiler, one hundred percent compatible with standard
BASIC'om. The fact that this problem important, says the
conclusion of BA Kuritsyna (ZX-Revue 96 / 6, p.
2) that the programming
assembly language - this is not normal.
We must agree that the programming codes, time-consuming,
requires even an experienced programmer a lot of time in
deciding seemingly simple tasks.
This is explained by the fact that the assembler -
computer-oriented language, and hence all the specifics
programming. Strictly speaking,
assembler - a lot of programmers, systems people. Computers,
like known, are not in order
that they have programmed, and
in order that they help solve a variety of applications
problem.
The foregoing shows
that the assembly - not the best tool in achieving this. For
solving similar problems exist the problem-oriented
languages, ie high-level languages. In general, the development
of computer technology is the fact that programming languages,
low levels will go into oblivion. Of course, Spectrum - not the
platform on which it is destined to true. But our task is
different. We need to squeeze everything possible out of the
microcomputer. Now, in my opinion, really need an efficient
compiler ROM BASIC. And why in the first place needs a standard
BASIC compiler, rather than, say, BETA-BASIC or Pascal? Yes,
because despite all his disadvantages, owns the largest number
of users. For basis, I propose to take the most advanced
compiler BLAST Company OCSS. He has several limitations, which
have Vyacheslav Soldatov (Rensoft) (ZX-Review 95 / 1, p.41),
and gaps, impede the promotion of this
software product.
When working with BLAST'om I encountered the following
problems. In some cases, when working
I compiled the program
received the message "3 Subscript
wrong "in the performance of operators, READ-DATA. wrote about
this and Vyacheslav. In the description of BLAST'u
(I use the publications issued LLP Viroll LTD "System software
for ZX-Spectrum", Volume 2) on page 103 says that
"Procedures, native,
extending BASIC interception
procedures for handling errors (or
any other methods),
will continue to work. "On
practice, this was not confirmed.
In compiled programs
procedure ON ERROR GO TO does not work properly. The explanation
is that the program, which took BLAST, when you try to "fill
up" instead of issue error message, sometimes stops with the
message "0 Ok ". This implies the inefficiency of this procedure
this case.
If any error that happens, I could not figure out. The fact
is that in the BASIC-interpreter ON ERROR GO TO works
flawlessly under any circumstances (out of the program is
possible only by RESET). In one of my program was
Line:
2100 IF N = 5 AND LEN STR $ XSIM> 3
THEN LET XSIM = VAL ((STR $
XSIM) (1 TO 3))
During the compilation of the program, a transformed
pre-TOOLKIT, mode TAPETAPE BLAST gave an error in this line and
frozen. If you enter this line separately in BLAST and try to
compile it in a mode of RAM-RAM, the compiler generates an
error and asks to press key. After you will
message "Scroll?". If you refuse to scrolling, the
BLAST'a functioning is restored. Otherwise, the screen will be
filled by machine code, and the computer freezes. The attentive
reader will notice that the LET statement is superfluous
brackets which in BASIC-interpreter
do not break the program.
For BLAST'a same lines:
10 LET A = VAL ((STR $ A) (1 TO 3))
(Out error)
10 LET A = VAL (STR $ A) (1 TO 3)
(Okay)
are not equivalent. Of course it's good that BLAST noticed the
extra brackets, but I think it's not because he is such a
"Smart". The response to this he unhealthy. In the same
description on the p.99 states that if a compile-time (probably
mean compilation mode RAMRAM) BLAST'u not enough memory
He will ask you for permission
remove the original file. In practice in such cases, BLAST does
not stand on ceremony and gave out "NO SPACE - PRESS ANY KEY TO
EXIT ".
With regard to the compilation mode RAM-RAM, then 2869 BYTES
FREE seriously impossible to work. This mode of compilation has
sense only on computers with
128 kb and above. But for
This BLAST must still be made over. You can simplify the
refinement, limited to at least adapted for TR-DOS commands
work by replacing with mikrodrayvom. Compiling BASIC-program
volumes of 20K and higher mode TAPETAPE very tedious and time
consuming. Especially, that you compile your program
need to present a special
format using the tools
TOOLKIT. Thus, the compiled program in addition
has a highly fragmented
form, which causes difficulty with
adapted for TR-DOS. Therefore, to
TOOLKIT would not hurt to add
utility offering defragmentation object code is in the candy
bar. It is also desirable BLAST has a built-directive
ON ERROR GO TO. That there was no
ambiguity, to report that I
use version 1.1 with undeleted Colour protection. The problem
is that found an experienced programmer who is interested in
this compiler and can eliminate the negative aspects found me
and Vyacheslav Soldatov. I would like to have the views of
other readers of this occasion.
In conclusion, I have a big
Please print my address.
The fact that I am fond of music in the style of RAVE, but the
information in this direction in its City can not find. I'm
interested in everything: audio and video cassettes, CD with
the RAVE-tracks, and well as any printed products, which
discusses issues this genre. Are there RAVEdemos for AY? I
would appreciate it anyone who can help me get
such information. Write to me
at:
357100 KCR, Cherkessk-8
st. Park, 1, kv.36,
Galustyanu Sergei
*
Creative Group
LASER SOFTWARE
invites for cooperation
active groups
Write to:
142279 Moscow Region.,
Serpukhov District,
n / a township Obolensk,
PO Box 14, Eugene Leschukovu
LASER SOFTWARE PRODUCTION
My answer to all!
*
WARNING!
A book for ZX SPECTRUM on diskette
Perhaps on a floppy disk (for the Spectrum!)
book will be published Fedin P. Yu "A complete description and
full disassembler ROM TR-DOS 5.04t (5.03) ". At the same floppy
disk as a reference, it is planned put files with the contents
of ROM TR-DOS different versions. It is no secret that often
there are programs that do not work
on all versions of TR-DOS, and this is usually due to the fact
that the author has no information about other versions.
You can contribute to this noble cause, if you send a
diskette with the contents of your ROM TR-DOS (except for
standard versions 5.01, 5.03, 5.4, of course) at:
121019, Moscow, POBox 16, Anfimova EV