Zenith Z-100 Reference Manual page 76

Hide thumbs Also See for Z-100:
Table of Contents

Advertisement

The following assembly language example sets put aside the top SK of unused
Z-100 PC monitor RAM as a 4K character keyboard buffer.
MONITOILSEGMENT SEGMENT AT (OFOOOH)
KEYMUFFDEGMENT EQU OCSH
KEY%OFF%TART
KEYBUFFEND
FR8&3EM
END~M
MONITOR SEGMENT ENDS
DATA SEGMENT SEGMENT AT (40H)
KEY~AD~
KEY TAILPTR
D ATA SEGM E NT END S
CODE SEGMENT PUBLIC
ASSUME CS: CODE, DS: DATA SEGMENT,
ORG
100H
BGKBF: MOV
AX,MONITOILSEGMENT
MOV
ES,AX
MOV
A X,DATA SEGM E N T
MOV
DS,AX
MOV
ES: KEYMUFFAEGMENT, MONITOILSEGMENT
MOV
D S: KEY~AD~ , ~
MOV
DS: KEY TAILPTR, FREEJEM
MOV
ES: KEY&OFF%TART, FRE~M
MOV
ES: KEYMUFFMND, END~M
RET
CODE ENDS
END BGKBF
E Q U OCAH
EQU OCCH
EQU 2000H
EQU 3FFFH
EQU 1AH
EQU 1CH
;2-100 PC mo nitor data segment
;Buffer se gm ent
;Start offset of buffer
;End offset of buffer
;Start of a vaila ble mem ory
;End of free m emo ry
;Compatible data segment
;Buffer head pointer
; Buffer tail pointer
ES: MONITOILSEGIIKNT
; Start of COM program
;Point to m o nitor segment
;Point to data segment
; Set b uf f e r seg me nt
;Set buffer head ptr
; Set bu ffer tail p tr
;Set start of b uff er
;Set end of buffer
;Done! - - exit.
Page 5.19
Keyboard

Advertisement

Table of Contents
loading

Table of Contents