POWER ASSEMBLER
ALEX KLADOV
═══════════
Today in the SYSTEMA section you will learn
Do you know what as-
PASM sampler.
The PASM assembler runs on a computer
terach with 48Kb RAM.
Of course there are better assemblers than PASM
these are TASM and MASM, but for their operation
RAM required
no less than 128Kb.
Which of us at least once in our lives has not
chatted with GENS or ZEUS? Those who
worked with these programs remember,
how much time did it take to debug
programs. All the time while you are debugging
you wrote the program, you had to type
take complex commands. Text in GENS
broken into numbered lines.
To change something you have to
find the required line using the command
LIST , and then correct it.
PASM is a completely different matter. At the assem-
Blair PASM has a wonderful interface.
To correct any character in PASM
just move the cursor to position
tion of the symbol to be corrected and change
him.
Well, now about actually working at
PASM.
Cursor keys:
CS + 8 cursor right one space
position.
CS + 5 cursor left one space
position.
CS + 7 cursor up one position
position.
CS + 6 cursor down one position
position.
CS + 9 tab.
CS + 3 one page up, re-
move the cursor to 22
lines up.
CS + 4 one page down, re-
move the cursor to 22
lines down.
SS + Q cursor to the beginning of the line.SS + W cursor to end of line.
SS + E cursor to the beginning of the text
programs.
SS + U cursor to end of text
programs.
Working with text:
CS + 0 erases the character and re-
Move the cursor to the left.
CS + 1 erase right from cursor
symbol.
CS + 2 insert a space to the right of
cursor.
move to the line below from
cursor.
SS + I inserts a blank line above
cursor
SS + Y erase the line on which
the cursor is located.
SS + A mark/unmark
block of text.
SS + D erase marked text.
SS + G copy text from book
fera.
SS + F write the contents to disk
my buffers.
SS+ S find sequence
characters in the text, with the possibility
their replacement. After clicking this
Pressing the keys will prompt you to Find.
What? (find what?), after that
you need to enter the sequence of symbols
oxen you want to find. This
the sequence may contain
from 0 to 32 characters. When you come
select the sequence you need
characters and press on the screen
another request Replace With? will appear.
(Replace with what?). Enter the sequence
intensity of symbols, which
the symbols you specified in
Find What request? (if you do this
want). After you have collected
Enter the characters, press the key
and the program will start searching
down from the cursor sequence,
specified in 'Find What' and if not found
child, the program will display a message
'Not found' (Absent). But if
the program will find the one you need after -
consistency, then the cursor will move
to the beginning in the text of this sequence
information and the program will display a message
'Replace this string? Y/N/G/Q'
(Replace these characters with Yes/No/All/You-
move):
Y (Yes) - replace this sequence
attention and look further.
N (No) - do not replace this
sequence and look further.
G (All) - replace all suchsequences in the text.
Q (Exit) - exit from the operation
search and replace.
Note: for the directive to work
SS + S (Search) requires availability
more than one line of text.
PASM assembler directives:
ORG ADDRESS ;starting address of the assembly
blazing.
ENT ; this assembler directive
indicates which line in the text
the program will start in the editor-
tore after clicking in the main menu
R keys
When working in Assembly language, it would be
It is convenient to use directives
Announcements (Declaration). In PASM
to enter the number N in address 50000
you can write:
ORG 50000
DВ N
The same goes for a two-byte number:
ORG 50000DW NN
To declare a text string use
The 'DS' directive is used. Text
the message must be contained in
quotes. But unlike other ac-
samplers in PASM there is no directive "for-
give buffer" (DEFS). This directive in
PASM assembler is replaced by the directive
DUP (Duplicate) together with the directive
by you DB and DW. For example, for entering
ten zeros starting from the address
50000 should be written:
ORG 50000
DB 0 DUP 10
It is worth noting that after DUP you can
You can only leave one space before
numbers, otherwise you will receive
those error message.
* - this assembler directive is
where the file name should go
no more than 8 characters in size. When as-
assembling a program with a directive
'*' loads text from disk
file (but not displayed on screen).This
the file is assembled into the appropriate
current addresses. For example:
ORG 50000
NOP
*DOWN
RETFirst, the NOP instruction is assembled,
then a file named DOWN , and then
behind him is the RET team.
To set the start of a comment
The directive ';' is used. For example:
LD НL,#4000 ; SCREEN
Directive '$' - current computer address
ling (this directive can be
change in transitions JR and JP). For example
measures:
ORG 50000
50000 JR $+2 >------
50002 NOP I
50003 RET <----------
There will be a transition to RET.
Enter numbers:
# - hexadecimal
% - binary ( %11111111=#FF=255 )
In expressions with numbers, you can use
call the signs /,*,+,-. For example:
LD NL,#4000+#FF Main menu:
To enter the main menu you need
You can press the or CS+SS key.
In the main menu you will have access to
the following commands:
With - Cat a catalog is displayed on the screen
disk if the directory is not
fits on one screen,
the program will ask 'Conti-
nue ? Y/N' ( continue ?
Yes/No).
G - Get Load a text file
from disk.
P - Put Write a text file
to a disk with a working name.
S - put аS Write a text file
to disk, but different
a request will appear from Put
name.
J - put obJ Write volume to disk
project code.
Z - Zаp Erase text edit-
my file from memory.
O - Out Display on the screen or on
printer label name and
their corresponding addresses
in ascending order ad-
res. To display on screen
after the request 'Printer?
Y/N' (Printer Yes/No) on-
press the desired key.
L - compile Compile text
programs into object
code.
R - Run Start compiled
programs in the editor.
If there is no di-
ENT directives, then start at
RUN command occurs with
from the very beginning of the program.
If ENT is present
in the program text, then
the start will be made
with the one after ENT
commands
In - Vue Exit to BASIC. Return to
BASIC editor
command RUN or
RANDOMIZE USR 24500.
When returning to the editor
the cursor will be in the same place
my position, what is he in
was before the BYE team.
To stop the actions of commands on -
press the <ВREАК> or SS + CS key
(Press longer).
Assembler characteristics
PASM v.2.3 (48Kb)
Necessary for work operational
memory - 48Kb.
The number of characters per line is 64.
Address of the beginning of the text being edited
programs in memory - 34649.
Maximum program text size
frames - 30884 Bytes.
Minimum label length - 2 characters
la.
Maximum tag length - 14 sym-
oxen (the label must begin with
letters, after the mark is required
put a space, and inside the mark -
there should be no whites).
Minimum compilation address
ORG - 35971.
Undocumented commands are real
called.
Working with half registers does not
implemented.
Assembly speed - 500
lines per second.
Labels are stored along with the text.
The stack before running PASM must
be set to no higher than 24499.
Service information.
(line at the bottom of the screen.)
30884 0000:0000:00 0000 0000
1 2 3 4 5 6 7
1) Amount of free memory for
text of the edited program.
2) Number of lines in the editorial text
programmed program.
3) On what line is the cursor located?
4) On which column is the chicken?
rubbish
5) First marked line.
6) If there is a space, then there is nothing in the buffer
one line, if the colon is
cheat there are lines in the buffer.
7) Last marked line.
Work file:UNTITLED
name of the working file, if there is no name,
then UNTITLED.
Excutes:50000
From what address will the start take place?
after the RUN command in the main menu.
Nice to note the save mode
monitor resources.
Among the disadvantages of assembler can be
but attribute the impossibility of printing to technology
one hundred programs for the printer. WARNING!
Dear readers!
Who will work with this assembly?
rum or already working! After my ra-
I got the hang of bots with PASM
chatting that the macros in it are organi-
you can't downgrade, but I'm not into it
sure .
HELP!!!
This is probably worth ending with
description of the PASM assembler. Write
letters, call, dear readers
.
See you soon!
Share your thoughts about the article