From 3b06aaaf856688c0b346bcb2ee1ed2f032e478e1 Mon Sep 17 00:00:00 2001 From: uz Date: Mon, 2 Nov 2009 16:23:32 +0000 Subject: [PATCH] Added the new toascii function for the CBMs. git-svn-id: svn://svn.cc65.org/cc65/trunk@4425 b7a2c559-68d2-44c3-8de9-860c34a00d81 --- libsrc/cbm/Makefile | 1 + libsrc/cbm/toascii.s | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 libsrc/cbm/toascii.s diff --git a/libsrc/cbm/Makefile b/libsrc/cbm/Makefile index 4fd88a2a9..3daa254af 100644 --- a/libsrc/cbm/Makefile +++ b/libsrc/cbm/Makefile @@ -79,6 +79,7 @@ S_OBJS = c_acptr.o \ scratch.o \ sysremove.o \ sysrename.o \ + toascii.o \ wherex.o \ wherey.o \ write.o diff --git a/libsrc/cbm/toascii.s b/libsrc/cbm/toascii.s new file mode 100644 index 000000000..bea7ca880 --- /dev/null +++ b/libsrc/cbm/toascii.s @@ -0,0 +1,38 @@ +; +; Ullrich von Bassewitz, 2009-11-02 +; +; unsigned char __fastcall__ toascii (unsigned char c); +; /* Convert a target specific character to ascii */ +; + + .export _toascii + + .macpack generic + +.proc _toascii + +; Check for code between 65 and 90 + + cmp #$41 + blt @L1 + cmp #$5B + bge @L1 + +; Code between 65 and 90 + + ora #$20 + rts + +; Check for code between 193 and 219 + +@L1: cmp #$C1 + blt @L9 + cmp #$DC + bge @L9 + +; Code between 193 and 219 + + and #$7F +@L9: rts + +.endproc -- 2.39.5