view lib/alib/is_xdigit.as @ 3149:afd0f7d9b514

Add the Sleuth multipass disassembler from Bud Pass Added new directory "3rdparty/utiles/sleuth3" and source files to build "sleuth3" and its utilities. Also added "sleuth3" to the Directories section of "3rdparty/utils/makefile" to faciliate the inclusion of the sleuth3 build.
author Bill Pierce <merlinious999@gmail.com>
date Sat, 04 Feb 2017 18:55:39 +0100
parents 03f26e88b809
children
line wrap: on
line source

*****************************************

* See if character in "B" is a hexdigit 0..9, A..F or a..f

* OTHER MODULES NEEDED: IS_DIGIT

* ENTRY: B=character to test

* EXIT: CC zero=1 if hex digit, 0 if not

 nam Is Char a Hex Digit?
 ttl Assembler Library Module


 section .text


IS_XDIGIT:
 pshs b
 lbsr IS_DIGIT 
 beq exit digits are okay
 cmpb #'A 
 blo exit exit, zero not set
 cmpb #'f
 bhi exit zero not set
 cmpb #'a 
 bhs yes
 cmpb #'F
 bhi exit
 
yes
 orcc #%00000100 set zero

exit
 puls b,pc

 endsect