(C) Ivan Roshchin, Moscow, 1997
WARNING! Described here
programs are intended for use only in conjunction with
assembler ZX ASM 3.0!
Surely each encoder is known, this situation: you've typed
the text of a program assembly language, compile it,
launched, and the computer freezes or
folded. Well, if you make
that you saved the source code
on the disk, and if not? Then there is only ... run "FASTzasm"
or "@-zasm"!
The fact that the so-called "reset" the computer - not that
other than the transfer of control of
zero address in the ROM-48. When
This is cleared only 48-I memory, assembler, debugger and
the text of your program remain intact. Freezing
computer and 99% of the
does not lead to loss of source
program text.
Thus, suppose after a failed
running all over cleaning the screen and the appearance of
familiar characters:
(C) 1982 Sinclair Research Ltd
Your next steps should be:
- To collect RANDOMIZE USR 15616;
- Execute a command TR-DOS: RUN
"FASTzasm" (You can run
this program from any
boot'a, which does not spoil
128-th memory);
- FASTzasm restore the contents
my memory at # 5B00
# 6000 (resident part of ac
Sembler, a stack) and perezapus
Titus assembler (which remains
Camping in the 128-th memory) after Th
first you will be able to continue pa
bot. If FASTzasm not detected
ruzhit in memory of anything like
On to the assembler, it is simply
issue an appropriate community
generalization and will be released in TR-DOS.
If the computer is dropped,
When you debug your program with the help of STS'a may
be that the screen remains active in the 7 th memory bank. In
this case for the inclusion of a standard screen will have to
blindly type the command:
OUT 32765,16
It makes sense to use
FASTzasm resetting the computer
even if you keep the original
copy of its program. Firstly, the launch will be faster, but
Second, do not have to re-
load the text and set
parameters in assembler and debugger.
We also consider the following situation: you are debugging
a large program consisting of several files, and change one or
the another file. So, if you try
write another text file to disk, the message "Disk full!".
This happens because at
disk formed a lot of deleted files and free disk space
left. Must be sealed
drive, but how? When
trying to call from the ZX ASM'a TRDOS and execute the command
MOVE you get the message "Out of RAM".
And to raise the stack above # 6000
impossible - to destroy the resident
part of the assembly! You can, of course, temporarily write the
file to another disc, press the RESET, condense the original
disk and copy files to it, then start the ZX ASM, and finally
proceed. But too much is long ...
This problem is easily solved
by FASTzasm: you just get out of the ZX ASM in BASIC, are not
Save the text file, and
quietly typing RANDOMIZE USR
0. After that, compact discs
(Using the MOVE command or file a shell that does not use
128-th memory) and start FASTzasm, which will restore a
resident of the ZX ASM'a and run it. Then you can write a text
file on disk. If ZX ASM, FASTzasm and file shells are on the
same drive, where the working files - you
do not even have to change discs in the
drive!
Now let's talk about the "freeze". The best remedy in this
situation - the button MAGIC. Once the contents of memory
written to disk, press RESET and run the program
"@-Zasm".
By the way, if you're wondering why
hang your program, I can advise
vat @ download the resulting file in from the
the Rapporteur "STS5.1 + @" (this is the usual STS,
I modified so that the retrieval
Re @ file, it sets the contents
CPU registers such as it
was at the time of pressing MAGIC).
@-Zasm ask you to insert
disc recorded as a result of
pressing MAGIC files.
Press any key, and start reading those files. If the
no hard drive @ files or those files are not relevant to ZX
ASM'u, the program will "ZX ASM NOT FOUND IN MEMORY!" and will
be released in TR-DOS.
After a successful reading
@ Files, the program will ask you
Last question - whether you want to delete these files from the
disk. If need, press "Y". Then wait for a while, and finally
run the assembler.
When the program is in the @-zasm
memory is read only content, 1,3,4,6 and 7 of the memory banks,
and in the 48-th memory is restored
only the resident part of an assembly, and stack.
*