ZX Review #5-6
04 ноября 1997 |
|
Forum - As for the BASIC compiler "Blast".
(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
Other articles:
Similar articles:
В этот день... 23 November