home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
CPM
/
LANGUAGS
/
PASCAL
/
MODEM380.IO
< prev
next >
Wrap
Text File
|
2000-06-30
|
2KB
|
61 lines
; Assembly language functions for MODEM3.PAS
; for Intel 8080 processor.
; Written by Jack M. Wierda Chicago Illinois
; This software is in the public domain.
;
; Routines: STAT, INPUT, OUTPUT
;
.FUNC STAT,3
;
POP HL ;GET RETURN ADDRESS
POP DE ;GET ZERO
POP BC ;GET ZERO
POP BC ;GET MASK
POP DE ;GET EXPECTED RESULT
LD D,C
POP BC ;GET PORT
LD A,C ;PUT PORT IN A
LD ($1+1),A ;STUFF PORT
$1 IN A,(0) ;PORT LOADED ABOVE
AND D ;AND DATA & MASK
CP E ;COMPARE WITH EXPECTED RESULTS
JP NZ,$2
LD DE,1 ;LOAD BOOLEAN TRUE
PUSH DE ;RETURN RESULT ON STACK
JP (HL)
$2 LD DE,0 ;LOAD BOOLEAN FALSE
PUSH DE ;RETURN RESULT ON STACK
JP (HL) ;RETURN
;
;
.FUNC INPUT,2
;
POP HL ;GET RETURN ADDRESS
POP DE ;GET ZERO
POP BC ;GET ZERO
POP DE ;GET MASK
POP BC ;GET INPUT PORT
LD A,C ;PUT PORT IN A
LD ($1+1),A ;STUFF PORT
$1 IN A,(0) ;PORT LOADED ABOVE
AND E ;MASK DATA
LD E,A
PUSH DE ;RETURN RESULT ON STACK
JP (HL) ;RETURN
;
;
.PROC OUTPUT,2
;
POP HL ;GET RETURN ADDRESS
POP DE ;GET DATA
POP BC ;GET OUTPUT PORT
LD A,C ;PUT PORT IN A
LD ($1+1),A ;STUFF PORT
LD A,E ;PUT DATA IN A
$1 OUT (0),A ;PORT LOADED ABOVE
JP (HL) ;RETURN
;
;
.END