27 lines
765 B
ArmAsm
27 lines
765 B
ArmAsm
.segment "NGETIN"
|
|
;***************************************
|
|
;* getin -- get character from channel *
|
|
;* channel is determined by dfltn.*
|
|
;* if device is 0, keyboard queue is *
|
|
;* examined and a character removed if *
|
|
;* available. if queue is empty, z *
|
|
;* flag is returned set. devices 1-31 *
|
|
;* advance to basin. *
|
|
;***************************************
|
|
;
|
|
ngetin lda dfltn ;check device
|
|
bne gn10 ;not keyboard
|
|
;
|
|
lda ndx ;queue index
|
|
beq gn20 ;nobody there...exit
|
|
;
|
|
sei
|
|
jmp lp2 ;go remove a character
|
|
;
|
|
;gn10 cmp #2 ;is it rs-232
|
|
; bne bn10 ;no...use basin
|
|
gn10 jmp bn10
|
|
;
|
|
gn20 clc ;good return
|
|
rts
|