EE 315: Microprocessor Laboratory


ANSHUMAN KIT MODEL CLASSIK


 

MEMORY & I/O MAP

 

Memory addresses                                                   

Monitor: 0000-1FFF                                                   

                                    Scratch Pad:2000-3FFF(20C0 onwards for user)

User RAM: 6000-7FFF(Battery backup)                

Expansion RAM/EPROM: 4000-5FFF                                                                       

                                                                                   

                                                            Interrupt Vector Addresses :

RST2:    2045H      RST1:        2048H

RST3:    204BH     RST4:     204EH

RST4.5: 2051H      RST5.5:   2054H

RST6.5: 2057H      RST7:     205AH

RST7.5 : 205DH

Peripherals:

8255(Upper)

Port A : 00H    Port B: 01H

Port C : 02H    CR .: 03H

8255(Lower)

Port A :08H     Port B: 09H

Port C :0AH    CR : 0BH

8253:

Counter0 :18H, Counter1 :19H

Counter2 :1AH, CR :1BH

8279:

Data :10H, CR :11H

8251:

Data: 28H, CR : 29H

 

MONITOR UTILITIES

 

KEYBOARD

 

1.         READ79 (024BH):  Polls keyboard continuously till a key is found pressed.  Fetches code corresponding to pressed key and converts it into valid ASCII code ignoring all other invalid keys, O/P (A=ASCII code); affects A and F

2.         TEST79 (01F1H): Polls keyboard only once to check whether any key is pressed. O/P ( if key is pressed, carry flag =0, A=ASCII code of pressed key, if not pressed carry flag =1), affects A

3)     KEYIN (025AH) :Polls 8279 and returns hex scan code in ACC.

 

DISPLAY

 

1.         WR79 (015DH): Content of A-Reg is displayed treating it as ASCII code at the present cursor position which is set by memory location 208FH, (208FH)= 00 = leftmost display position. Content of 208FH is incremented by one to move towards right by 1 display position, I/P (A= ASCII code to be displayed, 208FH= position number).

2.         DISADT (032BH) : Given data and address are displayed with respect to present cursor position as

XXXX ( addr.) XX (data), I/P( A=8-Bit data, HL= address of memory location, (208FH) = 00= left most display position).

3.         MULTMSG (0530H) : Displays  number of messages (each of 4 characters only) successively, starting each on new line. If key other than CR key is pressed, it displays next message, if CR key is pressed, it returns with corresponding message number in A. I/P (HL = address of start of first message, A=no. of messages, O/P (A =message number), affects Accumulator. Each message should have 03h as ETX. End the program with RST 1(CF).

4.         NMOUT (036CH) : Displays a given No. in DE at present cursor position, I/P (DE= right hand justified number, B= no. of digits to be displayed, (208FH)= 00 = leftmost position or increment no. in 208FH to move towards right by 1 position).

5.         OUTMSG (03D8H) : Displays given message consisting group of ASCII codes until ETX (03) at present cursor position, I/P (HL = address of start of message in memory, (208FH) = 00=  leftmost display position).

6.         CRLF ( 048AH) : Clears the display. Curser [208FH] = 00

7.         DELAY (0615H) :    Introduces delay as per count in DE register. (Delay = [35 x DE + 93] x 0.56 microsec for 3.57 MHz  crystal),

8)    WRTENB(027B) : Remove write protect on battery backup RAM.

9)    WRTDSB(029D) : Add write protect on battery backup RAM.

10)  WRCARE(0268): Enable-write-disable; A=Data,DE = Address

 

 

 

 

 

KEY SYNTAX FOR ANSHUMAN KIT MODEL CLASSIK