Info Guide #01
  Софт  

Assembler - Shadow mnogotekstovy assembler debugger ALASM v4.1 brief description of functionality.

<b>Assembler</b> - Shadow mnogotekstovy assembler debugger ALASM v4.1 brief description of functionality.
          Shadow mnogotekstovy

      assembler, debugger ALASM v4.1

             Short description

       functionality.

Get answers to most questions
can be directly experienced by at
use ALASM. On the other issues
call in Kharkov:
(0572) 70-37-49.


               Contents:

    1. Memory Allocation

    2. COLD START

    3. TEAM ENVIRONMENT ASSEMBLER

    4. EDITOR COMMANDS

    5. Assembler directives

    6. Compile Error

    7. SETUP MENU OPTIONS

    8. In the next version

    9. Unlike previous versions



    1. Memory Allocation

   ALASM allows you to work simultaneously with
several texts, located in different pages of user memory. Go
by editing one page to another
performed by entering the command
PAGE [Home]
of the operating line asemblera either team SS / ENTER, which 
allows you to conveniently select the desired file from the 
appearing list. Number of texts that can be processed ALASM, 
depends only on the amount of memory computer.


   Changes in the assembly are numbered on the mask of maximum 
value passed in the extended memory driver. In this case, it

lower 3 bits correspond to bits that is transmitted to the port 
# 7FFD. 



    2. COLD START

   When you start the assembly of the TR-DOS screen
cleared, and it appears copyright
entry, and thereafter the memory test on all eight bits of the 
page number drayvera.Ego results are displayed on screen

in the form XXX kb mask XX.Chisla indicate how much memory is 
available in your assembler computer and which bits of the page 
number responsible for access. For these bits masked operand 
PAGE and the other teams. 

   Lower memory test output HELP, containing a list of assembly 
instructions and redaktora.Goryachie keys of these teams made 
in title mode. 

   After the appropriate messages when any key will clear the 
screen and output to the working string assembly. 



    3. TEAM ENVIRONMENT ASSEMBLER

   A list of these commands can be obtained
on the screen by pressing klazhishi "H" (HELP). Enter the 
command you want by clicking the Latin letters contained in the 
composition of this team as zaglavnoy.Pri this team entered are 
displayed on the line, and then, if necessary, waiting for 
input operands, or, depending on the destination, confirm by 
pressing ENTER. 

   After entering the command, it is duplicated in
desktop screen and running. In the case of invalid operand is 
displayed a message. 

   Executing any command can be
interrupted by pressing the BREAK.

   If as a result of the command
may be lost text, if it was
changed, you are asked to retain it: File has been changed. 
Save (Y / N)? 

   In the command system environment assembler include:

Help
Format: HELP
Displays the list of commands available in
assembler and redaktore.Komanda HELP no operands and does not 
need to be confirmed by pressing ENTER. 

Quit
Format: QUIT [e] [Home]
Exit the assembler. If the parameters are not specified, exits 
through the bottom stack, otherwise performed

unconditional jump to the address provided.
Parameter "page" is transmitted to the driver
upper memory (the default is 0).
As the parameters of the "address" and "page"
can be used marks or containing arithmetic expressions.

Debug
Format: DEBUG
Exit the debugger STS. In the absence of
page 7 of the monitor generates the appropriate 
soobschenie.Esli before entering this command, the text has 
been compiled, the address pointer debug monitor will be 
recorded address of the last ORG.Pri this by typing in the 
debugger SS / 5, you will be able to debug your program, 
watching the screen label names in their addresses.


Run
Format: RUN [address] [Home]
Performs the same operations as the command
QUIT, but before it enters the stack address
return to the resident module assembler
that allows you to return to the assembly of the programs run 
from the command RET.Po default, the "address" is set to latest 
directive ORG, and the parameter "page" - 0. 

Work
Format: WORK [drive:] [filename [. Ext]]
Download the file in the current working page.
The default is expanding "H".
"Filename" may be a mask.
In this case, will be uploaded the first file
which she udovletvoryaet.V if the parameter "filename" is not 
entered, the user opportunity to select a file

from the directory of the current or specified disk
by selecting its cursor from the file list that appears at the 
top of the screen. 

Catalogue
Format: CATALOGUE [drive:] [mask]
The default is "*.*" (all files).
Displays the directory of the drive.
Format mask is defined as follows: the "?" determines that this 
position may be any simvol.Znak "*" specifies that, starting 
from this position, All characters can take arbitrary

znacheniya.Pri reaching the limiter (the "." or the end of the 
line) is assumed that the rest of the line is filled with a 
space character. 

nUmbers
Format: NUMBERS [option]
Change the number system display numerical information. 
"Parameter" is is one of two expressions: "DEC" or

"HEX".

Name
Format: NAME newfilename [. Ext]
Change the file name to something new.
The default is expanding "H".
"Newfilename" - a new file name.

Print
Format: PRINT [bytes list]
Displays the port ZX-LPRINT the current text,
first output from the above list
bytes. Bytes indicated by a comma.

Edit
Format: EDIT [drive:] [filename]
Go to edit the file in the current
stranitse.V if given option name
file, the file with that name is loaded into
the current page. If the same file on disk is not
found in the current page, a new
file with the entered name.

Merge
Format: MERGE [drive:] filename
Podgruzka text file format in ALASM
the end of this file. The parameter "filename"
is mandatory.

counT
Format: COUNT arithmetic expression
Computes the specified arithmetic calculations 
vyrazheniya.Rezultat displayed in decimal, and hexadecimal 
sistemah.V as parameters of the arithmetic expression can be 
used by tags and their older and younger bytes. 

sYmbol
Format: SYMBOL [mask]
Displays the list of labels that satisfy the condition of 
"Mask." The command is executed only if, before this was 
kompilyatsiya.V attribute tags can be displayed the following 
message: number - the value of tags, defined for


        compilation;
NoDef - The label has not been determined, but was

        used;
Macro - The label is the name of the block

        macros;
Wrong - Format tags are not defined vsledst
        condition compile errors.

Assemble
Format: ASSEMBLE
Produces a compilation of text in the current
page, beginning with the first stroki.V compilation process 
displays a number of compiled lines of control hang the 
machine. At the end of compilation displays the message:

 Symbols: AAAAA-BBBBB
Said difference is the amount of free memory in the page 
allotted for metok.V table if the table tags divorced on 
different pages, setting AAAAA specifies the address of the 
last entry in the POST SYMBOLS PAGE, and the parameter BBBBB - 
in SYMBOL LIST PAGE; 

Save
Format: SAVE [+] [drive:]
Burn to disc edited text.
If you use the "+" for the current or
specified drive write all the files
which set the marker changes. In
Otherwise, on Disk at current fayl.V if a file with that name 
already exists on the disk, it is removed without any 
additional queries. 

Info
Format: INFO
Displays the version number, a list of numbers of system memory 
pages and transferring files located throughout the computer's 
memory at the time of the team. 

paGe
Format: PAGE [page number]
Go to the page specified as the
setting page. "Until the next change of command parameter PAGE 
specified page is current and all the commands for the current 
page will be performed on it. 

driVe
Format: DRIVE Drive:
Specified drive becomes the current and
all the commands for the current drive will be
operate with him.

Jumb
Format: JUMB [+]
This command replaces the current file, all
pointers once you compile with "-" on
"+". If the option is specified, it will read the entire memory.

SS / ENTER
Revitalization of manual selector files
are currently in memory.

Ban
Format: BAN [+]
This command is used for cleaning
pages of text.

conFig
Format: CONFIG
Entering this command in a working assembly line will allow you 
to switch to SETUP, in where you can change the configuration 
of the current session and save it to disk directly into the 
body alasmXX.C Configuration settings are reset

as soon as they change.



    4. EDITOR COMMANDS

   At the entrance to the editing window screen
divided into two parts: the edit window and an information 
line, which displays the page number of the current file, his 
name, the amount of memory in this page and the number of bytes 
transferred in pocket (if this number is not 0). In this

same line provides the delivery service
maintenance commands text.

   While editing a user
available service service team
text, but in contrast to the assembly environment, the result 
of their implementation is not visible on the screen as a text 
message, and controlled by the user.

A list of editor commands asemblera ALASM:

Quit
Format: Q
Exit the editor in Wednesday asemblera.

Begin
Format: B
Go to the top of the text.

End
Format: E
Go to end of text.

Search
Format: SEARCH [character string]
Search for a string of characters in the text. The search 
starts from the position following the current cursor position 
and continues to the end text. When you stop searching, it can 
be continued by entering a combination of SS / I, and if such a 
command is given after the end of last line of text, the search 
will be started from its inception.

If the "character string" is not specified,
it will use the string entered in
previous times.

sYmbol
Format: SYMBOL [tag name]
Search tags describing the text. When searching
assumed that the first character of the label is zero 
pozitsii.Svoystva - similarly SEARCH.


coDe
Format: CODE XXX> [character code]
Setting the cursor position of the symbol with an arbitrary 
code, typed on the keyboard. When you type the character code 
appears, located at the current cursor position and

proposed to replace it with another. If
parameter is ignored, no action
produced will not be.

Restore
Format: R
Copying the contents of his pocket in a position
cursor. Line, on which the cursor is located, is the first 
post-content pocket. After this operation is reset

Flag permission add pocket.

Clear
Format: C
Cleaning the pocket.

Xreplace
Format: REPLACE stroka1stroka2
Starting from the position following the current cursor 
position, text searches "String1". Once it is detected,

I get a message "REPLACE (Y / N / G)?". When
reply "Y" current "string1" is replaced by
"String2" and the search continues. When
answer "N" the search continues without replacement.
If you answer "G" all met expression
"String1" will be replaced by "string2" without
additional zaprosov.V any time during its execution command can 
be interrupted by pressing the BREAK (CS / SPACE). 

Line
Format: LINE line number
Sets the cursor on the specified
number. Rows are numbered from zero up to
end of the text in increments of 1 on each
line.

Jumb
Format: JUMB [+]
Without the option scans the text in the current page to 
replace the directive - "to" + "(this operation is performed 
automatically at startup of each file from the disk). Since the 
[+] produced scanning of all texts found in the memory.



   When editing text, the user
available functions to be called simultaneously
pressing two keys. These features accelerate
work in the editor and have no operands:
SS / I - continue the search;
SS / D - switching the Russian and Latin

       registers the input text information
       tsii.Izmenenie register indicated

       modification of the cursor;
SS / Q - delete the current row. When these
       nenii This command deletes the line

       automatically transferred into your pocket,

       but only if it is not

       was busy with other information;
SS / W - insert a blank row stroki.Tekuschaya
       ka shifts downward;
SS / E - Copy of the current row in the car
       man.Posle this command cursor variables
       was placed on the next line;
CS / 1 - tab;
CS / 2 - Insert a space at the cursor position.

       The rest of the line shifts

       right;
SS/EN- displays a list of files,

       which with the cursor selects
       Xia want to edit;



     5. Assembler directives

    When writing a compiler author maintains a set of 
directives adopted in TASM 3.0.Direktivy not present in the 
above creation, selected in accordance with international 
practice of writing compilers assanblera, t.e.s by lantern and 
English-Russian dictionary. List compiler directives ALASM and

Description:

1.

        ORG address [Home]
Address set compilation. Default
parameter "page" is set to 0. In
As information about the current address of the compilation can 
be used by the symbol "$" equivalent treatment to 
zarezervivovannoy variable containing the address of the first 
byte command, which occurred appeal. Example: 

        ORG # 7D19

        LDIR; LDIR recorded at # 7D19

        ORG # C069, # 84

        INDR; INDR recorded at # C069

            , At page # 84 of upper memory

2.
label EQU value
Assigns the label of a value equivalent to
parameter "value". Example:
SCREEN EQU # 4000; SCREEN = # 4000
ATTRS EQU # 5B00; ATTRS = # 5B00
SCR_LEN EQU ATTRS-SCREEN; SCR_LEN = # 1B00

3. Opreatsii selection senior and junior
byte words:
NUMB1 EQU # 1234
NUMB2 EQU # ABCD
STBMLB EQU. NUMB1 * 256 + 'NUMB2; STBMLB = # 34AB
MLBSTB EQU 'NUMB1 * 256 +. NUMB2; MLBSTB = # 12CD
; Try to avoid division by 256 to
; Get high byte needed
; Words, as the division is 280 times
; More time than just a distinguished operation; leniya High 
Byte 

        DEFB 'NUMB2
; Absolutely equivalent, but much more rapid; Reeh than

        DEFB NUMB2/256
; When you specify a byte value of the label infant; dshy bytes 
allocated automatically 

        DEFB. NUMB1
, Equivalent

        DEFB NUMB1
, And therefore mainly used for

        DEFW. NUMB1

4.

        DISP address
Address setting, which should work
program.

        ENT
Assigning the address of the program addresses the current 
compilation. Example: SCREEN EQU # 4000


        ORG # 8000

        LD HL, BEGIN; Move Region

        LD DE, SCREEN; screen and run

        LD BC, END-BEGIN; procedure of waiting

        LDIR; [A] Interrupt

        CALL SCREEN

        DI

        HALT
BEGIN DISP SCREEN
MARKA DEC A

        HALT

        JP NZ, MARKA; JP - not by accident

        RET

       ENT
END

5.

   INCLUDE "drive: filename [Home]
Inclusion in the compiled file an additional text block on the 
disc under the name "file name". In this case the file is 
uploaded to the page specified as a "page" (default - current). 
Upon completion of the compilation unit included compilation 
continues with the line that follows the directive.

A feature of this directive is
that the file specified in it, will not boot from the disc if 
it is already in the required page. Example:


        LDIR

        INCLUDE "TOKENIZE", a

        OTDR

        INCLUDE "ALASM2"

        HALT
; First bydet compiled LDIR, then
The text "TOKENIZE.H", loaded into the page
, 1, then the OTDR, then the current page
; Be downloaded and compiled the text
; "ALASM2.H", then the disk will be assumed; tan main file and 
the compilation will continue, with team Xia HALT. 

6.

        MAIN "file name" [Home]
Specifying the master file compilation. MAIN directive must be 
the first executable directive of the slave file. Be careful 
with file names containing the characters "." Or "*". It is 
better to replace them with the symbol "?".

Example:

        MAIN "MAKE6? 7", 6

        LDIR
; After giving the command ASSEMBLE compilation
; Pass to MAKE6 * 7, located
, At page 6, and then being in it
; INCLUDE is a subordinate program
, Consisting of directives and commands MAIN
; LDIR. In the included files MAIN ignored; is, therefore, 
after assembling LDIR , There is a return to the main programs, 
and A continuation of the compilation.


7.

       INCBIN "drive: filename" [, length]
Inclusion of a program to compiled code block, on the disc 
under the name "File name" size "length" bytes or

default of the directory data.
Example:

        ORG # E000

        LD HL, SCRFILE

        LD DE, # 4000

        LD BC, 6144

        LDIR

        RET
SCRFILE INCBIN "SCR6? 7, 6144
To the address SCRFILE during compilation
; File will be downloaded SCR6 * 7, which after
; Launch will be postponed to the screen.

8.

        DUP number
Left soft brace. Indicates the beginning of the block, which 
must be compiled "number" times in a row 

        EDUP
Right soft skobka.Ukazyvaet at the end of a repeatable block.
Example:

       DUP 1932

        LDI

        LD A, B

        OR C

        JR Z, $ +3; $ - address of first byte

        LD (HL), D; compiled command

       EDUP
; Block of text between the DUP and EDUP will otkom; mill 32 
times 

9.
DEFM "character string" ["character string"]
Reservation line character.
Example:
DEFM "There was a string of characters", "John"

10. DB, DEFB

        DEFB byte [list of bytes]
Reservation list of bytes
Example:

        DEFB "Y", 13.10, "Booty", 13.10

        DB "was", 13.10, "dog", 13.10

11. DW, DEFW

        DEFW word [word list]
Reservation list of words.
Example:
DEFW ALASKA, BUFFER, 12, # BD15, 32767,. NUMB1

12. DS, DEFS
DEFS reps [list of bytes]
List of bytes (default - 0) is copied
in the current address of the compilation. Number of cycles
equal to the parameter "number of repetitions."
Example:

        LD SP, # 5B00

        DEFS 8, # C5, # D5, # E5, # F5
, Equivalent
; DUP 8
; PUSH BC
; PUSH DE
; PUSH HL
; PUSH AF
; EDUP

13.

        + 
When you load the text from the disk, it scans
in the presence of a pointer "+" at the beginning
each line. In the process of compiling all
encountered signs "+" will be replaced by
"-" That tells the compiler to the lack of
to compile the line at the next assembly. Example:

       LD HL, # DB00

         + SAVEADR

         + ORG # DB00, 7

         + INCBIN "sts7.5a"

         + ORG SAVEADR

       JP (HL)
And the main file debugger will be loaded
, Only the first compilation of text, soda; rzhaschego these 
commands. 

14.

        label = expression
Reassigning the value of an existing
tags. Example:
SHLUSS EQU 0

        ORG 32768

       DUP # 4000

        DEFW SHLUSS
SHLUSS = SHLUSS +1

       EDUP
, All memory above the # 8000 will be filled
, Increases the words from 0 to 16384



    6. When compiling the source code
possible to issue a compile-time error,
associated with the inattentive programmer


  List of errors at compile time

    assembler ALASM

  0 - syntax error;

  1 - there is no contact with the power supply;

  2 - Error math coprocessor;

  3 - a short passage is incorrect;

  4 - lunch;

  5 - water on the motherboard;

  6 - re-description tags;

  7 - reserved for DOS;

  August - is reserved for ROM-BASIC;

  9 - reserved for user;

  10 - Compiling the ROM;

  11 - Invalid operation;

  12 - Incorrect MACRO-operation;

  13 - not used;

  14 - fault system stack;

  15 - disk error;

Error filling time:
wrong short - improper handling of metal
              TKE is beyond the "short"

              field;
not defined - the label is not defined.



    7. SETUP MENU OPTIONS


Save SETUP

            Write to disk all the settings changed in SETUP 
last time work session.


    Record all parameters are
directly into the body of a monoblock ALASM, so there is no 
need to create and download a single file with an initial SETUP 
zagruzke.U duplicates of each assembly font size has its own 
individual name that candy bar and be recognized. Not

recommended to change it, because it can lead to a fatal 
discrepancy. 

Load FONT codes

                 Download the file from disk
font. Depending on the nature of the program is dialing the 
programmer may need to use an alternate set of characters, 
which in this case may be loaded from disk. When you select 
this option at the top of the screen, a list of available files 
for a given size Font and cell cursor to select the desired 
file. Font files are identified by length and at boot time.


KBD forming - a pause between the two surveys
KBD holder - protection from Bounce
KBD wait - pause before auto

             Setting the constants that define the parameters 
of the poll keypad. Bandwidth constant interval between the two 
surveys is chosen first, depending on the type of keyboard 
controller or otsutstviya.Chem above its value, the higher the 
stability, but increases delay. 

Russian

         Change the encoding key to the national to the sound 
or naoborot.Natsionalnaya encoding (abbreviated - "QWERTY") is 
useful for keyboards, for which she applied for some 
prichinam.Zvukovaya encoding (Yaver ") is used on computers 
without relevant clues, but in general it is -

matter of habit.

Border
Ink
Paper
Bright

             Installation of frame colors and screen. Colors 
corresponding to the digits can be found in any self-respecting 
book on your computer. For color blind much irrelevant.


Numbers

        Change the number system displayed on-screen numeric 
information (hex / decimal). 

Start page

            Specifying a page number, which will become current 
at startup ALASM.


System page

             One of the basic system
parameters, indicating in what page
should be ALASM out session
with him.

Symbol list

             Page number, which will be posted a list of marks 
obtained at compilation of the text. This list can be

used when compiling for
information on labels by the user or
debugging to improve the readability of disassembly of the 
memory. 

Post symbols

             Page number, which will be posted a list of 
mailing label compilation. After compilation is complete, this 
list is not of itself to Users no informational value.


Pocket page

             Home, which houses the text information is stored 
in While editing the text. If the parameter

"Pocket page" is "Post symbols", then
compile the contents of each pocket will be
collapse. Otherwise, your pocket will be maintained throughout 
the session work.


Debugger

          In this option, you must specify the page number 
where you prodpolagaete host the main file debugger. In this 
case, all the teams, anyway svazannye with him, pre-tested it 
This page on the presence or absence of the necessary 
identifiable sequence. 

HImem driver

              When you select this option, you
invited to read from disk one of the suggested drivers top 
pamyati.Eti drivers differ only for computers with memory more 
than 128 kilobytes of addressable byte in the port of entry # 
FD and bats, are responsible for obtaining access to additional 
memory. Driver file is identified by length and address of the 
initial installation zagruzki.Pri ALASMa need to find the 
driver memory, which corresponds to the capabilities of your 
computer. About specialization of a ddayveda nedvusmysleddo 
ugazyvaet his individual name, kotodoe can pgochitat in your 
drive. (АААРХХГГМММПППЩЩЩББББУУУУЭЭЭ!! Please sorry - a runny 
nose). Driver format can be understood from the attached source 
files. 



    8. In the next version
The current version of ALASMa is not the last, as ways to 
improve incalculable. The author will make every effort

to make assembly even easier
for the user. A list of refinements that
should be expected in future versions of the first
turn:
- Increase the speed compile another

  18.3%;
- The universal printer driver;
- Directives for conditional compilation;
- Macro-and macro;
- Output tags, not only by name, but also

  value;
- RAMDISK files, loadable with the help of
  schyu INCBIN;
- Elimination of drawbacks associated with one
  checkpoint;
- Increase memory labels to 64 Kbytes (4

  page);
- The ability to view the unused

  labels;
- Write to disk compiled objects
  tnogo code;
- Repeat Directive on the list of parameters;
- Display line numbers in Reda
  ktirovaniya text;



    9. Unlike previous versions
Below are the changes made to the ALASM
after version 2.5. To clarify the meaning of changes see above 
in the text. - Set the system data placement in


  memory, etc.;
- Recoding QWERTY-YAVERTY;
- A significant increase in memory for labels

  by compressing the data;
- Acceleration of compiling is almost a factor of 2;
- To work with expanded memory

  any computers via configurable

  Driver;
- When loading a file can be omitted

  his name, and select the cursor from the list;
- To go to edit the file already

  in-memory, put the choice of chickens
  litter from the list in all modes;
- Output errors filling time can be

  stop pressing BREAK;
- Possibility to reassign labels in the space
  process of compilation;
- Starting with version 3.0 ALASM not use

  break;
- Accelerate time lines on the screen;
- The ability to change the working page without

  exit EDIT;
- While retaining the strings in the pocket shift

  full screen;
- Files in the selectors are the column
  mi
- Introduced the possibility to work with the debugger

  in every page;
- Set the addresses start debugging establishes
  logger only once after each component
  exclusion;
- You can have a number on the SETUP
  initial working text page, which establishes
  Lebanon to launch;
- Introduced the team record to disk all of the
  changes files;
- Introduced the team change the current drive

  separately, and when you enter the file names through

  function 1 TRDOS;
- Introduced in the converter UNICON translator

  ALASM in the text;
- Introduced a single compilation directive

  lines;
- Introduced the first reset command flag com
  pilyatsii;
- Introduced the "fast" key to rapid aB
  topovtorom;
- Configurable constants refuted
  sa keyboard;
- On the INFO command is indicated by a sign of
  variation of each file;
- For all font sizes have introduced individual
  cold dual message;
- When reading files in SETUP are selected

  cursor from the list.
and much more ...



   Edited with a text editor "THE
GIST "system ALDOS
 Mishchenko Alexey (ALEM JERUS)

                       09/07/1997.
Address: Ukraine, 310177, Harkov177, pr.Slavy, 7
Sq. 17.
Phone: (0572) 70-37-49



Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Similar articles:
Forum - discussion of Problems of modem network gopoda Lugansk.

В этот день...   23 November