You are on page 1of 35

8279 STUDY CARD

1.

INTRODUCTION

Electro Systems Associates Private Limited (ESA) manufactures trainers for most of the popular
microprocessors viz 8085, Z-80, 8031 8086/88, 68000 and 80196. ESA offers a variety of modules, which
can be interfaced, to these trainers. These modules can be effectively used for teaching/training in the
Laboratories.
The 8279 Study Card incorporates Intels 8279. The interface is designed to study the features available in
8279.
Functional description of 8279, implementation of the circuit and some sample programs for different
trainers are presented in this Manual.
2.

DESCRIPTION OF THE CIRCUIT:

The 8279 Study Card provides 6 nos of 8-Digit Seven Segment Display and 4 x 4 Matrix Hex Keypad. The
keypad includes shift and control keys for key scanning option. User can find the design details about the
keypad and display interface to 8279 in Appendix B Schematics.
The study card has got two 26-Pin (J3 & J4) connectors and a 50-Pin (P1) connector for interfacing with
different trainers. The details about 8279 (i.e. programming 8279 and pin details etc.) are presented in the
next section.
Jumpers are provided on the study card for encode and decode modes of operation of 8279.
For decode method:
Place the jumpers as follows:
JP1
JP2
JP3
JP4
JP5

=
=
=
=
=

12
23
23
12
23

For encode method:


Place the jumpers as follows:
JP1
JP2
JP3
JP4
JP5

=
=
=
=
=

OPEN
12
12
23
12

8279 / 8279-5 STUDY CARD USER MANUAL

8279/8279-5
PROGRAMMABLE KEYBOARD/DISPLAY INTERFACE
THEORY:
MCS-85 TM Compatible 8279-5
Simultaneous Keyboard Display Operations
Scanned Keyboard Mode
Scanned Sensor Mode
Strobed Input Entry Mode
8-Character Keyboard FIFO
2-Key Lockout or N-Key Rollover with Contact Debounce
Dual 8-or 16-Numerical Display
Single 16-Character Display
Right or Left Entry 16-Byte Display RAM
Mode Programmable from CPU
Programmable Scan Timing
Interrupt Output on Key Entry
The Intel* 8279 is a general-purpose programmable keyboard and display I/O interface device designed for
use with Intel* microprocessors. The keyboard portion can provide a scanned interface to a 64-contact key
matrix. The keyboard portion will also interface to an array of sensors or a strobed interface keyboard,
such as the hall effect and ferrite variety. Key depressions can be 2-key lockout or N-key rollover.
Keyboard entries are debounced and strobed in an 8-character FIFO. If more than 8 characters are entered,
overrun status is set. Key entries set the interrupt output line to the CPU.
The display portion provides a scanned display interface for LED, incandescent, and other popular display
technologies. Both numeric and alphanumeric segment displays may be used as well as simple indicators.
The 8279 have 16x8 display RAM, which can be organized into dual 16x4. The RAM can be loaded or
interrogated by the CPU. Both right entry, calculator and left entry typewriter display formats are possible.
Both read and write of the display RAM can be done with auto-increment of the display RAM address.

88

IRQ
DATA
88
BUS

RL07

8
SHIFT

KEY DATA

RD*
CNT/STB
CPU
INTERFACE

WR*
SL03

OUT A03

SCAN

CS*
A0
RESET

OUT

CLK

DISPLAY
DATA

VSS
8279 / 8279-5 STUDY CARD USER MANUAL

HARDWARE DESCRIPTION:
The 8279 is packaged in a 40 pin DIP. The following are the functional description of each pin.
Pin Descriptions:

Symbol

Pin No

DB0-DB7
CLK

12 to 19
3

RESET
9

CS*

22

A0

21

RD*, WR*

10, 11

IRQ

Vss, Vcc

20, 40

SL0 SL3

32 to 35

RL0-RL7

38, 39, 1,
2, 5, 6, 7,
8

SHIFT

36

CNTL/ STB

37

OUT A0-A3
OUT B0-B3

27,26,25,
24
31,30,29,
28

BD*

23

Name and Function


Bi-directional data bus: All data and commands between the CPU and
the 8279 are transmitted on these lines.
Clock: Clock from system used to generate internal timing.
Reset: A high signal on this pin resets the 8279.
After being reset the 8279 is placed in the following mode:
1. 16 8-bit character display-left entry.
2. Encoded scan keyboard-2 key lockout.
Along with this the program clock prescaler is set to 31.
Chip Select: A low on this pin enables the interface functions to receive
or transmit.
Buffer Address: A high on this line indicates the signals in or out are
interpreted as a command or status. A low indicates that they are data.
Input / Output Read and Write: These signals Enable the data buffers
to either send data to the external bus or receive it from the external bus.
Interrupt Request: In a keyboard mode, the interrupt line is high when
there is data in the FIFO/Sensor RAM. The interrupt line goes low with
each FIFO/Sensor RAM read and returns high if there is still information
in the RAM. In a sensor mode, the interrupt line goes high whenever a
change in a sensor is detected.
Ground and power supply pins.
Scan Lines: Scan lines, which are used to scan the key switch or sensor
matrix and the display digits. These lines can be either encoded (1 of 16)
or decoded (1 of 4).
Return Line: Return line inputs which are connected to the scan lines
through the keys or sensor switches. They have active internal pull-ups
to keep them high until a switch closure pulls one low. They also serve
as an 8-bit input. In the Strobed Input mode.
Shift: The shift input status is strobed along with the key position on key
closure in the Scanned keyboard modes. It has an active Internal pull up
to keep it high until a switch closure pulls it low.
Control / Strobed Input Mode: For keyboard modes this line is used as
a control input and stored like status on a key closure. The line is also
the strobe line that enters the data into the FIFO in the Strobed Input
mode.
Outputs: These two ports are the outputs for the 16 x 4 display refresh
registers. The data from these outputs is synchronized to the scan lines
(SL0-SL3) for multiplexed digit displays. The two 4 bit ports may be
blanked independently. These two ports may also be considered as one
8-bit port.
Blank Display: This output is used to blank the display during digit
switching or by a display blanking command.

8279 / 8279-5 STUDY CARD USER MANUAL

FUNCTIONAL DESCRIPTION:
Since data input and display are an integral part of many microprocessor designs, the system designer needs
an interface that can control these functions without placing a large load on the CPU. The 8279 provide
this function for 8-bit microprocessors.
The 8279 have two sections: keyboard and display. The keyboard section can interface to regular
typewriter style keyboards or random toggle or thumb switches. The display section drives alphanumeric
displays or a bank of indicator lights. Thus the CPU is relieved from scanning the keyboard or refreshing
the display.
The 8279 is designed to directly connect to the microprocessor bus. The CPU can program all operating
modes for the 8279. These modes include.
Input Modes:
Scanned keyboard with encoded (8 x 8 key keyboard) or decoded (4 x 8 key keyboard) scan lines. A
key depression generates a 6-bit encoding of key position. Position and shift and control status are
strobed in the FIFO. Keys are automatically debounced with 2-key lockout or N-key rollover.
Scanned Sensor Matrix- with encoded (8 x 8 matrix switches) or decoded (4 x 8 matrix switches) scan
lines. Key status (open or closed) stored in RAM addressable by CPU.
Strobed Input Data on return lines during control line strobe is transferred to FIFO.
Output Modes:
8 or 16 character multiplexed displays that can be organized as dual 4-bit or single 8-bit (B0-D0,
A3=D7).
Right entry or left entry display formats.
Other features of the 8279 include.
Mode programming from the CPU.
Clock prescaler.
Interrupt output to signal CPU when there is keyboard or sensor data available.
An 8 byte FIFO to store keyboard information.
16-byte internal Display RAM for display refreshes. The CPU can also read this RAM.
PRINCIPLES OF OPERATION
The following is a description of the major elements of the 8279 Programmable keyboard/Display interface
device. Refer to the block diagram in Figure 3.

8279 / 8279-5 STUDY CARD USER MANUAL

8279 / 8279-5 STUDY CARD USER MANUAL

I/O Control and Data Buffer


The I/O control section uses the CS*, A0, RD* and WR* lines to control data flow to and from the various
internal registers and buffers. All data flow to and from the 8279 is enabled by CS*. The character of the
information, given or desired by the CPU, is identified by A0. A logic one means the information is a
command or status. A logic zero means the information is data. RD* and WR* determine the direction of
data flow through the Data Buffers. The Data Buffers are bi-directional buffers that connect the internal
bus to the external bus. When the chip is not selected (CS* = 1), the devices are in a high impedance state.
The drivers input during WR*, CS* and output during RD*.CS*
Control and Timing Registers and Timing Control
These registers store the keyboard and display modes and other operating conditions programmed by the
CPU. The modes are programmed by presenting the proper command on the data lines with A0=1 and then
sending a WR*. The command is latched on the rising edge of WR*.
The command is then decoded and the appropriate function is set. The timing control contains the basic
timing counter chain. The first counter is a N prescaler that can be programmed to yield an internal
frequency of 100 kHz that gives a 5.1 ms keyboard scan time and a 10.3 ms debounce time. The other
counters divide down the basic internal frequency to provide the proper key scan, row scan, keyboard
matrix scan, and display scan times.
Scan Counter
The scan counter has two modes. In the encoded mode, the counter provides a binary count that must be
externally decoded to provide the scan lines for the keyboard and display. In the decoded mode, the scan
counter decodes the least significant 2 bits and provides a decoded 1 of 4 scan. Note then when the
keyboard is in decoded scan, so is the display. This means that only the first 4 characters in the Display
RAM are displayed.
In the encoded mode, the scan lines are active high outputs. In the decoded mode, the scan lines are active
low outputs.
Returns Buffers and Keyboard Debounce and Control
The 8 return lines are buffered and latched by the Return Buffers. In the keyboard mode, these lines are
scanned, looking for key closures in that row. If the debounce circuit detects a closed switch, it waits about
10ms to check if the switch remains closed. If it does, the address of the switch in the matrix plus the status
of SHIFT and CONTROL are transferred to the FIFO. In the scanned Sensor Matrix modes, the contents
of the return lines are directly transferred to the corresponding row of the Sensor RAM (FIFO) each key
scan time. In Strobed input mode, the contents of the return lines are transferred to the FIFO on the rising
edge of the CNTL/STB line pulse.
FIFO/Sensor RAM and Status
This block is a dual function 8 x 8 RAM. In keyboard or Strobed input modes, it is a FIFO. Each new
entry is written into successive RAM positions and each is then read in order of entry. FIFO status keeps
track of the number of characters in the FIFO and whether it is full or empty. Too many reads or writes
will be recognized as an error. The status can be read by an RD* with CS* low and A high. The status
logic also provides an IRQ signal when the FIFO is not empty. In Scanned Sensor Matrix mode, the
memory is a Sensor RAM. Each row of the Sensor RAM is loaded with the status of the corresponding
row of sensor in the sensor matrix. In this mode, IRQ is high if a change in a sensor is detected.

8279 / 8279-5 STUDY CARD USER MANUAL

Display Address Registers and Display RAM


The Display Address Registers hold the address of the word currently being displayed. The read/write
address is programmed by CPU command. They also can be set to auto increment after each read or write.
The Display RAM can be directly read by the CPU after the correct mode and address is set. The addresses
for the A and B nibbles are automatically updated by the 8279 to match data entry by the CPU. The A and
B nibbles can be entered independently or as one word according to the mode that is set by the CPU Data
entry to the display can be set to either left or right entry see Interface Considerations for details.
SOFTWARE OPERATION
8279 commands
The following commands program the 8279 operating modes. The commands are sent on the Data Bus
with CS* low and A0 high and are loaded to the 8279 on the rising edge of WR*.
Keyboard/Display Mode Set

MSB
0 0 0 D

Code

LSB
D K

K K

Where DD is the Display Mode and KKK is the keyboard Mode.


DD*
0 0 8

8-bit character display - Left entry.

0 0

16 8-bit character display Left entry.

1 0

8 8-bit character display Right entry.

1 1

16 8-bit character display Right entry.

For description of right and left entry. See interface considerations. Note that when decoded scan is set in
keyboard mode, the display is reduced to 4 characters independent of display mode set.
KKK*
0 0 0 Encoded scan keyboard 2 key Lockout*
0 0 1 Decoded Scan keyboard 2 key Lockout.
0 1 0 Encoded Scan keyboard N-key Rollover
0 1 1 Decoded Scan keyboard N-key Rollover
1 0 0 Encoded Scan Sensor Matrix
1 0 1 Decoded Scan Sensor Matrix
1 1 0 Strobed input, Encoded Display Scan
1 1 1 Strobed Input, Decoded Display Scan.

8279 / 8279-5 STUDY CARD USER MANUAL

Program Clock
MSB
Code

LSB

0 0 1 P

P P

All timing and multiplexing signals for the 8279 are generated by an internal prescaler. This prescaler
divides the external clock (pin 3) by a programmable integer. Bits PPPPP determine the value of this
integer, which ranges from 2 to 31. Choosing a divisor that yields 100 kHz will give the specified scan and
debounce times. For instance, if pin 3 of the 8279 is being clocked by a 2 MHz signal, PPPPP should be
set to 10100 to divide the clock by 20 to yield the proper 100 kHz operating frequency.
Read FIFO/Sensor RAM
Code

0 1 0 AI

A A A

x = Dont Care

The CPU sets up the 8279 for a read of the FIFO/Sensor RAM by first writing this command. In the Scan
keyboard Mode; the Auto-increment flag (AI) and the RAM address bits (AAA) are irrelevant. The 8279
will automatically drive the data bus for each subsequent read (A0=0) in the same sequence in which the
data first entered the FIFO. All subsequent reads will be from the FIFO until another command is issued.
In the sensor Matrix Mode, the RAM address bits AAA select one of the 8 rows of the Sensor RAM. If the
AI flag is set (AI = 1), each successive read will be from the subsequent row of the sensor RAM.
Read Display RAM

Code

1 AI A

A A A

The CPU sets up the 8279 for a read of the Display RAM by first writing this command. The address bits
AAAA select one of the 16 rows of the Display RAM. If the AI flag is set (A I = 1), this row address will
be incremented after each following read or write to the Display RAM. Since the same counter is used for
both reading and writing, this command sets the next read or write address and the sense of the Autoincrement mode for both operations.
Write Display RAM
Code

1 0 0 AI A

A A A

The CPU sets up the 8279 for a write to Display RAM by first writing this command. After writing the
command with A0 = 1, all subsequent writes with A0 = 0 will be to the Display RAM. The addressing and
Auto-increment functions are identical to those for the Read Display RAM. However, this command does
not affect the source of subsequent Data Reads; the CPU will read from whichever RAM (Display or
FIFO/Sensor) which was last specified. If, indeed, the Display RAM was last specified, the Write Display
RAM will, nevertheless, change the next Read location.

8279 / 8279-5 STUDY CARD USER MANUAL

Display Write Inhibit/Blanking


A
Code

1 0 1

X IW IW

BL BL

The IW bits can be used to mask nibble A and nibble B in applications requiring separate 4-bit display
ports. By setting the IW flag (IW=1) for one of the ports, the port becomes marked so that entries to the
Display RAM from the CPU do not affect that port. Thus, if each nibble is input to a BCD decoder, the
CPU may write a digit to the Display RAM without affecting the other digit being displayed. It is
important to note that bit B0 corresponds to bit D0 on the CPU bus, and that bit A3 corresponds to bit D7.
If the user wishes to blank the display, the BL flags are available for each nibble. The last Clear command
issued determines the code to be used as a blank. This code defaults to all zeros after a reset. Note that
both BL flags must be set to blank a display formatted with a single 8-bit port.
Clear
Code

1 1 0 CD CD CD

CF

CA

The CD bits are available in this command to clear all rows of the Display RAM to a selectable blanking
code as follows:
CD CD CD
0

All Zeros (X = Dont Care)

AB = Hex 20 (0010 0000)

All Ones

Enable clear display when = 1 (or by C A = 1)


During the time the Display RAM is being cleared (~ 160 us), it may not be written to. The most
significant bit of the FIFO status word is set during this time. When the display RAM becomes available
again, it automatically resets.
If the CF bit is asserted (CF = 1), the FIFO status is cleared and the interrupt output line is reset. Also, the
Sensor RAM pointer is set to row 0.
CF, the Clear All bit, has the combined effect of CD and CF; it uses the CD clearing code on the Display
RAM and also clears FIFO status. Furthermore, it resynchronizes the internal timing chain.
End Interrupt/Error Mode Set
Code

1 1 1

X = Dont care

For the sensor matrix modes this command lowers the IRQ line and enables further writing into RAM.
(The IRQ line would have been raised upon the detection of a change in a sensor value. This would have
also inhibited further writing into the RAM until reset).
For the N-key rollover mode if the E bit is programmed to 1 the chip will operate in the special Error
mode. (For further details, see Interface Considerations Section).

8279 / 8279-5 STUDY CARD USER MANUAL

Status Word
The status word contains the FIFO status, error, and display unavailable signals. This word is ready by the
CPU when A0 is high and CS* and RD* are low. See interface considerations for more detail on status
word.
Data Read
Data is read when A0 CS* and RD* are all low. The source of the data is specified by the Read FIFO or
Read Display commands. The trailing edge of RD* will cause the address of the RAM being read to be
incremented if the Auto-Increment flag is set. FIFO reads always increment (if no error occurs)
independent of AI.
Data Write
Data that is written with A0, CS* and WR* low is always written to the Display RAM. The address is
specified by the latest Read Display or Write Display command. Auto-Incrementing on the rising edge of
WR* occurs if AI set by the latest display command.
INTERFACE CONSIDERATIONS
Scanned Keyboard Mode, 2-key Lockout
There are three possible combinations of conditions that can occur during debounce scanning. When a key
is depressed , the debounce logic is set. Other depressed keys are looked for during the next two scans. If
none are encountered, it is a single key depression and the key position is entered into the FIFO along with
the status of CNTL and SHIFT lines. If the FIFO was empty, IRQ will be set to signal the CPU that there
is an entry in the FIFO. If the FIFO was full, the key will not be entered and the error flag will be set. If
another closed switch is encountered, no entry to the FIFO can occur. If all other keys are released before
this one, then it will be entered to the FIFO. If this key is released before any other, it will be entirely
ignored. A key is entered to the FIFO only once per depression, no matter how many keys were pressed
along with it or in what order they were released. If two keys are depressed within the debounce cycle, it is
a simultaneous depression. Neither key will be recognized until one key remains depressed alone. The last
key will be treated as a single key depression.
Scanned Keyboard Mode, N-Key Rollover
With N-key Rollover each key depression is treated independently from all others. When a key is
depressed, the debounce circuit waits 2 keyboard scans and then checks to see if the key is still down. If it
is, the key is entered into the FIFO. If a simultaneous depression occurs, the keys are recognized and
entered according to the order the keyboard scan found them.
Scanned Keyboard Special Error Modes
For N-key rollover mode the user can program a special error mode. This is done by the End
Interrupt/Error Mode Set command. The debounce cycle and key-validity check are as in normal N-key
mode. If during a single debounce cycle, two keys are found depressed, this is considered a simultaneous
multiple depression, and sets an error flag. This flag will prevent any further writing in to the FIFO and
will set interrupt (if not yet set). The error flag could be read in this mode by reading the FIFO STATUS
word. (See FIFO STATUS: for further details). The error flag is reset by sending the normal CLEAR
command with CF = 1.

8279 / 8279-5 STUDY CARD USER MANUAL

10

Sensor Matrix Mode


In Sensor Matrix mode, the debounce logic is inhibited. The status of the sensor switch is inputted directly
to the Sensor RAM. In this way the Sensor RAM keeps an image of the state of the switches in the sensor
matrix. Although debouncing is not provided, this mode has the advantage that the CPU knows how long
the sensor was closed and when it was realized. A keyboard mode can only indicate a validated closure.
To make the software easier, the designer should functionally group the sensors by row since this is the
format in which the CPU will read them, since this is the format in which the CPU will read them. The
IRQ line goes high if any sensor value change is detected at the end of a sensor matrix scan. The IRQ line
is cleared by the first data read operation if the Auto-Increment flag is set to zero, or by the End interrupt
command if the Auto-increment flag is set to one.
Note: Multiple changes in the matrix addressed by (SL0-3 = 0) may cause multiple interrupts (SL0 =0 in the
Decoded Mode). Reset may cause the 8279 to see multiple changes.
Data Format
In the Scanned Keyboard mode, the character entered into the FIFO corresponds to the position of the
switch in the keyboard plus the status of the CNTL and SHIFT lines (non-inverted). CNTL is the MSB of
the character and SHIFT is the next most significant bit. The next three bits are from the scan counter and
indicate the row the key was found in. The last three bits are from the column counter and indicate to
which return line the key was connected.
MSB

LSB

CNTL SHIFT

SCAN

RETURN

SCANNED KEYBOARD DATA FORMAT


In Sensor Matrix mode, the data on the return lines is entered directly in the row of the Sensor RAM that
corresponds to the row in matrix being scanned. Therefore each switch position maps directly to Sensor
RAM position. The SHIFT and CNTL inputs are ignored in this mode. Note that switches are not
necessarily the only things that can be connected to the return lines in this mode. Any logic that can be
triggered by the scan lines can enter data to the return line inputs. Eight multiplexed input ports could be
tied to the return lines and scanned by the 8279.
MSB
RL7

RL6

RL5 RL4

LSB
X
=
RL3 RL2 RL1 RL0

In Strobed input mode, the data is also entered to the FIFO from the return lines. The data is entered by
the rising edge of a CNTL/STB line pulse. Data can come from another encoded keyboard or simple
switch matrix. The return lines can also be used as a general-purpose strobed input.
MSB
RL7

RL6

RL5 RL4

LSB
X
=
RL3 RL2 RL1 RL0

8279 / 8279-5 STUDY CARD USER MANUAL

11

Display
Left Entry
Left Entry mode is the simplest display format in that each display position directly corresponds to a byte
or nibble in the Display RAM. Address 0 in the RAM is the left-most display character and address 15 (or
address 7 in 8 character display) is the right most display character. Entering characters from position zero
causes the display to fill from the left. The 17 th (9th) character is entered back in the left most position and
filling again proceeds from there.
1st entry 0
1

10

11

12

13

14 15

2nd entry 0
1

1
2

10

11

12

13

14 15

16th entry 0
1

1
2

10

11

12

13

14
15

Display RAM
Address

15
16

17th entry 0
1
17 2

10

11

12

13

14 15
15 16

18th entry 0
17

10

11

12

13

14 15
15 16

1
18

LEFT ENTRY MODE


(AUTO INCREMENT)
Right Entry
Right entry is the method used by most electronic calculators. The first entry is placed in the right most
display character. The next entry is also placed in the right most character after the displays shifted left one
character. The left most character is shifted off the end and is lost.
Display RAM
Address

1st entry

10

11

12

13

2nd entry

10

11

12

13

14 15

3rd entry 3

10

11

12

13

14 15

0
1

16th entry 0
1

1
2

10

11

12

13 14 15
14 15 16

17th entry 1
2

2
3

10

11

12

13

14
15

15
16

0
17

18th entry 2
3

3
4

10

11

12

13

14 15
16

0
17

1
18

14

15

0
1

0
1

1
2

1
2

2
3

RIGHT ENTRY MODE


(AUTO INCREMENT)
8279 / 8279-5 STUDY CARD USER MANUAL

12

Note that now the display position and register address do not correspond. Consequently, entering a
character to an arbitrary position in the Auto Increment mode may have unexpected results. Entry starting
at Display RAM address 0 with sequential entry is recommended.
Auto Increment
In the Left Entry mode, Auto Incrementing causes the address where the CPU will next write to be
incremented by one and the character appears in the next location. With non-Auto Incrementing the entry
is both to the same RAM address and display position. Entry to an arbitrary address in the Auto Increment
mode has no undesirable side effects and the result is predictable.
1st entry 0
1

2nd entry 0
1

1
2

command
10010101 0
1

1
2

3rd entry 0
1

1
2

5
3

4th entry

1
2

5
3

6
4

0
1

Display RAM
address

In the Right Entry mode, Auto Incrementing and non Incrementing have the same effect as in the Left
Entry except if the address sequence is interrupted.
Display RAM
1st entry 1
2 3
4
5
6
7
0
Address
1
2nd entry 2

0
1

1
2

0
1

1
2

Command
10010101

3rd entry

5
3

0
1

1
2

4th entry 4

5
3

6
4

0
1

1
2

RIGHT ENTRY MODE


(AUTO INCREMENT)
Stating at an arbitrary location operates as shown below:

8279 / 8279-5 STUDY CARD USER MANUAL

13

Command
10010101

display RAM address

Enter next at Location 5 Auto Increment


1st entry 1
2nd entry
8th

entry
4

9th entry

RIGHT ENTRY MODE


( AUTO INCREMENT )
Entry appears to be from the initial entry point.
8/16 Character Display Formats
If the display mode is set to an 8-character display, the on duty-cycle is double what it would be for a 16character display (e.g. 5.1 ms scan time for 8 characters vs. 10.3 ms for 16 characters with 100 kHz
internal frequency).
G.FIFO Status
FIFO status is used in the Keyboard and Strobed input modes to indicate the number of characters in the
FIFO and to indicate whether an error has occurred. There are two types of errors possible: overrun and
under run. Overrun occurs when the entry of another character into a full FIFO is attempted. Under run
occurs when the CPU tries to read an empty FIFO.
The FIFO status word also has a bit to indicate that the Display RAM was unavailable because a Clear
Display or Clear All command had not completed its clearing operation.
In a Sensor Matrix mode, a bit is set in the FIFO status word to indicate that at least one sensor closure
indication is contained in the Sensor RAM.
In Special Error Mode the S/E bit is showing the error flag and serves as an indication to whether a
simultaneous multiple closure error has occurred.
FIFO STATUS WORD
FIFO FULL
DU

S/E

N
Number of character
In FIFO

Error-under run
Display Unavailable
Error-overrun
Sensor-closure/Error flag for
Multiple Closures

8279 / 8279-5 STUDY CARD USER MANUAL

14

3.0 INSTALLATION AND CONFIGURATION

The Connector details for connecting the Study Card to different Trainers are mentioned below.

TRAINER

MPS 85-3
ESA 85-2
ESA 86/88-2/3 *

ESA 86E

CONNECTORS

CONNECTORS ON

CONNECTORS ON

ON TRAINER

STUDY CARD ADAPTER

STUDY CARD

J3 (26 PIN)

J3 (26 PIN)

J4 (26 PIN)

J4 (26 PIN)

P1 (50 PIN)

P1 (50 PIN)

J1 (50 PIN)

J1 (50 PIN)

J3 (26 PIN)

J3 (26 PIN)

J2 (50 PIN)

J2 (50 PIN)

J4 (26 PIN)

J4 (26 PIN)

J6 (26 PIN)

J3 (26 PIN)

J7 (26 PIN)

J4 (26 PIN)

ESA 31/51 *

J5(50 PIN)

ESA51E VER.3 *

J4(50 PIN)

ESA 51E VER.4

J1(50 PIN)

P3(50 PIN)

J3(26 PIN)

J3 (26 PIN)

J4(26 PIN)

J4 (26 PIN)

P1(26 PIN)

J3 (26 PIN)

P2(26 PIN)

J4 (26 PIN)

J4 (26 PIN)

J3 (26 PIN)

J6 (26 PIN)

J4 (26 PIN)

* External Study Card Adapter is required to connect the Study Card with the Trainer
Connect the Study Card by following the above-mentioned connectors with FRCs respectively.
Switch Off Power to the Trainer while connecting the Study Card. Press Reset after giving power to the
Trainer.

8279 / 8279-5 STUDY CARD USER MANUAL

15

4. DEMONSTRATION PROGRAMS FOR 8085 SERIES KITS


4A. DEMONSTRATION PROGRAMS FOR MPS 85-3 TRAINER KIT
The following program initializes 8279 in decode mode to display the message ESA PVT LTD. on
Seven Segment Display.
CMD_PORT
EQU
81H
DATA_ PORT
EQU
80H
ADDRESS

OPCODE

8000
8002
8004
8006
8008
800A
800C
800E
800F
8010
8012
8015
8017

06 08
3E 00
D3 81
3E 90
D3 81
3E 00
D3 80
05
78
FE 00
C2 0A 80
3E 01
D3 81

8019
801B
801D
801F

3E 90
D3 81
06 04
21 00 81

8022
8023
8025
8028
8029
802A
802B
802D
8030
8033
8036
8038
803A
803C
803F
8040
8042
8045
8046
8047
8048
804A
804D
8050

7E
D3 80
CD 73 80
23
05
78
FE 00
C2 22 80
CD 73 80
CD 73 80
3E 90
D3 81
06 04
21 05 81
7E
D3 80
CD 73 80
23
05
78
FE 00
C2 3F 80
CD 73 80
CD 73 80

LOOP

CLEAR :

BEGIN :

BACK :

BACK1 :

MNEMONIC
ORG 8000H
MVI B, 08H
MVI A, 00H
OUT 81H
MVI A, 90H
OUT 81H
MVI A, 00H
OUT 80H
DCR B
MOV A,B
CPI 00H
JNZ CLEAR
MVI A, 01H
OUT 81H
MVI A, 90H
OUT 81H
MVI B, 04H
LXI H, DISTBLI
MOV A, M
OUT 80H
CALL DELAY
INX H
DCR B
MOV A, B
CPI
00
JNZ BACK
CALL DELAY
CALL DELAY
MVI A, 90H
OUT CMD_PORT
MVI B, 04H
LXI H, DISTBL2
MOV A, M
OUT 80H
CALL DELAY
INX H
DCR B
MOV A, B
CPI
00
JNZ BACK1
CALL DELAY
CALL DELAY

8279 / 8279-5 STUDY CARD USER MANUAL

COMMENTS
; Routine to clear all the 7 Segment
; Display.

; 8 8 bit character display


; Left entry, Decoded scan keyboard

; Look up table to display


; -ESA.
; Provide some delay.

; Look up table to display


; PVT:.

16

ADDRESS
8053
8055
8057
8059
805C
805D
805F
8062
8063
8064
8065
8067
806A
806D
8070

OPCODE
3E 90
D3 81
06 04
21 0A 81
7E
D3 80
CD 73 80
23
05
78
FE 00
C2 5C 80
CD 73 80
CD 73 80
C3 19 80

LABLE

8073
8076
8077
8078
8079
807C
807D

11 FF FF
1B
7A
B3
C2 76 80
C9

DELAY:
REP:

8100
8105
810A

04 97 D6 77 00
00 37 E3 87 00
00 83 87 E5 00

1.

LXI D, 0FFFFH
DCX D
MOV A, D
ORA E
JNZ
REP
RET

COMMENTS

; Look up table to display


; LTD.

; Delay Routine.

ORG 8100H
DISTBL1:- ESA
DISTBL2: PVT
DISTBL3 : LTD.

Program to Display ELECTRO-SYSTEMS on Seven Segment Display using Encode method.


CMD_PORT
EQU
81H
DATA_ PORT
EQU
80H

ADDRESS
8000
8002
8004
8006
8008
800A
800C
800E
800F
8010
8012
8015

BACK2:

MNEMONIC
MVI A, 90H
OUT CMD-PORT
MVI B, 04H
LXI H, DISTBL3
MOV A, M
OUT 80H
CALL DELAY
INX H
DCR B
MOV A, B
CPI
00
JNZ
BACK2
CALL DELAY
CALL DELAY
JMP
BEGIN

OPCODE
06 08
3E 00
D3 81
3E 90
D3 81
3E 00
D3 80
05
78
FE 00
C2 0A 80
3E 10

LOOP

CLEAR :

MNEMONIC
ORG 8000H
MVI B, 08H
MVI A, 00H
OUT 81H
MVI A, 90H
OUT 81H
MVI A, 00H
OUT 80H
DCR B
MOV A,B
CPI 00H
JNZ CLEAR
MVI A, 10H

8279 / 8279-5 STUDY CARD USER MANUAL

COMMENTS
; Routine to clear all the 7 Segment
; Display.

; 8 8 bit character display


17

8017
8019
801B
801D
801F
8022
8023
8025
8028
8029
802A
802B
802D
8030
8032
8034
8036

D3 81
3E 90
D3 81
06 08
21 00 81
7E
D3 80
CD 4A 80
23
05
78
FE 00
C2 22 80
3E 90
D3 81
06 08
21 08 81

8039
803A
803C
803F
8040
8041
8042
8044
8047

7E
D3 80
CD 4A 80
23
05
78
FE 00
C2 39 80
C3 19 80

804A
804D
804E
804F
8050
8053
8054

11 FF FF
1B
7A
B3
C2 4D 80
C9

ADDRESS

OPCODE

8100
8105
8108
810D

97 83 97 93 87
13 F3 04
D6 E6 D6 87 97
73 DE 00

BEGIN :

BACK :

BACK1 :

DELAY:
REP:

OUT CMD_PORT
MVI A, 90H
OUT CMD_PORT
MVI B, 08H
LXI H, DISTBL
MOV A, M
OUT 80H
CALL DELAY
INX H
DCR B
MOV A, B
CPI
00
JNZ BACK
MVI A, 90H
OUT CMD_PORT
MVI B, 08H
LXI H, DISTBL+8
MOV A, M
OUT 80H
CALL DELAY
INX H
DCR B
MOV A, B
CPI
00
JNZ BACK1
JMP BEGIN

; Right entry.

; Look up table to display


; ELECTRO-.
; Provide some delay.

; Look up table to display


; SYSTEMS.
; Delay Routine.

LXI D, 0FFFFH
DCX D
MOV A, D
ORA E
JNZ REP
RET

LABLE

MNEMONIC
ORG 8100H
DISTBL: ELECTROSYSTEMS.

8279 / 8279-5 STUDY CARD USER MANUAL

COMMENTS

18

2.

Program to scan the hex keypad and to display on Seven Segment Display using encode method.
CMD_PORT
DATA_ PORT

ADDRESS
8000
8002
8004
8006
8008
800A
800C
800E
800F
8010
8012
8015
8017
8019
801C
801F
8021
8023
8025
8027
8028
802A
802C
802E
8030
8032
8034
8035
8037
8100
8105
8109
810E
8111
8116

OPCODE
3E 00
D3 81
3E 90
D3 81
0E 08
3E 00
D3 80
0D
79
FE 00
C2 0A 80
DB 81
E6 07
CA 15 80
21 00 81
3E 40
D3 81
DB 80
E6 1F
6F
3E 94
D3 81
3E F3
D3 80
3E 95
D3 81
7E
D3 80
C3 15 80
F3 60 B5 F4 66
D6 D7 70 F7
76 77 C7 93 E5
97 17 00
76 77 C7 93 E5
97 17 0

EQU
EQU
LABLE

CLEAR:

BACK:

81H
80H
MNEMONIC
MVI A, 00H
OUT 81H
MVI A, 90H
OUT 81H
MVI C, 08H
MVI A, 00H
OUT 80H
DCR C
MOV A, C
CPI 00H
JNZ CLEAR
IN
81H
ANI 07H
JZ
BACK
LXI
H, DISTBL
MVI
A, 40H
OUT 81H
IN
80H
ANI
IFH
MOV L, A
MVI
A, 94H
OUT 81H
MVI
A, 0F3H
OUT 80H
MVI
A, 95H
OUT
81H
MOV A, M
OUT
80H
JMP
BACK
DISTBL: 0 1 2 3
4567
89AB
C D E F.

8279 / 8279-5 STUDY CARD USER MANUAL

COMMENTS

; To clear all the digits.

; Read 8279 status.


; is character available.

; Read FIFO.

; Mask shift and control keys.


; Address to display 0.
; Address to display scanned
; value.

19

4B. DEMONSTRATION PROGRAMS FOR ESA 85-2 TRAINER KIT


1.

Program to Display ESA PVT LTD. On Seven Segment Display using encode method.
CMD_PORT
EQU
81H
DATA_ PORT
EQU
80H

ADDRESS

OPCODE

LOOP

8000
8002
8004
8006
8008
800A
800C
800E
800F
8010
8012
8015

06 08
3E 00
D3 81
3E 90
D3 81
3E 00
D3 80
05
78
FE 00
C2 0A 80
3E 01

8017

D3 81

8019
801B
801D
801F

3E 90
D3 81
06 04
21 00 81

BEGIN :

8022
8023
8025
8028
8029
802A
802B
802D
8030
8033
8036
8038
803A
803C
803F
8040
8042
8045
8046
8047
8048
804A
804D
8050

7E
D3 80
CD 73 80
23
05
78
FE 00
C2 22 80
CD 73 80
CD 73 80
3E 90
D3 81
06 04
21 05 81
7E
D3 80
CD 73 80
23
05
78
FE 00
C2 3F 80
CD 73 80
CD 73 80

BACK :

CLEAR :

BACK1 :

MNEMONIC
ORG 8000H
MVI B, 08H
MVI A, 00H
OUT 81H
MVI A, 90H
OUT 81H
MVI A, 00H
OUT 80H
DCR B
MOV A,B
CPI 00H
JNZ CLEAR
MVI A, 01H

COMMENTS
; Routine to clear all the 7 Segment
; Display.

; 8 8 bit character display

OUT CMD_PORT

; Left entry, Encoded scan keyboard

MVI A, 90H
OUT CMD_PORT
MVI B, 04H
LXI H, DISTBLI

; Look up table to display

MOV A, M
OUT 80H
CALL DELAY
INX H
DCR B
MOV A, B
CPI
00
JNZ BACK
CALL DELAY
CALL DELAY
MVI A, 90H
OUT CMD_PORT
MVI B, 04H
LXI H, DISTBL2
MOV A, M
OUT 80H
CALL DELAY
INX H
DCR B
MOV A, B
CPI
00
JNZ BACK1
CALL DELAY
CALL DELAY

8279 / 8279-5 STUDY CARD USER MANUAL

; -ESA.
; Provide some delay.

; Look up table to display


; PVT:.

20

ADDRESS
8053
8055
8057
8059
805C
805D
805F
8062
8063
8064
8065
8067
806A
806D
8070

OPCODE
3E 90
D3 81
06 04
21 0A 81
7E
D3 80
CD 73 80
23
05
78
FE 00
C2 5C 80
CD 73 80
CD 73 80
C3 19 80

LABLE

8073
8076
8077
8078
8079
807C
807D

11 FF FF
1B
7A
B3
C2 76 80
C9

DELAY:
REP:

8100
8105
810A

04 97 D6 77 00
00 37 E3 87 00
00 83 87 E5 00

BACK2:

MNEMONIC
MVI A, 90H
OUT CMD-PORT
MVI B, 04H
LXI H, DISTBL3
MOV A, M
OUT 80H
CALL DELAY
INX H
DCR B
MOV A, B
CPI
00
JNZ
BACK2
CALL DELAY
CALL DELAY
JMP
BEGIN
LXI D, 0FFFFH
DCX D
MOV A, D
ORA E
JNZ
REP
RET

COMMENTS

; Look up table to display


; LTD.

; Delay Routine.

ORG 8100H
DISTBL1:- ESA
DISTBL2: PVT
DISTBL3 : LTD.

2.

Program to Display ELECTRO-SYSTEMS on Seven Segment Display using decode method.


CMD_PORT
EQU
81H
DATA_ PORT
EQU
80H
ADDRESS OPCODE LOOP
MNEMONIC
COMMENTS
8000
8002
8004
8006
8008
800A
800C
800E
800F
8010
8012
8015

06 08
3E 00
D3 81
3E 90
D3 81
3E 00
D3 80
05
78
FE 00
C2 0A 80
3E 10

8017

D3 81

CLEAR :

ORG 8000H
MVI B, 08H
MVI A, 00H
OUT 81H
MVI A, 90H
OUT 81H
MVI A, 00H
OUT 80H
DCR B
MOV A,B
CPI 00H
JNZ CLEAR
MVI A, 10H
OUT CMD_PORT

8279 / 8279-5 STUDY CARD USER MANUAL

; Routine to clear all the 7 Segment


; Display.

; 8 8 bit character display


; Right entry.
21

8019
801B
801D
801F
8022
8023
8025
8028
8029
802A
802B
802D
8030
8032
8034
8036

3E 90
D3 81
06 08
21 00 81
7E
D3 80
CD 4A 80
23
05
78
FE 00
C2 22 80
3E 90
D3 81
06 08
21 08 81

BEGIN :

BACK :

BACK1 :
8039
803A
803C
803F
8040
8041
8042
8044
8047
804A
804D
804E
804F
8050
8053
8054

7E
D3 80
CD 4A 80
23
05
78
FE 00
C2 39 80
C3 19 80
C9
11 FF FF
1B
7A
B3
C2 4D 80
C9

ADDRESS

OPCODE

8100
8105
8108
810D

97 83 97 93 87
13 F3 04
D6 E6 D6 87 97
73 DE 00

DELAY:
REP:

MVI A, 90H
OUT CMD_PORT
MVI B, 08H
LXI H, DISTBL
MOV A, M
OUT 80H
CALL DELAY
INX H
DCR B
MOV A, B
CPI
00
JNZ BACK
MVI A, 90H
OUT CMD_PORT
MVI B, 08H
LXI H, DISTBL+8
MOV A, M
OUT 80H
CALL DELAY
INX H
DCR B
MOV A, B
CPI
00
JNZ BACK1
JMP BEGIN
RET
LXI D, 0FFFFH
DCX D
MOV A, D
ORA E
JNZ REP
RET

LABLE

; Look up table to display


; -ESA.
; Provide some delay.

; Look up table to display


; PVT:.
; Delay Routine.

MNEMONIC
ORG 8100H
DISTBL: ELECTROSYSTEMS.

8279 / 8279-5 STUDY CARD USER MANUAL

COMMENTS

22

3.

Program to scan the hex keypad and to display on Seven Segment Display using encode method.
CMD_PORT
DATA_ PORT

ADDRESS
8000
8002
8004
8006
8008
800A
800C
800E
800F
8010
8012
8015
8017
8019
801C
801F
8021
8023
8025
8027
8028
802A
802C
802E
8030
8032
8034
8035
8037
8100
8105
8109
810E
8111
8116

OPCODE
3E 00
D3 81
3E 90
D3 81
0E 08
3E 00
D3 80
0D
79
FE 00
C2 0A 80
DB 81
E6 07
CA 15 80
21 00 81
3E 40
D3 81
DB 80
E6 1F
6F
3E 94
D3 81
3E F3
D3 80
3E 95
D3 81
7E
D3 80
C3 15 80
F3 60 B5 F4 66
D6 D7 70 F7
76 77 C7 93 E5
97 17 00
76 77 C7 93 E5
97 17 0

EQU
EQU
LABLE

CLEAR:

BACK:

81H
80H
MNEMONIC
MVI A, 00H
OUT 81H
MVI A, 90H
OUT 81H
MVI C, 08H
MVI A, 00H
OUT 80H
DCR C
MOV A, C
CPI 00H
JNZ CLEAR
IN
81H
ANI 07H
JZ
BACK
LXI
H, DISTBL
MVI
A, 40H
OUT 81H
IN
80H
ANI
IFH
MOV L, A
MVI
A, 94H
OUT 81H
MVI
A, 0F3H
OUT 80H
MVI
A, 95H
OUT
81H
MOV A, M
OUT
80H
JMP
BACK
DISTBL: 0 1 2 3
4567
89AB
C D E F.

8279 / 8279-5 STUDY CARD USER MANUAL

COMMENTS

; To clear all the digits.

; Read 8279 status.


; is character available.

; Read FIFO.

; Mask shift and control keys.


; Address to display 0.
; Address to display scanned
; value.

23

5.0 DEMONSTRATION PROGRAMS FOR 8086 SERIES KITS


5A. EXAMPLE PROGRAMS FOR ESA 86/88-2 TRAINER
1.PROGRAM TO DISPLAY THE VALUE OF THE KEY PRESSED IN THE DISPLAY FIELD
USING ENCODE METHOD

ADDRESS
0000:2000
0000:2000
0000:2003
0000:2005
0000:2008
0000:2009
0000:200B
0000:200C
0000:200F
0000:2011
0000:2014
0000:2015
0000:2017
0000:201A
0000:201B
0000:201D
0000:201F
0000:2022
0000:2024
0000:2025
0000:2028
0000:2029
0000:202B
0000:202D
0000:202F
0000:2031
0000:2034
0000:2036
0000:2027
0000:203A
0000:203C
0000:203D
0000:2040
0000:2042
0000:2043
0000:2046
0000:2048
0000:2049
0000:3000
0000:3000
0000:3005
0000:300A
0000:300F
0000:3014

OPCODE
BE
B0
BA
EE
B0
EE
B9
B0
BA
EE
E2
BA
EC
24
74
BE
B0
EE
BA
EC
24
B4
89
03
BA
B0
EE
BA
B0
EE
BA
B0
EE
BA
8A
EE
E9

00 30
00
82 00

F3
D6
77
17
93

60
D7
C7
00
E5

COMMAND PORT = 0082H


DATA PORT
= 0080H
LABEL
MNEMONICS

90
08 00
00
80 00

CLEAR:

F8
82 00

BACK:

07
F8
00 30
40
80 00
1F
00
C1
F1*
82 00
94
80 00
F3
82 00
95
80 00
04
CB FF
B5
70
93
76
97

F4
F7
E5
77
17

66
76
97
C7
00

LOOP:

COMMENTS

ORG 2000H
MOVW SI,#3000
MOVB AL,#00
MOVW DX,#82
;INITIALIZE 8279
OUTB DX,AL
MOVB AL,#90
OUTB DX,AL
MOVW CX,#08
MOVB AL,#00
;CLEAR THE
MOVW DX,#80
;DISPLAY
OUTB DX,AL
LOOP 200F
MOVW DX,#82
INB AL,DX
ANDB AL,#07
JZ 2017
MOVW SI,#3000
MOVB AL,#40
;READ FIFO
OUTB DX,AL
MOVW DX,#80
INB AL,DX
ANDB AL,#1F
MOVB AH,#00
MOVW CX,AX
ADDW SI,CX
MOVW DX,#82
MOVB AL,#94
;ADDRESS TO
OUTB DX,AL
;DISPLAY 0
MOVW DX,#80
MOVB AL,#F3
OUTB DX,AL
MOVW DX,#82
MOVB AL,#95
OUTB DX,AL
MOVW DX,#80
MOVB AL,[SI]
OUTB DX,AL
JMP 2017
ORG 3000H
DB 0F3H,60H,0B5H,0F4H,66H
DB 0D6H,0D7H,70H,0F7H,76H
DB 77H,0C7H,93H,0E5H,97H
DB 17H,00H,76H,77H,0C7H
DB 93H,0E5H,97H,17H,00H

8279 / 8279-5 STUDY CARD USER MANUAL

24

2. PROGRAM TO DISPLAY ESA IM DISPLAY FIELD USING DECODE METHOD.


EXECUTE PROGRAM FROM 2000H.
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:

2000
2000
2002
2005
2006
2008
2009
200C
200E
2011
2012
2014
2017
201A
201D
201F
2020
2021
2023

0000: 2100
0000: 2100
0000: 2106

B0
BA
EE
B0
EE
B9
B0
BA
EE
E2
B9
B8
BE
8A
EE
46
E2
CC

90
82 00
00
08 00
00
80 00
F8
04 00
00 00
00 21
04
FA

04 97 D6 77
04 04 00

ORG 2000H
MOVB AL,#90
MOVW DX,#82
OUTB DX,AL
MOVB AL,#00
OUTB DX,AL
MOVW CX,#08
RPT: MOVB AL,#00
MOVW DX,#80
OUTB DX,AL
LOOP 200C
MOVW CX,#04
MOVW AX,#00
MOVW SI,#2100
LOOP: MOVB AL,[SI]
OUTB DX,AL
INCW SI
LOOP 201D
INT 3

;Clear Display

;Left entry decoded


;scan keyboard

;Display ESA

ORG 2100H
DB 04H,97H,D6H,77H
DB 04H,04H,00H

3. PROGRAM TO DISPLAY ESA IN DISPLAY FIELD USING ENCODE METHOD.


0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:

2000
2000
2002
2005
2006
2008
2009
200C
200E
2011
2012
2014
2017
201A
201D
201F
2020
2021
2023

0000: 2100
0000: 2100

B0
BA
EE
B0
EE
B9
B0
BA
EE
E2
B9
B8
BE
8A
EE
46
E2
CC

90
82 00
00
08 00
00
80 00
F8
08 00
00 00
00 21
04
FA

04 97 D6 77

ORG 2000H
MOVB AL,#90
MOVW DX,#82
OUTB DX,AL
MOVB AL,#00
OUTB DX,AL
MOVW CX,#08
RPT: MOVB AL,#00
MOVW DX,#80
OUTB DX,AL
LOOP 200C
MOVW CX,#08
MOVW AX,#00
MOVW SI,#2100
LOOP : MOVB AL,[SI]
OUTB DX,AL
INCW SI
LOOP 201D
INT 3

;Clear Display

;Left entry encoded


; scan keyboard

; Display ESA

ORG 2100H
DB 04H,97H,D6H,77H

8279 / 8279-5 STUDY CARD USER MANUAL

25

0000: 2106

04 04 00

DB 04H,04H,00H

5B.EXAMPLE PROGRAMS FOR ESA 86/88-3 TRAINER


1.PROGRAM TO DISPLAY THE VALUE OF THE KEY PRESSED IN THE DISPLAY
FIELD USING ENCODE METHOD

ADDRESS

COMMAND PORT = 0082H


DATA PORT
= 0080H
OPCODE
LABEL

MNEMONICS

0000:2000
0000:2000
0000:2003
0000:2005
0000:2008
0000:2009
0000:200B
0000:200C
0000:200F
0000:2011
0000:2014
0000:2015
0000:2017
0000:201A
0000:201B
0000:201D
0000:201F
0000:2022
0000:2024
0000:2025
0000:2028
0000:2029
0000:202B
0000:202D
0000:202F
0000:2031
0000:2034
0000:2036
0000:2027
0000:203A
0000:203C
0000:203D
0000:2040
0000:2042
0000:2043
0000:2046
0000:2048
0000:2049

BE
B0
BA
EE
B0
EE
B9
B0
BA
EE
E2
BA
EC
24
74
BE
B0
EE
BA
EC
24
B4
8B
03
BA
B0
EE
BA
B0
EE
BA
B0
EE
BA
8A
EE
E9

00 30
00
82 00

ORG 2000H
MOVW SI,3000
MOVB AL,00
MOVW DX,82
OUTB DX,AL
MOVB AL,90
OUTB DX,AL
MOVW CX,08
MOVB AL,00
MOVW DX,80
OUTB DX,AL
LOOP 200F
MOVW DX,82
INB AL,DX
ANDB AL,07
JZ 2017
MOVW SI,3000
MOVB AL,40
OUTB DX,AL
MOVW DX,80
INB AL,DX
ANDB AL,1F
MOVB AH,00
MOVW CX,AX
ADDW SI,CX
MOVW DX,82
MOVB AL,94
OUTB DX,AL
MOVW DX,80
MOVB AL,F3
OUTB DX,AL
MOVW DX,82
MOVB AL,95
OUTB DX,AL
MOVW DX,80
MOVB AL,[SI]
OUTB DX,AL
JMP 2017

0000:3000
0000:3000
0000:3005
0000:300A
0000:300F

F3
D6
77
17

60
D7
C7
00

90
08 00
00
80 00

CLEAR:

F8
82 00

BACK:

07
F8
00 30
40
80 00
1F
00
C8
F1
82 00
94
80 00
F3
82 00
95
80 00
04
CB FF
B5
70
93
76

F4
F7
E5
77

66
76
97
C7

LOOP:

COMMENTS

;INITIALIZE 8279

;CLEAR
;DISPLAY

THE

;READ FIFO

;ADDRESS TO
;DISPLAY 0

ORG 3000H
DB 0F3H,60H,0B5H,0F4H,66H
DB 0D6H,0D7H,70H,0F7H,76H
DB 77H,0C7H,93H,0E5H,97H
DB 17H,00H,76H,77H,0C7H

8279 / 8279-5 STUDY CARD USER MANUAL

26

0000:3014

93 E5 97 17 00

DB 93H,0E5H,97H,17H,00H

2. PROGRAM TO DISPLAY ESA IN DISPLAY FIELD USING DECODE METHOD.


EXECUTE PROGRAM FROM 2000H.
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:

2000
2000
2002
2005
2006
2008
2009
200C
200E
2011
2012
2014
2017
201A
201D
201F
2020
2021
2023

0000: 2100
0000: 2100
0000: 2106

B0
BA
EE
B0
EE
B9
B0
BA
EE
E2
B9
B8
BE
8A
EE
46
E2
CC

90
82 00
00
08 00
00
80 00
F8
06 00
00 00
00 21
04
F4

04 97 D6 77
04 04 00

ORG 2000
MOVB AL,90
MOVW DX,82
OUTB DX,AL
MOVB AL,00
OUTB DX,AL
MOVW CX,08
RPT: MOVB AL,00
MOVW DX,80
OUTB DX,AL
LOOP 200C
MOVW CX,06
LOOP1:MOVW AX,00
MOVW SI,2100
MOVB AL,[SI]
OUTB DX,AL
INCW SI
LOOP 2017
INT 3

;Clear Display

;Left entry decoded


;scan keyboard

;Display ESA

ORG 2100
DB 04H,97H,D6H,77H
DB 04H,04H,00H

3. PROGRAM TO DISPLAY ESA IN DISPLAY FIELD USING ENCODE METHOD.


0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:

2000
2000
2002
2005
2006
2008
2009
200C
200E
2011
2012
2014
2017
201A
201D
201F
2020
2021
2023

0000: 2100
0000: 2100
0000: 2106

B0
BA
EE
B0
EE
B9
B0
BA
EE
E2
B9
B8
BE
8A
EE
46
E2
CC

90
82 00
00
08 00
00
80 00
F8
06 00
00 00
00 21
04
F4

04 97 D6 77
04 04 00

ORG 2000
MOVB AL,90
MOVW DX,82
OUTB DX,AL
MOVB AL,00
OUTB DX,AL
MOVW CX,08
RPT: MOVB AL,00
MOVW DX,80
OUTB DX,AL
LOOP 200C
MOVW CX,06
LOOP1:MOVW AX,00
MOVW SI,2100
MOVB AL,[SI]
OUTB DX,AL
INCW SI
LOOP 2017
INT 3

;Clear Display

;Left entry encoded


;scan keyboard

;Display ESA

ORG 2100
DB 04H,97H,D6H,77H
DB 04H,04H,00H

8279 / 8279-5 STUDY CARD USER MANUAL

27

5C. DEMONSTRATION PROGRAMS FOR ESA 86/88E TRAINER


8279 REGISTER ADDRESSING
The addresses for 8279 registers on this card for use with ESA 86/88E Trainer are
as follows:
COMMAND PORT
DATA PORT
1.

FFC0H
FFC2H

Program to display -ESA PVT LTD using Decode method.

ADDRESS

OP-CODES

0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:

B9
B0
BA
EE
B0
EE
B0
BA
EE
E2
BA
B0
EE
BA
B0
EE
BE
B9
8A
BA
EE
46
E2
E8
BE
B9
8A
BA
EE
46
E2
E8
BE
B9
8A
BA
EE
46

2000
2003
2005
2008
2009
200B
200C
200E
2011
2012
2014
2017
2019
201A
201D
201F
2020
2023
2026
2028
202B
202C
202D
202F
2032
2035
2038
203A
203D
203E
203F
2041
2044
2047
204A
204C
204F
2050

LABELS

08 00
00
C2 FF
90
00
C0 FF

RPT:

F8
C2 FF
01
C2 FF
90
00 21
04 00
04
C0 FF
F7
27
04
04
04
C0
F7
15
08
04
04
C0

BCK:
BC0:

00
21
00
BC1:
FF

00
21
00
BC2:
FF

MNEMONICS
MOVW
MOVB
MOVW
OUTB
MOVB
OUTB
MOVB
MOVW
OUTB
LOOP
MOVW
MOVB
OUTB
MOVW
MOVB
OUTB
MOVW
MOVW
MOVB
MOVW
OUTB
INCW
LOOP
CALL
MOVW
MOVW
MOVB
MOVW
OUTB
INCW
LOOP
CALL
MOVW
MOVW
MOVB
MOVW
OUTB
INCW

8279 / 8279-5 STUDY CARD USER MANUAL

CX,08
AL,00
DX,0FFC2
DX,AL
AL,90
DX,AL
AL,00
DX,0FFC0
DX,AL
RPT
DX,0FFC2
AL,01
DX,AL
DX,0FFC2
AL,90
DX,AL
SI,2100
CX,04
AL,[SI]
DX,0FFC0
DX,AL
SI
BCO
DLY
SI,2104
CX,04
AL,[SI]
DX,0FFC0
DX,AL
SI
BC1
DLY
SI,2108
CX,04
AL,[SI]
DX,0FFC0
DX,AL
SI

COMMENTS
;Routine to clear
;all displays

;8 8-bit Character
;display Left entry
;Decoded scan keybd
;Write to 8279
;display RAM
;Routine to Display
;'-ESA

;Provide some delay


;Routine to display
;' PVT'

;Provide some delay


;Routine to display
;LTD'

28

0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:

2051
2053
2056
2059
205A
205D
205F
2061
2062

E2
E8
E9
51
B9
E2
E2
59
C3

F7
03 00
C7 FF

0000:
0000:
0000:
0000:
0000:
0000:

2100
2102
2104
2106
2108
210A

04
D6
00
E3
00
87

97
77
37
87
83
E5

2.

Program to display 'ELECTRO SYSTEMS. INDIA -' using Encode method.

DLY:
00 00
FE
FE

ADDRESS

OP-CODES

0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:

B9
B0
BA
EE
B0
EE
B0
BA
EE
E2
BA
B0
EE
BA
B0
EE
BE
B9
8A
BA
EE
46
E8
E2
B9
8A
BA
EE

2000
2003
2005
2008
2009
200B
200C
200E
2011
2012
2014
2017
2019
201A
201D
201F
2020
2023
2026
2028
202B
202C
202D
2030
2032
2035
2037
203A

0000:203B
0000:203C
0000:203F

LOOP BC2
CALL DLY
;Provide some delay
JMP BCK
;Repeat continuously
PUSH CX
;Delay routine
MOVW CX,0000
LOOP 205D
LOOP 205F
POP CX
RET
ORG 2100
DB
DB
DB
DB
DB
DB

LABELS

08 00
00
C2 FF
90
00
C0 FF

RPT:

F8
C2 FF
10
C2 FF
90
00 21
08 00
04
C0 FF
23 00
F4
08 00
04
C0 FF

46
E8 14 00
E2 F4

BCK:
BC0:

BCl:

;Display loop-up
04,97
;table
0D6,77
00,37
0E3,87
00,83
87,0E5

MNEMONICS
MOVW
MOVB
MOVW
OUTB
MOVB
OUTB
MOVB
MOVW
OUTB
LOOP
MOVW
MOVB
OUTB
MOVW
MOVB
OUTB
MOVW
MOVW
MOVB
MOVW
OUTB
XNCW
CALL
LOOP
MOVW
MOVB
MOVW
OUTB

CX,08
AL,00
DX,0FFC2
DX,AL
AL,90
DX,AL
AL,00
DX,0FFC0
DX,AL
RPT
DX,0FFC2
AL,10
DX,AL
DX,0FFC2
AL,90
DX,AL
SI,2100
CX,08
AL,[SI]
DX,0FFC0
DX,AL
SI
DLY
BC0
CX,08
AL,[SI]
DX,0FFC0
DX,AL

INCW
CALL
LOOP

SI
DLY
BC1

8279 / 8279-5 STUDY CARD USER MANUAL

COMMENTS
;Routine to clear
;all displays

;8 8-bit Character
;display Right
;entry, Encoded
;scan keyboard
;Write to 8279
;display RAM
;Routine to display
;ELECTRO'

;Provide some delay


;between characters
;Routine to display
;SYSTEMS.'

;Provide some delay


;between characters
29

0000:2041
0000:2044
0000:2046
0000:2049
0000:204A
0000:204B
0000:204E
0000:2050

B9
8A
BA
EE
46
E8
E2
E9

08 00
04
C0 FF

BC2:

05 00
F4
CD EF

0000:2053
0000:2054
0000:2057
0000:2059
0000:205A

51
B9 00 00
E2 FE
59
C3

0000:2100
0000:2100
0000:2104
0000:2108
0000:210C
0000:2110
0000:2114

97
87
D6
97
60
77

83
13
E6
73
73
00

97
F3
D6
DE
E5
04

DLY:

MOVW
MOVB
MOVW
OUTB
INCW
CALL
LOOP
JMP

CX,08
AL,[SI]
DX,0FFC0
DX,AL
SI
DLY
BC2
BCK

;Routine to display
;'INDIA

PUSH
MOVW
LOOP
POP
RET

CX
CX,0000
2057
CX

;Delay routine

;Provide some delay


;between characters
;Repeat infinitely

ORG 2100
;Display look-up
DB 97,83,97,93 ;table
DB 87,13,0F3,00
DB 0D6,0E6,0D6,87
DB 97,73,0DE,00
DB 60,73,0E5,60
DB 77,00,04,00

93
00
87
00
60
00

3.

Program to scan the Hex keypad and to display the code on the Seven Segment
display using Encode method
ADDRESS

OP-CODES

0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:
0000:

2000
2003
2006
2008
2009
200B
200C
20OF
2011
2014
2015
2017
201A
201D
201E
2020
2022
2024
2025
2028

BB
BA
B0
EE
B0
EE
B9
B0
BA
EE
E2
BE
BA
EC
24
74
B0
EE
BA
EC

0000:
0000:
0000:
0000:

2029
202B
202D
202F

24
8A
03
BA

LABELS

00 00
C2 FF
00
90
08 00
00
C0 FF
RPT:
FD
50 20
C2 FF

BCK:
KEY:

07
FB
40
C0 FF

1F
D8
F3
C2 FF

MNEMONICS
MOVW
MOVW
MOVB
OUTB
MOVB
OUTB
MOVW
MOVB
MOVW
OUTB
LOOP
MOVW
MOVW
INB
ANDB
JZ
MOVB
OUTB
MOVW
INB

BX,00
DX,0FFC2
AL,00
DX,AL
AL,90
DX,AL
CX,08
AL,00
DX,0FFC0
DX,AL
RPT
SI,2050
DX,0EFC2
AL,DX
AL,07
KEY
AI,40
DX,AL
DX,0FFC0
AL,DX

ANDB
MOVB
ADDW
MOVW

AL,1F
BL,AL
SI,BX
DX,0FFC2

8279 / 8279-5 STUDY CARD USER MANUAL

COMMENTS

;Routine to clear
;all display LEDs

;Read 8279 status


;to chock if any
;character is
;available
;Read FIFO RAM.
;Mask SIFT and
;CTRL keys
;Point to key
;value
;Address to
30

0000:
0000:
0000:
0000:
0000:

2032
2034
2035
2038
203A

B0 94
EE
BA C0 FF
B0 F3
EE

MOVB
OUTB
MOVW
MOVB
OUTB

AL,94
DX,AL
DX,0FFC0
AL,F3
DX,AL

; display 0

0000:
0000:
0000:
0000:
0000:
0000:
0000:

203B
203E
2040
2041
2044
2046
2047

BA
B0
EE
BA
8A
EE
E9

C2 FF
95

MOVW
MOVB
OUTB
MOVW
MOVB
OUTB
JMP

DX,0FFC2
AL,95
DX,AL
DX,0FFC0
AL,[SI]
DX,AL
BCK

;Address to
;display scanned
;value

0000:
0000:
0000:
0000:

2050
2054
2058
205C

F3
66
F7
93

60
D6
76
E5

C0 FF
04
CD FF
B5
D7
77
97

F4
70
C7
17

ORG
2050
;Scan key values
DB 0F3,60,0B5,0F4 ;look-up table
DB 66,0D6,0D7,70
DB 0F7,76,77,0C7
DB 93,0E5,97,17

6.0 DEMONSTRATION PROGRAMS FOR 8051 SERIES KITS.


6A. EXAMPLE PROGRAMES FOR ESA 31/51 TRAINER
1. PROGRAM TO DISPLAY " ESA " IN THE DISPLAY FEILD OF THE STUDY CARD
USING
ENCODE METHOD. EXECUTE PROGRAM FROM 8000H. PLACE JUMPER JP1 IN
TRAINER.
CMD
_PORT EQU
F181H
DATA _PORT EQU
F180H
8000
8000
8003
8005
8006
8008
800A
800D
800F
8010
8012
8013
8015
8017
801A
801B
801C
801F
8021
8024
8025
8026
8029
802A
802B

90
74
F0
7A
7B
90
74
F0
74
F0
78
74
90
F0
18
B8
79
90
E4
93
90
F0
09
90

F1 81
FF
90
00
F1 81
90
00
08
00
F1 80

START:

00 F6
00
90 00
START1:
F1 80
90 00

ORG 8000H
MOV DPTR,#F181
MOV A,#FF
MOVX @DPTR,A
MOV R2,#90
MOV R3,#00
MOV DPTR,#F181
MOV A,#90
MOVX @DPTR,A
MOV A,#00
MOVX @DPTR,A
MOV R0,#08
MOV A,#00
MOV DPTR,#F180
MOVX @DPTR,A
DEC R0
CJNE R0,#0,8015
MOV Rl,#00
MOV DPTR,#9000
CLR A
MOVC A,@A+DPTR
MOV DPTR,#F180
MOVX @DPTR,A
INC Rl
MOV DPTR,#9000

8279 / 8279-5 STUDY CARD USER MANUAL

;Divide CLK FREQ


;Initialize 8279
;Left entry,
;Encoded
;scan keyboard

;Reading Table

31

802E
802F
8032

E9
B9 06 F3
80 FE

9000
9000
9003
9006

04 97 D6
77 04 04
00

MOV A,R1
CJNE Rl,#06,8025
SJMP 8032
ORG 9000H
DB 04H,97H,D6H
DB 77H,04H,04H
DB 00H

TABLE:

;Display ESA

2. PROGRAM TO DISPLAY " ESA " IN THE DISPLAY FEILD OF THE STUDY CARD
USING DECODE METHOD.
CMD_PORT
DATA_PORT
8000
8000
8003
8005
8006
8008
800A
800D
800F
8010
8012
8013
8015
8017
801A
801B
801C
801F
8021
8024
8025
8026
8029
802A
8Q2B
802E
802F
8032

90
74
F0
7A
7B
90
74
F0
74
F0
78
74
90
F0
18
B8
79
90
E4
93
90
F0
09
90
E9
B9
80

9000
9000
9003
9006

04 97 D6
77 04 04
00

F1 81
FF
90
00
F1 81
90
11
08
00
F1 80

START:

00 F6
00
90 00
START1:
F1 80
90 00
04 F3
FE
TABLE:

EQU
EQU

F181H
F180H

ORG 8000H
MOV DPTR,#F181
MOV A,#FF
MOVX @DPTR,A
MOV R2,#90
MOV R3,#00
MOV DPTR,#F181
MOV A,#90
MOVX @DPTR,A
MOVA,#11H
MOVX @DPTR,A
MOV R0,#08
MOV A,#00
MOV DPTR,#F180
MOVX @DPTR,A
DEC R0
CJNE R0,#0,8015
MOV Rl,#00
MOV DPTR,#9000
CLR A
MOVC A,@A+DPTR
MOV DPTR,#F180
MOVX @DPTR,A
INC Rl
MOV DPTR,#9000
MOV A,R1
JNE Rl,#04,8025
SJMP 8032
ORG 9000H
DB 04H,97H,D6H
DB 77H,04H,04H
DB 00H

8279 / 8279-5 STUDY CARD USER MANUAL

;Divide CLK FREQ


;Initialize 8279
;Right entry,
;Decoded
;scan keyboard

;Reading Table

;display ESA

32

3. PROGRAM TO DISPLAY THE VALUE OF THE KEY PRESSED IN ENCODE METHOD.


CMD_PORT
DATA_ PORT
8000
8000
8003
8006
8008
8009
800B
800E
8010
8012
8014
8016
8017
8019
801A
801C
8Q1E
8021
8022
8023
8024
8027
802A
802B
802D
802F
8032
8034
8035
8037
8039
803B
803D
803E
803F
8041
8042
8044
8046
8048
8049
804B
804D
804F
8051
8053
8054
8056
8058

75
90
74
FO
74
90
7A
79
7C
7B
F0
74
F0
78
74
90
F0
18
E8
B4
90
E0
54
60
90
74
F0
C0
C0
8A
89
F0
E0
54
FD
D0
D0
74
F0
74
C0
C0
8A
89
F0
74
D0
D0

81 07
F1 81
FF
00
F1 81
F1
80
90
00
90
08
00
F1 80

00 F5
F1 81
07
F8
F1 81
40
83
82
83
82
1F
82
83
94
F3
83
82
83
82
95
82
83

CLEAR:

BACK:

EQU
EQU

F181H
FI80H

ORG 8000H
MOV SP,#07
MOV DPTR,#F181
MOV A,#FF
MOVX @DPTR,A
MOV A,#00
MOV DPTR,#F181
MOV R2,#F1
MOV Rl,#80
MOV R4,#90
MOV R3,#00
MOVX @DPTR,A
MOV A,#90
MOVX @DPTR,A
MOV R0,#08
MOV A,#00
MOV DPTR,#F180
MOVX @DPTR,A
DEC R0
MOV A,R0
CJNE A,#00,801C
MOV DPTR,#F181
MOVX A,@DPTR
ANL A,#07
JZ 8027
MOV DPTR,#F181
MOV A,#40
MOVX @DPTR,A
PUSH 83
PUSH 82
MOV 83,R2
MOV 82,Rl
MOVX @DPTR,A
MOVX A,@DPTR
ANL A,#1F
MOV R5,A
POP 82
POP 83
MOV A,#94
MOVX @DPTR,A
MOV A,#F3
PUSH 83
PUSH 82
MOV 83,R2
MOV 82,Rl
MOVX @DPTR,A
MOV A,#95
POP 82
POP 83

8279 / 8279-5 STUDY CARD USER MANUAL

;Divide CLK FREQ

;Initialize 8279

;Clear Display

;Push DPH
;Push DPL
;Mov R2 to DPH
;Mov Rl to DPL

;Pop DPL
;Pop DPH

;Push DPH
;Push DPL
;Mov R2 to DPH
;Mov Rl to DPL
;Pop DPL
;Pop DPH
33

805A
805B
805D
805F
8060
8061
8064
8065
8066

F0
8C
8D
E4
93
90
F0
0B
02

9000
9000
9003
9006
9009
900C
900F
9011
9014
9017

F3
F4
D7
76
93
17
76
E5
00

MOVX @DPTR,A
MOV 83,R4
MOV 82,R5
CLR A
MOVC A,@A+DPTR
MOV DPTR,#F180
MOVX @DPTR,A
INC R3
LJMP 8027

83
82
F1 80
80 27
60
66
70
77
E5
00
C7
97

B5
D6
F7
C7
97
93
17

DISP:

;Reading Table
;Mov R4 to DPH
;Mov R5 to DPL

ORG 9000H
DB F3H,60H,B5H
DB F4H,66H,D6H
DB D7H,70H,F7H
DB 76H,77H,C7H
DB 93H,E5H,97H
DB 17H,00H
DB 76H,C7H,93H
DB E5H,97H,17H
DB 00H

4.Example program for ESA 51E trainer to display the value of the key
pressed on the display field of the study card using encode method.
Execute program from 8000H.Place jumpers on the study card for encode
mode as given in the first page.
8000
8000
8003
8005
8006
8008
8009
800B
800C
800F
8010
8012
8013
8015
8017
801A
801B
801D
801F
8020
8021
8023
8024
8026
8027
8029
802A
802B
802D
802F

90
74
F0
74
F0
74
F0
90
E4
78
F0
D8
7A
90
E0
54
60
EA
F0
15
E0
54
F9
74
A3
F0
74
15
F0

F1 81
3C
00
90
F1 80
06
FD
30
F1 81
07
FB
82
1F
94
F3
82

ORG 8000H
MOV DPTR,#0F181H
MOV A,#03CH
MOVX @DPTR,A
MOV A,#00H
MOVX @DPTR,A
MOV A,#90H
MOVX @DPTR,A
MOV DPTR,#0F180H
CLR A
MOV R0,#06H
CLEAR:MOVX @DPTR,A
DJNZ R0,CLEAR
SET: MOV R2,#30H
MOV DPTR,#0F181H
SCN: MOVX A,@DPTR
ANL A,#07H
JZ SCN
MOV A,R2
MOVX @DPTR,A
DEC DPL
MOVX A,@DPTR
ANL A,#1FH
MOV R1,A
MOV A,#94H
INC DPTR
MOVX @DPTR,A
MOV A,#0F3H
DEC DPL
MOVX @DPTR,A

8279 / 8279-5 STUDY CARD USER MANUAL

;Clk Divide
;Key & Disp Mode set

;Clear Disp

;Check FIFO Status For Key


;Entry
;FIFO Ram Address

34

8030
8032
8033
8034
8037
8039
803A
803B
803E
803F
8040
8041
8042
8045

74
A3
F0
75
89
E4
93
90
F0
A3
0A
EA
B4
02

95

9000
9005
900A
900C
9011
9016

F3
D6
77
93
76
17

60
D7
C7
E5
C7
00

83 90
82
F1 80

38 D5
80 15
B5 F4 66
70 F7 76
97 17 00
93 E5 97

MOV A,#95H
INC DPTR
MOVX @DPTR,A
MOV DPH,#90H
MOV DPL,Rl
CLR A
MOVC A,@A+DPTR
MOV DPTR,#0F180H
MOVX @DPTR,A
INC DPTR
INC R2
MOV A,R2
CJNE A,#38H,SCN
LJMP SET
ORG 9000H
DB 0F3H,60H,B5H,F4H,66H
DB 0D6H,0D7H,70H,0F7H,76H
DB 77H,0C7H
DB 93H,97H,17H,00H
DB 76H,0C7H,93H,0E5H,97H,
DB 17H,00H

8279 / 8279-5 STUDY CARD USER MANUAL

35