CALIFORNIA STATE UNIVERSITY, NORTHRIDGE
COMPUTER COMMUNICATIONS
8080/85 MICROPROCESSORS COMMUNICATING WITH DEC MINICOMPUTERS
A graduate project submitted in partial satisfaction of
the requirements for the degree of Master of Science in
Electrical Engineering
by
Michael Henry Petrucci
January, 1985
The Graduate Project of Michael Henry Petrucci is approved:
Professor Helen Ryaciotaki Boussali
Advisor
Professot John J. O'Brien
Advisor
.-Y. Wong
California State University, Northridge
ii
DEDICATION
In dedication to my wife Lucia, whose patience,
understanding, and help made this paper possible.
iii
ACKNOWLEDGEMENT
Thanks to Doctor Robert Wong,
Professor of Electrical
Engineering at California State University, Northridge.
His work in the areas of pattern recognition and digital
systems has made significant contributions to higher
education and the high tech industry.
He has helped me
and many others achieve the skills required to face
future challenges and his personal achievements has and
will continue to benefit society.
iv
TABLE OF CONTENTS
Dedication ••••••••••••••••••••••••••••
iii
.......................
iv
Acknowledgement
List of Figures •••••••••••••••••••••••
vii
List of Trademarks ••••••••••••••••••••
viii
1.1
..............................
Introduction ........................ ..
Overview ... ...........................
1.2
System Descriptions· •••••••••••••••••••
5
Set-Up Procedure and Configuration • • • •
9
Abstract
1.0
2.0
2.1
.............................
9
Software Aid in Designing the
...............
.......................
12
2.3
Software Design
13
2.4
System Initialization •••••••••••••••••
15
Program Initiation and Description ••••
16
Help Mode •••••••••••••••••••••••••••••
17
3.1
3.2
3.3
3.4
3.5
5.0
3
Communication Interface
3.0
4.0
1
System Connections Using the RS232
Interface
2.2
ix
..........................
Terminal Mode ........ .... ..... ...... ..
Send Mode ........... ............... ...
Receive l-lode ............... .. .........
Possible Alterations or Additions .....
Conclusion ... ....................... ..
Example Mode
v
18
19
21
23
28
29
APPENDICES
APPENDIX-A
Program Flow Charts • • • • • • • • • • • • • •
30
APPENDIX-B
Communication Program Listing • • • •
62
APPENDIX-C
MDS Baud Rate Table
..............
138
APPENDIX-D
Communication Program Help Menu ••
140
APPENDIX-E
Communication Program Example Menu
142
APPENDIX-F
DEC/VAX DCL Procedures
144
vi
...........
LIST OF FIGURES
Figure 1.2.1
Software Organization • • • • • • • • • • • •
7
Figure 1.2.2
Operational Procedure • • • • • • • • • • • •
8
Figure 2.1.1
Cable Connection Interface with
a Modem..........................
Figure 2.1.2
10
Cable Connection Interface without
a Modem ••••••••••••••••••••••••••
vii
11
LIST OF TRAPEMARXS
DEC is a registered trademark of Digital Equipment Corporation.
PDP is a registered trademark of Digital Equipment Corporation.
VAX is a registered trademark of Digital Equipment Corporation.
CP/M is a registered trademark of Digital Research.
MDS is a registered trademark of INTEL Corporation.
ix
I
ABSTRACT
COMPUTER COMMUNICATIONS
8080/85 MICROPROCESSORS COMMUNICATING WITH DEC MINICOMPUTERS
by
Michael Henry Petrucci
Master of Science in Electrical Engineering
The purpose of this project was to design and develop
a communication system which through user interaction
would allow transfer of files between a minicomputer and
a microprocessor.
The uses for such a system are numerous
and have many advantages which include minimizing a
minicomputers processing time as well the flexibility it
offers to the user.
The techniques can be applied to
tasks as simple as mail transfer and as complex as banking
transactions.
By being able to transfer information from a larger
computer system (minicomputer) to a smaller computer
system (miqroprocessor), tasks can be shared by both
systems without loading down the larger system.
Also
direct user interaction can be achieved by using the
smaller system as a terminal.
The intent of this paper is
to develop techniques by which efficient communications
between the two systems can be established.
of the techniques are described.
X
Implementations
Design of the hardware
•
interface and software used to control interface communications are presented.
xi
1.0
INTRQDUGTION
With the increasing use of large computers as well
as smaller microcomputers in society, communication
between large and small computer systems becomes important.
An example of this would be reducing the data loading
time on a computer where a microprocessor could be used
to download files and work on these files, while the
computer is doing other tasks.
When the work is completed,
the files can be uploaded back onto the larger computer and
saved.
This will insure good data management control
while preserving the computer's time.
A second example concerns the use of computers
in the banking industry, and the availability of personal
microcomputers at home, communicating between these
two systems can be done through a phone line or a modem.
This enables the user to do his banking at home.
The project involves the design and development
of computer communication between a DEC-based minicomputer and an 8080/85 based microprocessor system that
uses CP/M as its operating system. System design considerations include: 1) having the microprocessor interact
as a terminal to the minicomputer, 2) a method of sending
ASCII files from the microprocessor to the minicomputer,
and 3) a method of sending ASCII files from the minicomputer
to the microprocessor.
An additional consideration
1
2
is the capability of downloading object files directly
to the microprocessor.
1.1
overview
The purpose of this section is to describe the
design of a communication link between a minicomputer
and microprocessor via software supported programs and
procedures. The systems selected to support the design
were the Intel Micro Development System (MDS)
using
an 8080/85 microprocessor together with a Digital Equipment
Corporation (DEC)/VAX minicomputer with a CP/M operating
system.
The hardware for both systems requires no modification internally.
The building of cables was done
to interface the two systems.
to perform three major functions.
1)
Software was designed
They are:
The microprocessor serves as the minicomputer
terminal.
2)
The transfer of ASCII files between the two
systems.
3)
The transfer of files in absolute or relocatable
formats from the minicomputer to the microprocessor.
The detail description of these functions as related
to the overall system performance is presented in Section
1.2.
Details of system design are described in Sections
2.0, 3.0 and 4.0.
Section 2.0 involves set-up procedure
4
of the cabling connections using RS-232
Interfaces.
Software design and program capabilities and limitations
will be given in Section 2.3.
Procedures were established
to initiate communications through the use of a modem.
Section 3.0 will describe in detail the modem's
program capability, together with several options available
to the user.
These options include the following five
primary modes of operation:
Send, and Receive.
Help,
Example, Terminal,
Secondary modes that may be used
in conjunction with the primary modes are:
after execution, object file transfer,
mode after file
transfer,
disconnect
go to terminal
show characters received,
and show characters sent.
Section 4.0 discusses possible modifications and
additions for future improvements and expansions.
Appendix A and B contain the bulk of the design
work, which included program flow charts and listings.
Appendices C- through F include menus, tables and procedures
needed to control communications between the two systems.
5
1.2
SYSTEM DESCRIPTIONS
The overall system is shown in two block diagrams,
Figures 1.2.1 and 1.2.2.
The system is first initialized
to enter one of the five primary modes of operation.
The five primary modes are:
1)
HELP
2)
EXAMPLE
3)
TERMINAL
4)
SEND
5)
RECEIVE
The "HELPn mode displays a list of all possible
operational modes.
The nEXAMPLE" mode displays results
of test cases associated with the operational modes.
If "HELP" or "EXAMPLE" are specified the system will
return to CP/M upon completion of these menus.
The
user must re-initiate the program to enter "TERMINAL",
nsEND", or "RECEIVE".
If the •TERMINAL" mode is specified the user will
be able to LOGON the minicomputer through the microprocessor's terminal. An enable print feature is also available
which allows concurrent printing of text on a line printer
as well as displaying the text on the terminal.
There
is also the ability to store all information output
to the terminal onto a specified disk file.
This is
6
~1
referred to as the •capture mode•.
The •PRINT ENABLE•
and •cAPTURE MODE• are controlled by pressing the <CTRL-P>
and <CTRL-Y> keys respectively.
A •DISCONNECT FUNCTION"
can be activated to terminate the "TERMINAL" mode of
operation by pressing the <CTRL-D> key.
If the •sEND• mode is selected the file specified
in the command will be sent to the microprocessor.
Upon completion the user can either be return to the
"TERMINAL• mode or "CP/M" mode depending on which secondary
option is specified.
Finally
if the "RECEIVE" mode is selected,
the
system first checks the disk for a duplicate file before
constructing a
file on the disk.
Once the transfer
is completed the system will be returned either to the
•TERMINAL" mode or "CP/M" mode.
'
7
SOFTWARE ORGANIZATION
START
INITIALIZE
ALL PROGRAM
VARIABLES
SELECT
MODE
'
HELP
'
It
EXAMPLE
TERMINAL
RET
CP/M
FIGURE 1. 2. 1
SEND
RECEIVE
TERMINAL
SEND
RECEIVE
MODE
MODE
MODE
I
tzj
If
\If
0
ttl
tE:I
H
Gl
c:
6j
1-'
N
INTERACT WITH
SEND A FILE BY
RECEIVE A FILE BY
MICROPROCESSOR
INITIATING A
INITIATING A
(ACTS AS A TERMINAL)
<CTRL-E> IN THE
TERMINAL MODE
<CTRL-E> IN THE
TERMINAL MODE
N
~
:x:-
8
H
0
z
:x:t'l
ttl
~
0
()
tE:I
0
c:
~
DETERMINE
IF FILE
ALREADY
EXISTS
It
DISCONNECT
FROM PROGRAM
BY USING A
<CTRL-D>
RET
CP/M
I
YES
l
(SECONDARY
TERMINAL
OD
¥
tE:I
DELETE IT
THEN
PROCEED TO
RECEIVE
J,
DON'T
DELETE
j,
00
2.0
SET-UP PRQCEDURE
2.1
System Connections Using the RS232 Interface
The type of cables and connections required were
determined by the type of interface used between the
minicomputer and the microprocessor.
Figure 2.1.1 shows
the interface used in the system.
A modem is used to
transmit data from one station to another station which
may be located at a remote location.
Figure 2.1.2 shows
the interface when a modem is not used.
To accommodate
modems made by a different manufacturer, the software program
can be modified to allow different logics to be implemented.
The details of the modifications are shown in Appendix-B.
9
DEM
f. B
-s
3 RXD
MDS
E
R
2 TXD
D
c
2
SERIES.
I
5 CTS
A
B
5
4 RTS
c
D
4
6 DSR
W1
D
c- W2
MICROPROCESSOR
SYSTEM'
A
L
c
H
A
N 20 DTR
A B
N
E 17 RX C ock
L 7
24 ~~~r ,., ... teA B
2 15 TX C ock W3
"%j
H
G'".l
c:::
~
N
.....
.....
I
3 f--
W7
8
T
E
R
M
I
N
A
L
DEC
VAX/PDP
SYSTEM
0
t:""'
t%l
(")
N
~
H
N
::c
w
17 R
7 T
24
15
H
0
zzt%l
(")
zH >
::;-(
H
0
t%l
H
H
t%l
:;d
"%j
>
(")
-
,~
>
txt
,....._
:;d
Ul
I
6 p
20
(")
MINICOMPUTER
t%l
'-"
0
::;-(
H
0
z
z
H
t%l
~
>
(")
)•
t%l
MDS
1
TERMINAL
2
7
VT
or
LA
SERIES TERMINAL
SIGNAL GROUND
,_.
0
...
rs 2
MDS
SERIES
HICROPROCESSOR
SYSTEM
E
R
I 3
A
L 4
~
-
c r2---<>
H
A 6
N
N
E
L 7
1-:!:j
H
GJ
c::::
~
N
2
1 ......
1-'
N
2
3
hf
E
R
M
I
N
...i- A
~ L
.£_
DEC
VAX/PDP
SYSTEM
()
HINICOMPUTER
t:Jj
L'
t%j
,......
p
0
:;;0
R
T
-""
::,t>
c::::
!-xj
::,t>
I
()
.. ~
t%j
..._,
~
1-j
N
:;a
t--
0
::X::
trJ
0
1-j
N
z1-j
()
z
zt%j
Cll
H
-<"
H
1-j
w
7
:E:
::,t>
8::
0
d
trJ
::s:
()
H
0
z
z1-j
H
t%j
~
::,t>
()
trJ
HDS
2
TERMINAL
3
VT
or
LA
7
SERIES TERMINAL
,_,
,_,
12
2.2
Software Aid in Designing the Communication
Interface
The
Intel
Microprocessor
Development
System
(MDS) was used to design, code, and test the software
programs used to control the interface communication.
In this case, the MDS is used to simulate the microcomputer and to control the transfer of data to
the minicomputer. The MDS uses an 8251 USART (Universal
Asynchronous Transmit and Receive) chip and the
software has been designed with this in mind.
This program allows the user to select modem interface
with either an 8250 ACE or a 6850 ACIA communication
chip.
The 8251
is set so that data can be transmitted
to and from the DEC minicomputer.
These tasks are
controlled by a sequence of operations which include
setting the mode of operation as well as the baud
rate which governs the rate at which the data is to
be transmitted.
13
Q '
2.3
Software Design
The
software was designed to control data transfer
through I/0 ports at a baud rate of 1200.
The program
was designed to execute 8080/85 code controlled by a
CP/M Operating System.
The system has the ability to
scroll the text displayed on the terminal by pressing
the <CTRL-Q> key.
key is activated.
Scrolling is disabled when the <CTRL-S>
A data capture subroutine was written
to allow the user to save a. listing of commands used
during a logon session.
The system normally communicates at a baud rate
of 1200.
Through programming changes, rates of 300, 600
and 2400 can also be selected.
Details of this program
is shown in Appendix-B.
The system is normally set-up to transfer data
in blocks each 2 kilobytes long and is restricted to
a maximum block size of 12 kilobytes for absolute or
relocatable files.
A maximum file size is limited to
31K blocks so that double precision arithmetic is not
needed in computing file addresses.
The program is presently written to run on an Intel
MDS based microprocessor system.
Flexibility has been
incorporated in the program such as it can be run on
14
other microprocessor systems with minor changes.
15
2.4
System Initialization
The system is initialized by executing the following
three steps:
1) Turn on the MDS development system and its peripherals.
2) Load the operating system into the MDS.
3) Set the DEC data to 1200 baud rate and connect
it to the MDS development system I/0 Port 1,
Serial Channel 2.
3.0
Program Initiation
The
program
five primary modes.
"R"
Receive,
has the option to enter one of the
They are: "T" Terminal,
•a• Help, or •x•
Example.
five valid secondary modes and they are:
after execution,
"O"
"D•
•s•
Send,
There are
Disconnect
Object file transfer,
"T•
Go
to Terminal mode after a file transfer, "R" Show characters
received and
•s• Show characters sent. Control characters
which the microprocessor will·recognize are:
1)
<CTRL-E> which enables or disables file transfer.
2)
<CTRL-D> which transfers system control from
the modem program to CP/M.
3)
<CTRL-Y> which enables or disables the terminal
capture mode of operations.
4)
<CTRL-P> which enables or disables the printer.
The commands are initiated by pressing these respective
keys.
An additional control key <CTRL-C>, is recognized
by the DEC System to abort procedures and therefore
the <CTRL-Y> command normally recognized by the DEC
VMS operating system is now recognized by the CP/M modem
program.
16
17
3.1
Help Mode
This function was implemented to make available
to the user a quick reference of all modem communication
commands without having to refer to the documentation.
To initiate the help mode,
RETURN> C<CR>)•.
type
"DMCOMM H <CARRIAGE
This would display a menu of all possible
modes as shown in Appendix-D.
18
3.2
Example Mode
As in •aELP• this gives the user a nicety and a
quick explanation of how to use the modem communication
program through examples.
type •nMCOMM X <CR>•.
To initiate the example mode,
This will give an example of how
to use the modem program in any one of the following
three primary modes:
Terminal
Receive
Send
Details of the operations of the example mode is shown
in Appendix-E.
19
3.3
Terminal mode
The terminal mode was designed to allow the user
to interact with the minicomputer.
It is also the default
mode for the "SEND and "RECEIVE• modes before transfer
is activated.
To enter it type,
simply "DMCOMM <CR>".
"DMCOMM T <CR>• or
This will put the MDS system
in an interactive mode with the DEC minicomputer.
At
this point it is time to LOGON the DEC system, remembering
that <CTRL-Y> is used by modem and <CTRL-C> must be
used to abort any procedures.
After logging on the
DEC system, initiate procedure "MDsT•, refer to Appendix-F
Page 145.
This procedure, written in VAX Command Language
(DCL), sets up the proper terminal characteristics for
a MDS terminal.
The default terminal for DEC computers
is usually a VT Series for VIDEO or a LA Series for
hardcopy (non-video).
The system is now in a mode where
the MDS terminal is tied directly to the DEC minicomputer
and execution of any normal VMS operating system commands
is valid with the exception of specific control characters
mentioned in Section 3.0.
the minicomputer,
When work is finished on
remember to LOGOFF,
but only after
executing procedure "VT100", refer to Appendix-F Page 146,
or "LA120",
depending on whether you are on a video
or non-video terminal.
This would reset the default
terminal characteristics of the minicomputers communication line.
LOGOFF the minicomputer and press <CTRL-D>
20
on the microprocessor to exit from the modem program.
It is not necessary to LOGOFF the minicomputer system
anytime you disconnect from the modem program.
21
3.4
Send Mode
The •send Mode" was designed to use "short• command
lines and procedures written in a self-help format.
It
is activated by typing in the following command, "DMCOMM
s B:FILEY.DAT <CR>".
Upon initiation the system will be
placed in the "Terminal Mode". The system is now ready to
send ASCII formatted file FILEY.DAT located on the B
drive to the minicomputer.
To start transmission enter
VAX command "DECTMD". This ·initiates the DEC to MDS
communications procedure and will prompt the user appropriately.
The procedure can be found in Appendix-F
Page 147.
The procedure will prompt for the filename to
be created in the minicomputers directory.
Once this
condition has been satisfied, it will again prompt,
waiting for the user to initiate transfer by pressing the
<CTRL-E> key.
The program will then automatically start
the transmission.
The sending of data will be interrupted
every 2K blocks to allow the next sequential 2K of data
to be written to RAM before transfer.
The means for
interruption and restart is the X-OFF <CTRL-S>, X-ON
<CTRL-Q> protocol respectively which is controlled by the
modem program.
Upon completion of the send, the terminal
will display the following message:
and immediately return to CP/M.
"Transfer Complete"
To avoid being terminated
from the modem program, instead of entering the command,
"DMCOMM S <filename>", type "DMCOMM ST <filename>". The
22
•T• in this case is a secondary option, which will return
the program to the terminal mode upon completion of the send.
23
3.5
Receive Mode
The •Receive Mode• was designed and functioned in
the same manner as the send mode using "short• command
lines and procedures written in a
self-help format.
It is activated by typing in the following command,
"DMCOMM R B:FILEX.DAT <CR>".
As in the send mode, the
user is placed in the terminal mode until the appropriate
character,
i.e.
<CTRL-E> is initiated.
The receive
mode will receive ASCII formatted files from the DEC
minicomputer and save them into file specified by nFILEX.DATn
located on the B drive.
To initiate the receive, again
enter the VAX/VMS DCL procedure •nECTMD", refer to Appendix-F
Page 147 and follow the instructions.
The procedure will
again prompt for the appropriate information and issue
a
"TYPE" command on the file followed by a internal
<CTRL-E>.
Recognition of the <CTRL-E> by the microprocessor
will cause execution of post processor software which
determines if the file specified on the B drive already
exists on disk.
If it does exist, it will immediately
prompt the user to make a decision about deletion of
that file.
If •no• is specified, the program will abort,
and return to CP/M.
If "yes" is specified,
it will
proceed to delete that file and begin transfer with
interruptions occurring as before,
every 12K blocks.
The communication will continue until all records of
the file have been sent.
24
There is,
in the software,
a look-ahead buffer
which eliminates the probability of losing characters
during the receive. The reason for this look-ahead buffer
is that many systems have delays that exists between
them and because of these delays, the time that it takes
for
the <CTRL-Q> which is the X-OFF character to be
received by the minicomputer, processed and sent back,
"x" number of characters have already been transmitted.
These characters would in tur.n be lost.
To avoid this,
a look-ahead buffer is implemented and allows up to
a maximum of 128 characters ahead to be received.
If
more than 128 characters are being sent which is very
possible at higher baud rates or greater delays then
a double precision algorithm needs to be implemented
into the software to protect against loss of
Upon completion,
data.
the system will automatically
close the file and return to CP/M.
There is a provision
in the software that allows the system not to hang up
upon completion of transmission or a break in communication.
The microprocessor system recognizes a control character
which tells the system transmission is complete.
This is
through receipt of a <CTRL-Z> character at the end of the
file <EOF>.
An <EOF> implies <CTRL-Z>.
In most systems
this <CTRL-Z> never gets sent and therefore the microprocessor
will appear to be in a "sleep" mode not knowing that the
25
data transfer is complete.
To avoid this,
is implemented in the software.
a time-out
If no characters are
received within a specific amount of time,
the program
will automatically close the file and abort the procedure.
A message will appear on the screen displaying the
following:
"Modem Program Cancelled,
RX Timed-Out•.
Appearance of this message does not necessarily mean
that the file transfer was in error or not complete,
it could be that the <CTRL-Z> or the <EOF> mark never
came across,
and in normal PDP-VAX systems, <CTRL-Z>'s
are not sent with the file unless you send them separately.
The procedure bas the ability to automatically
send a <CTRL-Z> at the end.
What would happen if the
procedure wasn't available, the user would simply enter
the command line:
"TYPE FILEX. DAT <CTRL-E>" to start
the transmission and it will proceed to transmit the
data across.
When its finished,
the <EOF> would never
be recognized so it would time-out.
file
is received and the message is
Again,
Hence, the entire
unsubstantial.
to be returned to the terminal mode instead of
CP/M after transmission enter the command line as follows:
"DMCOMM RT <filename>".
Another valid receive mode that is available is
initiated by typing the following:
<CR>".
•DMCOMM RO B:FILEX.OBJ
You have allowed the MDS microprocessor base
system to receive a binary formatted file from DEC mini-
26
computer and to place the object into file FILEX.OBJ
on the B drive.
To activate the receive, again enter
the procedure •nECTMn•, refer to Appendix-F Page 147 and
follow the instructions.
Once in the procedure the
user would now press the •B• key to enter into the binary
format mode.
This would set the terminal character-
istics to disable all control characters that are normally
recognizes for specific VMS control functions. When
the transfer is complete the receive procedure will
reenable those control characters.
The reason for this
is because all valid ASCII codes must be transmittable
in order for the binary data to be valid.
The major problem with sending absolute or relocatable
files is the system has no control over the starting
or sending of the data because the <CTRL-Q> and <CTRL-S>
keys are now disabled.
Therefore, if the software is
not configured to handle the maximum size of that object
file, you will not capture the complete text. The only
way to correct this is to go in and change the blocking
of the program.
Depending on the type of assembler that the object
was originally generated from, a program on the minicomputer's
side also needs to be written and initiated to download this
data to the microprocessor.
Since there are many different
assemblers, compilers, etc., and they generated their own
27
uniquely formatted objects, individual programs need to
be written to allow appropriate decoding before transfer.
Once all the data has been received, and in the case of
the object file,
once 12K has been received, the file
will immediately be closed, the program disconnected, and
the user returned to CP/M.
(l
4.0
Possible Alterations or Additions to the Presently
Configured Software
There are a couple of additional modifications that
can be made to this
program.
One being a method of
error checking the ASCII transmitted data in both the
receive and send modes. Another, validating all baud
rates between 300 and 9600 to insure no loss of data
during transfer.
Implementation of variable baud rates
requires minor changes to the modem interface equate
statements to interface with the 8251 USART accordingly.
Additional software can be added to the modem program
for error checking of data.
implemented.
A checksum or parity can be
This can minimize errors due to line noise
or interferences in communication.
The modification
would enhance the reliability and thus improve the performance
of the system.
If changes are implemented for both the
send and receive modes an error checking program is also
needed for the DEC minicomputer.
To implement this program on other 8080/85 based
microprocessor systems changes need to be made to the
modem and data control port equate statements.
28
•
5.0
Conclusion
This paper described the design of a communication
system between an 8080/85 based microprocessor using a
CP/M operating system and a DEC minicomputer.
The modem
communication program has the ability to transfer ASCII
files between both systems.
It also has the capability
of using the microprocessor as a terminal to interact directly
with minicomputer's operating system.
Additional options
available with the modem program is its ability to capture
the minicomputer's logon session and to print ASCII files
simultaneously as they are received from the minicomputer.
A final
important feature is the ability to receive
binary object files sent from the minicomputer.
Suggestions
were also made to modify and enhance reliability and
flexibility to the program.
29
APPENDIX-A
PROGRAM FLOW CHARTS
30
31
INITIALIZE
PRIVATE
STACK
INITIALIZE
CP/H BIOS
ADDRESSES
CALL INTADR
GET PRI!vlARY
OPTION FROM
FCB TABLE
~A
HELP
1(0:----ll----< IF "HELP"
COMMANDS
SET DEFAULT
TO
.
TERMINAL
~
"T"
NO
32
SAVE PRIMARY
OPTION, VALIDATE SECONDAR
OPTION
INITIALIZE
THE MODEM OR
SERIAL PORT
AND SET BAUD
MOVE FILENAME
FROM FCB2 TO
FCBl
CALL PRIOPT
CALL INITMD
CALL MOVFCB
TERM
DIS CONN
TSND
33
YES
OPTION"
NO
TRCV
34
TERM
SAVE ALL
REGISTERS
EXCEPT
ACCUMULATOR
CALL STAT
CALL KEYIN
35
CAPTURE MODE?
CALL CAPTURE
TOGGLE
YES
NO
CALL PRINT
TOGGLE
IN PRINT MODE?
NO
YES
SEND THE
CHARACTER TO
THE PRINTER
READ STATUS
THEN ISOLATE
BIT
36
READ DATA AND
ECHO TO CRT
SEND TO
PRINTER IF
ENABLED
SAVE ONTO
FLOPPY DISK
IF ENABLED
CALL INDATA
CALL TYPE
37
CTRL-E INITIATED
SET TO ALLOW
ONLY ONE
EXECUTION OF
SEND OR RCV
YES
YES
YES
38
SEND A
CARRIAGE RET
& LINE FEED
TO SCREEN
NO NAME OR
AMBIGUOS NAME
COMPUTE
RECORD COUNT
CALL CRLF
CALL TRAP
CALL CNREC
OPEN THE FILE
YOU WANT TO
SEND
SENDLP
GET 16 SECTORS
CALL RDSECT
AND SEND
YES
SEND A EOF
END-OF-FILE
SNDEOF
SEND 16 SECTRS
CALL SNDSEC
39
RECEIVE STARTS HERE
I
'
SEND A
CARRIAGE RETRN
& LINE FEED
TO THE SCREEN
CALL CRLF
I
CHECK FOR FILE
NONAME OR
AMBIGUOS NAME
CALL TRAP
'
ASK TO ERASE
OLD FILE IF IT
EXISTS
CREATE NEW
FILE TO
RECEIVE ASCII
DATA
'I
DISPLAY
MESSAGE:
"FILE OPEN
RDY RCV"
POINT TO DBUF
(HL)+-OOBOH
,,
SEND A (CR)
._T_O_D_E_C_M_I_N_I_
CALL SEND
~
_;---~L/
CALL ERAFIL
CALL MAKFIL
40
RCVLP
SET MSB OF
TIMEOUT TIMER
D.,__ 15
D+-D-1
RCVLP3
SET LSB OF
TIMEOUT TIMER
TO MAXIMUM
B
+--
0
RCVCK
ADDRESS THE
MODEM CONTROL
PORT
(MDCTLP)
c+--c-1
YES
NO
B
~
B - 1
YES
41
GET THE WORD
FROM THE
MODEM CONTROL
PORT & SAVE
STORE EOF IN
DATA BUFFER
(HL) E--'EOF'
NO
INCREMENT THE
DATA BUFFER
YES
CLEAR CTRL-S
FLAG
YES
WATBITE-- 0
NO
RESTORE WORD
A~D
YES
FILL REMAINDER OF SECTOR
WITH EOF's
42
STORE CHARAC
IN DBUFFER
INCREMENT
DBUFFER
YES
STPDEC
SEND OUT A
CTRL-S TO DEC
STOP MINI
EARLY ! !
NO
SET CTRL-S
FLAG (WATBIT)
YES
RCVLP
CTRL-S LOST
RESEND TO DEC
MINI AND SET
FLAG (WATBIT)
WATBIT + - l
43
OBJECT FILE RECEIVE ONLY
STORE CHARAC
IN DBUF
( (HL) )~I CHAR I
INCREMENT
DBUF 1.4-L+l
NO
WRITE SECTOR
TO MEMORY
RESET DBUF
POINTER/CPM
(HL) +- 0080H
RCVLP
CALL WRSECT
44
LOOK AHEAD BUFFER FOR RECEIVE
E -- 0
(HL) +-LAHEAD
TIMEOUT COUNTER
ADDRESS THE
MODEM CNTRL
PORT (MDCTLP)
YES
GX
C+--C- 1
NO
B
NO
~B-
1
45
GET DATA AND
SAVE IN LOOK
AHEAD BUFFER
NO
EX
LOOK AHEAD BUFFER
OVERFLOW
SAVE LOOK
AHEAD BUFFER
COUNTER,COUNT
CALL WRSECT
NO
RESET ADDRS
OF LOOK AHEAD
AND DIRECT BUF
& PRFM SWAPPNG
PROCESS
SKIP
46
RESTORE COUNT
B +-COUNT
HX
RESTORE WORD
IN LOOK-AHEAD
YES
TRANSFER TO
DIRECT BUFFE
INCREMENT
BOTH BUFFERS
AND COUNT
B+- B+l
CLEAR CTRL-S
FLAG, WATBIT
SEND CTRL-Q
TO DEC MINI
TO RESTART
TRANSMISSION
47
WRITE LAST
SECTOR TO
MEMORY
CALL WRSECT
CALL WRBLK
CLOSE THE
RECEIVE FILE
NO
REENABLE
COMMUNICATION
BY SENDING A
CTRL-Q TO THE
MINICOMPUTER
SET WATBIT
FLAG, =0
CALL CLSFIL
48
DONE
DISPLAY
MESSAGE
"TRANSFER
COMPLETE"
YES
NO
CKDIS
49
NO
RESTORE ORIGINAL STACK AND
EXIT TO CP/M
50
LOAD AN EOF
INTO MEMORY
AND INDEX DBU
DBUF -- 'EOF
BUF - DBUF+l
YES
FILL THE REMAINDER
OF SECTORS WITH EOFs
WRITE THE
LAST SECTOR
TO MEMORY
SAVE THE
REMAINING
BLOCKS TO DSK
CALL WRSECT
CALL WRBLK
CLOSE THE NEW
FILE
CALL CLSFIL
BADEND
NO
51
SEND INIT
CHARACTER 3
TIMES TO 8251
USART-RECYCLE
lr
PROGRAM 8253
COUNTER TO
SET-UP BAUD
RATE TO 1200
SEND A RESET
TO THE 8251
US ART
'
SEND MODE
TO THE 8251
US ART
\
SEND "CONTRL"
TO THE 8251
US ART
MOVFCB
,It
MOVE FILENAME
FROM 2ND FCB
TO 1ST FCB
AREA
~------------~ RET
52
RDSECT
DECREMENT THE
THE SECTOR
COUNTER BY l
(SCINBF)
YES
RDBLK
YES
GET SECPTR
(SECTOR POINTER) 1 THEN
POINT TO CP/M
UFFER, DBUF
BUFFER IS
EMPTY SO POINT
TO CP/M BUFFER
RDSCLP
MOVE FROM
CP/M BUFFER TO
MEMORY BUFFER
SAVE SECTOR
POINTER
SET EOF FLAG
(EOFLG) -E--1
CALL
MOV128
53
RDSECT
RDSCOK
CONCATENATE
NEW SECTOR
WITH OLD
SECTORS IN BU
INCREMENT
SECTOR CNTR
NO
RDSECT
STORE SECTOR
COUNT IN
SCINBF
INITIALIZE
BUFFER POINTER
AND RESET DMA
RDSECT
RDSECT
54
SEND
SAVE D & E
REGISTERS
SAVE THE
CHARACTER IN
D REGISTER
GET THE
STATUS·
NO
RESTORE THE
CHARACTER
IN ACC
RESTORE D&E
REGISTERS
OUTPUT THE
CHARACTER
CALL INCTL
@
55
SNDSEC
POINT TO
READ DATA AT
PORT
NO
READ DATA AT
PORT
•
56
SNDSEC
READ DATA AT
PORT
SNDSEC
MOVE DATA FROM
BUFFER TO ACC
YES
DON'T SEND THESE
CHARACTERS
YES
SEND CHARACTER OUT
SNDSEC
CALL OUTDAT
SET "SEND"
DELAY THIER
SNDSEC
57
SNDSEC
C-E--C-1
COUNTDOWN
DELAY TIMER
B+-B-1
SNDSEC
INCREMENT
DATA BUFFER
SNDSEC
58
TRAP
POINT TO
FILENAME AND
GET FIRST
CHARACTER
EREXIT
LOOK AT ALL
11 CHARACTERS
YES
EREXIT
59
YES
END-OF-FILE
SAVE SECTOR
COUNT & POIN
TO DBUF
r-----------------~ DKWRLP
SAVE HL, DE,
AND BC
REGISTERS
SET DMA TO
BUFFER
C -- STOMA
WRITE THE
BLOCK TO
DISK
RESTORE HL,
DE & BC
REGISTERS
60
MESSAGE:
POINTER
DISPLACE
BUFFER 128 TO
NEXT SECTOR
DECREMENT
SECTOR NUMBER
SCINBF 4 SCINBF+l
RESET BUFFER
POINTER
SECPTR~
(DBUF)
RESET DMA
ADDRESS
61
WRSECT
MOVE FROM DBUF
INTO MEMORY
NO
WRITE THE
BLOCK TO DISK
(CALL WRBLK)
YES
OBJECT FILE
THAN 12K IN SIZE
WRITE THE
BLOCK TO DISK
CALL WRBLK
CLOSE THE
FILE
CALL CLSFIL
".
APPENDIX-B
COMMUNICATION PROGRAM LISTING
Source Filename:
DMCOMM.ASM
Object Filename:
DMCOMM.OBJ
List Filename:
DMCOMM.LST
62
MODULE;
1
2
3
4
:5
6
7
8
9
10
11
MICROBENCH
8080/808~
CROSS ASSEMBLER
<V2l-1~0
7-DEC-84 14 42:26 PAGE 1
;******************************************************************************
CP/M - CP/M FILE TRANSFER PROGRAM, AND TERMINAL PROGRAM.
PROGRAM NAME:
VERSION·
DATE:
SR SFTWR ENGRG
DMCOMM ASM
2.03
DECEMBER 1. 1984
MICHAEL H. PETRUCCI
;******************************************************************************
DESCR IPT I ()'I:
12
13
14
CONFIGURED SUCH THAT FILE WILL ASSEMBLE WITHOUT EDITING
Tt-£ FCLLOWING:
1)
2)
15
16
17
3)
4)
5)
6)
18
19
20
21
A FAST CLOCK,
PORTED l/0,
STANDARD CP/M,
DEFAULT BAUD RATE ~ 1200, NON PROGRAMMABLE
GOTO TERMINAL MODE BEFORE A FILE TRANSFER.
USE WITH ANY TERMINAL <I E. VIDEO OR NON-VIDEO>
22
IF YOU CHANGE ANY CONDITIONALS,
COMMENTS, TOQ.
PLEASE CHANGE THESE
23
24
SEE EGUATES FOR OTHER MODEMS & ADDITIONAL OPTIONS.
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
'******************************************************************************
FUNCTION:
PROVIDE A MEANS OF COMMUNICATION BETWEEN A DEC MINI-COMPUTER
AND A MICRO-COMPUTER CAPABLE OF EXECUTING 8080185 CODE
AND RUNNING A CP/M OPERATING SYSTEM VERSION 1 4 OR
HIGHER.
A 'VAXPDP' FLAG HAS BEEN DEFINED TO ALLOW SELECTION
OF THE XON, XOFF PROTOCAL DURING BLOCK TX AND RX OPERATIONS.
THE RESULT IS THAT YOUR COMPUTER WILL REACT AS A TERMINAL
WOULD CONNECTED TO A DEC COMPUTER WITH MASS STORAGE TRANSFER
CAPABILITY.
A DATA CAPTURE ROUTINE IS AVAILABLE TO ALLOW
THE USER TO CAPTURE HIS OR HER TERMINAL SESSION INTO A
SPECIFIED FILE.
THE OPERATOR IS ASKED IF DUPLICATED FILES
SHOULD BE OVERWRITTEN IF SO REGUESTED.
40
41
'***•'**************************************************************************
0'1
w
f'IODULE.
11ICR08ENCH 9080/908~ CROSS ASSEMBLER
CV21-I ~0
7-DEC · 94
14 40! 26 PA~E "'
........•.......••.•..........................................................•
I
2
J
DEFINED EOUATES
4
5
6
1
9
9
10
II
12
13
14
15
16
17
0000
Ffl'F
FALSE
TRUE
EOU
EOU
0
NOT FALSE
FFFF
0000
STDCP11
AL TCPI1
EOU
EQU
FALSE
21
22
23
24
2~
26
27
29
2'1
JO
31
32
. TRUE. IS STANDARD CP/r1
. TRUE. IS AL Tf.RNA TE CP • 11
• FOR H9 OR TRS90
DEFINE TYPE OF CP/1'1
0000
IF
EOU
BASE
IN USE
STDCPM
.CP/1'1 BASE ADDRESS
0
END IF
DEFINE 110DEI1
19
19
20
TRUE
0000
0000
0000
0000
DCH
H89
P111111
IRS
FALSE
FALSE
FALSE
FALSE
.
.
•
.
FALSE
FALSE
, TRUE.
• TRUE.
. TRUE.
0000
FFFF
0000
Xll250
Xb850
EOU
EOU
EQU
FFFF
POR lED
EQU
TRUE
Ffl'F
INTRECl
EQU
TRUE
XB2~·1
INTERFACE
EQU
EOU
EQU
EOU
TRUE
TRUE.
TRUE.
TRUE.
lAUE.
IS
IS
IS
IS
D C HAY[ 5 ,.JDl11
HEATH H89
P11111 MOD£11
IRS90 1100EL
IS EXTERNAL 92~ ACE
IS EXTERNAL 8251 USAR T
IS EXTERNAL 69~ ACJA
. TRUE FOR IN/WT POll TS.
. FALSE FOR LOAISTA
. TRUE IF PORT 110DEPI C~ECTED TO
REQUIRES INITIALIZATION
JJ
DEFINE OTHER SYSTEM PARAI1ETERS
34
J~
fRIPNL
IER11NL
EQll
[QU
FQU
!RUE
FALSl
FFTF
39
40
FFFF
lJAXPDP
EQtJ
TRUE
FFI'F
VIDEU
EOU
IRliE
36
FFFF
0000
r !> TC l
37
38
1<
• TRUE
• TRUE
. lAUE.
. F II.E
. TRUE
• WITH
. TRUE
TRUE
41
42
43
FOR 4 11HZ CLOCK. FALSE FOR 2 11HZ
FOR FRONT P - L DISPLAY
~0 10 ILRI11NAL MODE BEFORE
TRANSFER
FOR TALKIN~ TO A DEC COI1PUIER
NO ERROR CHECK OR HEADER T X
FOR USE WITH VIDEO TERMINAL
TII'E-SHARE C011PUTERS REQUIRE TERMINALS TO
HAVE BIT 7 HIGH CI1ARI<I~1. SO IN THE TER111NAL
MOllE WE FORCE IT TO HI~H IF THE FOLLOW!~ OPTION
IS SU EUED
SUM£
44
4~
46
47
49
49
0000
I 11151-tR
[QU
FAt. SE
. TRUE
TO 11AI<E 01 T l
HIGH
~
51
. ···~·········································································
~2
~J
54
OOF I
~~
00f6
~
MIX. II P
MOOAIIP
IF
[ QU
EQU
END IF
X~-,
0F7H
OF 6H
I
OR
X68~0
• YOUR 1100£11 CONIRQ. PORI
. YOUR 110 DEN DATA PCIR T
. X82~1 OR X69-,Q
<,7
01
~
l'tllDULE•
"JCROBf~CH
80801808::1 CROSS ASSE"BLER
14 42 2b PACE :.J
A~D
b
7
8
INIICI
INI I·C;t
INI 1 C3
INI J1C4
9
10
II
12
13
14
0000
0040
004F
0037
oo;zo
Fllt€1~
"
0010
0000
011\MlER
PNIEa.
0001
0001
~
oooa
oooa
rul&NIIIB
11116NDII
ftlliiiCI/8
"DIICVR
21
22
23
24
25
DEC 84
THESE EQUATES III'ECJFY THE I~IIIALIZAII~ SEQUE~tE
STATUS FLAil& USED BY YOLII IYPE llF 1101lf"
I~IIJALilAII~ VALUES SHOWN ARE FOR 8 DAIA Bll!i.
~ESTOP 811. NO PARIIY
.
,
17
IB
19
1
. ·•··•••••·••·•••••···•••···•··•··•·•··•·•·················•··•·······•••·•·••
I
2
3
4
lb
cv;,!l-1::10
1
IF
EQU
EQU
EQU
EQU
1&!::11
OH
40H
04FH
31H
EQU
EQU
EQU
OIOH
JOH
EQU
EQU
EQU
EQU
END IF
. lSI
• &>NO.
• 311D.
• 41U.
• ;.>()H
• IOH
.OBH
OOH
I
I
. 811
a
;z
. Ill
INI I CHAR IU 0<'51 C IL PURl
RESEI
11011£
CONIROL
FR-INQ ERR ""'!it<.
0\IEIIIIUN ERR ""'!it<.
PAR I TY ERR M!il<
TO TEST Hill SEND
• VALUE WI-EN READY
TO TEST FCIR RECE IVf
• VAL UE WHEN READY
.P""I CIA 18;!51
• •••n•••••••••••• .. ••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
"ISCELLANEOUS
016
DfFINITI~S
INOIIKALLY NOT
l~CEDI
;t7
a
0004
!ifPT II"
019
0019
0004
000::1
0010
0011
CPIIIEY
DISCtCR
EITCtiR
PIHC ....
STRC ....
EQU
EQU
EQU
EQU
EQU
EQU
4
'Y'-40H
'D'-40H
'E'-40H
·p· ·40H
0013
SIPUIR
EOU
·s· ·40H
0001
SOtt
EDT
ACII
EQU
EQU
EOU
EQU
EOU
EQU
EOU
EQU
EIIU
EQU
30
31
3i!
:n
·o
•a.•
34
35
36.
:n
DEFINE ASCII
38
39
40
41
42
43
44
4::1
46
47
4B
49
:so
"
0004
0006
0015
0043
0018
OOOA
OOOD
0007
OOIA
CRC
CAN
LF
CR
BEll
EllF
. SEND STOP THIS IWIIY CUARS EAM.Y
. CTRL -y TQQQLES ABC II CAPT\ME 11011£
• CTRL D DISCONIEC IS rtODt:n TIE
• CTRL-£ EXIT FROtt I CIA E
• CTRL _., TOIIQLES PRINT OPTION
• CTRL-G TO "HIE OTHER END RE&UtE 111051 SY51En5
.WILL ACC~f ANY CHAR.SO CTRL-G IS TU INCLUDE
, THE ION/lUFF PROTOCAU.I
• CTIIL S TO "N\f OTHER END PAUSE
CUARAC I EllS USED
I
4
,,..
6
·c.
IIIH
10
13
'0'-40H
'l'-40H
, START OF HEADER
• END llF TRAN&nl551~
, ACKNOWL EIICE
•IIE8 ACI<NOWLED8E
• UIIED TO IIEOI.E&T CRC INS lEAD llF CHECK5Url
. CANCEL
, LINEFEED
.CARIIIAQE RETURN
• BELLS
• ENO OF FILE nARI<ER
······••··•···•·••••••••••••········•······•········•···•·••······•···•····•·•
0'1
01
11UDULE,
t1iCH08tNCit 8080/UOO,
Cf~(l~,.~)
ASSE.tUUtR
IV~'I
l~O
J
()t(
H..
14 4.;._1 26 PAt.;l:
4
.............•.................•...............................................
I
2
3
0100
OR.:;
B ASf • 100 H
4
:s
INI IIAl
b
1 01()()
8 0103
9 0104
10 0107
II OIOA
·~ 0100
0!1
39
;/.l
0000
]I
OOOOG
0001
:JA
oooo.:;
OIOt
:JO
:12
Ollt 1
14 0111
co
01:13
44
43
40
20
4D
4F
0111'
0111
:u
0120
.'0
.10
2£
JJ
20
U
·~
lb 0114
0111'>
Olltl
Oil A
01~~1
01.'4
01.'<•
o1;•a
20
oa .. ~"
oa;~c
I l
:10
OL'V
AU<
l II
lOA
DIR
51 A
fAll
DB
• 01'1( 01"91
IIU
'(f'IM
. II •0
.II •51A('~ I 1<!111 t.P!M
SAV( I I
.~•,Y SIAU<
. BOOS PMoE ADDRf SS
t l AVf SOtU. HIUH1 I tJ ·,I'AHt.
AND !lA~
I tl. Ht ~.tH I
. 00 I'RINI Ill
V .• 0 I
0 I
0( C
u .. ' . (" R
.l f
:u
44
43
.?0
38
.14
OA
4 I
OD
~0
;>I
4D
~·o
:14
41
44
4]
20
~4
01 IB
10
r._c
10
( fl/M'
4~
20
.•o
41
4 I
01:10
~0
:.?I
0131
18 0140
()Q
19
~I
~b
Ol;>f
Ot:ll
01 IJ
01 I~
01 II
011'1
0142
PRIVAit
H. 0
5P
SlAC I<
SP.Sl...CI<
BASE +000 1H
A
t1l.J1( NO
SlAHl
40
4~
40
11~
l kI
DAD
Stt. U
o..
IJU
t
H. l f
~·
MU()l: M I
20
1
•
U PR I M I I I \.of S
21
llllllf HU ltlllf' fllfl tASIFH PAl CitiNG ~ ,AINif'I~NI.f
PIJHIIO 1/ll HllUIINt'!; IIAvt NIJP 5 10 lEAVE ROO..
tllR lAI(R PAIUHNG lfl lOA'S f, SIA'S IF I'ECESSAHY
22
23
24
2:S
If
26
;n 014'1
Ill
014~
(9
;jti
fb
UUIUAI
OUJ
PORitD AND INIJI
,IIllA IP
·~~01
flU
29
014b
00
·u 0141
UB
.lJ 0149
('9
:)0
I b
lfi.)A lA
N(I'
IN
,OOAIP
Rt I
:n
:14 014A
)~ 0140
00
Dl
I 1
tltll( II
NIIP
UlJI
,IX. II p
0\
0\
l'tOOULE;
111CROBENLH
I 014D
2
J 014E
4 014F
~ Ol!tl
b Ol!t2
7
8090/808~
CRUSS ASSEI1BlfR
C9
00
DB
C9
00
lV~J-1~0
7
DEC
84
14 4;:t ~6 PAGE '
REI
F7
INC II
NlF
IN
REI
NlF
END IF
11DC llP
. PORTED AND
I NOT
J.lJ2~01
8
9
10
II
12
13
14
l!t
16
17
IB
19
20
21
START
Ol!tJ
Ol!t4
Ol!t6
Dl
OE
l=D
09
OOO:t
PIF
11VI
CALL
D
C. PR INI
0005
OI:IY
CD
OB:IC
CAlL
INTADR
Ol!tC
Ol:tf
0161
0164
0166
~ 0169
23 0168
24 OlbE
;_.~ 0170
26
27
28
29 0173
:1A
FE
CA
FE
l DA
CPI
FCO+I
'H'
HELP
3E
:.12
FE
CA
OO!tD
48
OD!t3
20
OlbE
:14
OO:ID
:18
1004
CD
09:10
CALL
CD
0822
CAll
INITIALIZE HE JUI1PS
c~
Jl
ID 11ESSAGt
. PRINT
I D I1E SSAGF.
TO CP/11 OIOS
. CE T PR 111ARY IF I lo-1
• DI1Cl11111 HIElPI
YES. IHVE. KLP
• NO OPTIONS-·
CPI
JNl
PROC I
• GET
PROC I
A. 'T'
FCB+I
...
11VI
STA
CPI
Jl
EIA11
SAVE PR 111ARY IF T I o-1.
• CONI INUE
. If A "SPACE" UEfAIIlT
• 10 TERI11 NAl 110DE
• DI'IC 01111 • ( A11PLE 5 I
• GIVE EXAMPLES
VALIDATE SECONDARY OPTION
PRIOPT
30
INII IALI ZE
31
THE 110DEI1 OR SERI"L PORT
32
33 0176
INI TI1D
34
3,
110VE
THE
FllENA11E FROM fCB 2
10 FCB
I
3b
]7 0179
CD
0849
CAU
110VF f 8
38
39
H.I111NAIE STRAY CHARACTERS FR(J1
HE LIN£ PRIOR 10 RECEIVE UR SEND
40
41
42
43
44
4!t
4b
47
48
49
:10
51
:t;;>
53
!14
017C
017F
CD
CD
0147
0147
CAll
CAll
J\A'IP
INDATA
INDAIA
TO APPROPRIATE
F l-"'C I ION
0182
0185
0187
JA
FE
CA
oaao
LOA
,4
0213
CPI
. T.
Jl
TERM
OIBA
OIIIC
fE
CA
44
074f
CPI
·D·
DISC ON
. DISCo-.NECT ·,
OIRF
0191
FE
CA
53
019C
CPI
·s·
Jl
TSND
• SEND
A F HE-·
56 0194
~7 0196
FE
!t2
OICB
CPI
'R'
TRCV
. RECf IVE
A FILE·,
,,
(A
Jl
Jl
OPT ION
.QEI PRIMARY IFIIGI
• TER111NAL
1101JE -.
~
......
""
MODULE;
MICROBENCH 8080/8085 CROS:3 ASSEMBLER
2
3
4 0199
5
C3
OCED
<V2l-150
I NV ALI 0
OPT! ON
JMP
BADOPT
7-DEC-84
14 42 26 PAGE 6
~
Q)
l'tODVLE.
"'ICR08ENCH
I 019C
2 OIW
OIAI
OIA3
01A5
OIA7
PIA9
OIAR
DIAD
OlAF
0181
bi8:J
CD
49
20
018~
;m
0187
0189
0181
0180
OIIF
OICI
OIC:J
OIC:I
0tC7
:J OIC8
4 OIC8
~ OICE
DIDO
0102
OID4
OIDb
OIDB
OIDA
OIDC
OIDE
OlEO
OlEO!
OIE4
OIEb
OIE8
OlEA
OIEC
OIEE
Olf'O
Olf 2
011 4
011 b
Olf8
Olf A
20
4F
53
41
54
BOEO/BOB~
0708
4E
4~
~2
49
41
20
4F
45
20
54
4C
45
54
20
54
52
20
45
44
OA
~:J
2C
2b
PACE 7
TSND
CN.L
DB
ILPRT
' IN TER,., I ,....L 110DE. CIRL-E 10 SIARI S[ND .CR. LF.O
TRCV
CALL
DB
--
TER,.,
ILPRT
'IN TER" INAL I'UDE. USf: A CTRL-£ INSTEAD OF A CR ·
0213
OlDB
4E
54
52
49
41
20
4f'
45
20
5~
~:J
4~
20
20
54
4(
45
49
53
45
44
4F
20
20
41
43
52
2D
20
4E
54
41
20
4b
41
4J
7 -DEC ·84 I 4 4 2
~4
4D
4E
4C
4D
44
2C
4:1
52
4E
OD
00
C:J
CD
49
20
45
4D
4E
4C
4D
44
CROSS ASSE,.,BLER (V2 >-I ~0
5~
0'\
\0
MODULE;
MICROBENCH 8080/8085 CROSS ASSEMBLER <V2 l-150
1 OlFC
01FE
0200
0202
0204
0206
0208
020A
020C
020E
0210
0212
20
4F
53
41
54
54
20
45
45
56
OD
00
54
20
54
52
20
4F
52
43
49
45
DB
7-DEC-84 14: 42:26 PAGE 8
'TO START TO RECEIVE',CR.LF,Q
OA
'-I
0
rtOPULE.
I'Ht:ROBENCti H080tfl003 CROSS ASSE1'1BilR
I
2
:J
'"'I
..
......
:1
6
8
9
10
, II
12
13
14
IERI'1
IV21" 1:10
lllflu 10
1-lli'C
84
14 42
~'b
PA.;l
'I
llR1'1
IERI'11NAL 1'10DI'
IHIS PROORAI'1 Sll"''l v SENDS I<EvEO IIIAIIAC 1(115
DOWN T~ LIHl . ._,..D DISPLAYS OiARAfllltS
RECEIVED fROtt HE 1 INE
IHIS I'IAI'.ES II
SUITABlE fOR C~NICAIII.IN Wlltl 111'11 SliAHING
( UI'IPU TE RS
I :I
TYPE THE "(>li:tlfl" IOAic;INAIIY ( IRI II 10 I (Alii
II liM MUIIl.
OR lHE "DISCI<R" IORIQI-LY ClllL 01 IU OISl~lCI
16
J1
19
19
20
21
ASCII CN'IURf. 19 HIQOLED BY ENIIHING C IRI
v.
THE PROQRAI'1 WilL PROI'tPT fOR THE ll£5111(0 f I l l
IS CLOSED DY AGAIN ENIERING ( IRI Y
It·
AI wtlllli
,....,..
111'1[
FILl
22
n
24
2:1
26
£NIER Cllll
THE PR INI llf' I I fiN wURI<S .AJSI AS IN CfP
IUNN Jtt£ PkJNI (]H, AND AQAIN 10 IUIIN II IH I
0~1.1
21 021b
28 021'1
29 021(
30 021(
:II 02'.ll
:12 0221
co
0A'I6
IERI'1
CAll
CA
CD
fE
LA
IE
lA
o;nc
Jl
08bf
0:1
02:1:1
04
0141
CAll
CPI
19
U:l.!f
Q,lJC
10
(PI
tl
.Jl
t'PI
Jl
p
I()
STAT
lER1'1L
M£YIN
Ellftlfl
TERI'1l
DISC tiN
DISCC»>
AI CHAH l<f Yl D ·
NU. CHECI< LIN[
'Qto' !'HAll
'll1'1l 10 END
• YES. LEAVE lfR1'11NAI
. DIStf-ECI R£0UESI
. YES. [)fl II
CPTMfY
CPllOO
IERI'101
PRICHR
I'RIIOO
IERI'101
. TOCCI f CAP I URf 11()[)1
. YES. DO II
, IF CAl' lURE 111.10f C0HI'1AUD· DONI
ICICGlf PR IN I MOOt:
• 'ti"S. DO II
. If PIIINI IOGc.:tt. liON· I SEHD II
(}tJIIlAI
PRINIR
IYPE
• SEND IHE OlAR
• SEND CUAR 10 PR INI IF ENABLED
, ECHfl II ICO ..... NIED UtJII
, l()(
1'1UOE
:n
:14
02.!6
fl
:n
o~.·H
((.
:Jb 022U
11
Q~.._J·
19
.19
o ..... ,
u;rw
40
41 0~ ~~.
42 021"
4:1
44
4:1
(A
'f.
''' .
O'lbl
O..'J(
'()
014)
( 0
09,23
.Jl
i.PJ
II
.JI
1(111'101
U..' Jl
SEE
4b
47
49
49 02JI
:10
'II
:10! 02.Jf
:~:1 0241
:14 0~41
:1:1 024h
:16 024<i
:11 024(
'"'I
( ... 1
l AI I
I QlJ
CD
014F
(b
f£
02
OJ
(~
0~1:1
CD
CD
CD
0141
ObiC
092~
IERI'1L
IF
•
SEr<D
II
CUAII fROf1 l IN'"
If
CALl
EHDH
ANI
CPI
JNl
C<'lt.L
CAlL
COil L
I NOI OCHI AND INOI 18~~0)
.HtAU SIAJUS
INC IL
111lRC VI
1'11lRt VII
TERI'1
IHDAIA
l't'P£
PRINIR
I SOl ArE
.RfAUY ·
"'"
81'
l ()(.1
.RtAO OAJA
. IYf'l II
.
~:il:N()
lfJ t'RINf
If
[NABI fl)
-...I
~
t100Ul E.
2
1'11LRU81:.NCH B000/i:JOU5 CHll~iS A~iSf..MI:tLER
IV~' J
·l50
l
DEC
84
14 42 2b PAG[
10
If
024F
co
0496
(AIL
ASCP TO
025~.,
CJ
0;'13
·'""
1£tH1
, t;AVt HI OISI<
.UJOP
02~~
:JA
:JC
:12
CO!
OBDb
LOA
FIRST
.IXIN ·1
INR
STA
A
,
.
,
.
,
J
4
~
02:>8
b
7
02~
02~9
8 02~F
9 02h2
10 02b4
II 02b7
12 02b9
13 02bC
14
I:!
lb
17
18
19
IERIH
FIRS I
CI<DIS
JA
OBDb
071A
OBOO
JNZ
l ()A
Of'! I
FE
53
CPI
·s·
CA
O~bf
Jl
FE
:;;;z
CPI
CA
0308
Jl
CJ
071A
20
()N
SNI>F ll
'R'
[NABI
f(J
Jl-
10 SEND OR RECE I vr
l'tJR E HIAN ONCE
CHECI< D I SCONI'Ef T
PRIMARY OPT l(t.l
SEND··
A f ILr
. RECEIVE
.A FilE
.REI'ILlY EXII
.-
RCVF IL
Ct<IJIS
SNOFJL
SENDS A CPtt1 FILE
...............
. ...
....
.... ........... . . . . .
!Hl CP /t1 FILE SPEC IF JED IN THE tt:lDEt1 C~AND
IS TRANSFERRED OVER THE PHONE TO DEC t11NJCllf1PUTER BY FIRST CREATINO A FILE ON THAI END
IN THE FORt1 "CREATE FILENAME EXT .CH' Tt£N
CIRL-E> THE DATA IS SENT ONE SECTOR AT 1'1
liME WITHOUT HEAII£RS AND CHECI<SUMS OR CYCLIC
Rf D~DANLY CttECI<S
21
;;12
;;IJ
24
2~
2b
27
28
;.rei 02bf
:JO 0212
31 027:1
co
co
LO
Ot.D'5
OAAI
O~"AF
32 o;u8
CD
08(9
CD
DA
CD
0'111
~NUF
II
CAlL
CAl.L
CAI..L
CAI..L
CRI.F
TRAP
CNREC
OPNF IL
CALL
RDSECT
SNOEOF
SNDSEC
SENDLP
.CHECI< FOR NO NAME OR At1UIG
.COMPUTE RECORD COUNT
, OPEN THE FILE
HArt£
13
34 0276
J:l 027E
Jb 0281
37 0;;!84
St:NDI P
0.!01
JC
OA.l:l
[AI l
Cl
0;.!10
Jl't'
JE
CD
lA
09U
C:}
Obf- H
, READ A SEC TOR
, SEND EOF IF DOH£
, LOOP UNT JL HF ENCOUNTERED
38
I I! E SEN I.
39
40
41 00187
4;;1 0289
43 029C
44
4~
,,NIJUIF
t1Vl
CALL
.-
CNREC
4b
SEND EOF
A.EUF
SEND
• SEND
AN
t:~.ir
OGlE
COI't'UIES RECORD COUNT, AND SAVES
UNTIL SUCCESSFUL FILE OPEN
IT
47
48
49 028f
~ 0291
'H 0294
~
~J
OOl"b
0299
:14 0296
:t:t 029E
:tb 02AI
:17 02A2
.IE
JF
];.!
OObB
Ff
OBB7
II
JE
32
OE
oo~c
II
CD
JC
000:1
C2
02DE
1.0111< UP THE FCB IN THE
l,_,.lC
t1VI
1'1, - ' '
STA
FCBEll
t1VI
A.OFFH
t1AX[ X I
STA
C. SRCHF
t1VI
Lll
D.FCO
BOOS
CAI..L
A
INR
JNZ
SOHE
DIRECTORY
, MI'IICH ALL E OENTS
.!NIT MAX Ell NO
.GEl
SEI'IRCiiFIRSI
fNC
, READ fIRST
, WERE THERE ANY-,
• QOT
501'1£
....,
N
MODULE•
"ICROBENCH
I Oo>A~
2 Oo>A8
02AA
02AC
02AE
02110
02112
CD
2B
4b
4C
20
0284
028b
0288
4F
4E
0211A
3
4
5 02111
,b 02110
7 02CO
8 02C3
9 02C4
ID 02C7
II 02CA
12 02CB
13 02CD
14 DOlCE
I~ 0201
16 020~
17 D2113
18 D2114
19 DO!Il5
20 DO!Ilb
21 00!07
22 Oil08
23 DO!Il9
24 OO!IlA
25 DilDO
4F
20
21
80801808~
CROSS ASSE"BLER
OlAF
2B
CN.L
DB
IV2l-I~O
7 DEC-84
14
4~
2b PACE
II
ERXIT
'++FILE NOT FOUND••• ·
49
4~
4E
~4
,
4b
44
2B
24
OE
II
CD
12
oo~c
000~
3C
C2
OilOE
3A
bF
2b
54
3A
OIB7
00
OB08
5F
29
29
29
29
29
29
2'l
l'l
22
OBB8
C9
READ "ORE DIRECTORY ENTRIES
11VI
C.SRC._.,.
LXI
D.FCB
CALL
BOOS
INR
A
JHl
SII1E
LM
""XE XT
HOI/
L. A
11VI
H. 0
HOI/
D. H
LM
RCNT
HOI/
E. A
DAD
H
DAD
H
DAD
H
DAD
H
DAD
H
DAD
H
DAD
H
DAD
D
SK.D
RCNT
RET
~DIR
, SEARCH NE X I
. READ DIA ENTRY
.CHECK FOR END <Offtl)
• NOT END (F DIA
PROCESS EX TENT
.HIT END
GET tHQHEST ElTENT NO
, WHICH GIVES EHENT COUNI - I
• DE T RECORD COUNT OF 11A< EXTENT
, SAVEo IT IN <DE>
, tfJL I IPL V I
fii'IES
SEEN
SEEN
OF EX TENTS
I~
• ADD IN SIZE OF LAST EX TENT
, SAllE TOTAL RECORD C~T
.AND EXIT
2b
27
28 02Df
29 02DF
30 021:1
31 021:.2
32 021.3
33
oa 4
34
02£~
35 02Eb
3b O:IE9
37 O;!EA
311
39
40
41
42
43
44
45
4b
47
oa:c
oa:o
POINT
S!.t1E
:JD
Eb
OJ
81
87
87
87
87
21
0080
8~
Cb
Of
bF
4b
21
oa.E
O:IEF
OOIFO
OOIF I
OOIF4
17
OOIF~
FA
OOIF8
OOIF9
IE
21
D2
ADIJ
LXI
A
ADO
ADI
HOI/
HOI/
DCX
L
ocx
ocx
2B
:JA
TO DIRfC TORY ENTRY
DCA
A
ANI
3
ADD
A
A
ADD
ADO
A
ADO
A
OIB7
OOIFC
LM
ORA
.....
CIP
02BB
JNC
H. BASE+80H
I~
L.A
··"
H
H
H
""XE XT
A
BJCQER
, l.fOfDO PREV 'INR A'
. """'E I'IQDt.t_US 4
• l't.JL I IPL Y
BY 32 BECAUSE
EACH DIRECTORY
ENTRY IS 32
BYTES LONQ
.~OINT TO BUFFER
• POl NT TO ENTRY
• OFF!XT TO RECORD COUNT
, 1-1.. NOW POINTS TO REC COUNT
• QET RECORD COUNT
• BACK DOWN 10 f.OENT
~BEA
• COI'IPAIIE WITH CURRENT ""X
, If NO "AX VET
• THEN SAVE RECORD COUNT ANVWAV
"
~DIR
48
-..J
w
1100ULEl
MICAOBENCH 60601600:> CROSS ASSEMBLER
1
o~c
2
O~D
3 0300
4 0301
~ 0304
78
32
7E
32
C3
0 IGQER
OBB8
OBB7
02BB
7-IJEC-84
A. B
RCNT
A.rt
MAXE IT
MOIDIR
t10V
STA
t10V
STA
..-
14 42 26 PAGE 12
• SAVE NEW RECDID COUNT
,SAVE NEW MAX' EHENI NO
.GOFINDI"'lREEXTENIS
......................
..
................
. ..
6
7
8
9
10
RCVFIL
• o
II
12
13
14
RECEIVE A FILE
RECEIVES A Fll.E IN BlOC!'. FORMAl AS SENT
BY N«<TI£R PERSIJII ON A DEC MINI-tOMPUTER
BY DOING A "TYPE FILENNE FT (CTRL-E>"
·~
16
17
18 0307
19 0308
20 0308
21 030£
22 0311
23 0314
24 0317
0319
o:ua
031D
031F
0321
0323
032:!
0327
0329
032B
032D
03;!F
0331
0333
2:!
26 03'.1:!
27 0338
211 ODA
29 033D
30 033F
31 0342
32 0344
33 0346
34 0349
3~ 034A
36 034D
37 034(
38 03:!1
02
CD
CD
CD
CD
CD
46
4C
20
:!0
4E
20
.,
44
20
4F
:!2
43
49
4!1
OA
ObB:l
DB
CAl.L
OMI
CALL
CAlL
CALL
CALL
DB
2
CALF
TRAP
ERAF l l
-.FIL
ILPRT
'FILE OPEN.
, aJ
wt£N CNTRL S
15 SET ELSE 0
, ERASE THE FILE
THEN -.E NEW
, PRINT
READY 10 RECEIVE ',CR.LF. 0
45
56
OD
00
21
ooeo
3E
OD
09EC
OF
CD
lb
01
DB
E6
C2
00
C2
0!1
C2
WATB IT
RCVF IL
07bb
087B
0708
49
4:!
4F
4:!
2C
!12
41
:!9
:!4
20
4:!
0000
F7
02
03b4
0:142
.,
034;?
O:J~~
C2
033F
41
42
43 03:!!1
3A
0307
3'9
40
fV;?l-1:!0
LXI
M\11
CALL
ACYL P
ACVl.f'3
ACVCI'.
M\11
LXI
IN
-I
JNZ
H. BASE+80H
A.CR
SEND
o .• ,
B.OOOOH
t10CTLP
t1DACVB
QETWRD
OCR
c
JNZ
RCVCI'.
OCR
8
JNZ
• ADDRESS THE I'VDEI1 CONIAUL PORT
RCVCI'.
OCR
D
JNZ
RCVLP3
TIME OUT
:! 2:! MSECS
LOA
WAIBJ T
-..J
~
I'IOOULE.
I
2
3
4
MJCROBENCH
03~8
03~A
Ol~D
03~
~
03bl
b 03b4
7
8 03bb
9 03b7
10 03bA
H 03bC
12 036F
13 0370
14 0373
1.~ 0374
16 0376
17 0379
18 037C
1'1 037D
20 037[
21
22 0381
23 0383
24 0386
2'!1 0388
26 038'1
27 0381'1
28 03BD
29 0~0
30 0391
31 0392
l2 0393
33 0~'!>
34 0~8
3~ 0399
3b 039C
J7 Ol'IF
38 031'11
39 031'1)
40 031'1'!1
41 031'18
42
43 031'18
44 O:JI'Il
4~ O:li'ID
4b OJA£
47 03N'
48 0382
49 038'!1
~
0~188
FE
CA
Bl
CA
C3
DB
80BOIBOH~
CRUS~
ASSEMBLER
CPI
JZ
ORA
JZ
02
033D
0441
0418
Fb
GETWRD
0307
02
037'1
AF
32
71'1
F£
Cl'l
31'1
87
71'1
Cl'l
0307
...av
13
033D
0882
JZ
lA
CPI
JNZ
11YI
lE
11'1
3E
71
2C
7D
87
C2
CD
21
CJ
F II EOF
RCVI.P I
O:JBB
O:JBE
~ OJBF
~'!I 03C2
'!lb 03C4
~7 03Cb
~:J
...av
II«
JNZ
0388
0423
Jf'F
RCVLP2
...av
II«
...av
FF
OJ'/f
0108
OJ:ID
Ll
Fb
01
0307
OJJD
~_;
lf'UEC
llU.JST
CPI
JZ
ORA
Jl
Jf'F
MVI
OUT
11YI
STA
--
...av
II«
...av
ORA
JNI
CI'ILL
lXI
033D
OB'!IA
ooeo
033D
~I
~2
CPI
JZ
LDA
ORA
...av
0~0
D3
JE
J2
CJ
CH\lOF
031'18
FE
C2
77
2C
C2
CJ
77
2C
7D
FE
CA
07
CA
CJ
IN
MIJV
LDA
CPI
JNZ
XRA
STI'I
~1
JA
FE
CO!
·"'
--
]A
87
0307
c;o
OJCB
13
,...,.
Fb
OUT
11YI
JE
D3
:1E
01
SHNil
LOA
ORI'I
JNl
IV21-I~O
7
DEC -84
2
RCVl P
A
I'IDIJR Tl
RCVLPO
MOOATP
D ....
WATB IT
2
CH\EOF
14 4;? 2b PAiolE
. GET
Hit
13
WUHD FROM IIi£ MODEM DATI'I PORT
.STORE CHI'IAACilH
, CHECI< TO DUMP 1ST CHARACTER
...
WAT81T
.... D
STPCHR
RCVLP
OBJFlG
A
A.D
OBJST
EOF
RCVLP2
A.EOF
M.A
L
RCVI.PI
RCVEOT
M.A
L
1'1. L
OFT'H
STPDEC
, ClEAR C TAl · S Fa AG
CHARAC TlR
.RESI~E
, SHOULD EOF
• RES TI:JtE
8£ CHEL,..ED fOR?
CHI'IRACHR
• STORE EOF CHARACTER
, STORE CHARACTER
...
SECND
RCVI.P
A.STPCHR
MOOATP
1'1.1
WATO IT
RCVI.P
M.l'l
L
.... l
A
RCVI P
WRSECT
H. DASE•80H
RCVLP
WATO I I
A
8\.FDAT
A.STPCHR
MllDATP
A. I
• !iTOP DEC EI'IRLV
.PERFORM THIS LOOP 128 liMES
• STORE CHARACTER
, AT
'QET
EIIIP
MORE DATA
.NEED 10 101 DOff Df.C
......,
U1
""'
I'IOOULE.
I
2
"ICHOBfNCU 80110Jit00:l
O:XB
O:XB
:J;I
CRU!>~
ASSE"BlER
o:JO!
BlE DAI
AI'
H. l AHt:AD
'F
:Ill
lb
OBfl
I XI
80
011
011
El>
tt\11
Lll
F7
02
c.;~
03l7
6
'
0]1)(1
7 030~
8 O:lll:l
9 0:107
10 03119
II ' O:JDC
12
13
14
15·
16
17
18
19
20
;!I
;n
23
24
2:l
26
27
29
2'1
30
ll
32
I bOO
C2
03f0
0~1
OJ£ I
c~~
030:1
OJE4
OJE7
03f9
OlEA
03f8
OJEC
OlEO
OJFO
03F3
03F4
OJ 7
03FA
OJFO
0400
CJI
OJ3
011
Fb
n·
,.,
0080
Olltcb
0404
0401
04011
33 040'1
Cll,
0410
l8 0411
]9 0412
40 041:1
41
42 04111
43 041'1
44 041C
4:l 041[
46 04;<'0
47
01
:Jill
04111
47
I'"
FE
Cll
77
lA
,3
...
fl
8
fl
ox
"llllAIP
I I'M
INX
f
H
OCR
JZ
0
OX
"·A
I~H
~~GAIN
IHY AGAIN
11"1 OU I ADIIR I OlA I lHR I NG
.Qfl OAIA t(HAHACURI
. SAVL LULit< AHt.AO t tiARA<. II A
. ADJUST Bllf'£11 COI.. IER
. INCREfiENT l 000. -AD BUffER
A. E.
CIAJNI
WRSEC I
Q,LAHEAD
H. 8AS£•1lOH
lllf SECIOP
, 5E I UP ADDRESS FOR LOOI< -AD BUFfER
, !ll I UP ADDRESS fOR DIRf.C I BUFfER
.14illf
ClAJNT
A
Jl
RCV\ PO
B. A
ltOV
LOA I
CPI
ElF
Jl
f ILEUI-
ltOV
"·A
. IHEN
INl
INX
OCR
l
D
8
RLVI PO
. t INI:.HED''
HI
• lOOP BACt<
. IRANSFER UINIENIS OF LOOK-AHEAD
D
~VE
• REDUCE
10 ACC
CONITENIS TO DIRECT BUfFEA
BUFFER COt.•n av ONE
···································································•·········•
IRA
A
RLV\ PO
o:Kl'
3(
II
ll:J
fb
<Hill
STA
....,,B 1 r
""'
....
A.SIRCHA
"llllATP
RCVlP
our
QOI EUI ON SECTOR
CD
CD
CD
OB:lA
ONO
JA
PI VLIH
- fLUSH BUFFERS.
0.107
CAll
CAl.L
CHL
LOA
WIISE C I
WIIBlK
CLSf IL
..... 1811
()bllj
ORA
Jl
A
DONE
A.SJACHR
0~10
87
c ..
A UtAHAl
,IJVERfLOW Of Lllllll AHEAD DUFfEl'
,lOOP FOR NE •1 LHNIACltR
• SAVE BUFfER COUNT
EX
(IRA
....
040H
Lf' ADilfU 55 Hll 1 OliO< Nil' AD BUFflR
. INI I IAI llE I 001< AUI. AD BUffER I.OUNilR
IHY
IN
ltOV
Jl
041H
48
49
!10 042:.1
, . 042b
52 0429
04;'C
,.. 04;?1'
, , 04"10
5b 0413
:l7 04.J:l
14
. st. I
·()(I
(,)I
_,..l
LXI
lll
LOA
O:JHb
AF
:12
C:.t
2b PAGf
"ORC VB
OCR
ltOV
STA
CAlL
2C
I :.I
O:l
fA
L:J
4~'
8. lbOOH
c
....
OBfb
OB:lA
Dill I
1~8
OCR
....
G•
o.
"DC 1J p
.JNl
OJJ
03112
3:1'
CD>
II
21
87
]7
O:Jil:l
I~'
CJI
14
""
IN
ANI
.-.z
IC
040:1
34 0408
3:l 040E
36 040F
EX
fl
2JI
c.-.
84
E.A
.CLEAR f. HlGISHR
...•.•••••............•...................................•.................••
00
0300
7 DEC
..... 18 I I
o:xc
4
1:10
SIA
IRA
ltOV
, o:xo
3
tV21
:If.
II
()'j
• b
ttY I
OUI
END
. 141 liE
IHt: I ASI
, CLIISE
IHE FIll
01 OCt<
"DilAIP
-...J
0\
MODULE;
MICROBENCH 8080/8085 CROSS ASSEMBLER
1 0437
AF
2 0438
32
C3
3
0438
XRA
0307
06F8
STA
Jl'l"
<V2>-150
A
WATB IT
D(II,IE
7-DEC-84
14:42 26 PAGE 15
; ALL
DONE
-...J
-...J
78
0
..:
iu
...
::;:)
<IC
.... .
i
Q
8Qi:
~
~
t"'
.,0
~
;
!en
l!
!
~u
~
..
:r ...
...
~
r-
Qi:
~!
"u
...
:I
...
c
~
u
·U
~
Qi:
u
~
<;j
"'
~
0
1 o~~ ...... Ul<- ... z-~
u
":~c
~~~ ~ ~;~
i
•
31-c.: ... c !d !c•-v
..."" ....;
-o
U!
~c
-.
0
Qi:
co
u ....
-«
!...
-
~
<I
Q
CQI:
:r
-o
Qi:
c
...
!i-
~
Qi:
~
...~!
"~
<I
=-~,
-~
. . ..........
~~~
-~IJUIJ
Q
....
!!~t·
1.10
....
I
~
....
~
1.1
....
'f ..
u::l
z
~
·=
~C-
.c c c
'-'
c
-"'
0
ii
8c
o-
-~
~~
... .,
MCQO
~
.,~-
00
eo..,oO ...
~QM
c
.... .nu•OIII•Oo.,Qg;
o•••n•~••••••~n~•~no
o
0
Cpo.J"WQQ .. CMOO"f"''::>-,
n•~uo•••~••C'..J
owMco~~-o-~~~v~oo-~~·c~
u•••~.,·•~••••~.n~•••.,OI.I
l'iOOULE.
I
2
3
4
:1
6
7
6
9
10
II
12
13
14
15
16
17
16
19
20
21
I"'ICI~OBENCH
60801600:1 CROSS ASSEI"'BLER
..
0490
049C:
049F
04A0
04A:J
04A'I
04A:;
04Ab
04Al'
04Afl
04AII
04AC
04At>
04BC>
04BJ>
F:l
3A
B7
CA
FJ
F:l
C:l
D:l
E:l
2A
--
A5CP TO
OBCO
0*0
OBE4
77
23
22
3A
BC
OBE4
OBE:l
ASCPTO -
PUSH
LDA
ORA
.Jl
P[J>
PUSH
PUSH
PUSH
PUSH
Ltt..D
ltiN
INX
Stt..D
LDA
c ....
IF
.Jl
OCR
22
23
24
25
26
27
:16
29
30
31
c ....
.JNZ
ltiN
CPI
.JNZ
1'1111
CALL
.......
32
ASCPII
33
34
IV21-I:IO
Jkl
ENOIF
7-DEC-64
14 42
~b
PACE
I 7
CHECK TO SEE IF ASCII CAPTURE IS ENABLED-IF
IT IS. SAVE THE INCOI"'INI: CHARAC HeN IN THE
...:I"'ORY Bl.FFER. WRIT IN!: I I WHEN Fl.t_l
PSW
CPIFLG
A
A!iOE ND
PSW
PSW
B
D
H
CN'P TH
n.A
H
CN'PTR
I"'EE"'END
H
, SAVE CHARACTER
.LOOI< AT CAP TIAIE FL. AG
• CAP I '-'IE ENABLED-.
NO. TAKE OUICK nIT
• I:E T THE CHARACTER
AND SA~ ALL THE REQI STERS
• I:E T THE BUFF£11 POINTER
PUT CUARACTER IN Bl.FFER
INCREI"'ENT POINTER
AND SAVE IT
• I:E T LAS I PAGE ADDRESS
• ARE WE THERE YET">
NOT VAXPilf'
ASCPTI
YES, T II"'E TO WRITE THE BUFFER
A
• NE IT TO LAST PAOE ADDRESS
H
• NEAR IN!: THE END-·
ASCEND
NO. EXIT RB..IT JNE
A.L
• CHECK LOWER BYTE OF ADDRESS
-STP 111'1 AND OFFH
ASCEND
• NOT TII"'E FOR STOP CHAR • so EXIT
A.STPCHR
• TELL OTHER ENO TO STCF
OUTDAT
IN ADVANCE
ASCEND
D.ASCBUF
• NOT VAX POP
35
36
37
:JB
39
40
41
42
43
44
45
46
47
48
4'i'
:10
51
52
53
:14
55
56
57
0404
0407
04119
C2
JE
048(
04DF
04(0
04CJ
04C2
04(5
04C8
04C'i'
04CA
04CB
04t:E
04CF
04D2
040:1
04D6
04DA
JA
92
47
4A
CD
21
19
EB
OD
C2
05
C2
21
22
ro
3E
CD
0400
IJ
014'1
ODEJ
AS(.t-' T2
04[;.'
0080
04C2
04CI
3000
OBE4
II
0143
ASCPIJ
IF
.JNl
1'1111
CALL
END IF
VAIPilf'
ASCEND
A.STPCHR
OUTDAT
t.DA
SUB
ltiN
ltiN
CALL
l XI
DAD
XCHG
DCR
.JNl
OCR
I'I£1'1END
D
B. A
C.D
-TEe
H. 128
D
.JNZ
I XI
Stt..D
1'1111
CALL
. JEll OTHER ENO
IN ADVANCE
, VAX PDP
TO STCF
• I'UI'IDER OF PAI:ES TO SAVE
• NUtiDER OF SECIORSIPAI:E
.nDVE TO NEXT SECTOR
TO WRITE
c
ASCP T:J
B
ASCPT2
H.ASCBUF
CN'P TR
A.STRCHR
OUTDAI
• l.NT IL PAQE
IS WRIHEN
• l.NT IL ALL PAQES ARE JoiiJTTEN
.RESET BUFFER POINTER
, TELL OTHER END
TO
ST~H
-....J
1.0
MODULE;
1
2
3
4
5
MICROBENCH 8080/8085 CROSS ASSEMBLER <V2>-150
0400
04DE
04DF
04EO
04El
ASCEND:
El
Dl
Ct
Fl
C9
ASGEND:
POP
POP
POP
POP
RET
7-DEC-84 14:42.26 PAGE 18
H
D
B
PSW
··'~""
(X)
0
""'
MODULE.
1
2
3
4
5
6
7
8
9
10
11
MICFWBENCH
04E2
04E3
04E5
04E8
04EB
04ED
04FO
04F 1
04F-4
04F7
04F9
04FB
04FD
04FF
0501
050:)
0505
0507
0509
0508
0500
12 050E
13 050F
D5
OE
CD
11
OE
CD
3C
C2
CD
07
28
55
20
46
44
53
20
50
8080/.808~
LROSS ASSEMDLER
AWHTE1.
lA
0005
OBC2
15
0005
LXI
MVI
CALL
·~
JNZ
OSOE
0708
28
4F
54
4F
20
49
48
53
41
43
45
OD
00
01
C9
OA
PUSH
MVI
CALL
AWH f£2
<V2l-150
7-DEC-84
D
C.STDMA
BOOS
D.ASCfCJl
C.21
BOOS
A
14. 42 26 PAGE 19
, SET
BUFFER
ADDRESS
; ~I TE SEQUENT 1 AL
A~TE2
CALL
DB
ILPRT
7, '++OUT
POP
RET
D
OF
DISK SPACE',CR.LF.O
(X)
.....
MODULE;
1
2
3
4
5
6
7
8
9
10
11
MICROBENCH 8080/8085 CROSS ASSEMBLER <V2l-150
---0510
0513
0515
0518
0519
051A
051D
051F
0521
0523
0525
0527
0529
052B
0520
11
OE
CD
3C
005C
10
0005
co
CD
07
41
27
20
4C
53
20
49
45
07AF
43
4E
54
43
4F
45
46
4C
24
CLSF IL:
7-DEC-84 14:42:26 PAGE 20
CLSF IL:
CLOSES THE RECEIVED FILE
LXI
MVI
CALL
INR
RNZ
CALL
DB
D,FCB
C, CLOSE
BOOS
A
; POINT TO FILE
; GET FUNCTION
; CLOSE IT
;CLOSE OK?
, .. YES, RElURN
NO, ABORT
ERXIT
i
BELL 'CAN"T CLOSE FILE$'
(X)
1:\)
I"MJO\Il f ,
r114 AUBfNCtt
H0801000~
tRUS~
A~iSl.,Ot
I
2
tR
~
Va')
+
CP II lK:
l
~0
J
lllCCilS
llt (.
B4
~~II
4~
14
a.'b
( AI-'IUHl
PA~[
11Uilt
~I
ON AND llf"F
J
4
=>
o~:l•
£~
o~:)O
u~
b
0:1.11
1.:1
'
u~·J~
I~
u~n
JE
CD
:tA
.'f
IJ
0141
OBt:O
PUSH
Pll5ti
PIISU
PUSH
ltV I
CAll
I I>A
J2
OBt:O
l.I1A
51 A
07
CA
;.?I
Ob~8
11
Y
10
II
12
I]
14
1:1
lb
0:1.11:1
O:I.IB
O:I:Jl.
O:l.lf
O:l•tO
O:I•IJ
O:l<lb
17
0:1•19
o~:1~
;;?;'
u~.o
CD
OD
4:1
:14
:12
4b
41:
.'0
41
4:1
JD
:Jf
llf 0:14(
O:l<ll
0:1~0
0~~;0,~)4
o,~;b
0:1'18
O~"')A
u~~)f
u~:>t
(I• I
.JDOO
0Bt"4
01118
OA
4[
4:1
IIIG
Nl-' NAI"t
IIIlA
J/
Ill
SH D
CAll
DB
H
. ',AVt
AI I
I
HI Gll_ji(A5
u
.
II
~
A.SI~CitR
0111 DA I
ffJII l G
.
~t
I
(Af'lt-.1
IN\.1 Ill
LP II I G
A
(PH. I 5
ANI •
Oil
~.Avt
II
OPtN OR
( Af'IUHf
ti.AS(.BUf
CAPPIR
II PI' I
CR. I I. l N Ill<
lo-ll
INI I IAI lit
JIll
ft AG
II
t
l tt'it
~
lli~UllU
f II l
~~
(ltJ•)L
UU·f tR 'jlARliN;
()
NAI"tf
;.lo
49
45
4£
40
;./()
~·D
;;'0
()~,)~l
()()
•'-~
O:St.·l
.!I
.?'<l
O~u''ll
"'
".!J o-,l.aH
.!I
.!1
a1 4
()~)"'
ot.
O~l.b
It
:..·~
;/b
O"hU
()3-t)f
;.•_j
;u
o~.,.
0~
.?tj
0,/(J
"
.·
(
o~.l>
JN/
(I•
.!I
lll<llJ
Of
I II
11VI
l(H!;
11VI
!.All
U. A!,t IIUI
11. I:>
. Gt: I t II E NAI'II.
. 11AI t&JrtBtH Of
L. Ill
DOllS
. lhl HtAO CON!.lll t
Ill ..;t I 1 ... 111
ltV I
11VI
l AI l
f. I f
.PUI USt R DACI< UN Cl £ - LIN£
.'I
·"'
:JO 0:1/"l
11 o'n
·~:.· Ol/8
TJ O~l9
·14 O~l'O
lb
"OOHf~.i~.
OUt ;.•
Ill
11VI
00
00
.'0
t t'l(jJ)
t B
OE
OA
(I)
000~
IE
Ol
Cll
o;..~
INl
11Vl
ltV I
I10V
INl
IliA
ti. A':iL.l.IJ-
llt I AU. I
f"',()
••B. II
.POINI
...
. f II l.
llfiiVE
IF NOI
10 I liE N..,.._
NAI'II. AND I VPI
"P~Cif
liD
WI Jti 8l Ar.\!i
11.A
••B
II Ul
F R£11 U!lEA
lHMACTERS TO ..W.!:£PI
DUFFER f"IJNc I II IN
:J~
:lb 0:1
J·~
ll
():IEJ()
.)H:
o~·r
1
OA
000~
)9
21
2)
4b
78
·tooo
Ff
00
ll:l49
00
40
41
4J
4:1
44
4:1
OlW>
O:Milfl
0:'11-JY
(),.JA
OlfllO
()~)D
CA
4b
0~0
ot
I II
INA
I10V
11lN
IPI
(
.;·
Dllll!i
.
H.
A~it
ltlH
0.11
A. Jj
0
.J/
N\A NAM
11VI
I .0
. N.li1DfR Of" l.llMAC If AS INPUl
,f1AI'l SUHt !iUK HtiNC tMS INPIII
It NOIU INC IN'UI. lltfl>l
AGAIN
AS~ f OR f Ill NA,.._
. NIJI1 Ol H 01 tCH LHMS Flll.ED
Q)
w
..o>uLEi
I
2
3
4
!I
6
7
8
9
10
II
101
13
14
1:1
16
17
18
19
20
21
Zl
23
24
2:1
016
27
28
29
30
31
32
33
34
3:1
36
37
38
'J9
40
41
42
43
44
4:1
46
47
48
49
:10
:II
fHCROBENCH
0:592
0:593
0:594
O:W!I
0:597
0:598
0:191
o:wc
o:we
O!IAJ
OSA2
O!IA3
05A4
O!IA!I
O!IA&
O!IA9
O!IAB
O!IAE
O!IAF
0:1110
0:1111
0:1112
0:1113
0:1116
0:189
O:IIIA
0:1110
O:IIIE
OXI
OX2
OX3
0!11:4
0!11::1
0!11:6
0!11:9
O!ICA
O!IC8
O!ICC
O!ICD
OXE
0:101
0:102
0:103
0:10:1
0:108
O:ID8
O:IDE
O!IEO
O:IE 3
05fo 4
013
23
7E
FE
28
CO!
7E
E6
32
23
23
0:1
0:1
II
7E
FE
CA
12
23
13
8080/800~
CROSS ASSEMBLER
3A
O!IA:I
OF
OBC;.t
OIC3
CPTSEI
CPTSEO!
2E
Jl
0:1119
STAX
INX
INX
oc
0:1
C2
C3
23
II
0:1
CA
7E
12
23
13
0:1
CA
7E
12
013
13
0:1
CA
7E
12
3E
32
32
II
INX
JNX
J'tO\I
CPJ
DCX
.JNZ
J'tO\I
ANI
STA
INX
IHX
DCR
DCR
LXI
J'tO\I
CPI
·~
O!IAB
0:103
CPTTVP
OBCB
, LOOK AT ;.'ND CHARAC I ER INPUT
A.H
CPTSEI
A.H
OFH
ASCFCB
.DRIVE CODE SPECIFIED>
.POINT BACK TO 1ST CHNI I ~'PUT
• SMJP IF NO DRIVE SPEC IF JED
• ClE T DR I VE C ODE
. CONVERT• FliOH ASCII
.PUT IT IN IHE FCB
H
H
.POINT TO FIRST CHAR IF FILE NAHE
H
8
B
D. ASCFCB+I
A.H
CPTTYP
D
Jl
• NO.
IT
c
·NO FILE
, LOOP IF HDRE CHARS WERE INPUT
IVPE G I \lEN. SO USE BLANM DE F AUL T
.HOVE PAST PERIOD IN SPECIFIED NAME
.POINT TO FilE TVPE IH FC8
, ACCOlMT FOR THE SMIPPED PER HID
. IF NO HOR£, SMIP IT
. ClE T THE CHAR
AND SAllE IT
H
D
0
CPTOPN
A.H
D
H
D
B
CPTUPN
A.H
D
• SKIP IF NO HI»>E
, ClE T HE IT CHAR
AND SAllE IT
• CLEAR EX TENT
AND CURRENT HECURD
OE
II
CD
3C
CA
000~
I~
ASCFCB+I 01
ASCFC8•32
D.ASCf'CB
C. SRCHF
BOOS
A
Ob21
Jl
OK
011(2
osc..;;
CPIOPN
STORE
IN FCB
D
rKN
6TAX
Hill
STA
STA
LXI
Hill
CAI.L
00
OBC:E
, ADJUST CHAR COUNT
.START OF FILE NAHE
. QET CHAR
, END IF FILE NAHE'
H
H
D.ASCFCB+9
B
CPTOPN
A.H
D
Jl
14 42 26 PAGE 22
H
H
INX
LXI
DCR
rKN
STAX
INX
INX
OCR
0:111:.1
7 -DEC -114
8
CPTSE2
CPIOPN
J'tO\I
STAX
INX
INX
DCR
O:IOJ
~0
DCR
.JNZ
Jf'IP
Jl
O:lfrl
tV2) -J
.... o
.SKIP IF NO HI»>E
, QET LAST CHAR
AND SAllE IT
Q)
.&:>.
~L(,
I
"ICIHI8ENUt 8000t 11003 CRUS!. ASst"BI (A
ro
011.1(1
c ...
JB
20
49
43
43
49
34
20
,9
28
41>
4C
20
38
3J
31
DB
O:ltt:
O:IIE
O:lt 0
O:lf 2
O:lf 4
O:lf b
O:lt 8
O:lfA
o:wc
43
O:lfl
,.
0:11'
;I 0:11 ..
CMoOO
41
39
20
,2
0608
.,
3A
20
J
•
,
..
1
8
9
10
060A
060C
0600
0.10
0.11
0.14
0.1}
0618
Of>IA
Di>IC
II
O.tf
12
1:.1
14
.,
0"-!2
o,.;.·4
(;0
F3
08bf
co
01>8(.
01>83
CD
fl
lb
H
C2
II
ot
I)
lO
II
Of>;!A
ot
lb
•• o ....c
I D
.K
oou~
t:AI.I
I II
till I
c ...
Ll
ObAB
JHl
01118
(
OA
Oil
14
4~
~b
PA~(
./)
ILPR I
f ll (
lEI J
til~
I Yl'f
..
y
Ill fNA'il
.l)
~4
;/0
41
4b
Obll
JO
Qb4U
4Y
064';/
4~
44
3..!
4 I
41
34
...
~.J
Ob4U
Ob4A
Ob4!
0641
20
~I
30
4 I
41
4"1
OA
06~0
....
Ottt u
Ob~tl
f I
./A
OMB
Ullt 4
2~ """'II
lb
Ob3lJ
/()
~1
OO~t
lh
·v.
"'
(
tio
2b
YH
CIUIIS
D.ASCFCB
C .[RA!,l
BIJOS
O.ASlf< 8
c. ~·2
Bill IS
CPIRLI
ll.PA I
<H. l.f. UIJI Uf
""'"t.
f llt
. Off tt f RAOR COil( 8t c t»t 5 OOtt
.!lt<IP If Nl UIIIOII
OIRH.IUR~
SPAL( .. Ul.lf. 0
~··
Ot.4b
00
l
l<f~ IN
P9W
lVPt
Clll f
P9W
~:.
O.IA
<lb3~
"'"
Cit\
l.D
00
4f
:J .. '
J'l
24
Pl.titt
Clli l
Clli l
Pill'
-I
CPI
JHl
Ill
INI
ObIt
"""'"
L ... l
31
3Y
Oil A
08C2
01>./}
~··
2~·
DEC 84
00
000"
OU< ./
U6~1
...
}
~·
,)
01>44
130
30
20
20
20
4F
43
41
0602
0604
0601>
17 0~
18 06:10
19 0.11
20 Ol>.lb
01>'10
l
CV~l
...
II
INA
SIA
( ... J(.
5
• t' I t I l
·-·
I HI 0
till I
ft()V
..
CI'HII,;
CI'IAI I
(..,pIll
. Ut I
"· IAH
. I ll I
....
7tU
AHI
t-HHUNI BUftfR PHINIIR
lMJI lttt. Nl (ORO WI Ill C 1 IlL
...
lIN A l"kJt I lf•l l:.
Uf
128
(X)
l1l
MODULE;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
MICROBENCH 8080/8085 CROSS ASSEMBLER (V2l-150
0660
0663
0664
0667
066A
066B
066C
066F
0670
0671
0674
0677
067A
067B
067C
0670
067F
0682
0685
0687
068A
068B
068E
0691
0693
0695
0697
0699
0698
0690
069F
06A1
06A3
06A5
06A7
06A9
06AB
06AD
0680
0681
06B2
0683
0684
CA
23
C3
11
7A
BC
C2
7B
BD
CA
co
21
19
EB
1A
FE
C2
11
OE
CD
3C
C2
co
00
45
52
52
49
20
4C
53
4E
20
49'
45
OA
3E
co
F1
C1
01
E1
C9
0667
0658
3000
CPTCL2:
0674
0682
04E2
0000
lA
0674
OBC2
10
0005
06AB
0708
OA
52
4F
20
4E
43
4F
49
47
46
4C
00
00
11
0143
CPTCL3:
CPTCL4:
CPTRET:
7-DEC-84 14.42:26 PAGE 24
JZ
INX
JMP
LXI
MOV
CMP
JNZ
MOV
CMP
JZ
CALL
LXI
DAD
XCHG
LDAX
CPI
JNZ
LXI
MVI
CALL
IIIR
JNZ
CALL
DB
CPTCL2
H
CPTCLl
O,ASCBUF
A,D
H
CPTCL3
A,E
L
CPTCL4
YES, EXIT LOOP
;ELSE INCREMENT POINTER
i
AND CONTINUE
; START OF BUFFER
; IF THE BUFFER IS EMPTY
i
THEN DON'T WRITE ANYTHING
;
AND CLOSE THE FILE
A~TE1
; ~ITE A RECORD
; INCREMENT WRITE POINTER BY 1 SECTOR
MVI
CALL
POP
POP
POP
POP
RET
A,STRCHR
OUT OAT
PSW
H, 128
D
D
1AH
CPTCL3
D,ASCFC8
c. 16
BOOS
A
CPTRET
ILPRT
CR, LF, 'ERROR IN
i
; GET THE FIRST CHAR OF NEXT SECTOR
; END OF FILE?
;
IF NOT, WRITE SOME MORE
;
CLOSE FILE
; OFFH ERROO CODE BECOI'ES OOH
; SKIP IF NO ERROR
CLOSING FILE',CR,LF,O
B
0
H
Q)
0\
MODULE;
I
2
3
4
MICROBENCH
060:5
06B7
06BA
3E
CD
3E
8080/801:1~
OD
CHlJSS ASSEMBLER
CHLF
06BC
OA
MVI
CALL
MVI
<V2l-1:50
7 -DEC
84
14 42 26 PAGE 2:5
A.CR
TYPE
A.LF
5
6
7
8
9
10
II
12
13
14
1:5
16
17
18
19
20
21
22
23
--- ·-
TYPE VIA DIRECT CBIOS ACCESS.
TYPE
WE ASSUME CBIOS MAY DESTROY SOME REGISTERS,
SO SAVE TI-£M ALL
THIS ROUTINE
TESTS
06BC
06BD
06BE
06UF
06CO
06C 1
06C4
06C5
06C6
06C7
06C8
F5
C5
05
E5
4F
CD
E1
Dl
Cl
F1
C9
lfYPE
0000
VTYPE
PUSH
PUSH
PUSH
PUSH
MDV
CALL
PlF
PlF
PlF
PlF
RET
PSW
B
D
H
C,A
S-$
H
D
B
PSW
BYPASSES CP/M'S ClRL--S,
CTRL-C
, SAVE CHAR
; AND OTHER REGISTERS
, FOR BIOS
; l"llD IF IE 0 AT INI T
• RES TOOE REGISTERS
AND CHAR
, FROM "TYPE"
co
'-.I
MODULE.
1
2
3
4
5
6
7
8
9
10
MICIWBENCH 8080/8085 UWSS A:JSEMDLER
---- _, DECOUT.
06C9
06CA
06CB
06CC
06CF
C5
05
£5
01
11
0602
09
13
DA
01
09
EB
7C
B5
C4
7B
C6
11 0603
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<V2>-150
0604
0607
060A
06DB
060C
0600
060E
06£01
06£2
06£4
06£7
06E8
06£9
06EA
co
£1
01
C1
C9
LJ!:COUT
FFF6
Ff-FF
OECUU2
0602
OOOA
06C9
30
0~6
14 42 26 PAGE 26
DECIMAL OUTPUT ROUTINE
PUSH
PUSH
PUSH
LXI
LXI
13
DAD
INX
.JC
LXI
DAD
XCHG
B
D
OECOU2
10
B
NOV
ORA
CNZ
NOV
AOI
CALL
POP
POP
POP
RET
7-0E:C-84
0
H
B. ·-tO
o. --1
n.
A.H
L
DEC OUT
A.E
·o·
CTYPE
H
0
n
(X)
(X)
"C
MODULE;
MICROBENCH 8080/8085 CROSS ASSEMBLER
2
3
4
5
6
7
8
9
10
11
12
13
06EB
06EC
06ED
06EE
06Fl
06F2
06F5
06F6
06F7
E5
F5
7C
CD
7D
CD
F1
E1
C9
07C1
07C1
<V2>-150
7-0EC-84
14.42 26 PAGE 27
; ---->
DHXOUT: - DOUBLE PRECISION HEX OUTPUT ROUTINE.
CALL WITH HEX VALUE IN HL.
DHXOUT:
PUSH
PUSH
MDV
CALL
MDV
CALL
POP
POP
RET
H
PSW
A,H
HEXO
A,L
HEXO
PSW
H
;
;
;
;
;
;
;
;
;
SAVE H, L
SAVE A
GET MS BYTE.
OJTPUT HI ORDER BYTE.
GET LS BYTE.
OJTPUT LO ORDER BYTE.
RESTORE A
RESTORE H, L
RETURN TO CALLER.
(X)
\0
MODULE;
MICROBENCH 8080/8085 CROSS ASSEMBLER <V2>-150
2
3
4 06F8
5 06FB
06FO
06FF
0701
0703
0705
0707
0709
070B
0700
6 070F
0711
7
8
9
10
11 0713
12 0716
13 0717
14
15
16
17
18
19
20
21
22
23 071A
24 071D
25
26
27
28
29
30
31 071E
32
33
34
35
7-DEC-84 14:42:26 PAGE 28
' DONE - CLOSE UP SHOP
co
07
OA
52
4E
46
52
43
40
4C
54
00
07
0708
OD
54
41
53
45
20
4F
50
45
45
OA
00
DONE.
;
;
3A
B7
CA
j
---->
'
07B6
CR. LF, BELL 0
TRMFLG
; TERM?
A
TERM
; .. YES
FALL INTO 'CKDIS'
;
C2
DB
LOA
ORA
JZ
0213
OBB1
ILPRT
BELL, CR, LF, 'TRANSFER COMPLETE'
CHECK IF TERMINAL SUB COMMAND
WAS SPECIFIED
OBB5
'
3A
B7
CALL
DB
CKIDIS.
CKDIS: CHECK IF DISCONNECT REQUESTED
THIS ROUTINE IS JUMPED TO AT THE END OW
PROCESSING, AND OISCOI\IIIECTS THE PHJNE IF
'0' WAS SPECIFIED AS A SUB-OPTION.
LOA
ORA
DSCFLG
A
;CHECK 'D' FLAG
; REQUESTED?
IF
JNZ
END IF
Pl'l'l I OR DCH
NDIS
; .. NO, JUST EXIT
IF
JNZ
END IF
NOT PI'I'II AND NOT DCH
EXIT
' 1\WAIT C/R TO DISC
SO WE DON'T LOSE THE PHONE
\0
0
MODULE;
MICROBENCH 8080/8085 CROSS ASSEMBLER <V2l-1:50
1 0721
2 0724
0726
0728
072A
072C
072E
0730
0732
0734
0736
0738
073A
073C
073E
0740
3 0742
4 0745
5 0746
6 0749
7 074A
8 074C
9
10
11
12
13
14
15 074F
16 0752
0754
0756
0758
075A
075C
075E
0760
0762
17 0763
CD
OD
50
45
53
52
54
52
20
4F
44
53
4F
4E
43
3A
CD
F5
CD
F1
FE
C2
0708
OA
52
53
20
45
55
4E
54
20
49
43
4E
45
54
00
086F
CALL
DB
ILPRT
CR,LF, 'PRESS RETURN TO DISCONNECT: ',0
CALL
PUSH
CALL
PCP
CPI
JNZ
KEY IN
PSW
CRLF
PSW
CR
CKDIS
DISC ON:
DISCONNECT THE PH(JIIE
EGU
$
0708
2B
49
43
4E
45
54
44
2B
CALL
DB
ILPRT
; PRINT:
'++DISCONNECTED++',O
07B6
JMP
EXIT
06B5
OD
071A
i
074F
co
2B
44
53
4F
4E
43
45
2B
00
C3
7-DEC-84 14:4226 PAGE 29
-·--->
DISC ON
; ASK AGAIN
\0
......
MODULE;
MICROBENCH 8080/8085 CROSS ASSEMBLER
1
2
·----)
<V2>-150
ERAFIL
7-DEC -84
14 42 26 PAGE 3(J
ERASE THE INCOMING FILE
3
4
5
6
7
8
9
10
11
12
IF
0766
0769
076D
076E
076F
0770
077:3
0775
0777
0779
0770
07/D
077F
0781
07!::1:1
07EJS
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
07t:l7
0789
07BB
070Li
078F
0791
0793
07'?4
0797
0798
079B
0791::
079F
07A1
07A:1
11
OE
CD
3C
CB
CD
2B
46
4C
20
58
53
53
20
59
45
59
54
20,
005C
11
0005
0708
2B
49
45
45
49
54
LXI
MVI
CALL
INR
RZ
CALL
DB
O,FCB
C, SRCHF
BOOS
A
CALL
PUSH
CALL
CALL
POP
ANI
CPI
JNZ
KEY IN
PSW
TYPE
CRLF
PSW
5FH
'Y'
CKDIS
ILPRT
'++FILE EXISTS.
.POINT TO CTL BLOCK
; SEE IF IT
EXISTS
; FOUND':"•
; .. NO. RETURN
; PRINT
TYPE Y TO ERASE
', 0
20
~JA
0061--
FS
co
06fl('
06[!5
Fl
E6
FE
C2
5F
59
071A
CD
IF IT MAY BE ERASED
54
50
00
CD
53
E:.Rt'\F IL:
ASI<.
2C
20
4F
45
41
45
20
52
IT EXISTS.
; GET CHAR
; ECHO
, BACK TO START OF L1 NE
, MAI\L UPPER CASE
; WANT ERASED~·
; GUI T IF NOT ERASE
, ER,;SEO OLD FILE
07A6
07A9
07AU
07AE
11
OE
CD
C9
005C
13
0005
LXI
MVI
CALL
RET
o, FCB
C, ERASE
BOOS
;
,
;
;
POINT TO FCD
GET BOOS FNC
DO THE ERASE
FROM "ERAF I L"
1.0
~
MODULE.
M!CIWBENCH 8080/BOU::>
U-IU~,,;
..
2
A~~SEMIJLER
-
IV;::~J-150
7-DEC -t:l4
14 42 26 PAGE 31
EXIT PRINTING MSG FULLDWING
CALL
3
07Af
0780
07B:j
01
CD
CD
070t-J
07U'I
0/[JIJ
10 07DC
11 07Uf
12 07CO
CD
4
5
6
7
B
'I
(JIJ
[HX IT
POP
CALL
CALL
D
PRfMSG
CKIJIS
• Gt::T MESSAGE
, PRINT IT
, DI SCONNEC I-,
! X IT
CALL
DB
ll.PRT
CR.LF.u
, PH ItH
LHLD
SPHL
RET
STACK
.GET ORIGINAL STACK
• RES JOkE IT
, --EXIT-- TO CP/M
O<t.s;:
07IA
071J8
OA
(JQ
2A
F't
C9
OOOOG
\0
w
MODULE,
MICROBENCH 8080/8085 CROSS ASSEMBLER
1
----
2
3
4
5
6
7
8
9
10
07Cl
07C2
07C3
07C4
07C5
07C6
07C9
F5
lF
1F
1F
1F
CD
F1
Hl XO
07CA
07CC
07CE
0701
E6
FE
DA
C6
OF
OA
07D3
07
NIBBL:
0703
0705
C6
C3
30
06BC
Ioo>NUtl
HEXO
PUSH
(V21-150
14 42 26 PAGE 32
HEX OUTPUT
PSW
CALL
PIF
NIBUL
PSW
.SAVE FOR RIGHT DIGIT
; RIGHT
JUSTIFY
i
LEFT
DIGIT
, PRINT LEFT DIG! 1
; RESTOOE RIGHT
ANI
CPI
ADI
OFH
10
ISNUM
7
,
,
;
;
AOI
JMP
'0'
TYPE
, MAKE PR I Nl ABLE
THEN TYPE IT
RAR
RAR
RAR
RAR
07CA
7--DEC -84
..
11
12
13
14
15
16
17
18
JC
ISOLATE DIG IT
IS IS <:tO?
YES. NOT ALPHA
ADD ALPHA B lAS
.,..
1.0
I'IOOVLE·
PUCROIIE:NCH 80801 BOO~ CROSS ASSE,.,BLER
I
II
3
4
- -·-.
7 ·llEC ·ll4
14 4~ 2b PAGE
J]
INLINf PRINT OF "SG
CAlL TO ILPRI IS f"Ol.l OWED BY A ,.,[SSAGE.
BINARY 0 AS THE END
BINARY I ,.,AY DE USED 10
PAUSE '"fSSAG£
PRESS RE IVRN 10 I ONI IIIII£' 1
:s
8
0708
9
10 0709
II 07DA
Ill 07DB
13 07DE
14 07£0
I:S 01EJ
lb 07E:S
17 07£8
19
19 07EB
010 07£(
EJ
lLPR T
XTHL
7E
87
LA
FE
CA
Ft:
CA
LV
IIPLP
1'101
ORA
0&?0
01
07£1'
02
0801'
VA.?b
IIJ
CJ
0709
OBOE
080f
0812
0814
0817
OBI A
08rc
311 OBID
33
34 0&>0
35 08<!1
Jl
CPI
Jl
CPI
Jl
CAl.L
I LPN XI
Ill
1111
IIJ
24
II:S 07£f
lib 07f 2
0714
07Fb
07FB
07FA
07FC
07FE
0900
0902
0904
090<>
0809
OBOA
080C
118
29
30
Jl
'··1 ~o
H£
b
7
~7
ILPRT
~v~
INx
.-
<..f f UL =Mh(.
. SAVE tiL.
.......
A
ILPRET
I
ILPS£ 1
2
ILPSE2
CTYP£
• GET CHAR
.END IY ,.,S!:
vrs. REIVRN
• PAUSE WI IH ,.,SG ·
YES
.PAVSl. NU "SG ·
Yl 5
• TYPE litE "SG
ILPLP
. 10 N[Xl
.LOOP
.
CHAR
1-'AUSE WHILE TYP JNQ HELP SO INFO DOESN'T
SCR~l OFF OF VIDEO SCREENS
co
OD
OIOtl
OA
~0
~2
4~
~J
~3
20
45
55
4E
52
54
:SII
~0
54
41'
20
4f
4J
4£
4Y
55
JA
00
CD
FE
CA
CD
OD·
00
Cl
EJ
LY
If PS£" I
CAl.L
DB
ll.PR T
• PRINT
CR.LF. 'PRESS RETURN I 0 CliNT I NVE
CAl.L
CPI
KEVIN
·c · -40H
EXIT
ILPR T
CR.L F. 0
.vtos
I LPN X T
.LOOP
·. 0
~4
4E
45
;10
O&F
OJ
07Bb
0708
OA
If PS£2
Jl
CN.L
DB
OlEO
ILPRE I
--
X IHL
RET
• GET ANY CHAR
• REBOOT"
.PRINT
, RES HIRE
.PAST "SG
••
\0
01
l'tODULE.
1'11CROBENCH 80801800:') CROSS ASSEI'1BLER
I
, ---->
2
3
~
6
.•7
8 0822
0822
0824
0827
082A
082D
080!F
0831
0834
083:1
0837
0838
OB3A
OBJC
OB3F
0841
26 0844
27 0846
14 42 26 PAGE :14
INITIALIZES HE 1100£1'1
INITI'1D
014B
014B
0148
IF
11\11
CALl
CALL
CALL
I NT REO AND I NOT DCHI AND !NOT H891
A, INITCI
1 QE T
1ST INI T CHAR
OUTCTL
, OUTPUT IT THRfE TI1'1ES
, TO INSURE 82:')1 HAS
OUTCTL
, RECYCLED
OUTC Tl
76
F3
0010
11\11
OUT
LXI
A.076H
OF:Jtf
H.OIOH
A.L
OFIH
A.H
OFIH
A, INITC2
ourc TL
A, INITC3
OUTC TL
A. INITC4
OUTC TL
3E
CD
CD
CD
00
3E
D3
21
7D
D3
7C
D3
3E
CD
3E
CD
3E
CD
1'01
Fl
OUT
1'01
OUT
Fl
40
0148
11\11
CALL
1'1VI
CALL
11\11
CALL
EN> IF
4F
014B
37
014B
28
29
:JO
. -- - - >
31
32
3J
34
I'OIFC8
I'OIES FC8121
, PROGRAI'1 THE 82:13 COUNTER
.I'IODE 3 AN> LSB FlLL~D BY 1'158
,LOAD 82:')3 WITH LSB THEN
, 1'158 IF I;;_>()() BAUD CODE
QET O!ND INI
. OUTPUT IT
, QET 311D INJ
1 OUTPUT
IT
1 QET 4TH
INI
I OUTPUT
IT
1 INTREO AN>
I
T CHAR
T CHAR
T CHAR
I NOT DCH I AND I NOT H891
TO FCBIII'
I A TTEI'IP TED TO "HIE THE I'IODE1'1 CO-D 'NATURAL',
I E
1'100£1'1 SEN> F ILENNtE UlftC01'11'1 5 FN F T I RATHER
THAN 11DDEI'1 F ILENN'IE SEND 11lftC01'11'1 FN FT 81 90 THIS
ROUT IN£ I'OIES THE F ILEHAI'IE FROI'1 THE SECOND FCI
TO THE FIRST
3~
36
37
311
39
40
41
42
43
44
INITI'1D
7-IJEC-84
THIS ROUTINE IS USED TO INITIALIZE SERIAl
BOAIIID5. lM SETUP 5-100 1'101JE" BOARDS
JUST RETURNS IF NO INITIAlllATION REQUIRED
4
9
10
1,1
12
13
14
1:1
16
17
18
19
20
21
22
2:1
24
2:1
tv;n·-1:')0
21
oooc
II
OO:'lC
06
10
0849
084C
084F
Otr.ll
OB:t4
Otr.l:'l
08:18
CD
AF
32
32
4:1 08:'lB
C9
oeco
007C
0068
tt0VFC8
LXI
LXI
11\11
CALL
XRA
STA
STA
RET
H.FCB+Ib
D.FCB
8.16
tOlE
A
FCDSNO
FCBE XT
, FR01'1
, TO
.LEN
, DO THE tOlE
, QET D
, lERO SECTOR 8
AND EXTENT
'D
0\
MODULE,
MICROBENCH 8080/8085 CROSS ASSEMBLER lV2J-150
1
2
3
4
INTADR:
7--DEC-84 14 42 26 PAGE 35
INIT 'S CP/M BIOS ADDRESSES
THIS ROUTINE FILLS IN THE ADDRESSES OF VARIOUS
JMP AND CALL INSTRUCTIONS. SO THAT CP/M BOOS
IS BYPASSED WHILE ACCESSING THE CONSOLE
THIS
IS DONE TO ALLOW CHARACTERS SUCH AS CONTROL-C
AND CONTROL-S TO BE KEYED WHILE IN TERMINAL
MODE, WITHOUT CP/M INTERPRETING THEM
~
6
7
8
9
10
11
12
13
14
15
16
17
18
19
085C
085F
0862
0863
0866
0867
086A
0869
086E
2A
11
19
22
19
22
19
22
C9
0001
0003
OA9A
0873
06C2
INTADR.
LH-D
LXI
DAD
SH-D
DAD
SH-D
DAD
SHLD
RET
BASE+l
0.3
D
VSTAT+1
D
VKEY IN+l
D
VTYPE+l
; GET WARM BOOT ADDR
; LENGTH OF A 'JMP'
; TO CONSOLE STAT
, I'IJD I FY CALL
; TO CONSOLE IN
;I'IJDIFY CALL
; TO CONSOLE OUT
;I'IJDIFY CALL
\0
-...J
MODULE;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
MICROBENCH 8080/8085 CROSS ASSEMBLER
--·--M>
;
086F
0870
0871
0872
0875
0876
0877
0878
087A
C5
05
E5
CD
El
01
C1
E6
C9
KEY IN
0000
7F
VKEY IN:
<V2l-150
KEY IN:
KEYBOARD
7--DEC-84
14 42 26 PAGE 36
INPUT
SAVE ALL REGISTERS. EXCEPT A.
CBIOS CLOBBERS THEM.
PUSH
PUSH
PUSH
CALL
POP
POP
POP
ANI
RET
IN CASE
B
D
H
$-$
H
D
B
7FH
; ADDR SET AT
INIT
;STRIP PARlTY IF
, FROM KEY IN
THERE
\0
Q)
MODULE;
MICROBENCH 8080/8085 CROSS ASSEMBLER <V2l-150
7-0EC-84 14:42:26 PAGE 37
1
2
3
4
:5
6
7
8
9
10
11
12
13
087B
087E
0880
0883
0884
0885
0888
088A
OBBC
OBBE
0890
0892
0894
0896
0898
089A
089C
089E
OBAO
08A2
14 08A3
08A5
08A7
08A9
OBAB
08AD
OBAF
08B1
08B3
0885
0887
0889
08BB
0880
11
OE
CD
3C
005C
16
000:5
'----)·
MAKFIL:
MAKES THE FILE TO BE RECEIVED
I"IAKF IL:
LXI
MVI
CALL
D.FCB
C. MAKE
BOOS
A
I~
co
RNZ
;
CD
28
45
52
52
2D
43
4E
54
40
4B
20
49
45
OA
20
44
52
43
4F
59
40
53
20
45
46
4C
OD
24
; POI NT TO FCB
; GET BOOS FNC
; TO TI-E MAKE
; FF=BAD?
; CFEN OK
DIRECTORY FULL - CAN'T MAKE FILE
07AF
2B
52
4F
20
20
41
27
20
41
45
46
4C
OD
CALL
DB
2B
49
45
54
52
20
55
54
42
20
55
4C
OA
DB
ERXIT
'++ERROR- CAN''T MAKE FILE',CR.LF
'++DIRECT~Y
MUST BE FULL',CR.LF,
'$'
ID
ID
MODULE;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
MICROBENCH 8080/8085 CROSS ASSEMBLER
.
08BE
Ob
80
OBCO
08Cl
08C2
08C3
08C4
08C5
OBCB
7E
12
23
13
05
C2
C9
14 42 26 PAGE 38
MVI
B. 128
; SET MOVE COUNT
MOVE FROM <HL> TO <DE> LENGTH IN <B>
MOVE.
08CO
7-DEC-84
MOVE 128 CHARACTERS
MOV128:
.
<V2>-150
MDV
STAX
INX
INX
OCR
JNZ
RET
A.M
0
H
0
B
MOVE
;
;
;
;
;
;
;
GET A CHAR
STORE IT
TO NEXT "FROM"
TO NEXT liTO II
MORE?
.. YES, LOOP
. NO. RETURN
1-'
0
0
..OOULE;
I'IICROBENCit 80801808:1 CROSS ASSEI'IBLER
.
I
2
----)
OPtE IL
J
4 08C9
:1 08CA
b oecD
. 7 0800
8 0803
9 0805
10 0808
II 0809
12 08llC
13 OIKIF
08£1
08£3
CME:I
CME7
CME'i
CMEB
CMED
14
I ' OBEF
lib ~2
~4
~b
~B
~
...
~c
08FE
0"100
090~
17
18
19
20
O'i04
0"10,
O'i08
O"'IB
090£
0910
21 0911
22 0914
0'117
0'119
O'iiB
091D
O'iiF
O'i21
O'i2J
24 0924
n
AF
32
32
II
OE
CD
3C
CO!
CD
43
4E
:14
4F
4,
20
49
4,
CD
4b
4C
20
50
4E
20
OPNFIL
00b8
007C
OO:IC
OF
0005
XRA
STA
STA
LXI
I'IVI
CALL
INI
7-DEC ··84
14 42 C!b PAGE. 39
OPENS 1HE FILE 10 BE SI'Nl
...
• SEI
CALL
DB
FCBE Xl
FCBSNO
D.FCB
C.OPEN
BDOS
A
OPEN!*
ERXIT
'CAN' '1
CALL
DB
ILPRT
'FILE OPEN -
JNZ
08EF
071!6'
41
tV21-I:IO
EX I
llo REC
OPt:N f l l
~:·'
27
20
,0
4E
46
4C
24
0708
49
4,
4F
OPEN!*
, PRIN1
•• 0
SIZE
"'
'"'
2A
CD
CD
20
OBB8
06C9
07D8
28
Lti.D
CALL
CALL
DB
RCNT
DEC OUT
ILPRT
t •• 0
Obl.B
0708
29
:13
43
4F
:13
OA
CAI..L
CAI..L
DB
IIHXOUT
,NQW PRINT SIZE
ILPRT
.PRINT
'HI SECTOAS',CR,LF.O
3A
1U 0 fOR PROPER OPEN
.POINI I[J FILE
, Q£ I fUNC liON
.IFEN I I
, OPEN I*-,
YES
NO. ABDII
20
20
49
4:1
20
53
e
00
GET RECORD COUNT
, PRINI DECII'IAL N..-ER Of' 9ECTORS
·PRINT
00
CD
CD
48
20
4:1
:14
52
OD
IN HEX
00
C9
RET
......
0
......
MODULE;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
MICROBENCH 8080/8085 CROSS ASSEMBLER
0925
0926
0927
0928
0929
092C
0920
0930
0931
0932
0933
0935
0938
0939
093A
0938
093C
E!)
D5
C5
F5
3A
87
CA
F1
F5
SF
OE
CD
F1
C1
D1
E1
C9
<V2)-150
7-DEC-84
14:42.26 PAGE 40
I---->
PRINT -
SEND A CHARACTER TO THE PRINTER
PRJNTR:
PUSH
PUSH
PUSH
PUSH
LOA
ORA
.JZ
POP
PUSH
MDV
MVI
CALL
POP
POP
POP
POP
RET
H
D
B
PSW
PRTFLG
A
PRTEND
PSW
PSW
E. A
, SAVE REGISTERS
BOOS
PSW
B
D
H
; PRINT IT
;RESTORE REGISTERS
OBC1
0938
05
0005
PRTEND:
;
;
;
;
;
GET PRINT FLAG
ENABLED?
NO, SKIP IT
GET THE CHAR
AND SAVE I1 AGAIN
c.s
,_.
0
N
MODULE;
MICROBENCH 8080/8085 CROSS ASSEMBLER
(V2 I -150
7--DEC-84
14. 42. 26 PAGE 41
1
2
PRIOPT
3
4
,
6
7
8
9
10
11
12 09:30
13 0940
14 0941
15
16 0944
17 0945
18
11 SAVED THE PRIMARY OPTION IN 'OPTION',
2 l SCANS THE SUB-OPT ION CHARACTERS, AND FOO
EACH FOUND. ZEROS THE APPROPRIATE ENTRY IN
THE OPTION TABLE
FOR EXAMPLE. IF 'G' IS
CODED <GUIT/DISCONNECTl THEN THE 'D' STORED AT
'DSCFLG' IS SET TO 0 SO IT CAN BE TESTED
LATER.
11
lA
32
0050
PRIUPr.
OBBO
13
JA
OPILP
19
20
21
22
,
23
24 0946
25 0948
26
27
28
29 094B
30 094E
31
32 0950
33
09~1
34
35
36
37
38
39
40
41
0954
0956
0959
095A
09513
PROCESS COMMAND OPTIONS
FE
CA
LXI
LMX
STA
OPTION
INX
LDAX
D
20
0961
D
; TO SECONDARY OPTION
; GET CHAR
CPI
..JZ
IN
IT
CMP
M
OPT NO
M.O
OPTLP
, FOUND THE OP TJ UN;·
; NQ,
DON'T SET IT
, SET THE OPT ION
, GET NEXT OPTION
MVI
C:3
0944
..JI'F
0950
0
..JNZ
0959
00
UI-'IN(J
STORE
'NS~·
, HL = AOUR OF 'OAGDSRV'
, OPT rABLE LEN
BE
C2
:36
OP I C i\
OPTION.
OPT
H,OPIBL
B.OPIBE-OPTBL
LX I
MVI
05
OI:Hll
, NO MORE
YE-S
ENOOPJ
THE APPROP
21
06
~3
; TO PRIMARY OPT
, GET PRIMARY
; SAVE IT
D
IF YOU MOD THI 5 PROGRAM FOR :'7 OPTIONS.
YOU MUST CHANGE THE FOLLOWING, SINCE
THERE WON'T BE A
AFTER THE OPTION
IF A BAUD RATE WAS SPECIFIED
SEl
05
C2
D.FCB+1
INX
OCR
H
,JNZ
OPrCI'.
[Jp liON NOT
8
; TO NEXT
.MORL·
IN TABLE
42
43 095E
C3
44
45 0961
C9
..JI'F
OCI::_D
I::NDOPI.
RET
BADUPT
, SHOW BAD
, FROM
~UB
OPT ION
'PRIOPT
....
0
w
MODULE;
MICROBENCH 8080/8085 CROSS ASSEMBLER
1
2
3
; ·----:>
PRTMSG:
7-DEC-84 14:42:26 PAGE 42
PRINTS MSG POINTED TO BY <DE>
A
' $ ' IS THE ENDING DELIMITER FOR THE PRINT
NO REGISTERS SAVED.
4
~
6
7 0962
8 0964
<V2>-150
OE
09
C3
0005
PIHMSG:
MVI
JI'P
C, PRINT
BOOS
; GET BOOS FNC
;PRINT MESSAGE.
RETURN
1-J
0
.c.
MODULE;
1
2
3
4
5
6
7
8
9
MICROBENCH 8080/8085 CROSS ASSEMBLER <V2>-150
0967
0968
0968
096C
096F
0970
F5
3A
2F
32
Fl
C9
OBCl
OBCl
7-DEC-84 14:42.26 PAGE 43
; ----:>
PRTTOG - ENABLE/DISABLE THE PRINTER
PRTTOG:
PUSH
LDA
CMA
STA
PIF
RET
PSW
PRTFLG
PRTFLG
PSW
......
0
01
l'tllllULE.
I
2
3
4
:l
6
7
B
9
10
II
.1:.1
13
14
,,
t11CAOIIENCU HOI30tHOt<:l IIW>iS A5til.t1BUA
HOSt. I I
1
DEC-84
0911
0914
0'17:1
0978
091B
097E
0981
0984
0987
20-
o.ao
0098F
0'1'11
:JA
30
32
FA
2A
II
CD
22
C9
OtbA
3A
FE
0Cb1
01
00
OC£0
MVI
Ill
Al
CB
II
NOSCI P
C:l
D:l
0£
29
30
31
32
33
34
3:l
3b
37
38
CD
II
0£
lA
OOO:l
OO:lC
14
co
000~
09A~
All81.11
01
I I
B1
tA
30
CA
PUSH
PUSH
MVI
CAI..L
Lll
MVI
CAI..l
PIF
P!F
(IRA
OYil~'
READ
EIFLG
I
c.o
O. DBUf
B~
f lAS UP
.~.lEI
•
lb
SfC:f
IN BUff
,llfCRE~NI
II
. E I"AliS I t 0 '
Nil 0 MORE
. C£ I POI NH R
. 10 DAIA
, f'llVE 10 BUt FER
• SAVE BUfFER Pill Nil A
. FROM "'Nf AllSEL"'
IN ANLIIHf.R
.
,
.
•
,
,
IOE I
IS
10
Gtll
SEC
10
BlOCt< Of
lb
c.:."'
Bl Ut ... ING l
EOF fLAG
IT Stlt
SKJW E Of.
lUf
IORS IN BLUC"
0151< BUt ftR
B
D
c. SlOMA
OCR
BOOS
D· f I"B
C.AEAO
BOOS
D
B
A
AOSCUt<
A
Jl
tHIJf
Jl
O'K .I
SC IN8f
A
SCIN8F
RII8LII
SECP TA
D. BASL•80H
t10VI28
SECP lA
IS EMPIV
LOA
CPI
SIC
0994
099:l
09Ab
09A9
09AA
Jft
:J7
0£
l.OA
OCR
STA
La-..D
l XI
l"AI..l
SKD
RET
BUFfER
28 Ofib
0998
D'I'IB
099[
09AO
09A:J
09A4
ROSE.C I
O(bA
0988
OCbll
0080
OIIBE.
0Cb8
14 4.1 2b PAGE 44
READS A SlCIUA
FOR SPHO. lUIS RD.JIIN[
SEC IIIIlS AI A llt1E
16
l7
IB
19 O'JB8
21
22
23
24
2,
26
27
tV2>-I:lO
'5E I llt1A
AOIIII
. READ Ut< ·
,YfS
,f()f"
. GOI (Of
39
40
41
42 09AD
43 09110
0982
0911'1
0911b
09118
Oft A
OYBC
0911[
09CO
09C2
44
4:l
46
47
48
READ E RAilA
co
07
28
49
.,
:l2
41
fAll I
Bt:ll. ··•F ILE READ ERROR.·
1.11
U.IIOH
0
4b
'I(
.,
4f.
:l2
:l2
,0!.
CAll
DB
20
4:l
44
;10
24
09Cb
09C 1
21
19
EB
09CB
oc
09C:J
OlAf
;?B
0080
AOSC!lll
llAO
ICHG
INI
c
• AllO LE"NG IH OF UNE SEC I OR
10 NEll BUFf
,BLJFf 10 ~
,t1(JIIf SECIOAS''
t-'
0
0\
MODULE;
1
2
3
4
MICROBENCH 8080/8085 CROSS ASSEMBLER
09C9
09CA
09CC
09CF
5
6 09D2
7 0904
8 0907
79
FE
CA
C3
3E
32
MDV
10
0908
0994
01
OC67
CPI
JZ
JI'P
HEOF:
MVI
STA
MDV
79
<V2l-150
7-DEC-84
A,C
16
RDBFUL
RDSCLP
14:42:26 PAGE 4:5
;
;
;
;
GET COUNT
DONE?
.. YES, BUFF
READ MORE
IS FULL
A, 1
EOFLG
A,C
; SET EOF FLAG
9
;
10
BUFFER
IS FULL,
OR GOT EOF
11
12
13
14
15
16
17
18
09D8
0908
090E
09E1
09E4
09E6
09E9
32
21
22
11
OE
CD
C3
OC6A
OCED
OC68
0080
1A
0005
0971
FIDBFUL:
STA
LXI
51-LD
LXI
MVI
CALL
JI'P
SCINBF
H, DBUF
SECPTR
D, BASE+80H
C,STDMA
BOOS
RDSECT
;STORE SECTOR COUNT
; INI T BUFFER ..
; .. POINTER
; RESET ..
; .. DMA ..
; .. AODR
;PASS SECT TO CALLER
,_.
0
-....1
MODULE;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
MICROBENCH 8080/8085 CROSS ASSEMBLER
D5
57
CD
SEND:
;
THE CHARACTER TO BE SENT
IN REQ D.
09F1
09F3
09F5
09F8
09F9
09FA
09FD
E6
FE
C2
7A
01
CD
C9
SEND:
014F
01
01
09EE
0143
7-DEC-84 14: 42:26 PAGE 46
; ---->
;
09EC
09ED
09EE
(V2 >-150
SENDW:
SEND A CHARACTER TO THE MODEM
IS SAVED
PUSH
MDV
CALL
D
D. A
INCTL
; SAVE D. E REGS
; SAVE THE CHAR
;GET STATUS
ANI
CPI
JNZ
MDV
PCP
CALL
RET
MDSNDB
MDSNDR
SENDW
A.D
D
OUTDAT
; ISOLATE READY BIT
; READY?
; .. NO. WAIT
; GET CHAR
; RESTrnE D. E
; OJTPUT IT
; FROM "SEND"
1-'
0
co
MODULE;
MICROBENCH 8080/8085 CROS5i ASSEMBLER
1
2
3
4
; ----->
SHJW:
;
<V2l-150
7-DEC-84
14:42 26 PAGE 47
SHOWS CHAR SENT/RECEIVED
~
;
b
7
8
9
10
11
12
13
14
;
CR, LF. AND TAB ARE SHJWN.
ALL OTHER
NCJII-PRINTABLE CHARACTERS ARE SHOWN IN
HEX AS <XX)
SHJW:
CPI
09FE
OAOO
OA03
OA05
OA08
OAOA
OAOD
1~ OAOF
16 OA12
17 OA14
18
19 OA17
20 OA18
21 OAlA
22 OA1D
23 OA1E
24 OA21
25 OA23
2b
27
FE
CA
FE
CA
FE
CA
FE
DA
FE
DA
F5
3E
CD
F1
CD
3E
C3
OA
OA2b
OD
OA2b
09
OA26
20
OA17
7F
OA2b
JZ
CPI
JZ
CPI
JZ
CPI
JC
CPI
JC
SIHOWHX:
28
OA2b
07Cl
29
OA2b
PUSH
MVI
CALL
POP
CALL
MVI
JI'F'
'---->
CTYPE:
CTYPE:
PUSH
PUSH
PUSH
MDV
MVI
CALL
POP
POP
POP
RET
LF
CTYPE
CR
CTYPE
09
CTYPE
, ,
SHJWHX
7FH
CTYPE
PSW
A,'<,
CTYPE
PSW
HEXO
A,') I
CTYPE
;LF?
; .. YES. TYPE IT
; CR?
; .. YES, TYPE IT
; TAB
; .. YES. TYPE IT
; CTRL-cHR?
; YES, SHOW IN HEX
; DEL?
;~.
TYPE THE CHAR
; SAVE THE CHAR
; TYPE ..
j
• .
I
(
I
; THEN ..
; .. THE CHAR
; THEN ..
; .. '>' AND RETURN.
TYPES VIA CP/M SO TABS ARE EXPANDED
28
29
30
31
32
33
34
35
3b
37
38
OA26
OA27
OA28
OA29
OA2A
OA2C
OA2F
OA30
OA31
OA32
C5
05
E5
5F
OE
CD
E1
01
C1
C9
02
0005
B
D
H
E,A
C. WRCCJII
BOOS
H
D
B
; SAVE.
; .. ALL.
; .. REGS
;CHAR TOE
; GET BOOS FNC
;PRINT THE CHARACTER
; REST~E ..
; .. ALL..
; .. REGS
; FROM "CTYPE"
.....
0
\D
1100ULE•
I'IJCROBENCH
80801808~
I
CROSS "SSEI'IBLER
.---->
02
3
4
5
7
8
,"1
15~
lb OA'lB
17
IB
1"1
20
21
22
23
24
25
OA3D
OMO
OMJ
OA45
OMS
OMB
OA4D
0 ... 4 ..
OA52
2b 0"55
27 0"57
28 OA5"
2"1
30 OA5D
31 OAbO
32 OAb;l
33 0Ab4
J4 OAbl
J5 OAbB
Jb OAb"
J7 OAbD
38 OAbf
3"1 0Al2
40 0A75
41 0A1b
42 0A7"1
43 OA7"
44 0A1D
45 OA1E
46 OABI
47 ON14
48 OA85
4"1 OABS
50 OAB"'
51 OABC
502 OABE
5J 0 ..."11
~ OA"'2
55 OA"/5
SN>SEC
SEND
1 DEC ·84
14 42 2b P"GE 4H
rt£ O...T" SECTOR
-ILE SENOINO THE SECTOR. THE "SSEFl Q" IS Sl T
SUCH JW\T IF ·s· I SEE THE FIll> WIIS REOUESTE D.
Tl£ "SHOW" ROUTINE WilL PRINT IHE D"TA. BUJ NOT
THE HDR OR C"Sl,ll'l· OR ANY NON-f ... JAL 1'1505
b
10
II
12
13 OA33
14 OA3b
CV21-150
SNDSEC
21
CD
Eb
FE
C2
CD
FE
C2
CD
Eb
FE
C2
CD
fE
0080
014F
02
02
OA5D
0147
IJ
0 ... 5D
014F
02
02
OMB
0141
II
c ...
O"~D
C:J
0 ... 48
CD
Eb
FE
014f
01
01
o":1b
C2
SNDSEC
SENDC
JNl
CALl
CPI
JNl
W"TDEC
c ...
CALl
ANI
CPI
JNl
CALl
CPI
Jl
S~NDC
I
--
C...._L
ANI
CPI
JNl
1£
fE
IF
""I
CALL
END IF
LXI
CALL
ANI
CPI
I'10V
o...
CPI
Jl
CPI
I'IOV
C...._l
I XI
OCR
c
C...._l
~7
I'10V
OWE
CD
01
OD
ObCJO
c·~
O...U4
2C
C2
C"'
s~
Nnr 1
St:t4DC2
51-UW
U.ObOOH
JNI
Sf.NDC~'
B
SENDC;.,
CPI
.Jl
NXTCHR
INR
SJ:NOND
RET
JNl
OiU<.
.... o
OCR
JNl
Oi\H4
I"
OA'I'
.POINI
TO DUFFER
.... ..,
JNl
014 1
• INI J C"Sl.t1
• ClEAR CRC C~lf.R
INC IL
I'IDSNDB
I'IDSNDR
SEN DC
LO...
ORA
JZ
CD
c ...
H. BAS£+80H
INCTL
I'IDRCVB
I'IDRCVR
SENOCI
INDATA
8TPCHR
SENDCI
INCTL
I'IDRCVB
I'IDRCVR
WAJDEC
INIIAT"
STRCHR
SENDCI
WATDEC
O...SI
I]
OA~II
05
C2
FE
CLRCRC
0804
OA'IJ
IE
'"
c.o
If
NUCHA
STPCHA
NUCHR
OOIDAl
D ....
SSEJ u;
A
SENDCJ
CA
JA
Dl
C2
NOT v ... xPDP
ElF
SEHDND
L
SENOC
• CttECI< IF SHOW CHARAC ll RS
• SENT ENABLED
.NO ()Ool' J DISPL"Y TO TfRMINAL
. DISPI AY llAIA
.POINI JO NEXT CltAR
.LOOP IF -IOOH
• fROM SNDSl'C
......
......
0
MODULE;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
MICROBENCH 8080/80B5 (ROSS ASSEMBLER
----- -
STAT.
<V2>-150
7-DEC-84
14:42.26 PAGE 49
KEYBOARD STATUS
SAVE ALL REGISTERS, EXCEPT A,
CBIOS CLOBBERS THEM.
OA96
OA97
OA98
0A99
OA9C
OA90
OA9E
0A9F
OAAO
STAT
C5
05
E5
co
El
01
C1
B7
C9
0000
VSTAT:
PUSH
PUSH
PUSH
CALL
n
POP
POP
POP
H
D
ORA
RET
A
IN CASE
D
H
$-$
; ADDR SET AT
n
; 0
=::
INIT
NOT READY
......
......
......
MODULE;
1
2
3
4
5
6
7
8
9
MICROBENCH 8080/8085 CROSS ASSEMBLER <V2l-150
·--OAA1
OAA4
OAAS
OAA7
OAAA
OAAD
OAAF
OABl
OAB3
OAB5
OAB7
0AB9
OABB
OABD
OABF
OAC1
0AC3
OAC5
OAC7
OAC9
21
7E
FE
C2
CD
213
4E
20
49
45
4E
4D
20
50
43
46
45
2B
OD
24
11 OACA
06
12
13
14
15
16
17
18
19
7E
FE
CA
23
05
C2
C9
0050
-=~
TRAP:
7-DEC-84 14.42.26 PAGE 50
CHECK FOR NO FILE NAME OR AMB J GUOUS NAME
TIMP.
LXI
MOV
CPJ
JNZ
CALL
DB
H, FCB+1
A.M
' '
ATRAP
ERXIT
'++NO FILE NAME
;POINT TO FILE NAME
; GET FIRST CHAR OF FILE NAME
; ANY THERE?
; YES. CHECK FOR AMBIGOUS FILE NAME
; PRINT MSG. EXIT
SPEC I FlED++', CR. LF. ' $ '
ATRAP.
MVI
B. 11
; 11 CHARS TO CHECK
TRLOOP.
MOV
CPI
JZ
INX
DCR
JNZ
RET
A,M
, GET CHAR FROM FCB
; AMBIGUOUS?
; YES. EXIT WITH ERROR MSG
;POINT TO NEXT CHAR
; ()liE LESS TO GO
; NOT DONE. CHECK SOME MORE
; NO AMBIGUOUS NAME, RETURN
20
OACA
07AF
213
4F
46
4C
20
41
45
53
45
49
49
44
213
OA
10
OACC
OACD
OACF
OAD2
OAD3
OAD4
0AD7
OB
3F
OAD8
OACC
'?'
TRERR
H
B
TRLOOP
.....
.....
IV
MODULE;
MICROBENCH 8080/8085 CROSS ASSEMBLER <V2l-150
1
2 OAD8
3 OADB
OADD
OADF
OAEl
OAE3
OAE5
OAE7
OAE9
OAEB
OAED
OAEF
OAF1
OAF3
OAFS
OAF7
OAF9
OAFB
CD
2B
43
4E
54
55
45
57
4C
20
41
44
4F
54
4F
53
2B
OA
07AF
2B
41
27
20
53
20
49
44
43
52
20
50
49
4E
2B
OD
24
TRERR.
CALL
DB
7-DEC-84 14:42 26 PAGE 51
ERXIT
; PRINT MSG, EXIT
'++CAN' 'T USE WILD CARD OPTIDNS++',CR,LF, '$'
.....
.....
w
rtOOULE•
I'IICROBENCH
8080/800~
JA
D7
C8
4F
II
OC6A
I
2
3
4
a·' o8o;!
"' 0803
10
II 080b
1~'0807
13
14
.,
16
17
18
IY
0108
OIOY
0108
OIOE
0111
0113
OBib
~ 0817
21 0818
22 OBIY
23 OIIA
24 0810
c,
OE
CD
II
0£
CD
Cl
Dl
El
lA
000,
C)()'C
II'
()()0,
07
C2
~I
OBJ9
C>OBO
00
c;z
0806
OB~b
AF
J;.:>
21
O(bA
OCEO
2~
Of6tt
II
0000
33
OD 10
OD u
OB t~
OD 18
or
...
~DLI\
I< SOMA
(V2) -130
SCINDF
A
I1(N
c.A
D. DDUF
PUSH
PUSH
PUSH
I'IVI
CALL
LXI
I'IVI
CALL
PIF
PIF
PIF
ORA
.JNZ
LXI
DAD
XCHG
OCR
.JNZ
XRA
STA
LXI
St« 0
I. ••
I'IVI
CALl.
REI
7-D£C 84
WRITES A DLOCI\
LOA
ORA
RZ
l. X I
01\WRLP
E'
D'
19
EB
30 08;.?/
31 08;-'A
~ 08<?0
WRDLII
OCFD
"" 08~0
2b oB;''
27 08~~
28 08013
:J4
.1,
36
37
A~SEI18LER
---
' ON'D
6 0800
7 0101
29
CROSS
14 4~ ~6 PAGE '~
ro
DIS~<
•
•
.
.
.
I SECT IN DUFFER
0 I'IEANS END OF f ll f
NlNE TO WRITE
SAVf COUNI
POINT TO Dl 51\ DUFF
H
D
B
C. STOI'IA
BOOS
D.FCD
• 5E T DI'IA
. TO DIA'F ER
IHEN WR I IE
C.~ITE
TICE
BOOS
B
D
H
A
WRERR
H.80H
D
DLOCI\
-LP
A
SCINBF
H. D8Uf
SH'PTR
• OOPS. ERROR
, UI\IGTH OF I SEC I
• HL• M:X T DUFF
• TO 0£ FOR SET~A
• I'IOIIE SECTORS-·
VES. LOOP
• IIET A ZERO
• RESET I OF SEC TORS
• RESET BUFFER
POINTER
0. IIAS£+80H
C. SlD1'1A
DOllS
• Rf"SF J
Ol'tA
ADDA
c
lll
(9
OPO")
3"1 OD'I9
40 08.1C
41 08 ••
0841
084J
084';
co
OlfJ 1(1
co
O!OU
LA&. l
07
;•&
.!IJ
OD
RSDI'IA
. Rf.SET OMA TO NORI'I
ILPR I
. PRINI
DELL. · + •FRROR WRIT INC 1· I L£ ·.CR. Lf. 0
~.·
~.·
41
~··
08~'
~0
~l
004'/
0848
OB41J
01141
08:>1
08Yl
OB55
~~~
4'1
49
Jl'f>
A8URT
38
40<'
OD~/
54
4£
,•o
4'1
4~
OA
LJ
WHI f<H
CAlL
4'~
4l
4lo
4(
OC>
OC>
04.lE
. EX I I
.....
.....
~
I'IODULE.
l'llt HOOfNCII H09Cl/B0tl:) <HilS!; A,,Sfi'IULIR
I
2
3
4
(V;'!) · 150
WAS£C T
WAif£ A
1
lli'C
84
14 42 ;•6 PAt.;[
~J
S~CIOR
WAITES THE SEC.TOR INTO A DUFFER
WHEN 96
HAVE BEEN WAIJIEN. WRITE 5 THE Dl 00< TO DISI<
')
b
7
9
9
10
II
12
13
14
.,
16
17
19
19
ENTR'I POINT
OI:IA
OI~D
08~
08bl
081>4
Olb:l
0869
0861
086C
Olt.F
0871
2A
EB
21
CD
El
22
3A
OChH
0090
OBOE
OCbB
OCbA
X
32
FE
OCbA
bO
co
WRSEC T
LH-D
XCitG
LXI
CAl.L
XCtlQ
SH-D
LM
INR
STA
CPI
RNl
.. l.l'lDLI<"' FLUSHES
SHPTR
IJ, DASE•BOH
f'IOV I 28
SECP IR
SCJNOf
...
SCINOF
96
litE
OlJff~R
AI Hlf
G£ T DUf"F AllOR
TO llE fOR I'IOVE
FR011 HER£
110VE TO Bllf FER
SAVf N1: H
OLOCI< POINTlR
. IUI1P THE
SECTOR •
IN THE DUFf
, HAVE WE 9b' ( 1.2~ DLOCK INQ
,N),
RETURN
.
.
.
.
.
I
20
21 087;;>
22
23
24
2')
26
27
0117:1
0876
0019
087C
017f
0892
0894
0886
0898
OIBA
DISC
088£
0890
089;;>
OIY4
08Y6
OIYB
089A
089C
089£
OBAO
08A2
08A4
08A6
08A9
08M
08AC
29 OBAO
3A
87
C2
CD
CD
CD
4F
4A
43
20
')2
4E
46
:12
41
4F
')4
44
20
')')
46
')2
4')
43
4')
4')
00
00
C3
0802
OAfD
OND
O~JO
07!J8
42
4')
')4
:14
41
:13
4')
20
42
:12
4')
2C
42
46
4:1
20
')9
4')
44
44
OA
ObF8
LM
ORA
JNl
CAll
CAll
CAt l
DO
.....
OBJFLG
...
WADLK
WAOLK
CUiF IL
ILPRT
'OOJEC T TR-SFER ABORTED.
BUFFER EXCEEilED '.CR. l f . 0
OCM:
,_.
,_.
01
I
I
I'IDDUL£;
riiCROIENCH
BOEI0/800~
CRUSS ASSEI18LEA
(V2l-.,0
7-IJEC--84
14 42 2b PACE
~4
.. .. . . .
...........
...
..
. . .. . . . . . . .
........
I
2
3
'
DATA TABLES
4
~
b
7
B 0880
9
10
II
00
OPI ION
DB
SUB-OPTION TABLE
IF AN OPfiON IS
TH£ CHARACTER IS SET 10 OINNIV 0
I ;;I
13
14 0181
I~ 0182
lb OIB3
17 OBB4
18 OIB:I
19
20
21 OBBb
. PRIMNIV OPI ION
0
OBBI
•
IN Eff.ECT.
4F
:12
:13
:14
08Bb
OPIBL
DSCFI 0
OBJFLC
RSEFLG
SSE.Fl G
TRrtFLC
OPIBE
EClll
DB
DB
DB
DB
DB
EllU
FF
FIRS I
DB
OFFH
, FLAG FOR F I AST
00
0000
00
00
00
00
riAKE K T
ACNT
Rl'VSNO
SfCTNH
DB
DW
DB
DB
DB
DB
DB
DB
0
0
0
0
,fXT COUNT USED BV 'CNREl'
, EX TENT RECORD COUNT USED BV 'CNHEC ·
• SFC 1 • RECE llo£D
• CURRENT SEC TOR NLtt8ER - HI ORDER
LO ORDER
. CURRENT SEC TOR NLtt8EA
, ERROR COUNT
. RECE II.£ ERROR CODE
dlC HAVES rtODEit DEFAULT t«LDINQ AREA
44
'D'
, DISCONNECI WHON DONE
, OIIJEC T FILE TRANSFER
, SEE ~T 'S RHE IVfD
. SEE ~T '5 SENT
, TO JERri AFTER kFER
.END OF OPTIONS
·o·
'A'
·s·
'T.
•
T 111£
THAU SND UA ACV
22
23 OBB7
24 OBBB
2:1 OBBA
2b OBDB
27 08BC
:18 08BD
29 0811£
30 OBBF
31
00
tlb
34 oBco
OBCI
OBC2
01£3
OIE4
OBEb
08£/
44 0Cb7
4:1 OCbH
46 OCbA
47
48 OCEB
49
30
00
00
00
0
BbH
CPTFIG
PAll l G
ASCI CD
11£11£ND
CAPPTR
COliN I
I.AH( ... O
OB
DB
DS
OS
DS
DB
OS
. C~ TIIRE £-BLED Ft.AQ
, PRINT £-LED FL~
• C~Tl~E FC8
.LAST PAGE OF TPA
• BUFFER POINTER
, SEND COUNTER
, SEND LOQII.-AHEAD BUFFER
0
0
3:.1
I
2
0
1:28
FOLLOWINQ 3 USED BV DISIO.
00
oct;o
00
ECFI.C
SECP JR
SC INBF
STACK
,.
:12
0
0
FOLl.OWINQ USED BV ASCII CAPTURE AND PAINT FLNCTIONS
32
33
3:1
3b
37
38
39
40
41
42
43
St:C INL
LARC T
£ARC DE
HII.DD
DB
DW
DB
OS
OS
0
DBUF
ECJU
ROUTINES
, EOF FL ... C (I
~TRUE
l
DBUF
0
128
2
9b SECTOR DISK BUFFER
OCED
BUFFEAI~
•
, • OF SECTURS IN BUFFER
• STACK AREA
, SlACK POINTER
(OV£RLAVS HELP rtSCSl
. 9b SECTOR 0151<. BUFFER
........
0\
~LE.
"ICROBENCH 8080/8095 CROSS A55E"DLER
I
;z
J
4 OCED
5 OCEE
b OCFI
7 0Cf4
OCFb
8 OCF8
9 OCF9
10 OCFC
II OCFF
0001
0003
0005
0007
0009
0008
0000
ODOf
0011
0013
0015
DOll
0019
ODID
ODIIl
OOIF
00~1
oo~n
oo;~~
00~'7
00<'9
12 OO;.>A
OD~C
oo;•f
00.10
00:12
0034
·ooJb
0038
oo:lA
OOJC
OO:Jl
0040
004~.1
0044
004h
004A
OD4A
004C
004f
00'>0
005;>
IV~>-150
7 -DEC-84 14
4~
2b PAGE 55
INVAL I 0 CO-NO
F5
CD
CD
21
27
FJ
CD
CD
;27
49
;20
4E
49
56
4C
44
44
43
40
20
4F
40
4[
20
50
49
4£
28
OA
OA
50
45
S:l
52
54
52
20
4F
20
45
50
20
54
4C
4]
54
20
51l
54
20
00
DAOOPT
ObD5
07D8
28
00
ObDC
07D8
20
53
41
20
4E
41
49
20
40
4F
4D
43
40
41
44
4f
54
4r
;'O
00
00
,;.;!
:n
PUSH
CALL
CALL
DB
PSW
CRt.F
ILPRT
PIF
CALL
CALL
DB
PSW
IYPE
IIPR I
IS AN INVAL
00
'PRESS RETURN FOR HEI.P.
. SAVE DAD OP I ION
'++.' ·. 0
...
. Rf I R IEVf DAD UP Ill IN
. PRJNI BAD OPIION
, fll I WI ERROR
I 0 lli1Cill'lrl COttrtAND 1FT IONH ·.
CTRL C 10 El IT
~R.
Lf CR. LF
'.2, 0
20
45
55
4E
4b
52
48
4C
2C
4:J
52
20
20
4F
4::0
49
3A
o.;,.,
......
......
-...J
I'IOOULE,
"JCROBENCH 8080/800, CROSS ASSE"BLER
2 00~3
3 OD'6
OD~8
OO~A
oo~c
OD~
OObO
0062
00b4
0066
0068
OObA
4 OObC
ODbE
0070
0072
0074
0076
0078
007A
007(
007E
0080
0082
Olltl4
0086
0088
008A
008C
OOBf
0090
0092
0094
009b
009A
OINA
009C
!I 009D
009F
ODAI
OOA3
ODA:!
OOAl
OOA9
ODAB
ODAD
ODAF
ODBI
0083
008!1
LD
28
29
:12
49
41
20
4F
4D
4E
:13
OD
20
20
:14
4(
:19
3D
41
43
49
43
:10
:1~
4:1
4~
41
4C
2F
49
41
4C
20
4F
41
4:1
OA
20
20
:!4
4C
4!1
3D
4:149
;10
41'
43
21'
OD
0708
:14
4:1
4D
4E
4C
43
4D
41
44
3A
HHP
CAlL
DB
IV21 -1,0
7 DEC -84
14
4~
Jl.PR I
'ITIER"JNAL C!J1t!NC>S
2b PAGE
~b
.. CR. LF
OA
20
43
:12
20
20
20
:13
49
20
41
:14
:12
20
4E
42
DB
C. JRL- Y "' ASCI I CAP lURE E NABI E /D I SADLI.
DO
CIRL ·E = EXI I TU CPI". CR.LF
IOGGI.l . CR. Lf
4~
44
!13
42
4!1
!14
47
4(
OD
20
43
52
2D
20
20
!18
:14
,4
20
:10
4D
OA
......
......
(X)
l'tOOULE.
I'IICRfl8EN(H tlOBOIIBOO!I <.I'll'•" A!;SEMOLER
0087
0089
0088
008D
008f
ODCI
, ODCJ
DOC !I
ODC7
ODC9
01118
ODCO
ooc•
0001
000'1
., 000!1
0001
0009
0008
0000
OllllF
Ollt I
Ollt J
O[lf 5
ODf'
0111 y
Ollt (I
ODf D
Ollt F
oor 1
0111 :t
Ollf 5
oor 1
Ollf Y
Ollf 8
01110
OllfF
:J 0£00
()£();'
0£04
()('Ob
0£.00
20
j;!O
20
•1:1
'!14
4C
44
3D
44
'!1:1
4f
4E
4J
~~
~·0
20
20
0'0
PRINr (NAlHfitJI:r.AOII
p
IIJ,;(;tl',Ck.tt
tn.tr
4::1
!1;:>
!14
4(
!10
2V
20
:m
20
!I,;?
4lE
20
4E
4,?
4',)
;!F
4•1
49
41
4(
.
5)
4;:•
~)
20
5.j)
4F
47
45
OA
OA
4b
5;>
41
4.'
4{
0[1
(I [I
4f
4U.
DO
'FIJRI'IAI
FCfi CIII'II'IAND
l!i
·.cR.LF.CR.If
54
()£CIA
20
Of Of.
4f
4U
4£
43
40
41
44
49
)
(}A
OA
5:1
OD
c 11<1.
Ll
,,!I
4F
4!1
OA
I)()
DO
Pt.INl ·.
~14
46
0£1b
0£ Ill
Dl SCUNNf C I
'19
••J
~0
.,'()
f IRL · D
u
5;'
01. I U
ll<.
DO
~0
4f
Oll d
Of: 14
14 4.' 2b f'AG£ !I!
~D
;•o
ot ,,.
7 DE'C -84
;,o
48
4E
00
50
4Y
54
4!1
41
4(
<'J:•o-1!10
..
.....
.....
\0
1'10DULE.
111CROB£NC1t 90801800:1 CROSS ASSEI10l.ER
OEIA
OEIC
OEIF
0£20
0£22
0£24
OE2b
0£28
0£2A
OE2C
0£2£
. 2 OE2F
0£31
0£33
0£35
0EJ7
0£39
0£:18
0£30
OEJF
0£41
0£43
I
0£4~
0£47
0£49
0£411
0£40
0£4F
OE:SI
0£53
0£5:1
0£:17
J 0£:19
0£:18
0£:10
0£5f
0£61
OEbJ
OEb:l
0£61
0£69
0£68
OEbO
OEbF
0£71
0£73
0£75
0£77
0£79
0£711
OE70
OE7F
OE81
OE83
44
4:.l
40
20
20
49
4:1
41
45
OA
OA
:S7
4:1
45
23
49
20
20
20
48
52
43
45
20
:S2
40
52
20
:10
49
4E
00
20
48
4:1
20
41
;..,o
45
4b
4C
4f'
45
20
59
53
42
4F
:14
4F
5:1
00
00
01
<V;>J·l:IO
7·0EC·R4
14 42 2b PAGF :18
40
4F
40
;>J
4b
4C
4E
40
00
00
DB
'DI1CfN1t1 •FIIENAI1E
48
52
20
20
53
41
Jl
4J
41
41
54
52
50
49
41
:19
4r
54
4f'
2C
UA
57
49
49
40
:)9
42
20.
4F
4(
:17
44
42
20
5:1
20
50
49
4E
2C
OA
OA
DB
·-RE.
DO
15 A I
.Ck.lf0 .CR.Lf.
CttARACIER PRI11ARV OPTION. ',CR.tF
WttJCH 11AV DE FOLLOWED BY SUB-OPTIONS,·, CR.LF. CR.LF. I
......
.....,
0
I'IOOIJLE.
MICRDIIENCH 8080/ BOB !I CROSS ASSEMBLER
OE84
DEBb
DEB8
DEBA
DEBC
DEBE
OE90
OE92
OE94
OE9b
2 OE9B
OE9A
OE9C
OE9E
DEAD
OEA2
OEA4
OEAb
OEA8
OEAA
OEAC
::J DEAD
DEAF
DEB I
DEB3
DEB5
OEB7
DEB 'I
DEBB
DEBO
OEBF
DEl I
DEC1
4 DEC!!
DEC 7
DEC 'I
OECB
DECO
OECF
DEDI
DED3
OED !I
DEDl
OED'I
DEDB
OEDO
OEDF
I
!10
49
41
!19
4F
!14
4F
53
00
00
20
20
20
4F
!13
4E
20
20
49
4!1
OA
20
20
20
4F
!12
41
49
4!1
41
!12
40
DB
I V2 >- I !10
1- D£C
84
'PRIMARY IFTIUIIS
I 4 4;.> 2b PAGE !19
·. CR.lf, CR. IF
!I;>
20
!10
49
4E
3A
OA
OA
20
53
54
20
4!1
44
41
DB
S
10 SEND A I'll.['. CR. LF
DB
RTORECEIVEAfllE'.CR.lF
DB
r
4b
4C
00
.20
'~2
!14
;~o
.,5
•15
~~b
4b
20
20
•19
4C
OD
OA
;.m
;.•o
20
20
4F
41
!14
41
20
20
45
40
4E
4C
OA
~)·
•15
TO ACT
AS A Tf RMINAL '.CR. LF
~··
~0
~I::J
;.10
53
~·I
~·4
~·2
4'1
41
00
1-'
~
1-'
I'IODVLE;
"ICROIENCH
0£[0
0£[2
O£E4
0£E6
O£E8
0£EA
OEEC
O£EE
O£f0
O£F2
O£F4
O£F6
0£F8
OEFA
O£FC
2 O£FE
OFOO
OF02
OF04
OF06
OF08
OFOA
OFOC
OFOE
OFIO
OFI2
OFI4
3 OFI~
OFI I
OFI9
OFIB
OFID
OF If
OF~I
OF23
OF25
OF27
OF29
OF2B
OF20
OF2f
OF31
OF33
OF3~
4 OF36
OFJB
OFJA
OFJC
OFJE
OF40
OF42
OF44
OF46
OF48
20
20
20
4F
44
~3
4F
4[
43
20
48
20
48
4E
OD
20
.20
.20
4F
:16
4'
20
'8
40
4C
53
OA
20
20
20
4f
~0
49
54
54
49
20
45
:10
46
4C
00
OD
01
80801808~
20
44
7 -DEC- 84 14 42 26 PACE 60
DB
D TO DI6Coo.NECI
DB
X 10 VIEW EXA,..,LES', CR.LF
DB
H 10 PRINT THIS HELP FIL[',CR.LF,CR.LF. I
IHE
PHUNE'.(R.tF
~4
4~
:14
~4
4~
~0
4F
4~
OA
20
'8
'4
20
49
''
45
41
50
45
OD
20
48
'4
20
52
4[
20
48
53
48
4C
20
49
4~
OA
OA
~3
4~
4F
44
52
20
50
49
4E
3A
OA
~9
tV2l-I~O
20
49
43
4[
43
4£
41
4F
54
4f
53
00
CROSS ASSE"BLER
DB
'SECONDARY OPTIONS '. CR.LF
.....
t..J
t..J
I'IOIJVLE;
"ICROBENCH
OF4A
OF4C
OF4E
OF~O
OF'2
OF'4
OF'6
OF :HI
OF:tA
OF:IC
OF'£
OF60
OF62
OF64
OF66
OF Oil
OFOA
2 OF61
OF6D
OF6F
OF71
OF73
OF7,
OF77
OF19
0F71
OF7D
OF7F
OFBI
OF83
OFB'
3 OF86
OFBB
OFBA
OFBC
OF9£
OF90
OF92
OF94
OF96
OF98
OF9A
OF9C
OF9E
OFAO
0FA2
OFA4
OFA6
OFAB
OFM
OFAC
OFAE
20
20
20
49
43
4E
4:t
,4
41
'4
:t2
4:t
4:t
,,
49
4E
80901809~
20
44
CROSS ASSE"BLER
tV~»-1~0
7 -DEC -84 14 42 26 PAGE 61
DB
D DISCONNECl AFI£R E•ECUTION',CR.LF
20
4F
4F
4A
43
20
49
4,
,4
41
,3
4,
00
DB
0 OBJECT FILE IRANSFER',CR.LF
20
:t4
47
20
4F
,4
,2
49
41
20
4F
DB
T QO ro fER" I HAL
44
'3
4F
4E
43
20
46
4:t
20
,8
43
,4
4F
OD
OA
20
20
20
42
4:t
,4
46
4C
20
,2
4E
46
,2
OA
20
20
20
4F
,4
20
4,
40
4E
4C
4D
44
20
46
.,
20
49
.,
:t8
4:t
OD
~DE
AFTER FILE XFER '.CR. LF
.,,.
41
:t2
46
4(
20
46
,2
04
.....
~
w
MODULE;
MICROBENCH 8080/8085 CROSS ASSEMBLER <V2l-150
OFBO
OFB2
OFB4
OFB6
OFB8
OFBA
OFBC
OFBE
OFCO
OFC2
OFC4
OFC6
OFC8
2 OFCA
OFCC
OFCE
OFDO
OFD2
OFD4
OFD6
OFD8
OFDA
OFDC
OFDE
OFEO
3 OFE2
OFE4
OFE6
OFE8
OFEA
OFEC
OFEE
OFFO
OFF2
OFF4
OFF6
OFF8
OFFA
OFFC
OFFE
1000
4 1001
20
20
20
48
57
43
41
53
52
43
49
45
OD
20
20
20
48
57
43
41
53
53
4E
OD
OD
46
52
45
41
50
45
2C
54
50
3A
44
43
4D
20
00
00
C3
20
52
53
4F
20
48
52
20
45
45
56
44
OA
20
53
53
4F
20
48
52
20
45
54
OA
OA
4F
20
58
40
4C
53
20
59
45
20
40
4F
40
58
OA
07B6
DB
'
DB
DB
JtF
7-DEC-84 14:42:26 PAGE 62
R SHOW CHARS RECEIVED',CR,LF
S SHOW CHARS SENT',CR,LF.CR.LF
'FOR EXAMPLES. TYPE:
DMC OMM X ', CR, LF, 0
EXIT
.
.....
t-.)
110DULE;
"ICROBENCH
I
2
3
1004
1007
1009
1008
JOOD
IOOF
lOll
IOIJ
1013
1017
1019
lOll
I OlD
IOIF
100!1
IOOIJ
100/:t
10027
:t 10028
IOO!A
IOO!C
102E
IOJO
1032
1034
IOJb
IOJB
IOJA
b IOJC
103E
1040
1042
1044
1046
1046
7 1049
1041
1040
104F
IMI
IO!IJ
•
IO~:t
10~7
IO:t9
IO!IB
IO:tD
IO:tF
1061
1063
106!1
1067
CD
:13
4E
20
20
49
4:t
OD
010
010
4D
4F
4D
:tJ
46
0/F
:t4
OA
41
:t4
4L
20
20
4!1
40
4E
4C
OD
20
20
40
4F
4D
:t4
OA
20
20
''
4!1
43
!12
2D
20
4F
44
:tJ
4F
4E
4J
29
OA
8080/BOB~
07DB
4:1
44
41
46
4C
CROSS ASSE"DLER
EXNI
CAI..L
DB
IV2t-J:!O
7-DEC-84
llPRT
'SEND A F ll E
14 42 26 PACE 63
·, CR.L F
:lA
OA
20
44
4J
4D
20
010
4E
46
00
43
20
:tJ
41
!14
!12
DB
DB
OMCO"" 5 FNIFT', CR.L.F
'ACT AS A TER"INAL
',CR. L.F
·49
·41
:JA
OA
20
•14
•tJ
•ID
;10
OD
20
<'B
DB
OMCO"" T · . CR . LF
DB
<USE CTRL-D TO DISCONNECTI'.CR.LF
~·3
~·o
:1·4
4C
44
!14
20
49
4J
41E
4'!1
:t·•
01~
......
N
l1l
MODULE;
MICROBENCH 8080/8085 CROSS ASSEMBLER <V2l-150
1068
106A
106C
106E
1070
1072
1074
1076
1078
2 1079
107B
1070
107F
1081
1083
1085
1087
1089
108B
3 108C
108E
1090
1092
1094
1096
1098
109A
109C
109E
10AO
10A2
10A4
10A6
10A8
10AA
lOAC
10AE
lOBO
10B2
1084
10B6
10B8
lOB A
lOBC
1
52
43
49
45
41
46
4C
3A
OA
20
20
40
4F
4D
52
46
2E
54
OA
54
52
20
52
4E
-20
4F
45
4F
2F
46
20
4E
54
52
49
41
20
52
45
48
20
4F
45
OD
7-DEC-84 14:42 26 PAGE 64
45
45
56
20
20
49
45
OD
DB
'RECEIVE A FILE· ',CR.LF
20
44
43
40
20
20
4E
46
00
DB
'
55
4E
50
49
54
40
44
20
4E
4F
46
49
20
45
4D
4E
4C
4F
20
43
4F
40
44
3A
OA
DB
'TURN PRINT MODE ON/OFF IN TERMINAL OR ECHO MODE: ',CR,LF
DMCOMM R FN. FT',CR.LF
....to.>
0\
MODULE;
MICROBENCH 8080/8085 GRUSS ASSEMBLER (V2l-150
1 lOBE
lOCO
10C2
10C4
10C6
10C8
lOCA
lOCC
lOGE
lODO
10D2
10D4
10D6
10D8
2 lODA
10DC
lODE
lOEO
10E2
10E4
10E6
lOEB
tOEA
lOEC
lOEE
lOFO
10F2
10F4
10F6
3 10F7
10F9
lOFB
lOFO
20
20
50
20
20
DB
'
DB
'TURN ON ASCI I CAPTURE MODE: '. CR, LF
DB
'
5E
09
28
~0
~2
49
54
4E
57
54
47
4C
44
OD
54
52
20
4E
41
43
49
43
50
55
45
40
44
3A
OA
20
20
59
00
4E
20
4F
20
4F
47
45
29
OA
~5
7-DEC-84 14:42.26 PAGE 65
~p
<PRINT NOW TOGGLED> ',CR.LF
4E
4F
20
53
49
20
41
54
52
20
4F
45
00
20
5E
20
OA
'•y
'.CR. LF
....N
.....
MODULE;
MICROBENCH 8080/8085 CROSS ASSEMBLER <V2>-150
1 10FF
1101
1103
1105
1107
1109
llOB
1100
110F
1111
1113
1115
1117
1119
111B
1110
111F
1121
1123
1125
1127
1129
112B
1120
112F
2 1131
1133
1135
1137
1139
113B
1130
113F
1141
1143
1145
1147
1149
114B
1140
20
20
49
45
4E
40
20
20
20
3A
45
54
44
43
58
52
20
46
4C
20
4F
20
50
4E
00
54
52
20
46
20
53
49
20
41
54
52
20
4F
45
00
20
46
4C
20
41
45
20
3E
42
54
53
2E
4F
20
43
50
28
49
45
4E
57
4F
45
29
OA
55
4E
4F
46
41
43
49
43
50
55
45
40
44
3A
OA
DB
DB
7-DEC--84 14:42 26 PAGE 66
FILE NAME--> B: TEST. DOC [CRJ <FILE NOW OPEN)',CR.LF
'TURN OFF ASCII CAPTURE MODE: ',CR,LF
~
a-.>
(X)
MODULE;
1
2
MICROBENCH 8080/8085 CROSS ASSEMBLER
114F
1151
1153
1155
1157
1159
1158
115D
115F
1161
1163
1165
1167
1169
1168
1160
116F
1171
1173
1175
1177
1179
1178
117D
20
20
59
28
53
49
20
41
54
52
20
49
41
4C
44
20
49
45
43
4F
45
29
OA
C3
20
DB
5E
09
41
43
49
43
50
55
45
44
53
42
45
2C
46
4C
20
4C
53
44
OD
00
0786
Jf'f'
<V2l-150
~y
7-DEC-84
14:42.26 PAGE 67
<ASCII CAPTURE DISABLED,
FILE CLOSED)',CR,LF,Q
EXIT
.....
t-..>
\0
MODULE;
MICROBENCH 8080/8085 CROSS ASSEMBLER
<V2)-150
7--DEC--84
14.42 26 PAGE 68
1
2
3 3000
4
5
6
3000
ASCBUF:
ORG
DS
DBUF+3100H AND OFFOOH
1
; START ASCI I BUFFER ON PAGE
;WILL USE ALL BUT LAST PAGE OF TPA
;DBUF IS 12~ IN SIZE.
NOTE IF
; DBUF IS MADE LARGER AND ~G IS NOT
; CHANGE ASCI I CAPTURE WILL NOT" WORK.
....w
0
MODULE;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
MICROBENCH 8080/8085 CROS!3 ASSEMBLER
;
0001
0002
0009
OOOB
OOOF
0010'
0011
0012
0013
0014
0015
0016
0017
001A
0005
0000
005C
0068
007C
OOC8
!V2>-150
7-DEC-84
14.42.26 PAGE 69
BOOS EQUATES <VERSION 2>
RDCON
W~iCON
PRINT
CONST
OPEN
CLOSE
SRCHF
SRCHN
ERASE
READ
WRITE
MAKE
REN
STOMA
BOOS
REIPL
FCB
FCIBEXT
FCJilSNO
FCI32
EGU
EGU
EOO
EGU
EGU
EGU
EGU
EOU
EGU
EGU
EGU
EGU
EGU
EQU
EGU
EGU
EGU
EOO
EOO
EGU
END
1
2
9
11
15
16
17
18
19
20
21
22
23
; CONSOLE STAT
; Of"FH=NOT FOUND
26
;
,
;
;
;
;
NO RET CODE
O=OK- 1 =EOF
0=-0K. 1 =ERR,
OFFH=BAD
OFFH=BAD
SET DMA
BASE+5
BASE
BASE+5CH
FCB+12
FCB+32
FCB+6CH
;
;
,
;
SYSTEM FCB
FILE EXTENT
SECTOR ft
2ND FeB
2::.?,
OFFH=-NO DIR SPC
.....
.....
w
""'
I'IOOULE. "ICIIOBENCH 80801908:1 CIIIJSS ASSIE"BLEII
SY"IIlL I AilE
A
'll0007
A8CBUF
3000
A9CP'T3 04C2
AI
0443
• 000:1
•
0018
CIIN
CLBF IL
0:110
CP'TCL I
0658
CP'IIIEY• 0019
CI'TTOU
052F
CltLF .•
0685
06[9
DEC OUT
IIMWRLI'
OliO•
EMMJI'I
0961
l£1tA8E, • 0013
IEIM
1004
FCBE IT• ODc.8
FllftE II • 00010
01
03£7
HI
0408
ILPII I
0708
UUTCJ• 0000
INTAIMI
oesc
LAtE AD 08£7
I'IAIE IT
01181
1'106HDB• 0001
0849
ttiM'CB
NIJCHII
0<1191
08£F
OI'ENIJII
orr ION 01180
OUTOAI
0143
09;15
PIIINIII
I'IIIFLQ otiC I
RCIICM
0342
IICVI PI
O::JB8
IIDIILM
09118
• 0014
READ
llliEFLO
OBBJ
BECINL. OBBC
ONII
9ENOC3
0<111 1
!IKJWHI
DOlliE
80I'IE
OCEB <:
STACM
SJPCHR• 001 :J
02JC
TEll~
O<lloA I
• 0000
JIIS
VIDI'O • FFFF
WATOEC
OA48
WIISEC J
0115A
3001
• Allie
A-T
ABCENO
A9QENII
·-
•
•
BUL
C .... P' Ill
CNIEC
CPTCl2
CPIOPN
CI'TTYP
CIYPE
IJECOU2 0b02
06F8
DOE
£OF
• OOIA
I£MCDE
OBBf
lEU I
07BC.
FCBSNO- 007C
FltTI'HL• 0000
H
X0004
• 0000
H89
ILI'SEI
07EF
INI IC2• 0040
INIIIEit- fFFF
LF
• OOOA
flO( T LP• OOF 7
tCI6HDII• 000 I
l'tiJV 128
08BE
OBJFI C ON2
OPNF IL
08C9
OPTLP
0944
P""'ER • 0000
PRIOPT
0930
09b2
PRT"SO
RCV£01
0423
RCVLP2 0:190
AOCON • 0001
RfiPL • 0000
SC INBF
OCbA
9010
owe
II(NOl P
0278
Oall
!INil£ ••
XOOOb
SP
STAll T
015'1
STPDH.
O:J9F
TfRHI« • FFf F
011 D
IACV
• HFF
TRUE
~·
'"""'
ltOOVL t
I'IOOUI E
ERROfiS Dt JE£ 1£0
FREIE COllE
lbl56
04:JE
0400
04[0
'llOOOO
0007
OBE4
O;z&F
0667
0503
0589
IN
WR8l"
YME-~
OQJ;l
lbH~O
OND
0000
•
IV2l-1:10
7 -DEC 84
0441
A-IL
A8CFCB
OBC2
A IIIAP'
Ollie A
BADE NO 0460
BIOQER
~c
Ct«EOF
0379
CON& T • 0008
CPTCL3 0674
CPIItET
06AB
CI'TTOI
OS60
0
'll0002
IIHIOUT
06EB
08CFLO 01181
I£0FLQ
0Cf>7
EIWICT
01180
f ITCHII• 0005
FCB2
• OOC8
FSTCLM• FFFF
HELl'
00:13
ILI'LP
0709
ILPSE2 080F
IIIIITC3oo 004F
0703
IIII«J"
XOOOC.
ftiiOA TP • 00F C.
..a-END OBE3
- 0015
I»JST
O:JAB
OI'TBE • 0118C.
Ill' INO
0959
"
-
"""'
PIIOC I
PRTTOU
IICIIF IL
IICVlP3
RD6CLP
REN
SEC NO
BEHOC
8ENDND
SNOF IL
BIICHF •
STAT
STPT I~
TEll" I
fliER II
19ol0
VIii AI
WIICON •
1&150 -
0000
Ole.£
0967
0:108
ODF
0994
0011
O::JBB
OA:Jc.
0<1195
026F
001 I
0A96
0004
0~:!
O<lloD8
OJ9C
OA99
0002
0000
14 42 2b PAOf 70
ACM
•
ASCPIO
-·~·
BADOP'I
BIA' DAI
CMIIIS
ClAM I
CPICL4
CPISf I
•
Cll
OIIUf'
c
OISCHII•
01
EDT
•
EIIIIT
Foiiii.SE •
F ILEOF
Fl
HEIO
ILPNII
INCTL
IIIIIIC4•
MEw IN
•
-£
I'IUICIIB•
1'010111
NIBIL
OOOb
0498
04E2
OCEO
OXB
OliA
a.,,.
0682
0~5
0000
OC£0
0004
O::JF3
0004
07N'
0000
O::JBc.
0305
07C I
07EB
014F
0037
08c.F
OOIC.
0002
0288
07CA
011
01>27
OI'IBl • 01181
IJIIUNER• 0010
I'QITED- FFFF
I'IITCHII• 0010
XOOOC.
IICVlP
O:DII
IICvtiNO OBIA
09[3
RD6COII
IIEOF
0'9001
9£CI'TR oc. .
SENDCI
~
SIENDW
O'IIEE
6NOIIEC O<llo::J3
SIICHN • 0012
STDCP~ FFFF
9TRCHII• 0011
TER"OI• 02X
O<IICC
TRLOOI'
Dc.BC
TYPE
VIYPE
OC.C I
0839
WilER II
1&151 • FFFF
....
ALICP~ 0000
A9CP' T2 04CI
-TE2 0:10£
• 0000
BilliE
(
'llOOOI
CLOSE • 0010
CPTCLS 06:18
CP'JFLQ oec:o
CPJSE2 05A8
CIIC
- 0043
DCH
- 0000
OISCON- 074F
E
X0003
UN' IL 01 . .
[I
03112
FCB
- oox
F IIIST
OIIBC.
OETWIIO Olc.4
HllLOD
OMF
ILPIIET DlllO
I-TA 0147
I NIT NO oe22
L
'llOOOS
,_FIL
0878
I'IIIICWI• 0002
tOI£
oeco
NIA.NM
moEN •
OI'TCM
OUTCTL
PRINT •
PitT END
ltCNT
IICVlPO
IIIIBFUL
RllliECT
It 811ftA
8£CTSDIDC2
9KlW
SOH
59£FLU
STDftA •
TEll"
Tltt&MI•
T-LQ
IIAII'DI'•
WATBIT
WIIITIE •
0549
OOOF
0950
0148
0009
0938
OH8
0418
09lle
0971
DUO
ONB
OM4
OW'£
0001
ON4
OOIA
0213
0000
0885
FFFF
0307
0015
00
0
WORDS
DftCQHtt.OttCOH"•DftC~/C
....
w
...,
IIODUt.E. "ICAOIIENCti 8080/808!1 CAIISS AS!iiE"ILER
Croe• reler•nt• tellle ~CREF vo~ 011
•
AI
AIOII T
AIOIITL
ACM
ALTCP"
A8CIUF
ASCEND
A8CFCI
A&CPTO
A8CPT2
A8CPT3
ABQENII
AfiiAP
-TEl
-TE:l
·-
II.Mit:NII
IAIIOPT
I DOS
8ELL
IIGOER
IIEDAl
CNol
CN'PTR
C... EOF
CIUIIS
CLOSE
LLSFIL
CNtEC
C~T
C~T
CPlCL I
CPTCL2
CPfCL l
CPICl4
CPTCL 9
CPTFLQ
CPfMEY
CPTOPN
CPlREl
CPfSEI
CPf5E2
CPJlOI
CPflOQ
CPlfYP
Cll
CRC
CALF
IV;!I-1!10
7 -DEC- 84
4-38
lb 1~1
lb-1311
13-4
3-421
9-44
16- 17
S2- 42
lb-148
2!1
18
2!1- 18
29-12
:Jb- 10
17-:14
17-37
19-,
10-1
17-4,1
17-4b8
17-9
'SO- 7
17-46
19-9
lb 24
·--4
il- 1,.
69 19
21-.,
18- II
21-19
17-·8
ill
_)()
21-40
;.t4-4
bS-31
il2 9•
0!2-14
22-27
2"..l- 4'•
~II
10-~,
37 b
l 488
II 4~
13 :14
J-4:11
17 I :1
13 II
10 1
2D- b
14· :12
10 31
69 71
14 24•
23- 2:18
24 I
24 7
24 10
21 14
I 7-- 7
l-298
22- il4
23- 18
22 b
il2 1!18
21-il:ll
9-3:1
22 17
3 478
24 24
:11-3
:18 1
bl I
64 J
3 441
10 il9
~-·II
20-
a-••
14 42
~b
P•t• 5
I
3b-IO
49-10
49 10
!14
LJ
::14-19
::14-!12
22-4b•
2~-47
23 II
2:1 14
24-18
!14-3b8
bB·~·
17-~3
17- ' I
18-48
so- Ill
19-21
19-IONJ
1•-aw
41-43
4-3
t.9-ao
24
~,-
..
II
4 II
II ·7
40. 1!1
28:1
II- 3:1
lil ilb
13-49
14-2/
3!1-11
44 12
4!1-J~
48- ll
:12-34
:13-11
69 18
19-4
42 8
;'8 b
19--7
44 29
44-43
20-7
44-32
S2-41
ill 34
4:1-17
21-.)8
47-34
22 49
!12-1,
23-13
s;!-18
2) lb
il4-20
·9-188
30-8
30- ilb
li-t.
1b-JO
:n- ·.11
:II I
:19 ..
b:l 4
19 II
)/-- 13
21-18
37-14
~1 ft.
b0-2
23-20
39-23
:17-J
t.0-3
c.3-7
;n .!O
41 10
:")1
24-24
30-9
:18- I
60--4
04-2
~2-:Jb
101-18
14-28
17 18•
a:J I II
10· l l
•• 98
16-20
10 498
14 28
24-l
24-48
24--118
24 181
;n 248
ill 10
9-34
22-29
;n 23
22· 148
22-23
ill 28
21-48
a;!-
ilb8
I 7
~~·
21
II••
lb :II
2.1 10
20
:.e
:1 I 2:1
:14
:1'1•
24
11
21
14'•
ilil :t~
il4 -.a
•
23-24
!14- lBit
28-238
29-8
30
lil ·il4
29 7
;.,• j
~.;.?·
!14·348
~.!
41
·2!)e
22-448
~ ..
8-1
-;;_>0
-- 2
bl
6!1 I
18
28 ,
:IJ 21
:18 :1
bl 3
6:1 2
2
6
:1::1 II
!18 3
t.2-1
b!! 3
:1:1 II
!19 I
62 2
blol
:19 I
62· 2
blo-2
12 27
Jl -9
:lb-4
:19-2
bil 3
b7 I
12· 19
il3-b
2.,
29
30 lb
:1:1 !I
4-16
2!12
S2-41
'
~9
28
~-~
~
~-J
16-ilb
3J-2b
:16 ,
:19 3
b) 3
~
I
b:l-!1
bO
b]-b
:17- _)
60 I
b4 1
.....
w
w
l«lDULE•
"JCAOIIENCH 8081)/1108~ CROSS ASSE"BLER
VO~ 011
IV2J-I~O
7 -DEC -84
14 42 26 P•1• S-2
Cra•• re,erence tea.le IICREF
CTVPE
DIUF
DCH
DECQUa
DEC OUT
DHICOUT
DISC ...
DISCOOI
I*WRLP
DOlE
D9CFUo:'
DX
EMIOPI
ECI'
ECI'LCI '
EOl
ERAFIL
ERA&IE
IEIIRCDE
EIIRCT
ERXIT
lEX
EXNt
EIIT
EUC ...
F"LBIE
FC8
FC82
FCIIEXT
FCI&ND
FILECI'
FIRST
Fllt£R
FRTPNl
FSICLM
FX
CIIEIWRD
QX
H89
HELP
HEXO
I«LDD
HX
ILPLP
I LPN IT
ILPREI
ILPRT
ILPSEI
ILP61E2
INl:IL
INlATA
INITCI
INITC2
IHI JC3
21>-21
44-24
2-;!0B
26.-108
26-4B
27-58
3-308
5-51
:12 liB
IG-43
28-23
14-1,
41-25
3-491
44-19
3-411
12-21
23-J;!
54-291
54-281
Il-l
14-78
5-25
28-31
3<liB
2-5B
5-17
52-16
69-23B
IG-50•
34- 43•
13-248
10-4
3-148
2 371
2··361
14-8B
12-33
14· 10
2-~··
5-19
27 8
54·30B
14·32B
33- lOB
33-198
33- 12
7-1
31 8
33·14
33-lb
5-4B
4-31.
3-9B
3""10B
3-IIB
33-17
47-9
I:J
~;!-9
4~-
9-48
26.-12
26.- 18
39-21
9-31
9-32
28-26.
47-13
47-17
54-528
47-21
6.8-2
47-2~
47-11
52-31
28-30
34-9
16-27
28-4.
53-;!8
13-24
14-33
16-14
48-51
~0-8
~1-2
~4-45
47-298
39-18
29-121
:t:l-28
14-:1:1
54- 1441
14-21
41-4:11
10-41
15-3
14-2:18
4~-7·
13-22
54-·441
30-61
30-25
69-121
20-10
14-22
63-28
29-17
9·29
2-6
5-23e
69-2CMI
31 -48
37-12
39-12
44-42
31-88
33-;!9
62-4
67-2
2-9
10-54
69·-21
;!-20
11-6
69-2;!
2-21
20-5
69-23
2-22
30-6
2"23
30-24
2-25
34-38
2-27
34-39
2-37
37-4
34-44•
39-6•
14-34
10·-6•
39·5e
69 .. 22B
69-218
14-12
13-6.1
14-168
34-9
56- 2B
27- 10
14 -14
21 -17
39-22
23·-1
52-40
23-19
24-23
55-6
14-40
33 20
33-32
33-34B
7·4
33 88
33 ·2:11
33·-278
9-49
,....
~-49
39-7
41-12
44-.)0
28-4
29-1
56-;!
29-15
63-2
54-&'11
32·4B
47-23
12 23
16-2~
16-~9
19-10
33-2~
33-30
39-15
:J9- 19
46-9
!1-42
48 ·14
9-!1!1
48 21
48-18
48-30
48-2!1
~3-26
~5-10
34 10
34 22
34-24
~
w
~
l'tODULE.
"ICAOIIIENC::H 8080t&oe:' CROSS ASSE .. BlER
It REF VO, fJI t
Cro•• ref•r•n(e
INI fC4
INIHtO
INfADII
INfREQ
,_,..
KEY IN
L-AO
LF
3· 128
:t-33
:t l:t
2-318
32 14
9-28
14 ,
3 468
24 ;!4
,._ 3
ltli1END
:til-l
61 I
1>4 3
37-5
12·22
10 :12•
2 548
2-538
3 208
J 218
3 188
3 198
4- 13•
rtllRDIR
II
-
38-48
34 41
'!1·37
3 438
32 9
;;11 · 1 18
48 )6
13 I 7
13 20
22 51
39 8
39 I I
10 32
41 JO
41 29
41 328
'!1-41>
41 168
41-33
3 158
4 ·3'!18
4-278
3-168
2 228
2 298
:t-10
9 42
'!I 29
,. 21
J 328
40 10
40-8
.._E
-fiL
l'to\IE IT
ftOCTLP
ltiiOATI'
110RCV8
"llRCYR
ltll6foiD8
ltOSHilll
~128
I'O.If:
~c•
............
NIBBL
NKJCHR
OBJIQ
08J5J
OM
OP£N
OPt. NOM
Of'NF IL
Of'JBE
UPIBL
UPJCK
Of' I ION
Of' ILP
Of' INO
ORUNER
OtllC lL
OtllDAT
PMER
Pf9tl
PllRJED
PRINT
PIUNIR
PRIOf'T
PROCI
PRTCHR
PRJEND
PRIFLQ
~8
t•••·
34-26
34-IN
33- 118
34 9
:12- 178
ZJ- 3
14-26
4 16
2~- 4
!12· 41
311-il
61-2
b:t· I
t.9- I :t8
37--48
II 10
4·-35
4-27
9- :til
9-:13
II
41>-12
17 19
11-47
44- IJ
Jll 88
34 388
""
32 -12tl
21 45
48 J8
16-22
t:J 438
;j!".] 148
b9 88
39- I :t8
39· 48
54 I 'HI
41. JO
41 39
10 8
41 35
41 -3/8
II
9-41
J4
28 2b
4
42
9
41
,
9
40
4:l·
21>
7
:17
12tl
248
37
168
,
2~·
~4·
4·
2111
.I
408
18
~
3~1
27
,1!11· :J
61 3
65·ol
II
,
43
4
4
12
48
48
48
I 7
12
:13
J8
31
32
16
31
:J2
42
:1
12
fV~.
•~o
l ·llloC ·84
14
4~
~6
p,.CJ• S
78
JO 13
33 ;a
)b-
7-2
28 6
:t3 II
38 _J
62 I
65-3
8 I
2'9·2
35 II
:19 I
16-26
33· 26
:t4 4
39 2
62 3
I
12-24
31 9
:tb- 3
:19 I
622
bb-2
:14-238
14 8
13-38
48·1:1
13-Sb
48-22
14- lb
14
)4 23
0!1 9
34- ""
24·26
:14 ;!7
46-16
48-39
12·-4•
12--31
13,.
14 9
48 2J
~4
3/8
~·
1:)8
62-2
b6
I
16 JO
33-:JJ
~6
~
39 .)
63 ")
19 II
37 I J
~~
I
~9 4
b-1 4
21-18
)7 14
21 Jb
)9 23
,,.~
,,.~
bO
I
60
ld
~
b:l 6
~
23 ·20
23-;!0
41-8
, , ·3
4U :J:t
,, 3
60 3
b) 1
60 J
b4 I
24-24
~-9
:ta- I
60-4
b4-2
b7
4~
14-~7
J:l
48
53 .'1
~··
~·
I Je
41
lh
"" ue
)4
17
·~
:JY
.14
I 1
:)1
,.
_J~·
13
JB :10
40
b8
48
43
,.
b9
.....
w
U1
I'IOIIULE. "ICRQMONOt 808018085 I:RllSS "SSE,IIL£R
Croaa referen(e t•l•l• tCR[F \/(" 011
PIIJ"SQ
PIHTOQ
RCNT
RCVCII
RCII£0T
RC\IFIL
RCIILP
RCIILPO
RCIILPI
RCIILP·:Z
RCIIL P3
RCVIiNO
R . .f"I.A.
R . .lll,
RIICON
RII&CLP
RII&COII
RD&ECT
READ
REIPL
REN
REOF
Rliii"A
RSEf"LQ
SCINif"
SECND
SECPTR
SEClSECINL
SEND
SENDC
SEHOCI
SEHOC2
9EHOC3
SENDlP
SEND NO
SEHOW
5KlW
SKIWHX
-·l
~OF
SNKiEC
90H
SOlE
SRCHf"
BRCHN
SSEf"LQ
SJ"CK
SJNIJ
5'"'
SIIICPrt
SfllttA
SJPCHR
SJPDlC
Sfl'll"
STRCHR
711
411
11-0ih
12 35
14-3041
I;;!· 1911
13-01
14 30
13-27
13-2911
101-:19
31-'
9 38
II 14
12 1111
13 28
10 12
101 2911
13.,
13 2511
13·23
1013011
54 2511
~1;;1-
4~3
4:1 1211
44- 1911
44 10
•• 411
44 2611
44-36
10 34
44 l l
•• 1911
69-1611
44·38
52 3411
54·1bll
44-7
13 :J!>
44 II
:14 2611
54 2711
10 4;.>
48 14.
48 17
48 4/•
48 4:1
10 1 . .
48 :12
46 9.
47 a•
47 I 5
10· 15
10- 10
10 ")6
3 40.
10-57
10-:13
II 5
48 41
4 <I•
4 14
<i 26
2 a•
19 J
3 :lbll
1:1 :.Jl
3 o>ae
:J llll
t\121 -150
7
DEC 84
14
4~
2b P•t• S 4
~13-
4.,-4
44- 4.,.
44.711
b''i- 1311
101 01•
101-:17
:19 17
54 2411
I) lb
14 "J9
1:1-36
l4· 42•
1:1-41
I:J-47
I :J. :10
14 4b
·~·
50'-:1
52 JOe
5:.1 15
53-17•
54-4611
14•
52 32•
.,:J 9
:n
:14 4511
45- 18
45-611
52 :19
4·· 9•
I l 5211
H
14•
a;~l
;>a
4B
4U
4U
461
Ill
461
:13
20
4a
4611
:JJ
,.,.
ll
45
1911
4111
2911
I :Ill
~.
48
4/
10
10
4101
II
~·
44
1]1
9
48
II.
1111
10
9.
1.
14
28
15
IJ
31•
or.!
6'1
541
41
~·
4~·
14·44
45
4:1
4b 711
48 ~
48 27
411 50
II
:JO
14•
411 lOll
.'U.
I
b~~-•o•
lb
I I
II
45
ll
lb
5.! 14
I I 5:!
52 J:!
17 .IB
b<i 17.
21 8
I
24
48 2b
11
14 56
I·
10
56
54 4all
~~
48 J<i
48 31
....w
0'1
MODULE; MICROBENCH 8080/8085 CROSS ASSEMBLER
Cross reference table <CREF vo~•. ou
TERM
TERM01
TERML
TERMNL
TERM X
TIMSHR
TRAP
TRCV
TRERR
TRLOOP
TRMFLG
TRS
TRUE
TSND
TYPE
VAX PDP
VIDEO
VKEYIN
VSTAT
VTYPE
WATB IT
WATDEC
WRBLK
WRCON
WRERR
WRITE
WRSECT
X6850
XB250
X8251
5-48
9-36
9-27
2-384t
9-30
2-494t
10-30
5-57
50-15
50-131
28-11
2-234t
2-61
5-54
9-56
2-401
2-421
35-16*
35-14*
25-184t
12-181
48-211
14-51
47-33
52-23
52-17
13-48
2-271
2-2511
2-261
7-3
9-39
9-49*
9-2MI
9-4'HI
9-54
<V2l-150
10-2
7--DEC-84
14 42 26 Page S-5
28-13
10-44t
12-.20
7-44t
51-24t
50-18
54-'181
2-8
50-4~f
2-26
2-29
2-31
2-36
25-131
48-9
30-15
32-18
55-9
13-52
14-1*
2-38
2-40
2-42
14-43*
14-53
7-14t
23-~
2~-3
17-22
17-36
36-lOtt
49-10tt
35-18*
12-43
48-24
16-19
69-51
52-391
69-141
14-25
2-53
4-26
2-53
13-9
48-28
52-511
13-13*
13-40*
53-23
53-24
14-50
16-18
53-9#
15-2*
9 4B
3-8
.....
w
......
APPEND! X-C
MDS - BAUD RATE TABLE
138
139
APPENDIX B
MODIFYING THE BAUD RATE
;
;
;
;
;
;
;
THIS PRO& RAIUIIOO IF IE S THE UUO RATES FOR THE SERIES -II
SERIAL CHANNELS. SPECIFICALLY, AS IT IS WRITTEN, SERIAL
CHANil EL 2 lA U0 RATe 110 UL0 IE 11110 0 I F IE 0. T0 CHAII GE THE
BAUD RATE FOR SERIAL CHANNEL 1 <TTYl, CHANGE THE THREE
OCCURRENCES OF'' OUT OF7H'' TO' 'OUT OF5H' ',THE TWO
OCCURRENCES OF' 'OUTOF1H'' TO' 'OUTOFOH' ',THEONE
OCCURRENCE OF' 'lilY I A, 076H'' TO' 'IIIVI A, 036H' ', AIIDREASSEIIIBLE.
; 8 E SUA E T0 SUI S TIT UTE THE P R0 PER lAUD C0 DE All D IIIU LTIP LI EA
; INTO THE ASSEIIIILY LAII&UA&E CODE PRIOR TO ASSEIIIILIIIG!
START:
CSEG
MVI
OUT
MVI
OUT
A,040H
; RESET THE 8251 USART
OF7H
A,076H
OF3H
; PROGRAM THE 8253 COUNTER FOR
; MODE 3 and LSB FOLLOWED BY MSB
BAUD RATE CODES
; RATE
; 110
; 150
; 300
; 800
; 1200
; 2400
; 4800
MULTIPLIER
OCEH
OCFH
OCFH
OCFH
OCFH
OCEH
CODE
2BAH
080H
040H
020H
010H
020H
OCEH
; 9800
OiOH
OOIH
; 19200
004H
LXI
MOV
OUT
MOV
OUT
H, BAUDCODE
A,L
OF1H
A,H
OF1H
OCEH
OCEH
; LOAD 8253 WITH LSB OF BAUD
; CODE FIRST. FOLLOWED BY
; MSB OF BAUD CODE
; OBTAIN PROPER MULTIPLIER FROM BAUD RATE CODE TABLE ABOVE
MVI
OUT
MVI
OUT
RST
END
A, MULTIPLIER
OF7H
A,025H
OF7H
01H
START
SOURCE:
; LOAD MULTIPLIER
; ENABLE TRANSMITTER, RECEIVER AND RTS
INTEL CORPORATION
APPENDIX-D
COMMUNICATION PROGRAM HELP MENU
140
141
DMCOMM H
DMCOMM V2.03 01-DEC-84
CP/M TO DEC TO CP/M
(T)erminal commands:
CTRL-Y = ASCII capture enable/disable toggle
CTRL-E = Exit to CP/M
CTRL-D = Disconnect phone
CTRL-P = Print enable/disable toggle
Format for command is:
DMCOMM i Filename
Where i is a 1 character primary option,
which may be followed by sub-options.
Press RETURN to continue:
Primary Options:
s to Send a file
R to Receive a file
T to act as a Terminal
D to Disconnect the phone
X to view Examples
H to print this Help file
Press RETURN to continue:
Secondary options:
D-Disconnect after execution
0 Object file transfer
T go to Terminal mode after file xfer
R show chars Received
s show chars Sent
For examples, type: DMCOMM X
APPENDIX-E
COMMUNICATION PROGRAM EXAMPLE MENU
142
143
DMCOMM X
DMCOMM V2.03 01-DEC-84
CP/M TO DEC TO CP/M
Send a file:
DMCOMM S fn.ft
Act as a terminal:
DMCOMM T
(Use CTRL-D) to Disconnect)
Receive a file:
DMCOMM R fn.ft
Turn PRINT mode on/off in terminal or echo mode
AP
(PRINT now toggled)
Turn on ASCII capture mode:
Ay
FILENAME --> b:test.doc [CRl (file now open)
Turn off ASCII capture mode:
AY
(ASCII capture disabled, file closed)
APPENDIX-F
DEC/VAX
~
144
PROCEDURES
145
MDS-235 (INTEL SERIES) TERMINAL CHARACTERISTICS
TO EXECUTE TYPE:
@ MDST
$
SET TERM/UNKNOWN
$
SET TERM/READSYNC
$
SET TERMIWIDTH=l32
$
SET TERM/EIGHTBIT
$
SHOW TERMINAL
146
VT100 TERMINAL CHARACTERISTICS
TO EXECUTE TYPE:
$
@
SET TERM/VT100
$ SET TERM/NOREADSYNC
$
SET TERM/WIDTH=80
$ SET TERM/NOEIGHTBIT
$ SET TERM/NOFORM
$
SHOW TERMINAL
VT100
147
VAX
TO
~DS-~,,
TO EXECUTE
e
TRANSFER PROCEDURE
DECT~D
SWRITE SYSSOUTPUT
SWRITE SYSSOUTPUT "
VAX 1117SO TO I'IOS-ii!J:5 TRANSFER PROC:ED~E"
SWRITE SYSSCilJTPUT "
14-oCT-BJ,
1'1 H PETRUCCI"
SWR I TE SYSSOUTPU T
SST ART
SINGUIRE RS "SEND from VAX to ~DS<SV~l or RECEIVE from 1'105 to VAX<RI'IVl"
SIF RS EQS "SVI'I" THEN QOTO SEND
SIF RS EQS "RMV" THEN QOTO RECEIVE
SWRITE SYSSC;UTPUT "INVALID ENTRY TRY AQAIN'"
SQOTO START
SRECEIVE
SWRITE SYSSOUTPUT
SINQUIRE NFILE "ENTER NEW FILE TO 13E CREATED C).l VAX"
SWR I TE SYSSOUTPUT "W IU. RECEIVE INTO FILE.
' 'NFILE'
SINQUIRE CHECK "OK"">-·
If so Ent•r Y(l!sJ
or
NCoJ"
SIF
NOT CHEC~ THEN QOTO RECEIVE
SWRITE SYSSOUTPUT "Now Ent•r <CTRL-E> to st•rt tr•nsmission"
SASSIQN/USER_MODE SYSSCOMMAND SYSSINPUT
SCREATEILOG 'NFILE'
SQOTO EXIT;!
SSE NO
SWR I TE SYSSOUTPUT ""
SINQUIRE TYPEX "TRANSFER ASCII OR BINARY? (A OR Bl"
SIF TYPEX EGS. "A" THEN QOTO ASCI I
SIF TYPE X EQS. "B" THEN QOTO BINARY
SQOTO SEND
SASC I I
SINQUIRE DISK "ENTER AI..L..OCATED DISK"
SINQUIRE DIRECTORY "ENTER DIRECTORY NAI'IE"
SINQUIRE FIL..EBASE "ENTER FILENAME TYPE "
SWR I TE SYSSOUTPUT ""
SWRITE SYSSOUTPUT "WIU. SEND FILE
"DISK' C"OIRECTORY'J"FILEBASE'"
SINGUIRE CHECK "OK??
I+' so Ent•r YC•sJ <CTRL..-E>
or
NCoJ <CR>"
SIF
NOT CHECK THEN QOTO ASCII
STYPE 'D ISI'.' [ '0 IREC TCAY 'J 'F IL.EBASE'
SRUN OBA1 CF'ETRUCCIJCNTRLZ
SQOTO EXITl
SBINARY·
SSET VERIFY
SSET TERMINAL/NO INTERACTIVE
SSET NOVERIFY
SWRITE SYSSOUTPUT "ALL CONTROL.. CHARACTERS INCLUOINQ 'DEL' KEY HAVE BEEN DISABLED"
SRUN OiAi:
LPEiRUCCIJVAXOB~
SSET TERMINAL/INTERACTIVE
SQOTO EX ITii!
SEX IT1.
SWAIT 00: 00 Oo
SWRITE SYSSOUTPUT
SEX I TE:
SWRITE SYSSOUTPUT "
IIIJRI'IAL. EXIT"
148
c
c--------------------------------------------------------------------
c
c .................................................................
c •
*
c
c
c
•
•
VAX ll/780 to AI'IC2900 OB..JECT I"ILE TRANSFER PROORAI'!
•
on 'il•s •s~•mbl•a us1ng AI'!OASI'I
•
................................................................ .
c
C
20-MAY-8~
RESPONSIBLE ENGINEER
~
PROGRAMMER
M.
~.
PETRUCCI
c
c-------------------------------------------------------------------c
c
IMPLICIT INTEQER•2<A-Zl
INTEQE~•2 TITLEO<JOl, I'IW0<1 7 l
LO,!CAL•1 FIELD1<40>
LOGICAl...•! loiOROSZO.MAXWRDQ
LOGICAL•! MI.IX<22'
EGUI VALENCE ( I'!WX ( 1 I ' MWQ I 1)'
DATA I"IELCl/40•1~ I
c-------------------------------------------------------------------c
IF NUMBER OF ATTEMPTS !S
.;;~:~C:ATER
:rHAN 10 ABORT PROGRAM
c
c-------------------------------------------------------------------c
10
c
TRY=O
IF<TRY GT 10l GOTO oO
TRY.,TRY+1
WRITE<o. 3000 >
READ<o. 4000. END•10> I"IELDl
FIELC1<40lsO
OPEN<UNIT•l· NAME•FIELC1. TYPE='OLD',REACONLY. I"QRM='uNFORMATTED',
EP.R•10l
c-------------------------------------------------------------------c
C
c
READ AND SEND OB.IECT
c-------------------------------------------------------------------c
20
1000
2000
READ<!> TITLEO,WORDSZO, MAXPC.NINST.MAXWRCO
WRITE<t!>, 1000! TITL£0, WORCSZO. MAX PC. NINST. MAXWRDO
MSIZE•<2•1'1AXWRDOl+1
MSI :E2=2•MSI ZE
DO ~0 Il=t.NINST
REA 0 <1 > <I'!WO <I l . I •1 , MS I ZE !
WRITE<o. 2000J <MWO<I ), l•l,I'!SIZEl
CONTINUE
FORMAT< '+',30~.Al,A2.A2.Al.Sl
FORMAT<'+', 17<A2.S!
'1
•
149
c
3000
4000
c
FORI"AT: . ENTER
FORI"'AT<40Al)
DISK
COIRECTJFI~ENAI"'E. 08~
CALL CLOSE< 1 >
QOTO 70
60
5000
70
WRI~E•e
5000>
FORMAT< ·c,
++++ABORTED'
C~7 INUE
END
••-· l
<CTRL-E>
', Sl
150
The following is a simple step-by step procedure of
how to send or receive a file between a VAX 11/780 minicomputer to a INTEL MDS microprocessor.
1.
TURN ON MDS-235 AND PERIPHERALS.
2.
BOOT (SYSTEM DISK IN A-DRIVE).
3.
MAKE SURE VAX 1200 BAUD LINE IS CONNECTED TO
THE MDS-235 I/0 SERIAL CHANNEL-2.
4.
INITIATE COMMUNICATION PROGRAM:
DMCOMM T
MDS-235 INTERAcriVEWITH
VAX ONLY
DMCOMM R B:FILEX.DAT
RECEIVEASCIIFORMAXFROM
VAX AND WRITE INTO
FILEX.DAT ON B-DRIVE
DMCOMM RO B:FILEX~OBJ RECEIVE BINARY FORMAT
FROM VAX AND WRITE
INTO FILEX. OBJ ON B-DRIVE
DMCOMM S B:FILEY.DAT
SENDASCIIFORofATFILEY.MT
ON B-DRIVE TO VAX
*
**
*
**
FILE SIZE IS LIMITED TO 512K (SINGLE-SIDED DOUBLE
DENSITY FLOPPY MAXIMUM).
FILE SIZE IS PRESENTLY LIMITED TO 12K BUT CAN
BE INCREASED TO A MAXIMUM OF 20K.
5.
LOGON VAX SYSTEM (Remember <CTRL-Y> is used by
DMCOMM, use <CTRL-C> instead.
6.
TYPE:
~
9.
TYPE:
DMCOMH T
10.
TYPE:
VT100
11.
LOGOFF VAX
7.
8.
This sets up the proper terminal
characteristic for communication
and the MDS-235 terminal.
TYPE: VAXTMD Initiate VAX to MDS-235 communication procedure and follow
instructions.
Repeat from step-4 skipping steps 5 & 6 for
additional files, otherwise.
Set terminal back to VAX default.
(optional)
151
NOTES:
To
To
To
as
exit DMCOMM at any
abort VAX commands
stay in DMCOMM after
follows:
DMCOMM
time type <CTRL-D>.
type <CTRL-C>.
a receive or send, Enter command
RT
DMCOMM ROT
DMCOMM ST
© Copyright 2026 Paperzz