Wednesday, October 7, 2026

Displaying a moving / rolling message in the student trainer kit’s output device | 8085 Lab Program

 Section: Hardware Interfacing Experiments

Aim:
To design and display a moving/rolling message using the 8085 microprocessor trainer kit output display device.

Apparatus Required:
Microprocessor trainer kit, DC regulated power supply.

Algorithm:

  1. Start.
  2. Output command 00H to control port 80H to reset the 8279 keyboard/display controller.
  3. Output command 18H to control port 80H to set the display mode.
  4. Load the starting memory address of the message string into the HL register pair.
  5. Load register B with the message length count (05H).
  6. Read character data from memory into the accumulator and output it to display port 81H.
  7. Call the delay subroutine to hold the displayed character for a specific time interval.
  8. Increment the HL memory pointer and decrement the character counter register B.
  9. Loop back to output the next character until register B becomes zero.
  10. Jump back to the starting roll loop to continuously repeat message scrolling.

Program:

AddressLabelMnemonicsOperandComment
4100STARTMVIA, 00HLoad 8279 keyboard/display reset command
4102OUT80HSend reset command to 8279 control port
4104MVIA, 18HLoad display mode set command
4106OUT80HSend mode command to 8279 control port
4108ROLLLXIH, MSGLoad message starting memory address
410BMVIB, 05HLoad message character count into B register
410DNEXTMOVA, MRead character data byte into accumulator
410EOUT81HSend character code to 8279 display data port
4110CALLDELAYCall delay subroutine
4113INXHIncrement HL message pointer
4114DCRBDecrement character counter B
4115JNZNEXTLoop until all characters are displayed
4118JMPROLLRepeat message scrolling continuously
411BDELAYLXID, 0FFFFHInitialize DE pair with max delay count
411ED1DCXDDecrement DE pair
411FMOVA, DCopy D register to accumulator
4120ORAELogical OR with E register
4121JNZD1Loop until DE pair reaches zero
4124RETReturn from subroutine

Observation (Message Data):

  • 7-Segment Display Hex Codes for Message "HELLO":
    • MSG: 76H ('H'), 79H ('E'), 38H ('L'), 38H ('L'), 3FH ('O').

Result:

Thus, the design for displaying a moving/rolling message using the 8085 microprocessor kit is completed and the output is verified.

Flowchart:

               +-------------------+
               |       START       |
               +---------+---------+
                         |
                         v
               +-------------------+
               |  [A] <- 00H       |
               |  OUT to 80H       |  (Reset 8279)
               +---------+---------+
                         |
                         v
               +-------------------+
               |  [A] <- 18H       |
               |  OUT to 80H       |  (Set Display Mode)
               +---------+---------+
                         |
                         v <-------------------+
               +-------------------+           |
               |   [HL] <- MSG     |           |
               +---------+---------+           |
                         |                     |
                         v                     |
               +-------------------+           |
               |    [B] <- 05H     |           |
               +---------+---------+           |
                         |                     |
                         v <-------------+     |
               +-------------------+     |     |
               |    [A] <- [M]     |     |     |
               +---------+---------+     |     |
                         |               |     |
                         v               |     |
               +-------------------+     |     |
               |    OUT to 81H     |     |     |  (Display Character)
               +---------+---------+     |     |
                         |               |     |
                         v               |     |
               +-------------------+     |     |
               |    CALL DELAY     |     |     |
               +---------+---------+     |     |
                         |               |     |
                         v               |     |
               +-------------------+     |     |
               |  [HL] <- [HL] + 1 |     |     |
               +---------+---------+     |     |
                         |               |     |
                         v               |     |
               +-------------------+     |     |
               |   [B] <- [B] - 1  |     |     |
               +---------+---------+     |     |
                         |               |     |
                         v               |     |
                       /   \             |     |
                     /  Is   \           |     |
                   /  [B] = 0? \         |     |
                  <   Is Zero?  > -- NO -+     |
                   \           /               |
                     \       /                 |
                       \   /                   |
                        | YES                  |
                        v                      |
             +-------------------+             |
             |     JMP ROLL      | ------------+  (Repeat Scrolling)
             +-------------------+

Viva Questions:

  1. Which IC chip in the 8085 kit handles keyboard scanning and 7-segment display control?
  2. What is the function of the command bytes 00H and 18H sent to port address 80H?
  3. How is the letter 'H' represented in 7-segment display hex code (76H)?
  4. How can you modify the scrolling speed of the rolling message?
  5. What is the purpose of using port 81H in 8279 interfacing?


For all 2026 published articles list: click here: 

…till the next post, bye-bye & take care