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