From 08705a3fdc5050d284eb655e6efb2ab5664ca9a4 Mon Sep 17 00:00:00 2001
From: IrgendwerA8 <c.krueger.b@web.de>
Date: Sun, 2 Feb 2020 18:21:25 +0100
Subject: [PATCH 150/170] Changes resulting from 2nd code review
---
asminc/ctype.inc | 2 +-
asminc/ctype_common.inc | 2 +-
asminc/ctypetable.inc | 50 +-
libsrc/apple2/ctype.s | 5 -
libsrc/atari/ctype.s | 2 +-
libsrc/atmos/ctype.s | 2 +-
libsrc/cbm/ctype.s | 2 +-
.../common/ctype.s | 4 +-
libsrc/common/ctype_preprocessor.s | 2 +-
libsrc/common/isalnum.s | 2 +-
libsrc/common/isalpha.s | 2 +-
libsrc/common/isascii.s | 10 +-
libsrc/common/isblank.s | 4 +-
libsrc/common/iscntrl.s | 4 +-
libsrc/common/isdigit.s | 2 +-
libsrc/common/isgraph.s | 8 +-
libsrc/common/islower.s | 4 +-
libsrc/common/isprint.s | 4 +-
libsrc/common/ispunct.s | 4 +-
libsrc/common/isspace.s | 4 +-
libsrc/common/isupper.s | 4 +-
libsrc/common/isxdigit.s | 4 +-
libsrc/common/mul20.s | 2 +-
libsrc/common/mul40.s | 2 +-
libsrc/common/stricmp.s | 10 +-
libsrc/creativision/ctype.s | 5 -
libsrc/gamate/ctype.s | 5 -
libsrc/geos-common/system/ctype.s | 2 +-
libsrc/lynx/ctype.s | 5 -
libsrc/nes/ctype.s | 5 -
libsrc/pce/ctype.s | 5 -
test/val/lib_common_ctype.c | 634 +++++++++---------
32 files changed, 386 insertions(+), 416 deletions(-)
delete mode 100644 libsrc/apple2/ctype.s
rename asminc/ctype_console.inc => libsrc/common/ctype.s (99%)
delete mode 100644 libsrc/creativision/ctype.s
delete mode 100644 libsrc/gamate/ctype.s
delete mode 100644 libsrc/lynx/ctype.s
delete mode 100644 libsrc/nes/ctype.s
delete mode 100644 libsrc/pce/ctype.s
diff --git a/asminc/ctype.inc b/asminc/ctype.inc
index 29976078..18a290fb 100644
--- a/asminc/ctype.inc
+++ b/asminc/ctype.inc
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
diff --git a/asminc/ctype_common.inc b/asminc/ctype_common.inc
index ffd8dfe0..04aaa8f9 100644
--- a/asminc/ctype_common.inc
+++ b/asminc/ctype_common.inc
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
diff --git a/asminc/ctypetable.inc b/asminc/ctypetable.inc
index 7134d002..76c5b929 100644
--- a/asminc/ctypetable.inc
+++ b/asminc/ctypetable.inc
@@ -3,46 +3,46 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
; Data covering all possible combinations of character flags for target specific definition
;
-.include "ctype.inc"
-.export __ctype
+.include "ctype.inc"
+.export __ctype
; Table definition covering all possible ctype combinations
.rodata
__ctype:
-ct_none: .byte CT_NONE
-ct_lower: .byte CT_LOWER
-ct_upper: .byte CT_UPPER
-ct_digit_xdigit: .byte CT_DIGIT | CT_XDIGIT
-ct_lower_xdigit: .byte CT_LOWER | CT_XDIGIT
-ct_upper_xdigit: .byte CT_UPPER | CT_XDIGIT
-ct_ctrl: .byte CT_CTRL
-ct_ws: .byte CT_OTHER_WS
-ct_ctrl_ws: .byte CT_CTRL | CT_OTHER_WS
-ct_space_spacetab: .byte CT_SPACE | CT_SPACE_TAB
-ct_ctrl_ws_spacetab: .byte CT_CTRL | CT_OTHER_WS | CT_SPACE_TAB
+ct_none: .byte CT_NONE
+ct_lower: .byte CT_LOWER
+ct_upper: .byte CT_UPPER
+ct_digit_xdigit: .byte CT_DIGIT | CT_XDIGIT
+ct_lower_xdigit: .byte CT_LOWER | CT_XDIGIT
+ct_upper_xdigit: .byte CT_UPPER | CT_XDIGIT
+ct_ctrl: .byte CT_CTRL
+ct_ws: .byte CT_OTHER_WS
+ct_ctrl_ws: .byte CT_CTRL | CT_OTHER_WS
+ct_space_spacetab: .byte CT_SPACE | CT_SPACE_TAB
+ct_ctrl_ws_spacetab: .byte CT_CTRL | CT_OTHER_WS | CT_SPACE_TAB
; build indices out of the table above:
-CT_NONE_IDX = ct_none - __ctype
-CT_LOWER_IDX = ct_lower - __ctype
-CT_UPPER_IDX = ct_upper - __ctype
-CT_DIGIT_XDIGIT_IDX = ct_digit_xdigit - __ctype
-CT_LOWER_XDIGIT_IDX = ct_lower_xdigit - __ctype
-CT_UPPER_XDIGIT_IDX = ct_upper_xdigit - __ctype
-CT_CTRL_IDX = ct_ctrl - __ctype
-CT_WS_IDX = ct_ws - __ctype
-CT_CTRL_WS_IDX = ct_ctrl_ws - __ctype
-CT_SPACE_SPACETAB_IDX = ct_space_spacetab - __ctype
+CT_NONE_IDX = ct_none - __ctype
+CT_LOWER_IDX = ct_lower - __ctype
+CT_UPPER_IDX = ct_upper - __ctype
+CT_DIGIT_XDIGIT_IDX = ct_digit_xdigit - __ctype
+CT_LOWER_XDIGIT_IDX = ct_lower_xdigit - __ctype
+CT_UPPER_XDIGIT_IDX = ct_upper_xdigit - __ctype
+CT_CTRL_IDX = ct_ctrl - __ctype
+CT_WS_IDX = ct_ws - __ctype
+CT_CTRL_WS_IDX = ct_ctrl_ws - __ctype
+CT_SPACE_SPACETAB_IDX = ct_space_spacetab - __ctype
CT_CTRL_WS_SPACETAB_IDX = ct_ctrl_ws_spacetab - __ctype
.macro ct_mix lower, upper
- .byte ((lower) & $0F) | ((upper) << 4)
+ .byte ((lower) & $0F) | ((upper) << 4)
.endmacro
diff --git a/libsrc/apple2/ctype.s b/libsrc/apple2/ctype.s
deleted file mode 100644
index da4d3847..00000000
--- a/libsrc/apple2/ctype.s
+++ /dev/null
@@ -1,5 +0,0 @@
-; Character specification table.
-;
-; uses the "console" definition
-
- .include "ctype_console.inc"
diff --git a/libsrc/atari/ctype.s b/libsrc/atari/ctype.s
index 8173b2ea..7903dc2a 100644
--- a/libsrc/atari/ctype.s
+++ b/libsrc/atari/ctype.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
diff --git a/libsrc/atmos/ctype.s b/libsrc/atmos/ctype.s
index 3c3d7be5..7ca01b32 100644
--- a/libsrc/atmos/ctype.s
+++ b/libsrc/atmos/ctype.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
diff --git a/libsrc/cbm/ctype.s b/libsrc/cbm/ctype.s
index d0943b12..77a37431 100644
--- a/libsrc/cbm/ctype.s
+++ b/libsrc/cbm/ctype.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
diff --git a/asminc/ctype_console.inc b/libsrc/common/ctype.s
similarity index 99%
rename from asminc/ctype_console.inc
rename to libsrc/common/ctype.s
index 55db8e61..15f115e7 100644
--- a/asminc/ctype_console.inc
+++ b/libsrc/common/ctype.s
@@ -1,9 +1,9 @@
-; ctype_console.inc
+; ctype.s
;
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
diff --git a/libsrc/common/ctype_preprocessor.s b/libsrc/common/ctype_preprocessor.s
index 1f33bd22..efa001e6 100644
--- a/libsrc/common/ctype_preprocessor.s
+++ b/libsrc/common/ctype_preprocessor.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
diff --git a/libsrc/common/isalnum.s b/libsrc/common/isalnum.s
index 4f6a5e91..141949c0 100644
--- a/libsrc/common/isalnum.s
+++ b/libsrc/common/isalnum.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
diff --git a/libsrc/common/isalpha.s b/libsrc/common/isalpha.s
index a331722a..95e79916 100644
--- a/libsrc/common/isalpha.s
+++ b/libsrc/common/isalpha.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
diff --git a/libsrc/common/isascii.s b/libsrc/common/isascii.s
index c15cc586..70d2f72a 100644
--- a/libsrc/common/isascii.s
+++ b/libsrc/common/isascii.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
@@ -13,10 +13,10 @@
.export _isascii
_isascii:
- asl a ; high-bit to carry
- txa ; check range of input param
- bne @L1 ; out-of bounds?
- adc #$FF ; calculate return value based on carry
+ asl a ; high-bit to carry
+ txa ; check range of input param
+ bne @L1 ; out-of bounds?
+ adc #$FF ; calculate return value based on carry
rts
@L1: lda #$00 ; return false
diff --git a/libsrc/common/isblank.s b/libsrc/common/isblank.s
index 5e0eafd7..3d0a02f3 100644
--- a/libsrc/common/isblank.s
+++ b/libsrc/common/isblank.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
@@ -14,7 +14,7 @@
.export _isblank
.include "ctype.inc"
- .import ctype_preprocessor
+ .import ctype_preprocessor
_isblank:
jsr ctype_preprocessor ; (clears always x)
diff --git a/libsrc/common/iscntrl.s b/libsrc/common/iscntrl.s
index f4bf0285..f2b95042 100644
--- a/libsrc/common/iscntrl.s
+++ b/libsrc/common/iscntrl.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
@@ -12,7 +12,7 @@
.export _iscntrl
.include "ctype.inc"
- .import ctype_preprocessor
+ .import ctype_preprocessor
_iscntrl:
jsr ctype_preprocessor ; (clears always x)
diff --git a/libsrc/common/isdigit.s b/libsrc/common/isdigit.s
index c0e8bb02..36acd73b 100644
--- a/libsrc/common/isdigit.s
+++ b/libsrc/common/isdigit.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
diff --git a/libsrc/common/isgraph.s b/libsrc/common/isgraph.s
index 575b05a6..4e317db5 100644
--- a/libsrc/common/isgraph.s
+++ b/libsrc/common/isgraph.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
@@ -17,9 +17,9 @@
_isgraph:
jsr ctype_preprocessor ; (clears always x)
bcs @L1 ; out of range? (everything already clear -> false)
- and #CT_CTRL_SPACE ; mask character bits
- cmp #1 ; if false, then set "borrow" flag
+ and #CT_CTRL_SPACE ; mask character bits
+ cmp #1 ; if false, then set "borrow" flag
lda #0
- sbc #0 ; invert logic (return NOT control and NOT space)
+ sbc #0 ; invert logic (return NOT control and NOT space)
@L1: rts
diff --git a/libsrc/common/islower.s b/libsrc/common/islower.s
index 62ae4164..608d0ccf 100644
--- a/libsrc/common/islower.s
+++ b/libsrc/common/islower.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
@@ -12,7 +12,7 @@
.export _islower
.include "ctype.inc"
- .import ctype_preprocessor
+ .import ctype_preprocessor
_islower:
jsr ctype_preprocessor ; (clears always x)
diff --git a/libsrc/common/isprint.s b/libsrc/common/isprint.s
index cbe68c80..0d135f24 100644
--- a/libsrc/common/isprint.s
+++ b/libsrc/common/isprint.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
@@ -12,7 +12,7 @@
.export _isprint
.include "ctype.inc"
- .import ctype_preprocessor
+ .import ctype_preprocessor
_isprint:
jsr ctype_preprocessor ; (clears always x)
diff --git a/libsrc/common/ispunct.s b/libsrc/common/ispunct.s
index ad48fc53..a532399f 100644
--- a/libsrc/common/ispunct.s
+++ b/libsrc/common/ispunct.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
@@ -12,7 +12,7 @@
.export _ispunct
.include "ctype.inc"
- .import ctype_preprocessor
+ .import ctype_preprocessor
_ispunct:
jsr ctype_preprocessor ; (clears always x)
diff --git a/libsrc/common/isspace.s b/libsrc/common/isspace.s
index 272acac0..1f70786c 100644
--- a/libsrc/common/isspace.s
+++ b/libsrc/common/isspace.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
@@ -12,7 +12,7 @@
.export _isspace
.include "ctype.inc"
- .import ctype_preprocessor
+ .import ctype_preprocessor
_isspace:
jsr ctype_preprocessor ; (clears always x)
diff --git a/libsrc/common/isupper.s b/libsrc/common/isupper.s
index 2d89459a..0dd2a6ea 100644
--- a/libsrc/common/isupper.s
+++ b/libsrc/common/isupper.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
@@ -12,7 +12,7 @@
.export _isupper
.include "ctype.inc"
- .import ctype_preprocessor
+ .import ctype_preprocessor
_isupper:
jsr ctype_preprocessor ; (clears always x)
diff --git a/libsrc/common/isxdigit.s b/libsrc/common/isxdigit.s
index 07fef5c2..3f36ede0 100644
--- a/libsrc/common/isxdigit.s
+++ b/libsrc/common/isxdigit.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
@@ -12,7 +12,7 @@
.export _isxdigit
.include "ctype.inc"
- .import ctype_preprocessor
+ .import ctype_preprocessor
_isxdigit:
jsr ctype_preprocessor ; (clears always x)
diff --git a/libsrc/common/mul20.s b/libsrc/common/mul20.s
index 4035b947..5b3bbf83 100644
--- a/libsrc/common/mul20.s
+++ b/libsrc/common/mul20.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
diff --git a/libsrc/common/mul40.s b/libsrc/common/mul40.s
index f240fc41..07d6164b 100644
--- a/libsrc/common/mul40.s
+++ b/libsrc/common/mul40.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
diff --git a/libsrc/common/stricmp.s b/libsrc/common/stricmp.s
index e1683d9f..3a03258b 100644
--- a/libsrc/common/stricmp.s
+++ b/libsrc/common/stricmp.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
@@ -27,7 +27,7 @@ _strcasecmp:
loop: lda (ptr2),y ; get char from second string
sta tmp2 ; and save it
; get character classification
- jsr ctype_preprocessor_no_check
+ jsr ctype_preprocessor_no_check
and #CT_LOWER ; lower case char?
beq L1 ; jump if no
lda #<('A'-'a') ; make upper case char
@@ -37,13 +37,13 @@ loop: lda (ptr2),y ; get char from second string
L1: lda (ptr1),y ; get character from first string
sta tmp1
; get character classification
- jsr ctype_preprocessor_no_check
+ jsr ctype_preprocessor_no_check
and #CT_LOWER ; lower case char?
beq L2 ; jump if no
lda #<('A'-'a') ; make upper case char
adc tmp1 ; ctype_preprocessor_no_check ensures carry clear!
- sta tmp1 ; remember upper case equivalent
-
+ sta tmp1 ; remember upper case equivalent
+
L2: ldx tmp1
cpx tmp2 ; compare characters
bne L3
diff --git a/libsrc/creativision/ctype.s b/libsrc/creativision/ctype.s
deleted file mode 100644
index da4d3847..00000000
--- a/libsrc/creativision/ctype.s
+++ /dev/null
@@ -1,5 +0,0 @@
-; Character specification table.
-;
-; uses the "console" definition
-
- .include "ctype_console.inc"
diff --git a/libsrc/gamate/ctype.s b/libsrc/gamate/ctype.s
deleted file mode 100644
index da4d3847..00000000
--- a/libsrc/gamate/ctype.s
+++ /dev/null
@@ -1,5 +0,0 @@
-; Character specification table.
-;
-; uses the "console" definition
-
- .include "ctype_console.inc"
diff --git a/libsrc/geos-common/system/ctype.s b/libsrc/geos-common/system/ctype.s
index a50ad163..013a1ba9 100644
--- a/libsrc/geos-common/system/ctype.s
+++ b/libsrc/geos-common/system/ctype.s
@@ -3,7 +3,7 @@
; This file is part of
; cc65 - a freeware C compiler for 6502 based systems
;
-; https://github.com/cc65/cc65
+; https://cc65.github.io
;
; See "LICENSE" file for legal information.
;
diff --git a/libsrc/lynx/ctype.s b/libsrc/lynx/ctype.s
deleted file mode 100644
index da4d3847..00000000
--- a/libsrc/lynx/ctype.s
+++ /dev/null
@@ -1,5 +0,0 @@
-; Character specification table.
-;
-; uses the "console" definition
-
- .include "ctype_console.inc"
diff --git a/libsrc/nes/ctype.s b/libsrc/nes/ctype.s
deleted file mode 100644
index da4d3847..00000000
--- a/libsrc/nes/ctype.s
+++ /dev/null
@@ -1,5 +0,0 @@
-; Character specification table.
-;
-; uses the "console" definition
-
- .include "ctype_console.inc"
diff --git a/libsrc/pce/ctype.s b/libsrc/pce/ctype.s
deleted file mode 100644
index da4d3847..00000000
--- a/libsrc/pce/ctype.s
+++ /dev/null
@@ -1,5 +0,0 @@
-; Character specification table.
-;
-; uses the "console" definition
-
- .include "ctype_console.inc"
diff --git a/test/val/lib_common_ctype.c b/test/val/lib_common_ctype.c
index 15980aff..39c92953 100644
--- a/test/val/lib_common_ctype.c
+++ b/test/val/lib_common_ctype.c
@@ -3,7 +3,7 @@
// This file is part of
// cc65 - a freeware C compiler for 6502 based systems
//
-// https://github.com/cc65/cc65
+// https://cc65.github.io
//
// See "LICENSE" file for legal information.
//
@@ -18,19 +18,19 @@
typedef struct
{
- bool isalnum;
- bool isalpha;
- bool isascii;
- bool iscntrl;
- bool isdigit;
- bool isgraph;
- bool islower;
- bool isprint;
- bool ispunct;
- bool isspace;
- bool isupper;
- bool isxdigit;
- bool isblank;
+ bool isalnum;
+ bool isalpha;
+ bool isascii;
+ bool iscntrl;
+ bool isdigit;
+ bool isgraph;
+ bool islower;
+ bool isprint;
+ bool ispunct;
+ bool isspace;
+ bool isupper;
+ bool isxdigit;
+ bool isblank;
} CTypeClassifications;
@@ -39,330 +39,330 @@ CTypeClassifications testSet[NUMTESTS] =
{
//alnum, alpha, ascii, cntrl, digit, graph, lower, print, punct, space, upper, xdigit,blank
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 00
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 01
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 02
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 03
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 04
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 05
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 06
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 07
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 08
- {false, false, true, true, false, false, false, false, false, true, false, false, true }, // 09
- {false, false, true, true, false, false, false, false, false, true, false, false, false}, // 0A
- {false, false, true, true, false, false, false, false, false, true, false, false, false}, // 0B
- {false, false, true, true, false, false, false, false, false, true, false, false, false}, // 0C
- {false, false, true, true, false, false, false, false, false, true, false, false, false}, // 0D
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 0E
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 0F
-
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 10
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 11
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 12
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 13
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 14
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 15
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 16
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 17
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 18
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 19
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 1A
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 1B
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 1C
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 1D
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 1E
- {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 1F
-
- {false, false, true, false, false, false, false, true, false, true, false, false, true }, // 20
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 21
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 22
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 23
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 24
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 25
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 26
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 27
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 28
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 29
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 2A
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 2B
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 2C
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 2D
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 2E
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 2F
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 00
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 01
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 02
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 03
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 04
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 05
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 06
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 07
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 08
+ {false, false, true, true, false, false, false, false, false, true, false, false, true }, // 09
+ {false, false, true, true, false, false, false, false, false, true, false, false, false}, // 0A
+ {false, false, true, true, false, false, false, false, false, true, false, false, false}, // 0B
+ {false, false, true, true, false, false, false, false, false, true, false, false, false}, // 0C
+ {false, false, true, true, false, false, false, false, false, true, false, false, false}, // 0D
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 0E
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 0F
+
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 10
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 11
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 12
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 13
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 14
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 15
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 16
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 17
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 18
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 19
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 1A
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 1B
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 1C
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 1D
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 1E
+ {false, false, true, true, false, false, false, false, false, false, false, false, false}, // 1F
+
+ {false, false, true, false, false, false, false, true, false, true, false, false, true }, // 20
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 21
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 22
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 23
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 24
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 25
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 26
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 27
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 28
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 29
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 2A
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 2B
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 2C
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 2D
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 2E
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 2F
- {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 30
- {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 31
- {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 32
- {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 33
- {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 34
- {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 35
- {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 36
- {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 37
- {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 38
- {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 39
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 3A
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 3B
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 3C
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 3D
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 3E
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 3F
-
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 40
- {true, true, true, false, false, true, false, true, false, false, true, true, false}, // 41
- {true, true, true, false, false, true, false, true, false, false, true, true, false}, // 42
- {true, true, true, false, false, true, false, true, false, false, true, true, false}, // 43
- {true, true, true, false, false, true, false, true, false, false, true, true, false}, // 44
- {true, true, true, false, false, true, false, true, false, false, true, true, false}, // 45
- {true, true, true, false, false, true, false, true, false, false, true, true, false}, // 46
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 47
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 48
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 49
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 4A
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 4B
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 4C
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 4D
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 4E
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 4F
+ {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 30
+ {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 31
+ {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 32
+ {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 33
+ {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 34
+ {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 35
+ {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 36
+ {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 37
+ {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 38
+ {true, false, true, false, true, true, false, true, false, false, false, true, false}, // 39
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 3A
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 3B
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 3C
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 3D
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 3E
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 3F
+
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 40
+ {true, true, true, false, false, true, false, true, false, false, true, true, false}, // 41
+ {true, true, true, false, false, true, false, true, false, false, true, true, false}, // 42
+ {true, true, true, false, false, true, false, true, false, false, true, true, false}, // 43
+ {true, true, true, false, false, true, false, true, false, false, true, true, false}, // 44
+ {true, true, true, false, false, true, false, true, false, false, true, true, false}, // 45
+ {true, true, true, false, false, true, false, true, false, false, true, true, false}, // 46
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 47
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 48
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 49
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 4A
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 4B
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 4C
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 4D
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 4E
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 4F
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 50
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 51
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 52
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 53
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 54
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 55
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 56
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 57
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 58
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 59
- {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 5A
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 5B
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 5C
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 5D
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 5E
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 5F
-
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 60
- {true, true, true, false, false, true, true, true, false, false, false, true, false}, // 61
- {true, true, true, false, false, true, true, true, false, false, false, true, false}, // 62
- {true, true, true, false, false, true, true, true, false, false, false, true, false}, // 63
- {true, true, true, false, false, true, true, true, false, false, false, true, false}, // 64
- {true, true, true, false, false, true, true, true, false, false, false, true, false}, // 65
- {true, true, true, false, false, true, true, true, false, false, false, true, false}, // 66
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 67
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 68
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 69
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 6A
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 6B
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 6C
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 6D
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 6E
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 6F
-
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 70
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 71
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 72
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 73
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 74
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 75
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 76
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 77
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 78
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 79
- {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 7A
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 7B
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 7C
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 7D
- {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 7E
- {false, false, true, false, false, true, false, true, true, true, false, false, false}, // 7F
-
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 80
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 81
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 82
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 83
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 84
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 85
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 86
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 87
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 88
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 89
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 8A
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 8B
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 8C
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 8D
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 8E
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 8F
-
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 90
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 91
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 92
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 93
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 94
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 95
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 96
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 97
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 98
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 99
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 9A
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 9B
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 9C
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 9D
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 9E
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 9F
-
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A0
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A1
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A2
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A3
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A4
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A5
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A6
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A7
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A8
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A9
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // AA
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // AB
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // AC
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // AD
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // AE
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // AF
-
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B0
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B1
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B2
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B3
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B4
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B5
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B6
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B7
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B8
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B9
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // BA
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // BB
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // BC
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // BD
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // BE
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // BF
-
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C0
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C1
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C2
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C3
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C4
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C5
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C6
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C7
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C8
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C9
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // CA
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // CB
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // CC
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // CD
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // CE
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // CF
-
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D0
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D1
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D2
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D3
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D4
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D5
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D6
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D7
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D8
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D9
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // DA
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // DB
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // DC
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // DD
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // DE
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // DF
-
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E0
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E1
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E2
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E3
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E4
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E5
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E6
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E7
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E8
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E9
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // EA
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // EB
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // EC
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // ED
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // EE
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // EF
-
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F0
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F1
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F2
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F3
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F4
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F5
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F6
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F7
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F8
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F9
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // FA
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // FB
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // FC
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // FD
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // FE
- {false, false, false, false, false, true, false, true, true, false, false, false, false}, // FF
-
- // out of range test
- {false, false, false, false, false, false, false, false, false, false, false, false, false} // 100
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 50
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 51
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 52
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 53
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 54
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 55
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 56
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 57
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 58
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 59
+ {true, true, true, false, false, true, false, true, false, false, true, false, false}, // 5A
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 5B
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 5C
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 5D
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 5E
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 5F
+
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 60
+ {true, true, true, false, false, true, true, true, false, false, false, true, false}, // 61
+ {true, true, true, false, false, true, true, true, false, false, false, true, false}, // 62
+ {true, true, true, false, false, true, true, true, false, false, false, true, false}, // 63
+ {true, true, true, false, false, true, true, true, false, false, false, true, false}, // 64
+ {true, true, true, false, false, true, true, true, false, false, false, true, false}, // 65
+ {true, true, true, false, false, true, true, true, false, false, false, true, false}, // 66
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 67
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 68
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 69
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 6A
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 6B
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 6C
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 6D
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 6E
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 6F
+
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 70
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 71
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 72
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 73
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 74
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 75
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 76
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 77
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 78
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 79
+ {true, true, true, false, false, true, true, true, false, false, false, false, false}, // 7A
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 7B
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 7C
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 7D
+ {false, false, true, false, false, true, false, true, true, false, false, false, false}, // 7E
+ {false, false, true, false, false, true, false, true, true, true, false, false, false}, // 7F
+
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 80
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 81
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 82
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 83
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 84
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 85
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 86
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 87
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 88
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 89
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 8A
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 8B
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 8C
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 8D
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 8E
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 8F
+
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 90
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 91
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 92
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 93
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 94
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 95
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 96
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 97
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 98
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 99
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 9A
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 9B
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 9C
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 9D
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 9E
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // 9F
+
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A0
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A1
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A2
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A3
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A4
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A5
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A6
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A7
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A8
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // A9
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // AA
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // AB
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // AC
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // AD
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // AE
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // AF
+
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B0
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B1
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B2
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B3
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B4
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B5
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B6
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B7
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B8
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // B9
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // BA
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // BB
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // BC
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // BD
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // BE
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // BF
+
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C0
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C1
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C2
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C3
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C4
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C5
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C6
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C7
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C8
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // C9
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // CA
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // CB
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // CC
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // CD
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // CE
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // CF
+
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D0
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D1
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D2
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D3
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D4
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D5
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D6
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D7
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D8
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // D9
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // DA
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // DB
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // DC
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // DD
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // DE
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // DF
+
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E0
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E1
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E2
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E3
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E4
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E5
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E6
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E7
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E8
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // E9
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // EA
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // EB
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // EC
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // ED
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // EE
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // EF
+
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F0
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F1
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F2
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F3
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F4
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F5
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F6
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F7
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F8
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // F9
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // FA
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // FB
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // FC
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // FD
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // FE
+ {false, false, false, false, false, true, false, true, true, false, false, false, false}, // FF
+
+ // out of range test
+ {false, false, false, false, false, false, false, false, false, false, false, false, false} // 100
};
TEST
{
- int i = 0;
+ int i = 0;
- while (i<NUMTESTS)
- {
- // isalnum()
- ASSERT_AreEqual(testSet[i].isalnum, (isalnum(i) ? true : false), "%d", "Invalid 'isalnum(%d)' classification!" COMMA i);
+ while (i<NUMTESTS)
+ {
+ // isalnum()
+ ASSERT_AreEqual(testSet[i].isalnum, (isalnum(i) ? true : false), "%d", "Invalid 'isalnum(%d)' classification!" COMMA i);
- // isalpha()
- ASSERT_AreEqual(testSet[i].isalpha, (isalpha(i) ? true : false), "%d", "Invalid 'isalpha(%d)' classification!" COMMA i);
+ // isalpha()
+ ASSERT_AreEqual(testSet[i].isalpha, (isalpha(i) ? true : false), "%d", "Invalid 'isalpha(%d)' classification!" COMMA i);
- // isascii()
- ASSERT_AreEqual(testSet[i].isascii, (isascii(i) ? true : false), "%d", "Invalid 'isascii(%d)' classification!" COMMA i);
+ // isascii()
+ ASSERT_AreEqual(testSet[i].isascii, (isascii(i) ? true : false), "%d", "Invalid 'isascii(%d)' classification!" COMMA i);
- // iscntrl()
- ASSERT_AreEqual(testSet[i].iscntrl, (iscntrl(i) ? true : false), "%d", "Invalid 'iscntrl(%d)' classification!" COMMA i);
+ // iscntrl()
+ ASSERT_AreEqual(testSet[i].iscntrl, (iscntrl(i) ? true : false), "%d", "Invalid 'iscntrl(%d)' classification!" COMMA i);
- // isdigit()
- ASSERT_AreEqual(testSet[i].isdigit, (isdigit(i) ? true : false), "%d", "Invalid 'isdigit(%d)' classification!" COMMA i);
+ // isdigit()
+ ASSERT_AreEqual(testSet[i].isdigit, (isdigit(i) ? true : false), "%d", "Invalid 'isdigit(%d)' classification!" COMMA i);
- // isgraph()
- ASSERT_AreEqual(testSet[i].isgraph, (isgraph(i) ? true : false), "%d", "Invalid 'isgraph(%d)' classification!" COMMA i);
+ // isgraph()
+ ASSERT_AreEqual(testSet[i].isgraph, (isgraph(i) ? true : false), "%d", "Invalid 'isgraph(%d)' classification!" COMMA i);
- // islower()
- ASSERT_AreEqual(testSet[i].islower, (islower(i) ? true : false), "%d", "Invalid 'islower(%d)' classification!" COMMA i);
+ // islower()
+ ASSERT_AreEqual(testSet[i].islower, (islower(i) ? true : false), "%d", "Invalid 'islower(%d)' classification!" COMMA i);
- // isprint()
- ASSERT_AreEqual(testSet[i].isprint, (isprint(i) ? true : false), "%d", "Invalid 'isprint(%d)' classification!" COMMA i);
+ // isprint()
+ ASSERT_AreEqual(testSet[i].isprint, (isprint(i) ? true : false), "%d", "Invalid 'isprint(%d)' classification!" COMMA i);
- // ispunct()
- ASSERT_AreEqual(testSet[i].ispunct, (ispunct(i) ? true : false), "%d", "Invalid 'ispunct(%d)' classification!" COMMA i);
+ // ispunct()
+ ASSERT_AreEqual(testSet[i].ispunct, (ispunct(i) ? true : false), "%d", "Invalid 'ispunct(%d)' classification!" COMMA i);
- // isspace()
- ASSERT_AreEqual(testSet[i].isspace, (isspace(i) ? true : false), "%d", "Invalid 'isspace(%d)' classification!" COMMA i);
+ // isspace()
+ ASSERT_AreEqual(testSet[i].isspace, (isspace(i) ? true : false), "%d", "Invalid 'isspace(%d)' classification!" COMMA i);
- // isupper()
- ASSERT_AreEqual(testSet[i].isupper, (isupper(i) ? true : false), "%d", "Invalid 'isupper(%d)' classification!" COMMA i);
+ // isupper()
+ ASSERT_AreEqual(testSet[i].isupper, (isupper(i) ? true : false), "%d", "Invalid 'isupper(%d)' classification!" COMMA i);
- // isxdigit()
- ASSERT_AreEqual(testSet[i].isxdigit, (isxdigit(i) ? true : false), "%d", "Invalid 'isxdigit(%d)' classification!" COMMA i);
+ // isxdigit()
+ ASSERT_AreEqual(testSet[i].isxdigit, (isxdigit(i) ? true : false), "%d", "Invalid 'isxdigit(%d)' classification!" COMMA i);
#if __CC65_STD__ >= __CC65_STD_C99__
- // isblank()
- ASSERT_AreEqual(testSet[i].isblank, (isblank(i) ? true : false), "%d", "Invalid 'isblank(%d)' classification!" COMMA i);
+ // isblank()
+ ASSERT_AreEqual(testSet[i].isblank, (isblank(i) ? true : false), "%d", "Invalid 'isblank(%d)' classification!" COMMA i);
#endif
- ++i;
- }
+ ++i;
+ }
}
ENDTEST
--
2.26.0