public
/
Ack-5.5.git
/ blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
history
|
raw
|
HEAD
Pristine Ack-5.5
[Ack-5.5.git]
/
mach
/
z80
/
libmon
/
char.nas.s
1
.define putchar,getchar
2
.sect .text
3
.sect .rom
4
.sect .data
5
.sect .bss
6
.sect .text
7
! output routine in monitor for the nascom
8
CRT = 0x013B
9
! output a charcter
10
! entry: ascii character in a
11
.sect .text
12
putchar:
13
push hl
14
push bc
15
ld hl,tab
16
ld b,5
17
1: cp (hl)
18
jr z,fetch
19
inc hl
20
inc hl
21
djnz 1b
22
2: call CRT
23
pop bc
24
pop hl
25
ret
26
fetch: inc hl
27
ld a,(hl)
28
jr 2b
29
! conversion table for nascom characters
30
tab: .data1 0x0D,0x00
31
.data1 0x1B,0x1E
32
.data1 0x08,0x1D
33
.data1 0x0A,0x1F
34
.data1 0x7F,0x00
35
36
KBD = 0x69
37
get character from keyboard
38
getchar:
39
call KBD
40
jr nc,getchar
41
cp 0x1F
42
jr z,CR
43
cp 0x1D
44
jr z,BS
45
ret
46
CR: ld a,0xA
47
ret
48
BS: ld a,0x8
49
ret