]> git.sur5r.net Git - cc65/commitdiff
added missing cputhex8 and cputhex16 functions
authorizydorst <izydorst@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Fri, 20 Dec 2002 22:55:17 +0000 (22:55 +0000)
committerizydorst <izydorst@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Fri, 20 Dec 2002 22:55:17 +0000 (22:55 +0000)
git-svn-id: svn://svn.cc65.org/cc65/trunk@1804 b7a2c559-68d2-44c3-8de9-860c34a00d81

libsrc/geos/conio/Makefile
libsrc/geos/conio/cputhex.s [new file with mode: 0644]

index 9dc6ff3874cf7333cac542e787820a81e5372c1c..9d0f3b89608dd7cdbdb2beeab5d2bce763a1c17c 100644 (file)
@@ -8,7 +8,7 @@
 
 
 S_OBJS = cclear.o chline.o cvline.o cgetc.o clrscr.o color.o\
-       cputc.o cpputs.o cputs.o cursor.o gotoxy.o kbhit.o revers.o\
+       cputc.o cputhex.o cpputs.o cputs.o cursor.o gotoxy.o kbhit.o revers.o\
        screensize.o where.o _scrsize.o
 
 all: $(S_OBJS)
diff --git a/libsrc/geos/conio/cputhex.s b/libsrc/geos/conio/cputhex.s
new file mode 100644 (file)
index 0000000..1aaeed6
--- /dev/null
@@ -0,0 +1,39 @@
+;
+; Ullrich von Bassewitz, 08.08.1998
+;
+; void cputhex8 (unsigned char val);
+; void cputhex16 (unsigned val);
+;
+
+       .export         _cputhex8, _cputhex16
+       .import         _cputc
+       .import         __hextab
+
+
+_cputhex16:
+       pha                     ; Save low byte
+       txa                     ; Get high byte into A
+       jsr     _cputhex8       ; Output high byte
+       pla                     ; Restore low byte and run into _cputhex8
+
+_cputhex8:
+       pha                     ; Save the value
+       lsr     a
+       lsr     a
+       lsr     a
+       lsr     a
+       tay
+       lda     __hextab,y
+       jsr     _cputc
+       pla
+       and     #$0F
+       tay
+       lda     __hextab,y
+       jmp     _cputc
+
+
+
+
+
+
+