summaryrefslogtreecommitdiff
path: root/frontends/calculator/CEdev/lib/shared/isdigit.src
blob: 85179673de2da625de096a114656452d9e64f9de (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
	.def	_isdigit
	.ref	___maptab
	.assume adl=1

;int isdigit(int c) {
;	if( (unsigned char)c & (unsigned char)0x80 )
;		return (0);
;	return(__maptab[c] & (unsigned char)(DIG));
;}

_isdigit:
	pop	hl
	pop	de
	push	de
	push	hl
	or	a,a
	sbc	hl,hl
	bit	7,e
	ret	nz
	ex	de,hl
	ld	de,___maptab
	add	hl,de
	ld	a,(hl)
	and	a,1
	sbc	hl,hl
	ld	l,a
	ret