FC18: Moved FC_DEC2701_PX0 to end of cake
This commit is contained in:
parent
e790e89dd7
commit
f93d447ba3
4 changed files with 45 additions and 23 deletions
|
|
@ -145,7 +145,8 @@ public enum FourCornerDotCake {
|
|||
// =========== Allow small terminators to take over 6 bit main frame computers
|
||||
|
||||
FC_CDC1604_P6(0, 64, FCDotCDC1604DashP6.values(), "Character Dough Cake"),
|
||||
FC_DEC2701_PX0(64, 27, FCDotDEC2701DashPX0.values(), "Direct or Escaped Control"),
|
||||
__FREE_DEC(64, 27),
|
||||
//FC_DEC2701_PX0(64, 27, FCDotDEC2701DashPX0.values(), "Direct or Escaped Control"),
|
||||
|
||||
FC_LUA0127_P7A(91, 27, FCDotLUA0127DashP7A.values(), "Local Union Alphabet P7A"),
|
||||
FC_LUA0127_P7B(118, 27, FCDotLUA0127DashP7B.values(), "Local Union Alphabet P7B"),
|
||||
|
|
@ -443,14 +444,10 @@ public enum FourCornerDotCake {
|
|||
/// Number signed 576 bit base 2 float
|
||||
FC_E503M72_BANK(0x03D8B8, 4096, "Number of 576 bit base 10 decimal octals"),
|
||||
|
||||
|
||||
|
||||
__RESERVED_FREE(0x03E8B8, 0x3F000 - 0x03E8B8),
|
||||
|
||||
__RESERVED_ESC(0x03F000, 4096),
|
||||
|
||||
// // 4096
|
||||
//FC_DEC2701_PX0
|
||||
__RESERVED_ESC(0x03F000, 4096 - 27),
|
||||
FC_DEC2701_PX0(0x03FFE5, 27, FCDotDEC2701DashPX0.values(), "Direct or Escaped Control"),
|
||||
;
|
||||
private static final FourCornerDotCake[] VALUES = values();
|
||||
private final int start;
|
||||
|
|
|
|||
|
|
@ -183,7 +183,7 @@ public enum FCDotDEC2701DashPX0 implements FourCornerX06BaklavaPointSequence, Fo
|
|||
|
||||
@Override
|
||||
public List<Integer> muffinPointSequence() {
|
||||
return cakePointSequence();
|
||||
return baklavaPointSequence();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -53,6 +53,7 @@ public class FourCornerZionStenoLexer {
|
|||
private final boolean handlerEscape;
|
||||
private final FourCornerZion7Candlelier handler;
|
||||
private final FourCornerZion7TempleScrolls handlerTempleScrolls;
|
||||
//private final short numberBank[] = new short[256]; // up to 9 bit values
|
||||
private final int numeratorBank[] = new int[48];
|
||||
private final int denominatorBank[] = new int[numeratorBank.length];
|
||||
private List<Integer> input;
|
||||
|
|
@ -77,9 +78,11 @@ public class FourCornerZionStenoLexer {
|
|||
continue; // can't handle reserved, we be reported as
|
||||
}
|
||||
if (FourCornerDotCake.FC_CDC1604_P6.equals(cakeSlice)) {
|
||||
CAKE_SLICE_EATERS.add(new StenoScannerCDCDEC(cakeSlice));
|
||||
continue; // handle CDC manually
|
||||
}
|
||||
if (FourCornerDotCake.FC_DEC2701_PX0.equals(cakeSlice)) {
|
||||
CAKE_SLICE_EATERS.add(new StenoScannerCDCDEC(cakeSlice));
|
||||
continue; // handle DEC manually
|
||||
}
|
||||
if (FourCornerDotCake.FC_XDBX0512_NS.equals(cakeSlice)) {
|
||||
|
|
@ -121,12 +124,12 @@ public class FourCornerZionStenoLexer {
|
|||
if (cakeSlice.name().startsWith("FC_BA") && cakeSlice.name().endsWith("_SEL0")) {
|
||||
continue; // done by bank slices below
|
||||
}
|
||||
if (cakeSlice.name().contains("BA2") && cakeSlice.name().contains("BANK")) {
|
||||
if (cakeSlice.name().startsWith("FC_BA2") && cakeSlice.name().endsWith("_BANK")) {
|
||||
FourCornerDotCake cakeSliceSel = FourCornerDotCake.valueOf(cakeSlice.ordinal() - 1);
|
||||
CAKE_SLICE_EATERS.add(new StenoScannerNumberBase2(cakeSliceSel, cakeSlice, fremanBase2Itr.next()));
|
||||
continue;
|
||||
}
|
||||
if (cakeSlice.name().contains("BA8") && cakeSlice.name().contains("BANK")) {
|
||||
if (cakeSlice.name().startsWith("FC_BA8") && cakeSlice.name().endsWith("_BANK")) {
|
||||
FourCornerDotCake cakeSliceSel = FourCornerDotCake.valueOf(cakeSlice.ordinal() - 1);
|
||||
CAKE_SLICE_EATERS.add(new StenoScannerNumberBase8(cakeSliceSel, cakeSlice, fremanBase8Itr.next()));
|
||||
continue;
|
||||
|
|
@ -137,7 +140,6 @@ public class FourCornerZionStenoLexer {
|
|||
}
|
||||
CAKE_SLICE_EATERS.add(new StenoScannerWordCakeSlice(cakeSlice));
|
||||
}
|
||||
CAKE_SLICE_EATERS.add(new StenoScannerCDCDEC());
|
||||
CAKE_SLICE_EATERS.add(new StenoScannerSandWorm());
|
||||
CAKE_SLICE_EATERS.add(new StenoScannerNumberNCR1632());
|
||||
CAKE_SLICE_EATERS.add(new StenoScannerNumberDEC576());
|
||||
|
|
@ -655,10 +657,14 @@ public class FourCornerZionStenoLexer {
|
|||
|
||||
static final class StenoScannerCDCDEC extends StenoScanner {
|
||||
|
||||
public StenoScannerCDCDEC() {
|
||||
super(FourCornerDotCake.FC_CDC1604_P6.getStart(), FourCornerDotCake.FC_DEC2701_PX0.getStop());
|
||||
public StenoScannerCDCDEC(FourCornerDotCake cakeSlice) {
|
||||
super(cakeSlice);
|
||||
}
|
||||
|
||||
//public StenoScannerCDCDEC() {
|
||||
// super(FourCornerDotCake.FC_CDC1604_P6.getStart(), FourCornerDotCake.FC_DEC2701_PX0.getStop());
|
||||
//}
|
||||
|
||||
@Override
|
||||
public void process(FourCornerZionStenoLexer lexer, int idxFirst, int idxLast) {
|
||||
lexer.decModeReset();
|
||||
|
|
|
|||
|
|
@ -73,12 +73,14 @@ public class FCDotPIE9Test {
|
|||
@Test
|
||||
public void testUnusedKuTen1And2() throws Exception {
|
||||
// see: https://www.msx.org/wiki/KuTen_-_JIS_-_SJIS_Code_Conversion_Tables
|
||||
String kuTenPage1 = "、。,.・:;?!゛゜´`¨" + "^ ̄_ヽヾゝゞ〃仝々〆〇ー―‐/"
|
||||
+ "\~∥|…‥‘’“”()〔〕[]" + "}〈〉《》「」『』【】+-±×"
|
||||
+ "÷=≠<>≦≧∞∴♂♀°′″℃¥" + "$¢£%#&*@§☆★○●◎◇";
|
||||
String kuTenPage2 = "◆□■△▲▽▼※〒→←↑↓〓" + "∈∋⊆⊇⊂⊃"
|
||||
+ "∪∩∧∨¬⇒⇔∀" + "∃∠⊥⌒∂"
|
||||
+ "∇≡≒≪≫√∽∝∵∫∬" + "ʼn♯♭♪†‡¶◯";
|
||||
String kuTenPage1 = ""+
|
||||
"、。,.・:;?!゛゜´`¨" + "^ ̄_ヽヾゝゞ〃仝々〆〇ー―‐/" +
|
||||
"\~∥|…‥‘’“”()〔〕[]" + "}〈〉《》「」『』【】+-±×" +
|
||||
"÷=≠<>≦≧∞∴♂♀°′″℃¥" + "$¢£%#&*@§☆★○●◎◇";
|
||||
String kuTenPage2 = ""+
|
||||
"◆□■△▲▽▼※〒→←↑↓〓" + "∈∋⊆⊇⊂⊃" +
|
||||
"∪∩∧∨¬⇒⇔∀" + "∃∠⊥⌒∂" +
|
||||
"∇≡≒≪≫√∽∝∵∫∬" + "ʼn♯♭♪†‡¶◯";
|
||||
String kuTen = (kuTenPage1 + kuTenPage2).replaceAll("\t", "").replaceAll(" ", "");
|
||||
int totalMissing = 0;
|
||||
PrimitiveIterator.OfInt charCheck = kuTen.codePoints().iterator();
|
||||
|
|
@ -95,10 +97,27 @@ public class FCDotPIE9Test {
|
|||
@Test
|
||||
public void testUnusedVGATempleOS() throws Exception {
|
||||
// see: https://github.com/rendello/templeos_font/blob/master/Convert/chars.txt
|
||||
String vgaTOSChars = " !\"#$%&'()*+,-./" + "0123456789:;<=>?" + "@ABCDEFGHIJKLMNO" + "PQRSTUVWXYZ[\\]^_" + "`abcdefghijklmno" + "pqrstuvwxyz{|}~ "
|
||||
+ "çüéâäàȧ êëèïîìÄȦ" + "ÉæÆôöòûùÿÖÜ¢£¥ 𝑓" + "áíóú ¿ ½¼¡«»" + "░▒▓│┤╡╢╖╕╣║╗╝╜╛┐" + "└┴┬├─┼╞╟╚╔╩╦╠═╬╧" + "╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀"
|
||||
+ "αβΓπΣσμτΦθΩδ∞ ε " + "≡±≤≥ ÷≈ √ⁿ² " + "ВГЁЖЗИЙЛПУФЧШЪЫЭ" + "ЮЯбвгёжзийклмнпт" + "чшъыьэюя „”№ " + " ⅠⅡ↑↓⭰⭲ "
|
||||
+ "ДЦЩдф щ ij🔔 " + " ⅓ ¾ §¶ ";
|
||||
String vgaTOSChars = ""+
|
||||
" !\"#$%&'()*+,-./"+
|
||||
"0123456789:;<=>?" +
|
||||
"@ABCDEFGHIJKLMNO" +
|
||||
"PQRSTUVWXYZ[\\]^_" +
|
||||
"`abcdefghijklmno" +
|
||||
"pqrstuvwxyz{|}~ " +
|
||||
"çüéâäàȧ êëèïîìÄȦ" +
|
||||
"ÉæÆôöòûùÿÖÜ¢£¥ 𝑓" +
|
||||
"áíóú ¿ ½¼¡«»" +
|
||||
"░▒▓│┤╡╢╖╕╣║╗╝╜╛┐" +
|
||||
"└┴┬├─┼╞╟╚╔╩╦╠═╬╧" +
|
||||
"╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀" +
|
||||
"αβΓπΣσμτΦθΩδ∞ ε " +
|
||||
"≡±≤≥ ÷≈ √ⁿ² " +
|
||||
"ВГЁЖЗИЙЛПУФЧШЪЫЭ" +
|
||||
"ЮЯбвгёжзийклмнпт" +
|
||||
"чшъыьэюя „”№ " +
|
||||
" ⅠⅡ↑↓⭰⭲ " +
|
||||
"ДЦЩдф щ ij🔔 " +
|
||||
" ⅓ ¾ §¶ ";
|
||||
int totalMissing = 0;
|
||||
PrimitiveIterator.OfInt charCheck = vgaTOSChars.codePoints().iterator();
|
||||
while (charCheck.hasNext()) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue