WIP rework of ESC sequences into ~V4

This commit is contained in:
Willem Cazander 2025-01-22 23:38:22 +01:00
parent 39c388f145
commit de8469f6f9
94 changed files with 1539 additions and 911 deletions

View file

@ -33,6 +33,7 @@ import org.x4o.fc18.cake2.FourCornerX00PetitVide;
import org.x4o.fc18.cake2.FourCornerX06BaklavaPointSequence; import org.x4o.fc18.cake2.FourCornerX06BaklavaPointSequence;
import org.x4o.fc18.cake2.FourCornerX08MuffinPointSequence; import org.x4o.fc18.cake2.FourCornerX08MuffinPointSequence;
import org.x4o.fc18.cake2.FourCornerX18CakePointSequence; import org.x4o.fc18.cake2.FourCornerX18CakePointSequence;
import org.x4o.fc18.cake2.pie9d.FCDotPIE9DDash09;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.zion7.FourCornerZion7Candlelier; import org.x4o.fc18.zion7.FourCornerZion7Candlelier;
import org.x4o.fc18.zion7.FourCornerZionStenoLexer; import org.x4o.fc18.zion7.FourCornerZionStenoLexer;
@ -128,27 +129,26 @@ public class FourCornerUnicodeDisplay {
} }
private boolean printedEscape(FourCornerDotCake slice, int offset) { private boolean printedEscape(FourCornerDotCake slice, int offset) {
// TODO: get from PIE and update as we changed the escape code layout
if (FourCornerDotCake.FC_CDC1604_P6.equals(slice)) { if (FourCornerDotCake.FC_CDC1604_P6.equals(slice)) {
if (offset < 4) { if (offset < 4) {
output.appendCodePoint(FCDotCDC1604DashP6.escapeSignUnicode(offset)); output.appendCodePoint(FCDotPIE9DDash09.values()[offset].codePointDotIndex());
return true; return true;
} }
} }
if (FourCornerDotCake.FC_DEC0127_PX0.equals(slice)) { if (FourCornerDotCake.FC_DEC0127_PX0.equals(slice)) {
if (offset < 6) { output.appendCodePoint(FCDotPIE9DDash09.IMG_ESC_DEC.codePointDotIndex());
output.appendCodePoint(FCDotCDC1604DashP6.escapeSignUnicode(offset)); }
return true; if (FourCornerDotCake.FC_UWU0101_S1.equals(slice)) {
} output.appendCodePoint(' '); // TMP hack
return true;
}
if (FourCornerDotCake.FC_TTY0001_NL.equals(slice)) {
output.appendCodePoint('\n'); // TMP hack
return true;
} }
return false; return false;
} }
// Add to pie; +(other escape signs)
// U+FFFC OBJECT REPLACEMENT CHARACTER,
// U+FFFD <EFBFBD> REPLACEMENT CHARACTER
@Override @Override
public void strobeWords(FourCornerDotCake slice, List<Integer> offsets) { public void strobeWords(FourCornerDotCake slice, List<Integer> offsets) {
for (int i = 0; i < offsets.size(); i++) { for (int i = 0; i < offsets.size(); i++) {

View file

@ -31,7 +31,10 @@ import org.x4o.fc18.cake2.FourCornerX06BaklavaPointSequence;
import org.x4o.fc18.cake2.FourCornerX08MuffinPointSequence; import org.x4o.fc18.cake2.FourCornerX08MuffinPointSequence;
import org.x4o.fc18.cake2.FourCornerX18CakePointSequence; import org.x4o.fc18.cake2.FourCornerX18CakePointSequence;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0; import org.x4o.fc18.cake2.zero33.FCDotDEC0801DashE10;
import org.x4o.fc18.cake2.zero33.FCDotDEC0801DashE16;
import org.x4o.fc18.cake2.zero33.FCDotDEC0801DashE19;
import org.x4o.fc18.cake2.zero33.FCDotDEC2701DashPX0;
/// Imports unicode as four corner BASIC text from the "FC.CDC1604-P6" code page. /// Imports unicode as four corner BASIC text from the "FC.CDC1604-P6" code page.
/// ///
@ -55,7 +58,7 @@ public class FourCornerUnicodeImport {
} }
static public FourCornerUnicodeImport lossy() { static public FourCornerUnicodeImport lossy() {
return new FourCornerUnicodeImport(true, false, List.of(FCDotCDC1604DashP6.SEQ_QUESTION)); return new FourCornerUnicodeImport(true, false, List.of(FCDotCDC1604DashP6._RAKA_QUESTION)); // TODO: change
} }
public List<Integer> convertToInt18(String text) { public List<Integer> convertToInt18(String text) {
@ -98,8 +101,11 @@ public class FourCornerUnicodeImport {
ImportState ctx = new ImportState(bits, text.codePoints().iterator(), new ArrayList<>(text.length())); ImportState ctx = new ImportState(bits, text.codePoints().iterator(), new ArrayList<>(text.length()));
while (ctx.input.hasNext()) { while (ctx.input.hasNext()) {
ctx.codePoint = ctx.input.nextInt(); ctx.codePoint = ctx.input.nextInt();
if (handleReturnTypes(ctx)) { if (handleDataGramWordSpacerTypes(ctx)) {
continue; // \r\n and \r are not mapped, so handle with code continue; // handle white space
}
if (handleTypeWriterStructureTypes(ctx)) {
continue; // \r\n and \r and \n, to manual escape
} }
if (handleNumber(ctx)) { if (handleNumber(ctx)) {
continue; // Handle number sequences manual, to escape once continue; // Handle number sequences manual, to escape once
@ -134,10 +140,27 @@ public class FourCornerUnicodeImport {
return err.toString(); return err.toString();
} }
private boolean handleReturnTypes(ImportState ctx) { private boolean handleDataGramWordSpacerTypes(ImportState ctx) {
if (' ' == ctx.codePoint) {
ctx.reset();
ctx.output.add(FCDotDEC2701DashPX0.ESC_DEC0801_E10);
ctx.output.add(FCDotDEC0801DashE10.E10_UWU0101_S1);
return true;
}
return false;
}
private boolean handleTypeWriterStructureTypes(ImportState ctx) {
if ('\n' == ctx.codePoint) {
ctx.reset();
ctx.output.add(FCDotDEC2701DashPX0.ESC68_DEC0801_E19);
ctx.output.add(FCDotDEC0801DashE19.TYPE_WRITER_TTY0001_NL);
return true;
}
if ('\r' == ctx.codePoint) { if ('\r' == ctx.codePoint) {
ctx.reset(); ctx.reset();
ctx.output.add(FCDotCDC1604DashP6._NEWLINE); ctx.output.add(FCDotDEC2701DashPX0.ESC68_DEC0801_E19);
ctx.output.add(FCDotDEC0801DashE19.TYPE_WRITER_TTY0001_NL);
if (!ctx.input.hasNext()) { if (!ctx.input.hasNext()) {
return true; // = no next is continue to next, to exit while above return true; // = no next is continue to next, to exit while above
} }
@ -146,7 +169,7 @@ public class FourCornerUnicodeImport {
return true; // eat \n to have one newline return true; // eat \n to have one newline
} }
} }
return false; // normal /n is handles by generic lookup return false;
} }
private boolean handleDictionary(ImportState ctx) { private boolean handleDictionary(ImportState ctx) {
@ -180,9 +203,9 @@ public class FourCornerUnicodeImport {
if (ctx.codePoint >= '0' && ctx.codePoint <= '9') { if (ctx.codePoint >= '0' && ctx.codePoint <= '9') {
if (!FCDotCDC1604DashP6.NX10_J.equals(ctx.cdcNumberTerminator)) { if (!FCDotCDC1604DashP6.NX10_J.equals(ctx.cdcNumberTerminator)) {
if (ctx.bits == 6) { if (ctx.bits == 6) {
ctx.output.addAll(FCDotDEC0127DashPX0.ESC68_PIE.toX06BaklavaPoints(FCDotCDC1604DashP6.NX10_J)); ctx.output.addAll(toX06BaklavaPoints(FCDotDEC0801DashE16.ESC68_PIE, FCDotCDC1604DashP6.NX10_J));
} else { } else {
ctx.output.addAll(FCDotDEC0127DashPX0.ESC68_PIE.toX08MuffinPoints(FCDotCDC1604DashP6.NX10_J)); ctx.output.addAll(toX08MuffinPoints(FCDotDEC0801DashE16.ESC68_PIE, FCDotCDC1604DashP6.NX10_J));
} }
ctx.cdcNumberTerminator = FCDotCDC1604DashP6.NX10_J; ctx.cdcNumberTerminator = FCDotCDC1604DashP6.NX10_J;
} }
@ -193,11 +216,10 @@ public class FourCornerUnicodeImport {
} }
if (ctx.cdcNumberTerminator != null) { if (ctx.cdcNumberTerminator != null) {
ctx.cdcNumberTerminator = null; ctx.cdcNumberTerminator = null;
//ctx.output.add(FCDotDEC0127DashP7G.ESC_STOP);
if (ctx.bits == 6) { if (ctx.bits == 6) {
ctx.output.addAll(FCDotDEC0127DashPX0.ESC_STOP.toX06BaklavaPoints()); ctx.output.addAll(toX06BaklavaEscStop());
} else { } else {
ctx.output.add(FCDotDEC0127DashPX0.ESC_STOP); ctx.output.add(FCDotDEC2701DashPX0.ESC_STOP);
} }
} }
return false; return false;
@ -210,9 +232,9 @@ public class FourCornerUnicodeImport {
if (ctx.codePoint >= 'a' && ctx.codePoint <= 'z') { if (ctx.codePoint >= 'a' && ctx.codePoint <= 'z') {
if (!FCDotCDC1604DashP6.NX26_Z.equals(ctx.cdcCaseTerminator)) { if (!FCDotCDC1604DashP6.NX26_Z.equals(ctx.cdcCaseTerminator)) {
if (ctx.bits == 6) { if (ctx.bits == 6) {
ctx.output.addAll(FCDotDEC0127DashPX0.ESC68_PIE.toX06BaklavaPoints(FCDotCDC1604DashP6.NX26_Z)); ctx.output.addAll(toX06BaklavaPoints(FCDotDEC0801DashE16.ESC68_PIE, FCDotCDC1604DashP6.NX26_Z));
} else { } else {
ctx.output.addAll(FCDotDEC0127DashPX0.ESC68_PIE.toX08MuffinPoints(FCDotCDC1604DashP6.NX26_Z)); ctx.output.addAll(toX08MuffinPoints(FCDotDEC0801DashE16.ESC68_PIE, FCDotCDC1604DashP6.NX26_Z));
} }
ctx.cdcCaseTerminator = FCDotCDC1604DashP6.NX26_Z; ctx.cdcCaseTerminator = FCDotCDC1604DashP6.NX26_Z;
} }
@ -224,14 +246,40 @@ public class FourCornerUnicodeImport {
if (ctx.cdcCaseTerminator != null) { if (ctx.cdcCaseTerminator != null) {
ctx.cdcCaseTerminator = null; ctx.cdcCaseTerminator = null;
if (ctx.bits == 6) { if (ctx.bits == 6) {
ctx.output.addAll(FCDotDEC0127DashPX0.ESC_STOP.toX06BaklavaPoints()); ctx.output.addAll(toX06BaklavaEscStop());
} else { } else {
ctx.output.add(FCDotDEC0127DashPX0.ESC_STOP); ctx.output.add(FCDotDEC2701DashPX0.ESC_STOP);
} }
} }
return false; return false;
} }
private List<FourCornerX06BaklavaPointSequence> toX06BaklavaEscStop() {
List<FourCornerX06BaklavaPointSequence> result = new ArrayList<>();
result.addAll(FCDotDEC2701DashPX0.ESC_STOP.baklavaPointSequence().stream().map(v -> FCDotCDC1604DashP6.valueOf(v)).toList());
return result;
}
private List<FourCornerX08MuffinPointSequence> toX08MuffinPoints(FCDotDEC0801DashE16 py1, FCDotCDC1604DashP6... letters) {
List<FourCornerX08MuffinPointSequence> result = new ArrayList<>();
result.add(FCDotDEC2701DashPX0.ESC68_DEC0801_E16);
result.addAll(py1.muffinPointSequence().stream().map(v -> FCDotCDC1604DashP6.valueOf(v)).toList());
for (FCDotCDC1604DashP6 letter : letters) {
result.add(letter);
}
return result;
}
private List<FourCornerX06BaklavaPointSequence> toX06BaklavaPoints(FCDotDEC0801DashE16 py1, FCDotCDC1604DashP6... letters) {
List<FourCornerX06BaklavaPointSequence> result = new ArrayList<>();
result.addAll(FCDotDEC2701DashPX0.ESC68_DEC0801_E16.baklavaPointSequence().stream().map(v -> FCDotCDC1604DashP6.valueOf(v)).toList());
result.addAll(py1.baklavaPointSequence().stream().map(v -> FCDotCDC1604DashP6.valueOf(v)).toList());
for (FCDotCDC1604DashP6 letter : letters) {
result.add(letter);
}
return result;
}
private boolean handleDiacritics(ImportState ctx) { private boolean handleDiacritics(ImportState ctx) {
if (convertDiacritics) { if (convertDiacritics) {
FCDotCDC1604DashP6 alias = checkDiacriticAlias(ctx.codePoint); FCDotCDC1604DashP6 alias = checkDiacriticAlias(ctx.codePoint);

View file

@ -41,7 +41,7 @@ import org.x4o.fc18.cake2.pie9c.FCDotPIE9CDash10;
import org.x4o.fc18.cake2.pie9c.FCDotPIE9CDash11; import org.x4o.fc18.cake2.pie9c.FCDotPIE9CDash11;
import org.x4o.fc18.cake2.pie9c.FCDotPIE9CDash20; import org.x4o.fc18.cake2.pie9c.FCDotPIE9CDash20;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0; import org.x4o.fc18.cake2.zero33.FCDotDEC2701DashPX0;
/// Holds conversion maps between four corner int18 and unicode int21 points. /// Holds conversion maps between four corner int18 and unicode int21 points.
/// ///
@ -88,8 +88,6 @@ public enum FourCornerUnicodeMapper {
} }
}); });
} }
// Fix space
int21ToVide.put((int)' ', FCDotCDC1604DashP6._SPACE);
} }
public List<Integer> findByX18(Integer letter) { public List<Integer> findByX18(Integer letter) {
@ -105,9 +103,8 @@ public enum FourCornerUnicodeMapper {
if (cakePoints.isEmpty()) { if (cakePoints.isEmpty()) {
return cakePoints; return cakePoints;
} }
boolean lostEnd = false;
List<Integer> result = new ArrayList<>(); List<Integer> result = new ArrayList<>();
Iterator<Integer> i = cakePoints.iterator(); Iterator<Integer> i = cakePoints.iterator();
while (i.hasNext()) { while (i.hasNext()) {
int cakePoint = i.next(); int cakePoint = i.next();
@ -118,11 +115,14 @@ public enum FourCornerUnicodeMapper {
if (!i.hasNext()) { if (!i.hasNext()) {
break; break;
} }
result.addAll(FCDotDEC0127DashPX0.ESC68_FC18.toInt18BaklavaPoints()); boolean closeEnd = true;
result.addAll(FCDotDEC2701DashPX0.ESC68_FC18.baklavaPointSequence());
while (i.hasNext()) { while (i.hasNext()) {
lostEnd = false;
if (cakePoint < 64) { if (cakePoint < 64) {
result.addAll(FCDotDEC0127DashPX0.ESC_SEQ_SALAH.toInt18BaklavaPoints()); result.add(FCDotCDC1604DashP6._SALAH_EXCLAMATION.baklavaPointDotIndex());
result.add(cakePoint); result.add(cakePoint);
closeEnd = false;
break; break;
} }
for (int cakePointIdx=0;cakePointIdx<=6;cakePointIdx++) { for (int cakePointIdx=0;cakePointIdx<=6;cakePointIdx++) {
@ -130,10 +130,14 @@ public enum FourCornerUnicodeMapper {
int letter = octal + FCDotCDC1604DashP6.NX01_A.ordinal(); int letter = octal + FCDotCDC1604DashP6.NX01_A.ordinal();
result.add(letter); result.add(letter);
} }
if (!i.hasNext()) {
result.addAll(FCDotDEC0127DashPX0.ESC_SEQ_SALAH.toInt18BaklavaPoints());
}
cakePoint = i.next(); cakePoint = i.next();
lostEnd = true;
}
if (closeEnd) {
result.add(FCDotCDC1604DashP6._SALAH_EXCLAMATION.baklavaPointDotIndex());
}
if (lostEnd) {
result.add(cakePoint);
} }
} }
return result; return result;

View file

@ -56,7 +56,9 @@ import org.x4o.fc18.cake2.gram5.FCDotAMD0110DashSA;
import org.x4o.fc18.cake2.gram5.FCDotBMW0102DashS2; import org.x4o.fc18.cake2.gram5.FCDotBMW0102DashS2;
import org.x4o.fc18.cake2.gram5.FCDotDNA0104DashS4; import org.x4o.fc18.cake2.gram5.FCDotDNA0104DashS4;
import org.x4o.fc18.cake2.gram5.FCDotIBM1616DashH8; import org.x4o.fc18.cake2.gram5.FCDotIBM1616DashH8;
import org.x4o.fc18.cake2.gram5.FCDotICL0126Dash9B;
import org.x4o.fc18.cake2.gram5.FCDotNEC0105DashS5; import org.x4o.fc18.cake2.gram5.FCDotNEC0105DashS5;
import org.x4o.fc18.cake2.gram5.FCDotNES0127Dash9C;
import org.x4o.fc18.cake2.gram5.FCDotNXP0103DashS3; import org.x4o.fc18.cake2.gram5.FCDotNXP0103DashS3;
import org.x4o.fc18.cake2.gram5.FCDotOCE0801DashH3; import org.x4o.fc18.cake2.gram5.FCDotOCE0801DashH3;
import org.x4o.fc18.cake2.gram5.FCDotOCE0808DashH6; import org.x4o.fc18.cake2.gram5.FCDotOCE0808DashH6;
@ -118,6 +120,7 @@ import org.x4o.fc18.cake2.pie9d.FCDotPIE9DDash24;
import org.x4o.fc18.cake2.pie9d.FCDotPIE9DDash25; import org.x4o.fc18.cake2.pie9d.FCDotPIE9DDash25;
import org.x4o.fc18.cake2.pie9d.FCDotPIE9DDash26; import org.x4o.fc18.cake2.pie9d.FCDotPIE9DDash26;
import org.x4o.fc18.cake2.pie9d.FCDotPIE9DDash27; import org.x4o.fc18.cake2.pie9d.FCDotPIE9DDash27;
import org.x4o.fc18.cake2.tty00.FCDotTTY0001DashNL;
import org.x4o.fc18.cake2.zero33.FCDotAPL0127DashP7A; import org.x4o.fc18.cake2.zero33.FCDotAPL0127DashP7A;
import org.x4o.fc18.cake2.zero33.FCDotAPL0127DashP7B; import org.x4o.fc18.cake2.zero33.FCDotAPL0127DashP7B;
import org.x4o.fc18.cake2.zero33.FCDotAPL0127DashP7C; import org.x4o.fc18.cake2.zero33.FCDotAPL0127DashP7C;
@ -125,7 +128,7 @@ import org.x4o.fc18.cake2.zero33.FCDotBYD0127DashP7D;
import org.x4o.fc18.cake2.zero33.FCDotBYD0127DashP7E; import org.x4o.fc18.cake2.zero33.FCDotBYD0127DashP7E;
import org.x4o.fc18.cake2.zero33.FCDotBYD0127DashP7F; import org.x4o.fc18.cake2.zero33.FCDotBYD0127DashP7F;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0; import org.x4o.fc18.cake2.zero33.FCDotDEC2701DashPX0;
/// The dot cake index of four corner 18 bit words in cake slices which holds the cake points. /// The dot cake index of four corner 18 bit words in cake slices which holds the cake points.
/// ///
@ -136,7 +139,7 @@ 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_DEC0127_PX0(64, 27, FCDotDEC0127DashPX0.values(), "Direct or Escaped Control"), FC_DEC0127_PX0(64, 27, FCDotDEC2701DashPX0.values(), "Direct or Escaped Control"),
FC_APL0127_P7A(91, 27, FCDotAPL0127DashP7A.values(), "Array Programming Language P7A"), FC_APL0127_P7A(91, 27, FCDotAPL0127DashP7A.values(), "Array Programming Language P7A"),
FC_APL0127_P7B(118, 27, FCDotAPL0127DashP7B.values(), "Array Programming Language P7B"), FC_APL0127_P7B(118, 27, FCDotAPL0127DashP7B.values(), "Array Programming Language P7B"),
@ -217,8 +220,6 @@ public enum FourCornerDotCake {
// - A 32 or 64 bit, like your current computer uses 21 bit unicode // - A 32 or 64 bit, like your current computer uses 21 bit unicode
// - A 18 or 144 bit computer uses 72 bit unicode4D vector drawing // - A 18 or 144 bit computer uses 72 bit unicode4D vector drawing
// TODO: move ESC_NETHER to struct(todo) block, as escape codes should not be used in real 18 bit (text) code.
// =========== Allow end-user select rendering of data gram packet per context // =========== Allow end-user select rendering of data gram packet per context
FC_BMW0102_S2(1024 - 12, 2, FCDotBMW0102DashS2.values(), "Binary Model Words, for bit 0 and bit 1 notation"), FC_BMW0102_S2(1024 - 12, 2, FCDotBMW0102DashS2.values(), "Binary Model Words, for bit 0 and bit 1 notation"),
@ -226,19 +227,19 @@ public enum FourCornerDotCake {
/// Allow HEX to be displayed in Greek/Korean/Inuktitut/etc symbols. /// Allow HEX to be displayed in Greek/Korean/Inuktitut/etc symbols.
FC_IBM1616_H8(1024, 256, FCDotIBM1616DashH8.values(), "Interim Byte Mode, custom HEX codes"), FC_IBM1616_H8(1024, 256, FCDotIBM1616DashH8.values(), "Interim Byte Mode, custom HEX codes"),
FC_NES0127_9C(1280, 27, "Nigerian Extra Smile"), FC_NES0127_9C(1280, 27, FCDotNES0127Dash9C.values(), "Nigerian Extra Smile, hebrew gematria"),
FC_ESC0109_S9(1307, 9, "Eccentric Symbol Code"), FC_ESC0109_S9(1307, 9, "Eccentric Symbol Code"), // TODO: rename and add enum
FC_SCO0106_S6(1316, 6, FCDotSCO0106DashS6.values(), "Six Character Object"), FC_SCO0106_S6(1316, 6, FCDotSCO0106DashS6.values(), "Six Character Object"),
FC_NXP0103_S3(1322, 3, FCDotNXP0103DashS3.values(), "Natural X-state Phasing, for high impedance (Hi-Z) signals"), FC_NXP0103_S3(1322, 3, FCDotNXP0103DashS3.values(), "Natural X-state Phasing, for high impedance (Hi-Z) signals"),
FC_NEC0105_S5(1325, 5, FCDotNEC0105DashS5.values(), "New Endian Compass"), FC_NEC0105_S5(1325, 5, FCDotNEC0105DashS5.values(), "New Endian Compass"),
FC_W3C0107_S7(1330, 7, FCDotW3C0107DashS7.values(), "Water 3th Color"), FC_W3C0107_S7(1330, 7, FCDotW3C0107DashS7.values(), "Water 3th Color"),
/// See: https://www.ibm.com/docs/en/db2/11.5?topic=uce-code-page-coded-character-set-identifier-ccsid-numbers-unicode-graphic-data /// See: https://www.ibm.com/docs/en/db2/11.5?topic=uce-code-page-coded-character-set-identifier-ccsid-numbers-unicode-graphic-data
// TODO: check if ?? Remove CDC white space and newline !!!
FC_UWU0101_S1(1337, 1, FCDotUWU0101DashS1.values(), "Universal White Unidad, word spacer indicator"), FC_UWU0101_S1(1337, 1, FCDotUWU0101DashS1.values(), "Universal White Unidad, word spacer indicator"),
FC_DNA0104_S4(1338, 4, FCDotDNA0104DashS4.values(), "Direct Nuclear Air strike, of quadratonic values"), FC_DNA0104_S4(1338, 4, FCDotDNA0104DashS4.values(), "Direct Nuclear Air strike, of quadratonic values"),
FC_ICL0126_9B(1342, 26, FCDotICL0126Dash9B.values(), "Intentional Cookie Linker, for lowcase monsters"),
/// Reserved for future data grams use /// Reserved for future data grams use
__RESERVED_DATAGRAMS(1 + FC_DNA0104_S4.getStop(), 1464 - 1 - FC_DNA0104_S4.getStop()), __RESERVED_DATAGRAMS(1 + FC_ICL0126_9B.getStop(), 1464 - 1 - FC_ICL0126_9B.getStop()),
FC_OCE0801_H3(1464, 8, FCDotOCE0801DashH3.values(), "Octal Character Encoding, in Hinari 3 bit"), FC_OCE0801_H3(1464, 8, FCDotOCE0801DashH3.values(), "Octal Character Encoding, in Hinari 3 bit"),
FC_OCE0808_H6(1472, 64, FCDotOCE0808DashH6.values(), "Octal Character Encoding, in Hinari 6 bit"), FC_OCE0808_H6(1472, 64, FCDotOCE0808DashH6.values(), "Octal Character Encoding, in Hinari 6 bit"),
@ -303,18 +304,22 @@ public enum FourCornerDotCake {
FC_CLK1K_Z(131072 + (1024*25), 1024, FCDotCLK1KDashZ.values()), FC_CLK1K_Z(131072 + (1024*25), 1024, FCDotCLK1KDashZ.values()),
FC_CLK1K_AMP(131072 + (1024*26), 1024/*, FCDotCLK1KDashAmp.values()*/), FC_CLK1K_AMP(131072 + (1024*26), 1024/*, FCDotCLK1KDashAmp.values()*/),
// =========== Allow more data grams for legacy unicode and next generation unicode // =========== Allow structures,sandworms and legacy unicode an pieve of the cake
/// Text structure control indicators /// Tele Type Ytructure00 zero one New Line
__RESERVED_STRUCT(1 + FC_CLK1K_AMP.getStop(), 0x27000 - 576 - 1 - FC_CLK1K_AMP.getStop(), "Reserved for STRUCT"), FC_TTY0001_NL(0x026C00, 1, FCDotTTY0001DashNL.values(), "TTY00 zero one New Line"),
/// Preamble of a sand worm body as a identifiable type header. /// Reserved tele type ytructure controls.
__RESERVED_TTY00(0x026C00 + 1, 0x026DC0 - 0x026C00 - 1, "Reserved for TTY00"),
/// Preamble of a sand worm body as a identifiable type header or an Número2 Lingua tree key.
/// Octal worm encoding are 192 unique octals in ordered sequence and have allowed length of 24/48/96 or 192. /// Octal worm encoding are 192 unique octals in ordered sequence and have allowed length of 24/48/96 or 192.
/// This mime-type like information and decoders can be fetched from the the nether DB. /// This mime-type like information and decoders can be fetched from the the nether DB.
FC_SAND_OLGOI(0x27000 - 576, 576, "Large head of logoi worm"), FC_SAND_OLGOI(0x026DC0, 576, "Large head of logoi worm"),
/// To escape the question of undefined behavior, we define it as dark nether space, so we can see it in C++
/// Undefined octal data which are packed big indian octals per 5, which is a 15 bit data gram in one 18 bit cake point. /// Undefined octal data which are packed big indian octals per 5, which is a 15 bit data gram in one 18 bit cake point.
/// This can encode sand worm text data like icons, bitmap images or vector images and unicode4D/etc. /// This can encode sand worm text data like icons, bitmap images or vector images and unicode4D/etc like HolyC of TempleOS.
FC_SAND_KHORKHOI(0x27000, 32768, "Sand octals of large khorkhoi"), FC_SAND_KHORKHOI(0x27000, 32768, "Sand octals of large khorkhoi"),
/// Support lower 11 bit of unicode to be encoded with one cake point. /// Support lower 11 bit of unicode to be encoded with one cake point.

View file

@ -22,7 +22,6 @@
*/ */
package org.x4o.fc18.cake2; package org.x4o.fc18.cake2;
import java.util.List;
import java.util.Optional; import java.util.Optional;
/** /**
@ -36,7 +35,7 @@ public interface FourCornerDotColleCLK extends FourCornerX18CakePointDotIndex {
FourCornerDotColleCLKParler[] clockParlers(); FourCornerDotColleCLKParler[] clockParlers();
default Optional<FourCornerDotColleCLKParler> getLookupOfMerde(FourCornerDotColleCLKParlerEau merde) { default Optional<FourCornerDotColleCLKParler> clockParlerEau(FourCornerDotColleCLKParlerEau merde) {
for (FourCornerDotColleCLKParler lookup : clockParlers()) { for (FourCornerDotColleCLKParler lookup : clockParlers()) {
if (lookup.parlerMerde() == merde) { if (lookup.parlerMerde() == merde) {
return Optional.of(lookup); return Optional.of(lookup);
@ -44,9 +43,4 @@ public interface FourCornerDotColleCLK extends FourCornerX18CakePointDotIndex {
} }
return Optional.empty(); return Optional.empty();
} }
@Override
default List<Integer> cakePointSequence() {
return List.of(cakePointDotIndex());
}
} }

View file

@ -22,16 +22,10 @@
*/ */
package org.x4o.fc18.cake2; package org.x4o.fc18.cake2;
import java.util.List;
/// Parent interface for all data gram enums. /// Parent interface for all data gram enums.
/// ///
/// @author Willem Cazander /// @author Willem Cazander
/// @version 1.0 Jan 19, 2025 /// @version 1.0 Jan 19, 2025
public interface FourCornerDotColleGram5 extends FourCornerX18CakePointDotIndex { public interface FourCornerDotColleGram5 extends FourCornerX18CakePointDotIndex {
@Override
default List<Integer> cakePointSequence() {
return List.of(cakePointDotIndex());
}
} }

View file

@ -22,8 +22,13 @@
*/ */
package org.x4o.fc18.cake2; package org.x4o.fc18.cake2;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0801DashE16;
import org.x4o.fc18.cake2.zero33.FCDotDEC2701DashPX0;
/// Parent interface for all PIE9C and PIE9D enum. /// Parent interface for all PIE9C and PIE9D enum.
/// ///
/// @author Willem Cazander /// @author Willem Cazander
@ -46,11 +51,6 @@ public interface FourCornerDotCollePie9 extends FourCornerX06BaklavaPointSequenc
return letter; return letter;
} }
@Override
default List<Integer> cakePointSequence() {
return List.of(cakePointDotIndex());
}
@Override @Override
default List<Integer> muffinPointSequence() { default List<Integer> muffinPointSequence() {
return baklavaPointSequence(); return baklavaPointSequence();
@ -60,4 +60,24 @@ public interface FourCornerDotCollePie9 extends FourCornerX06BaklavaPointSequenc
default FourCornerX00PetitVideCoinCarneFrapper coinCarneFrapper() { default FourCornerX00PetitVideCoinCarneFrapper coinCarneFrapper() {
return FourCornerX00PetitVideCoinCarneFrapper.valueForNone(); return FourCornerX00PetitVideCoinCarneFrapper.valueForNone();
} }
default List<Integer> baklavaPointsPIE9C(FCDotCDC1604DashP6 letter, int offset) {
List<Integer> result = new ArrayList<>();
result.addAll(FCDotDEC2701DashPX0.ESC68_DEC0801_E16.baklavaPointSequence());
result.addAll(FCDotDEC0801DashE16.ESC68_PIE.baklavaPointSequence());
result.add(letter.baklavaPointDotIndex());
result.add(FCDotCDC1604DashP6.NX01_A.ordinal() + offset);
//result.add(FCDotCDC1604DashP6.SEQ_SALAH__EXCLAMATION.cakePointDotIndex()); // TODO: add api layer snake for head
return result;
}
default List<Integer> baklavaPointsPIE9D(FCDotCDC1604DashP6 letter, int offset) {
List<Integer> result = new ArrayList<>();
result.addAll(FCDotDEC2701DashPX0.ESC68_DEC0801_E16.baklavaPointSequence());
result.addAll(FCDotDEC0801DashE16.ESC68_PIE.baklavaPointSequence());
result.add(letter.baklavaPointDotIndex());
result.add(FCDotCDC1604DashP6.NY01_AT.ordinal() - offset);
//result.add(FCDotCDC1604DashP6.SEQ_SALAH__EXCLAMATION.cakePointDotIndex()); // TODO: add api layer snake for head
return result;
}
} }

View file

@ -0,0 +1,31 @@
/*
* Copyright (c) 2004-2014, Willem Cazander
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
* that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
* following disclaimer.
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
* the following disclaimer in the documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package org.x4o.fc18.cake2;
/// Parent interface for all tele type ytructure's.
///
/// @author Willem Cazander
/// @version 1.0 Jan 22, 2025
public interface FourCornerDotColleTTY extends FourCornerX18CakePointDotIndex {
}

View file

@ -35,11 +35,6 @@ public interface FourCornerDotColleZero33 extends FourCornerX06BaklavaPointSeque
return List.of(codePointDotIndex()); return List.of(codePointDotIndex());
} }
@Override
default List<Integer> cakePointSequence() {
return List.of(cakePointDotIndex());
}
@Override @Override
default List<Integer> muffinPointSequence() { default List<Integer> muffinPointSequence() {
return cakePointSequence(); return cakePointSequence();

View file

@ -22,8 +22,12 @@
*/ */
package org.x4o.fc18.cake2; package org.x4o.fc18.cake2;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC2701DashPX0;
/// Glue interface for the command VT enums. /// Glue interface for the command VT enums.
/// ///
/// @author Willem Cazander /// @author Willem Cazander
@ -34,4 +38,20 @@ public interface FourCornerDotColleZero33VT extends FourCornerX06BaklavaPointSeq
default List<Integer> muffinPointSequence() { default List<Integer> muffinPointSequence() {
return cakePointSequence(); return cakePointSequence();
} }
default List<Integer> baklavaPointsVT06Action(FCDotCDC1604DashP6 group, FCDotCDC1604DashP6 action) {
List<Integer> result = new ArrayList<>();
result.addAll(FCDotDEC2701DashPX0.ESC_VT06.baklavaPointSequence());
result.add(group.ordinal());
result.add(action.ordinal());
return result;
}
default List<Integer> cakePointsVT06Action(FCDotCDC1604DashP6 group, FCDotCDC1604DashP6 action) {
List<Integer> result = new ArrayList<>();
result.add(FCDotDEC2701DashPX0.ESC_VT06.cakePointDotIndex());
result.add(group.cakePointDotIndex());
result.add(action.cakePointDotIndex());
return result;
}
} }

View file

@ -22,6 +22,8 @@
*/ */
package org.x4o.fc18.cake2; package org.x4o.fc18.cake2;
import java.util.List;
/// Number index retriever for four corner cake points. /// Number index retriever for four corner cake points.
/// ///
/// @author Willem Cazander /// @author Willem Cazander
@ -30,4 +32,9 @@ public interface FourCornerX18CakePointDotIndex extends FourCornerX18CakePointSe
/// One cake piece weights 800 gram /// One cake piece weights 800 gram
int cakePointDotIndex(); int cakePointDotIndex();
@Override
default List<Integer> cakePointSequence() {
return List.of(cakePointDotIndex());
}
} }

View file

@ -0,0 +1,68 @@
/*
* Copyright (c) 2004-2014, Willem Cazander
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
* that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
* following disclaimer.
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
* the following disclaimer in the documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package org.x4o.fc18.cake2.gram5;
import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotColleGram5;
/**
* "FC.ICL0126-9B" Four Corner Intentional Cookie Linker, for lowercase monsters.
*
*
* @author Willem Cazander
* @version 1.0 Jan 22, 2025
*/
public enum FCDotICL0126Dash9B implements FourCornerDotColleGram5 {
NXX_001,
NXX_002,
NXX_003,
NXX_004,
NXX_005,
NXX_006,
NXX_007,
NXX_008,
NXX_009,
NXX_010,
NXX_011,
NXX_012,
NXX_013,
NXX_014,
NXX_015,
NXX_016,
NXX_017,
NXX_018,
NXX_019,
NXX_020,
NXX_021,
NXX_022,
NXX_023,
NXX_024,
NXX_025,
NXX_026,
;
@Override
public int cakePointDotIndex() {
return FourCornerDotCake.FC_ICL0126_9B.getStart() + ordinal();
}
}

View file

@ -0,0 +1,69 @@
/*
* Copyright (c) 2004-2014, Willem Cazander
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
* that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
* following disclaimer.
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
* the following disclaimer in the documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package org.x4o.fc18.cake2.gram5;
import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotColleGram5;
/**
* "FC.NES0127-9C" Four Corner Nigerian Extra Smile, hebrew gematria.
*
*
* @author Willem Cazander
* @version 1.0 Jan 22, 2025
*/
public enum FCDotNES0127Dash9C implements FourCornerDotColleGram5 {
NXX_001,
NXX_002,
NXX_003,
NXX_004,
NXX_005,
NXX_006,
NXX_007,
NXX_008,
NXX_009,
NXX_010,
NXX_011,
NXX_012,
NXX_013,
NXX_014,
NXX_015,
NXX_016,
NXX_017,
NXX_018,
NXX_019,
NXX_020,
NXX_021,
NXX_022,
NXX_023,
NXX_024,
NXX_025,
NXX_026,
NXX_027,
;
@Override
public int cakePointDotIndex() {
return FourCornerDotCake.FC_NES0127_9C.getStart() + ordinal();
}
}

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_01. * Pie slice number symbols for NXX_01.
@ -48,7 +47,7 @@ public enum FCDotPIE9CDash01 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX01_A, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX01_A, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_02. * Pie slice number symbols for NXX_02.
@ -49,7 +48,7 @@ public enum FCDotPIE9CDash02 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX02_B, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX02_B, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_03. * Pie slice number symbols for NXX_03.
@ -50,7 +49,7 @@ public enum FCDotPIE9CDash03 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX03_C, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX03_C, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_04. * Pie slice number symbols for NXX_04.
@ -51,7 +50,7 @@ public enum FCDotPIE9CDash04 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX04_D, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX04_D, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_05. * Pie slice number symbols for NXX_05.
@ -52,7 +51,7 @@ public enum FCDotPIE9CDash05 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX05_E, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX05_E, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_06. * Pie slice number symbols for NXX_06.
@ -38,12 +37,12 @@ import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
*/ */
public enum FCDotPIE9CDash06 implements FourCornerDotCollePie9 { public enum FCDotPIE9CDash06 implements FourCornerDotCollePie9 {
NXX_1('⌽'), // = FROM APL NXX_1('⍟'), // = FROM APL
NXX_2('⊖'), // = FROM APL NXX_2('⊗'), // = FROM APL
NXX_3('⍉'), // = FROM APL NXX_3('⊗'), // = FROM APL
NXX_4('⌀'), NXX_4('⊖'), // = FROM APL
NXX_5('⊗'), // = FROM APL NXX_5('⍉'), // = FROM APL
NXX_6('⊗'), // = FROM APL NXX_6('⌀'),
; ;
private final List<Integer> codePointDisplay; private final List<Integer> codePointDisplay;
@ -53,7 +52,7 @@ public enum FCDotPIE9CDash06 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX06_F, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX06_F, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_07. * Pie slice number symbols for NXX_07.
@ -38,13 +37,13 @@ import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
*/ */
public enum FCDotPIE9CDash07 implements FourCornerDotCollePie9 { public enum FCDotPIE9CDash07 implements FourCornerDotCollePie9 {
CJK_0('零'), NXX_01('♩'),
CJK_4('四'), NXX_02('♪'),
CJK_5('五'), NXX_03('♫'),
CJK_6('六'), NXX_04('♬'),
CJK_7('七'), NXX_05('♭'),
CJK_8('八'), NXX_06('♮'),
CJK_9('九'), NXX_07('♯'),
; ;
private final List<Integer> codePointDisplay; private final List<Integer> codePointDisplay;
@ -54,7 +53,7 @@ public enum FCDotPIE9CDash07 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX07_G, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX07_G, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_08. * Pie slice number symbols for NXX_08.
@ -55,7 +54,7 @@ public enum FCDotPIE9CDash08 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX08_H, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX08_H, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_09. * Pie slice number symbols for NXX_09.
@ -56,7 +55,7 @@ public enum FCDotPIE9CDash09 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX09_I, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX09_I, ordinal());
} }
@Override @Override

View file

@ -27,7 +27,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_10. * Pie slice number symbols for NXX_10.
@ -57,7 +56,7 @@ public enum FCDotPIE9CDash10 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX10_J, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX10_J, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_11. * Pie slice number symbols for NXX_11.
@ -58,7 +57,7 @@ public enum FCDotPIE9CDash11 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX11_K, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX11_K, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_12. * Pie slice number symbols for NXX_12.
@ -59,7 +58,7 @@ public enum FCDotPIE9CDash12 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX12_L, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX12_L, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_13. * Pie slice number symbols for NXX_13.
@ -60,7 +59,7 @@ public enum FCDotPIE9CDash13 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX13_M, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX13_M, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_14. * Pie slice number symbols for NXX_14.
@ -61,7 +60,7 @@ public enum FCDotPIE9CDash14 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX14_N, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX14_N, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_15. * Pie slice number symbols for NXX_15.
@ -62,7 +61,7 @@ public enum FCDotPIE9CDash15 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX15_O, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX15_O, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_16. * Pie slice number symbols for NXX_16.
@ -63,7 +62,7 @@ public enum FCDotPIE9CDash16 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX16_P, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX16_P, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_17. * Pie slice number symbols for NXX_17.
@ -64,7 +63,7 @@ public enum FCDotPIE9CDash17 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX17_Q, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX17_Q, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_18. * Pie slice number symbols for NXX_18.
@ -66,7 +65,7 @@ public enum FCDotPIE9CDash18 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX18_R, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX18_R, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_19. * Pie slice number symbols for NXX_19.
@ -66,7 +65,7 @@ public enum FCDotPIE9CDash19 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX19_S, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX19_S, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_20. * Pie slice number symbols for NXX_20.
@ -67,7 +66,7 @@ public enum FCDotPIE9CDash20 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX20_T, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX20_T, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_21. * Pie slice number symbols for NXX_21.
@ -68,7 +67,7 @@ public enum FCDotPIE9CDash21 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX21_U, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX21_U, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_22. * Pie slice number symbols for NXX_22.
@ -69,7 +68,7 @@ public enum FCDotPIE9CDash22 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX22_V, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX22_V, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_23. * Pie slice number symbols for NXX_23.
@ -70,7 +69,7 @@ public enum FCDotPIE9CDash23 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX23_W, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX23_W, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_24. * Pie slice number symbols for NXX_24.
@ -71,7 +70,7 @@ public enum FCDotPIE9CDash24 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX24_X, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX24_X, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_25. * Pie slice number symbols for NXX_25.
@ -74,7 +73,7 @@ public enum FCDotPIE9CDash25 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX25_Y, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX25_Y, ordinal());
} }
@Override @Override

View file

@ -30,7 +30,6 @@ import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.FourCornerX00PetitVideCoinCarneFrapper; import org.x4o.fc18.cake2.FourCornerX00PetitVideCoinCarneFrapper;
import org.x4o.fc18.cake2.FourCornerX00PetitVideCoinCarneFrapperRetrait; import org.x4o.fc18.cake2.FourCornerX00PetitVideCoinCarneFrapperRetrait;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_26. * Pie slice number symbols for NXX_26.
@ -76,7 +75,7 @@ public enum FCDotPIE9CDash26 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX26_Z, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX26_Z, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_27. * Pie slice number symbols for NXX_27.
@ -74,7 +73,7 @@ public enum FCDotPIE9CDash27 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9C(FCDotCDC1604DashP6.NX27_AMPERSAND, ordinal()); return baklavaPointsPIE9C(FCDotCDC1604DashP6.NX27_AMPERSAND, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_01. * Pie slice number symbols for NXX_01.
@ -38,7 +37,7 @@ import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
*/ */
public enum FCDotPIE9DDash01 implements FourCornerDotCollePie9 { public enum FCDotPIE9DDash01 implements FourCornerDotCollePie9 {
NXX_1('<EFBFBD>'), NXX_1(''),
; ;
private final List<Integer> codePointDisplay; private final List<Integer> codePointDisplay;
@ -48,7 +47,7 @@ public enum FCDotPIE9DDash01 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY01_AT, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY01_AT, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_02. * Pie slice number symbols for NXX_02.
@ -51,7 +50,7 @@ public enum FCDotPIE9DDash02 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY02_BAR_V_RIGHT, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY02_BAR_V_RIGHT, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_03. * Pie slice number symbols for NXX_03.
@ -50,7 +49,7 @@ public enum FCDotPIE9DDash03 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY03_BAR_V_LEFT, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY03_BAR_V_LEFT, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_04. * Pie slice number symbols for NXX_04.
@ -51,7 +50,7 @@ public enum FCDotPIE9DDash04 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY04_BAR_UNDER, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY04_BAR_UNDER, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_05. * Pie slice number symbols for NXX_05.
@ -58,7 +57,7 @@ public enum FCDotPIE9DDash05 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY05_BAR_VERTICAL, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY05_BAR_VERTICAL, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_06. * Pie slice number symbols for NXX_06.
@ -53,7 +52,7 @@ public enum FCDotPIE9DDash06 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY06_PERCENT, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY06_PERCENT, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_07. * Pie slice number symbols for NXX_07.
@ -54,7 +53,7 @@ public enum FCDotPIE9DDash07 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY07_DOLLAR, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY07_DOLLAR, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_08. * Pie slice number symbols for NXX_08.
@ -55,7 +54,7 @@ public enum FCDotPIE9DDash08 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY08_HASH, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY08_HASH, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_09. * Pie slice number symbols for NXX_09.
@ -38,15 +37,15 @@ import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
*/ */
public enum FCDotPIE9DDash09 implements FourCornerDotCollePie9 { public enum FCDotPIE9DDash09 implements FourCornerDotCollePie9 {
NXX_01(' '), IMG_ESC_NUL('␀'),
NXX_02(' '), IMG_ESC6_X1('␆'),
NXX_03(' '), IMG_ESC6_X2('␇'),
NXX_04(' '), IMG_ESC6_X3('␘'),
NXX_05(' '), IMG_ESC_DEC('␛'),
NXX_06(' '), IMG_NEWLINE('␤'),
NXX_07(' '), IMG_SPACE('␠'),
NXX_08(' '), IMG_OBJECT(''),
NXX_09(' '), IMG_UNKNOWN('<27>'),
; ;
private final List<Integer> codePointDisplay; private final List<Integer> codePointDisplay;
@ -56,7 +55,7 @@ public enum FCDotPIE9DDash09 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY09_EQUALS, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY09_EQUALS, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_10. * Pie slice number symbols for NXX_10.
@ -58,7 +57,7 @@ public enum FCDotPIE9DDash10 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY10_CARET, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY10_CARET, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_11. * Pie slice number symbols for NXX_11.
@ -58,7 +57,7 @@ public enum FCDotPIE9DDash11 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY11_BACKTICK, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY11_BACKTICK, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_12. * Pie slice number symbols for NXX_12.
@ -59,7 +58,7 @@ public enum FCDotPIE9DDash12 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY12_QUOTATION, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY12_QUOTATION, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_13. * Pie slice number symbols for NXX_13.
@ -60,7 +59,7 @@ public enum FCDotPIE9DDash13 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY13_APOSTROPHE, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY13_APOSTROPHE, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_14. * Pie slice number symbols for NXX_14.
@ -61,7 +60,7 @@ public enum FCDotPIE9DDash14 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY14_SEMICOLON, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY14_SEMICOLON, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_15. * Pie slice number symbols for NXX_15.
@ -62,7 +61,7 @@ public enum FCDotPIE9DDash15 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY15_COLON, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY15_COLON, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_16. * Pie slice number symbols for NXX_16.
@ -63,7 +62,7 @@ public enum FCDotPIE9DDash16 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY16_DOT, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY16_DOT, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_17. * Pie slice number symbols for NXX_17.
@ -64,7 +63,7 @@ public enum FCDotPIE9DDash17 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY17_COMMA, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY17_COMMA, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_18. * Pie slice number symbols for NXX_18.
@ -66,7 +65,7 @@ public enum FCDotPIE9DDash18 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY18_ASTERISK, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY18_ASTERISK, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_19. * Pie slice number symbols for NXX_19.
@ -66,7 +65,7 @@ public enum FCDotPIE9DDash19 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY19_MINUS, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY19_MINUS, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_20. * Pie slice number symbols for NXX_20.
@ -67,7 +66,7 @@ public enum FCDotPIE9DDash20 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY20_PLUS, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY20_PLUS, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_21. * Pie slice number symbols for NXX_21.
@ -68,7 +67,7 @@ public enum FCDotPIE9DDash21 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY21_TILDE, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY21_TILDE, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_22. * Pie slice number symbols for NXX_22.
@ -69,7 +68,7 @@ public enum FCDotPIE9DDash22 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY22_TAG_CURLY_RIGHT, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY22_CURLY_RIGHT, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_23. * Pie slice number symbols for NXX_23.
@ -70,7 +69,7 @@ public enum FCDotPIE9DDash23 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY23_TAG_CURLY_LEFT, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY23_CURLY_LEFT, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_24. * Pie slice number symbols for NXX_24.
@ -71,7 +70,7 @@ public enum FCDotPIE9DDash24 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY24_TAG_ROUND_RIGHT, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY24_ROUND_RIGHT, ordinal());
} }
@Override @Override

View file

@ -28,7 +28,6 @@ import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_25. * Pie slice number symbols for NXX_25.
@ -74,7 +73,7 @@ public enum FCDotPIE9DDash25 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY25_TAG_ROUND_LEFT, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY25_ROUND_LEFT, ordinal());
} }
@Override @Override

View file

@ -29,7 +29,6 @@ import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotCollePie9; import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.FourCornerX00PetitVideCoinCarneFrapper; import org.x4o.fc18.cake2.FourCornerX00PetitVideCoinCarneFrapper;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_26. * Pie slice number symbols for NXX_26.
@ -74,7 +73,7 @@ public enum FCDotPIE9DDash26 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY26_TAG_SQUARE_RIGHT, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY26_SQUARE_RIGHT, ordinal());
} }
@Override @Override

View file

@ -30,7 +30,6 @@ import org.x4o.fc18.cake2.FourCornerDotCollePie9;
import org.x4o.fc18.cake2.FourCornerX00PetitVideCoinCarneFrapper; import org.x4o.fc18.cake2.FourCornerX00PetitVideCoinCarneFrapper;
import org.x4o.fc18.cake2.pie9c.FCDotPIE9CDash26; import org.x4o.fc18.cake2.pie9c.FCDotPIE9CDash26;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* Pie slice number symbols for NXX_27. * Pie slice number symbols for NXX_27.
@ -82,7 +81,7 @@ public enum FCDotPIE9DDash27 implements FourCornerDotCollePie9 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC68_PIE.baklavaPointsPIE9D(FCDotCDC1604DashP6.NY27_TAG_SQUARE_LEFT, ordinal()); return baklavaPointsPIE9D(FCDotCDC1604DashP6.NY27_SQUARE_LEFT, ordinal());
} }
@Override @Override

View file

@ -0,0 +1,43 @@
/*
* Copyright (c) 2004-2014, Willem Cazander
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
* that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
* following disclaimer.
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
* the following disclaimer in the documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package org.x4o.fc18.cake2.tty00;
import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerDotColleTTY;
/**
* "FC.TYY0001-NL" Four Corner Tele Type Ytucture00 zero one New Line with automatic carriage return.
*
* @author Willem Cazander
* @version 1.0 Jan 22, 2025
*/
public enum FCDotTTY0001DashNL implements FourCornerDotColleTTY {
NEW_LINE,
;
@Override
public int cakePointDotIndex() {
return FourCornerDotCake.FC_TTY0001_NL.getStart() + ordinal();
}
}

View file

@ -0,0 +1,30 @@
/*
* Copyright (c) 2004-2014, Willem Cazander
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
* that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
* following disclaimer.
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
* the following disclaimer in the documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
/**
* Type Type Ytucture Zero Zero enums.
*
*
* @since 1.0
*/
package org.x4o.fc18.cake2.tty00;

View file

@ -114,7 +114,7 @@ public enum FCDotAPL0127DashP7A implements FourCornerDotColleZero33 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC6_APL0127_P7A.baklavaPointsP7(ordinal()); return FCDotDEC0801DashE16.ESC6_APL0127_P7A.baklavaPointsE16(ordinal());
} }
@Override @Override

View file

@ -118,7 +118,7 @@ public enum FCDotAPL0127DashP7B implements FourCornerDotColleZero33 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC6_APL0127_P7B.baklavaPointsP7(ordinal()); return FCDotDEC0801DashE16.ESC6_APL0127_P7B.baklavaPointsE16(ordinal());
} }
@Override @Override

View file

@ -120,7 +120,7 @@ public enum FCDotAPL0127DashP7C implements FourCornerDotColleZero33 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC6_APL0127_P7A.baklavaPointsP7(ordinal()); return FCDotDEC0801DashE16.ESC6_APL0127_P7A.baklavaPointsE16(ordinal());
} }
@Override @Override

View file

@ -76,7 +76,7 @@ public enum FCDotBYD0127DashP7D implements FourCornerDotColleZero33 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC6_BYD0127_P7D.baklavaPointsP7(ordinal()); return FCDotDEC0801DashE16.ESC6_BYD0127_P7D.baklavaPointsE16(ordinal());
} }
@Override @Override

View file

@ -76,7 +76,7 @@ public enum FCDotBYD0127DashP7E implements FourCornerDotColleZero33 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC6_BYD0127_P7E.baklavaPointsP7(ordinal()); return FCDotDEC0801DashE16.ESC6_BYD0127_P7E.baklavaPointsE16(ordinal());
} }
@Override @Override

View file

@ -75,7 +75,7 @@ public enum FCDotBYD0127DashP7F implements FourCornerDotColleZero33 {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC6_BYD0127_P7F.baklavaPointsP7(ordinal()); return FCDotDEC0801DashE16.ESC6_BYD0127_P7F.baklavaPointsE16(ordinal());
} }
@Override @Override

View file

@ -42,7 +42,7 @@ import org.x4o.fc18.cake2.FourCornerX00PetitVideCoinCarneFrapperRetrait;
/// @version 1.0 Dec 22, 2024 /// @version 1.0 Dec 22, 2024
/// ///
public enum FCDotCDC1604DashP6 implements FourCornerDotColleZero33 { public enum FCDotCDC1604DashP6 implements FourCornerDotColleZero33 {
// [__NUL][__PIE68][__NCR68][__ESC6] [_NEWLINE][_SPACE]?! <>[] (){} // [__NUL][_ESC6_X1][_ESC6_X2][_ESC6_X3] !?¡¿ <>[] (){}
// ~+-* ,.:; '"`^ =#$% // ~+-* ,.:; '"`^ =#$%
// |_\/ @ABC DEFG HIJK // |_\/ @ABC DEFG HIJK
// LMNO PQRS TUVW XYZ& // LMNO PQRS TUVW XYZ&
@ -54,20 +54,28 @@ public enum FCDotCDC1604DashP6 implements FourCornerDotColleZero33 {
_ESC6_X1('\u0001'), _ESC6_X1('\u0001'),
_ESC6_X2('\u0002'), _ESC6_X2('\u0002'),
_ESC6_X3('\u0003'), _ESC6_X3('\u0003'),
_NEWLINE('\n'), // ESC_
_SPACE(' '), // ESC_ here or move to DEC...
SEQ_QUESTION('?'),
SEQ_EXCLAMATION('!'),
SEQ_TAG_COMPARE_LEFT('<'), // apl/byd page lower + loop || pie/ncr terminator/denominatorm lower + loop /// End of argumented escape sequence prayer.
SEQ_TAG_COMPARE_RIGHT('>'), // up _SALAH_EXCLAMATION('!'),
NY27_TAG_SQUARE_LEFT('['), /// Next argument separator for escape sequences.
NY26_TAG_SQUARE_RIGHT(']'), _RAKA_QUESTION('?'),
NY25_TAG_ROUND_LEFT('('),
NY24_TAG_ROUND_RIGHT(')'),
NY23_TAG_CURLY_LEFT('{'),
NY22_TAG_CURLY_RIGHT('}'),
/// Use 3 pepper marks, to spice up the escape sequences.
_PEPPER_DOWNUP_EXCLAMATION('¡'),
_PEPPER_DOWNUP_QUESTION('¿'),
/// Special Argument Lexer Token, to season escape sequences.
/// For examples in ESC68_PIE; Move to left pie.
_SALT_COMPARE_LEFT('<'),
_SALT_COMPARE_RIGHT('>'),
/// Second set of number letters.
NY27_SQUARE_LEFT('['),
NY26_SQUARE_RIGHT(']'),
NY25_ROUND_LEFT('('),
NY24_ROUND_RIGHT(')'),
NY23_CURLY_LEFT('{'),
NY22_CURLY_RIGHT('}'),
NY21_TILDE('~'), NY21_TILDE('~'),
NY20_PLUS('+'), NY20_PLUS('+'),
NY19_MINUS('-'), NY19_MINUS('-'),
@ -84,12 +92,13 @@ public enum FCDotCDC1604DashP6 implements FourCornerDotColleZero33 {
NY08_HASH('#'), NY08_HASH('#'),
NY07_DOLLAR('$'), NY07_DOLLAR('$'),
NY06_PERCENT('%'), NY06_PERCENT('%'),
NY05_BAR_VERTICAL('|'), NY05_BAR_VERTICAL('|'),
NY04_BAR_UNDER('_'), NY04_BAR_UNDER('_'),
NY03_BAR_V_LEFT('\\'), NY03_BAR_V_LEFT('\\'),
NY02_BAR_V_RIGHT('/'), NY02_BAR_V_RIGHT('/'),
NY01_AT('@'), NY01_AT('@'),
/// First set of number letters.
/// The tone letter 'A' is "one", if your computer is expensive and has a lower-case char ROM, than this is 'a' after some pie glue. /// The tone letter 'A' is "one", if your computer is expensive and has a lower-case char ROM, than this is 'a' after some pie glue.
NX01_A('A'), NX01_A('A'),
NX02_B('B'), NX02_B('B'),
@ -127,7 +136,15 @@ public enum FCDotCDC1604DashP6 implements FourCornerDotColleZero33 {
private FCDotCDC1604DashP6(int codePoint) { private FCDotCDC1604DashP6(int codePoint) {
this.codePoint = codePoint; this.codePoint = codePoint;
this.baklavaSequence = List.of(ordinal()); this.baklavaSequence = List.of(baklavaPointDotIndex());
}
public int baklavaPointDotIndex() {
return ordinal();
}
public int muffinPointDotIndex() {
return baklavaPointDotIndex();
} }
@Override @Override
@ -137,7 +154,7 @@ public enum FCDotCDC1604DashP6 implements FourCornerDotColleZero33 {
@Override @Override
public int cakePointDotIndex() { public int cakePointDotIndex() {
return ordinal(); return muffinPointDotIndex();
} }
@Override @Override
@ -187,28 +204,37 @@ public enum FCDotCDC1604DashP6 implements FourCornerDotColleZero33 {
} }
static public boolean isEscape6(int cakePoint) { static public boolean isEscape6(int cakePoint) {
return cakePoint == _ESC6_X1.ordinal() || cakePoint == _ESC6_X2.ordinal() || cakePoint == _ESC6_X3.ordinal(); return cakePoint == _ESC6_X1.cakePointDotIndex() || cakePoint == _ESC6_X2.cakePointDotIndex() || cakePoint == _ESC6_X3.cakePointDotIndex();
} }
static public char escapeSignUnicode(int idx) { static public boolean isEscapeSaltLeft(int cakePoint) {
if (idx == 0) { return cakePoint == _SALT_COMPARE_LEFT.cakePointDotIndex();
return '␀'; }
}
if (idx == 1) { static public boolean isEscapeSaltRight(int cakePoint) {
return '␁'; return cakePoint == _SALT_COMPARE_RIGHT.cakePointDotIndex();
} }
if (idx == 2) {
return '␂'; static public boolean isEscapePepper(int cakePoint) {
} return cakePoint == _PEPPER_DOWNUP_EXCLAMATION.cakePointDotIndex() || cakePoint == _PEPPER_DOWNUP_QUESTION.cakePointDotIndex();
if (idx == 3) { }
return '␃';
} static public int pepper3SequenceRead(FCDotCDC1604DashP6 msb, FCDotCDC1604DashP6 csb, FCDotCDC1604DashP6 lsb) {
if (idx == 4) { int c1 = msb == FCDotCDC1604DashP6._PEPPER_DOWNUP_EXCLAMATION?0:1;
return '␄'; int c2 = csb == FCDotCDC1604DashP6._PEPPER_DOWNUP_EXCLAMATION?0:1;
} int c3 = lsb == FCDotCDC1604DashP6._PEPPER_DOWNUP_EXCLAMATION?0:1;
if (idx == 5) { return (c1 << 2) + (c2 << 1) + (c3 << 0);
return '␅'; }
}
throw new IllegalArgumentException("Unsupported index: " + idx); static public List<Integer> pepper3SequenceWritePoints(int mode) {
return pepper3SequenceWrite(mode).stream().map(v -> v.cakePointDotIndex()).toList();
}
static public List<FCDotCDC1604DashP6> pepper3SequenceWrite(int mode) {
return List.of(
((mode >> 2) & 0b1)==0?_PEPPER_DOWNUP_EXCLAMATION:_PEPPER_DOWNUP_QUESTION,
((mode >> 1) & 0b1)==0?_PEPPER_DOWNUP_EXCLAMATION:_PEPPER_DOWNUP_QUESTION,
((mode >> 0) & 0b1)==0?_PEPPER_DOWNUP_EXCLAMATION:_PEPPER_DOWNUP_QUESTION
);
} }
} }

View file

@ -1,318 +0,0 @@
/*
* Copyright (c) 2004-2014, Willem Cazander
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
* that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
* following disclaimer.
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
* the following disclaimer in the documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package org.x4o.fc18.cake2.zero33;
import java.util.ArrayList;
import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerX06BaklavaPointSequence;
import org.x4o.fc18.cake2.FourCornerX08MuffinPointSequence;
import org.x4o.fc18.cake2.FourCornerX18CakePointDotIndex;
/**
* "FC.DEC0127-PX0" Four Corner dot Direct or Escaped Control in grid of 1 by 27 of dashed CDC invisible page X Zero codes.
*
* A 6 bit computer always send 3 escapes to flag one of these escape control modes.
*
* A 8 or 18 bit computer used these escape cake points directly.
*
* NOTE: Only escapes starting with _ESC6_X3 are allowed to embed in a escape sequence.
*
* @author Willem Cazander
* @version 1.0 Dec 24, 2024
*/
public enum FCDotDEC0127DashPX0 implements FourCornerX06BaklavaPointSequence, FourCornerX08MuffinPointSequence, FourCornerX18CakePointDotIndex {
// =========== External argumented escape sequence, always has closed ending. (MUST terminate with ESC_SEQ_SALAH)
/// _ESC6_X1 _ESC6_X1 _ESC6_X1
_ESC_USER_1,
/// _ESC6_X1 _ESC6_X1 _ESC6_X2
_ESC_USER_2,
/// _ESC6_X1 _ESC6_X1 _ESC6_X3
_ESC_USER_3,
/// _ESC6_X1 _ESC6_X2 _ESC6_X1
_ESC_USER_4,
/// _ESC6_X1 _ESC6_X2 _ESC6_X2
_ESC_USER_5,
/// _ESC6_X1 _ESC6_X2 _ESC6_X3
/// Virtual Typewriter 0ctal Six bit control sequences with argumented commands which MUST end with ESC_SEQ_SALAH.
ESC_VT06,
/// _ESC6_X1 _ESC6_X3 _ESC6_X1
__ESC_RESERVED_A7,
/// _ESC6_X1 _ESC6_X3 _ESC6_X2
__ESC_RESERVED_A8,
/// _ESC6_X1 _ESC6_X3 _ESC6_X3
__ESC_RESERVED_A9,
// =========== Internal escape sequence, with mixed endings
/// _ESC6_X2 _ESC6_X1 _ESC6_X1
__ESC_RESERVED_B1,
// Escape to the Qualified Unique Above Kosmic Enlargement
// On all systems indicate that the follow escape code is an upper deck duck "FC.DEC0127-PX1" quake code
//ESC_QUAKE
/// _ESC6_X2 _ESC6_X1 _ESC6_X2
__ESC_RESERVED_B2,
/// _ESC6_X2 _ESC6_X1 _ESC6_X3
__ESC_RESERVED_B3,
/// _ESC6_X2 _ESC6_X2 _ESC6_X1
__ESC_RESERVED_B4,
/// _ESC6_X2 _ESC6_X2 _ESC6_X2
__ESC_RESERVED_B5,
/// _ESC6_X2 _ESC6_X2 _ESC6_X3
/// To escape the question of undefined behavior, we define it as dark nether space, so we can see it in C++
/// Using dark mode nether requires 18 bit cake points as we embed 15 bit data point in the cake;
///
/// ESC_NETHER
/// + ?slug + ?ESC_SEQ_RAKA_AT (None or 72 to 576 bit Número2 Lingua tree key per 72 bit slug)
/// + ?slug + ?ESC_SEQ_RAKA_AT (Up to 8 slug arguments to have max key)
/// + ESC_SEQ_SALAH + data-block as FC_NETHER in 15 bit embedded octals.
///
/// NOTE: key slug format is <6><6><6><9><6><6><6><6><6><6><9> encoded as 3 bit octals with CDC MX01_A++ "letnums".
/// On 6/8 bit systems this slug can be rendered with the ESC68_PIE.NX08_H (T008) hexa-grams octal symbols.
/// On 18 bit systems this slug can be rendered using the FC.OCE0808-H6 and FC.OCE0864-H9 data-gram encoding.
///
/// With dark nether space you can add unnamed and real dark(key is optional) undefined data segments in text.
/// With an nether DB enabled text editor, it can render for example vector graphics in source like HolyC of TempleOS.
/// The Número2 Lingua key is a sort of mime-type lookup, and later gets also definition structure and step code for type.
@Deprecated
ESC_NETHER,
/// _ESC6_X2 _ESC6_X3 _ESC6_X1
/// End of argumented escape sequence prayer.
@Deprecated
ESC_SEQ_SALAH,
/// _ESC6_X2 _ESC6_X3 _ESC6_X2
/// Next argument separator for escape sequences, and which MUST end with ESC_SEQ_SALAH.
@Deprecated
ESC_SEQ_RAKA_AT,
/// _ESC6_X2 _ESC6_X3 _ESC6_X3
/// On 6/8 bit escape to 18 bit four corner cake points.
/// Stream per six octals as CDC chars in NX01_A to NX08_H, and MUST end with ESC_SEQ_SALAH.
ESC68_FC18,
// =========== Embeddable sequences, with open or manual stopped or auto stopped ending. (stop on out of range)
/// _ESC6_X3 _ESC6_X1 _ESC6_X1
/// Select APL page 7A mode.
ESC6_APL0127_P7A,
/// _ESC6_X3 _ESC6_X1 _ESC6_X2
/// Select APL page 7B mode.
ESC6_APL0127_P7B,
/// _ESC6_X3 _ESC6_X1 _ESC6_X3
/// Select APL page 7C mode.
ESC6_APL0127_P7C,
/// _ESC6_X3 _ESC6_X2 _ESC6_X1
/// Select BYD page 7D mode.
ESC6_BYD0127_P7D,
/// _ESC6_X3 _ESC6_X2 _ESC6_X2
/// Select BYD page 7E mode.
ESC6_BYD0127_P7E,
/// _ESC6_X3 _ESC6_X2 _ESC6_X3
/// Select BYD page 7F mode.
ESC6_BYD0127_P7F,
/// _ESC6_X3 _ESC6_X3 _ESC6_X1
/// Select packed pie terminator symbol on 6 and 8 bit systems.
/// A = 1, first P6 is terminator select, than next P6 _A++ select pie part 1-27, until other P6 stops it.
/// Example ascii "012" is
/// 012 = __PIE NX10_J NX01_A NX02_B NX02_C
/// TODO: Add negative AT for -1 to -27 as P6 symbols to select PIE9D + map in __RESERVED_PIE_SYMBOLS
ESC68_PIE,
/// _ESC6_X3 _ESC6_X3 _ESC6_X2
/// Select packed pie terminator number for 6 and 8 bit systems.
/// First NXX P6 is terminator select, than next NXX P6 are values, until out of range.
/// TODO: Double range to 54 with the negative AT (= symbols) for -1=AT=28 -2=BAR_V_RIGHT=29
ESC68_NCR,
/// _ESC6_X3 _ESC6_X3 _ESC6_X3
/// An optional triple escape stops the open ended escape sequence.
ESC_STOP,
;
private static final FCDotDEC0127DashPX0[] VALUES = values();
private FCDotDEC0127DashPX0() {
}
public boolean isEmbeddable() {
if (ordinal() >= ESC6_APL0127_P7A.ordinal()) {
return true;
}
return false;
}
public boolean isExternal() {
if (ordinal() <= __ESC_RESERVED_A9.ordinal()) {
return true;
}
return false;
}
// ============ TODO: make api more nice
public List<FourCornerX08MuffinPointSequence> toX08MuffinPoints(FCDotCDC1604DashP6... letters) {
List<FourCornerX08MuffinPointSequence> result = new ArrayList<>();
result.add(this);
for (FCDotCDC1604DashP6 letter : letters) {
result.add(letter);
}
return result;
}
public List<FourCornerX06BaklavaPointSequence> toX06BaklavaPoints(FCDotCDC1604DashP6... letters) {
List<FourCornerX06BaklavaPointSequence> result = new ArrayList<>();
for (int baklave : baklavaPointSequence()) {
result.add(FCDotCDC1604DashP6.valueOf(baklave));
}
for (FCDotCDC1604DashP6 letter : letters) {
result.add(letter);
}
return result;
}
public List<Integer> toInt18BaklavaPoints(int... letters) {
List<Integer> result = new ArrayList<>();
for (int baklave : baklavaPointSequence()) {
result.add(baklave);
}
for (int letter : letters) {
result.add(letter);
}
return result;
}
public List<Integer> baklavaPointsPIE9C(FCDotCDC1604DashP6 letter, int offset) {
return List.of(
FCDotCDC1604DashP6._ESC6_X1.ordinal() + (ordinal() / 9),
FCDotCDC1604DashP6._ESC6_X1.ordinal() + ((ordinal() / 3) % 3),
FCDotCDC1604DashP6._ESC6_X1.ordinal() + (ordinal() % 3),
letter.ordinal(),
FCDotCDC1604DashP6.NX01_A.ordinal() + offset
);
}
public List<Integer> baklavaPointsPIE9D(FCDotCDC1604DashP6 letter, int offset) {
return List.of(
FCDotCDC1604DashP6._ESC6_X1.ordinal() + (ordinal() / 9),
FCDotCDC1604DashP6._ESC6_X1.ordinal() + ((ordinal() / 3) % 3),
FCDotCDC1604DashP6._ESC6_X1.ordinal() + (ordinal() % 3),
letter.ordinal(),
FCDotCDC1604DashP6.NY01_AT.ordinal() - offset
);
}
public List<Integer> baklavaPointsP7(int offset) {
return List.of(
FCDotCDC1604DashP6._ESC6_X1.ordinal() + (ordinal() / 9),
FCDotCDC1604DashP6._ESC6_X1.ordinal() + ((ordinal() / 3) % 3),
FCDotCDC1604DashP6._ESC6_X1.ordinal() + (ordinal() % 3),
FCDotCDC1604DashP6.NX01_A.ordinal() + offset
);
}
// FIXME move
public List<Integer> baklavaPointsVT06Action(FCDotCDC1604DashP6 group, FCDotCDC1604DashP6 action) {
return List.of(
FCDotCDC1604DashP6._ESC6_X1.ordinal() + (ordinal() / 9),
FCDotCDC1604DashP6._ESC6_X1.ordinal() + ((ordinal() / 3) % 3),
FCDotCDC1604DashP6._ESC6_X1.ordinal() + (ordinal() % 3),
group.ordinal(),
action.ordinal()
);
}
public List<Integer> cakePointsVT06Action(FCDotCDC1604DashP6 group, FCDotCDC1604DashP6 action) {
return List.of(
ESC_VT06.cakePointDotIndex(),
group.cakePointDotIndex(),
action.cakePointDotIndex()
);
}
@Override
public List<Integer> baklavaPointSequence() {
return List.of(
FCDotCDC1604DashP6._ESC6_X1.ordinal() + (ordinal() / 9),
FCDotCDC1604DashP6._ESC6_X1.ordinal() + ((ordinal() / 3) % 3),
FCDotCDC1604DashP6._ESC6_X1.ordinal() + (ordinal() % 3)
);
}
@Override
public List<Integer> muffinPointSequence() {
return cakePointSequence();
}
@Override
public List<Integer> cakePointSequence() {
return List.of(cakePointDotIndex());
}
@Override
public int cakePointDotIndex() {
return FourCornerDotCake.FC_DEC0127_PX0.getStart() + ordinal();
}
static public int valuesLength() {
return VALUES.length;
}
public static FCDotDEC0127DashPX0 valueOf(int idx) {
return VALUES[idx];
}
public static FCDotDEC0127DashPX0 valueOfCakePoint(int cakePoint) {
return valueOf(cakePoint - FourCornerDotCake.FC_DEC0127_PX0.getStart());
}
public static FCDotDEC0127DashPX0 valueOf(FCDotCDC1604DashP6 msb, FCDotCDC1604DashP6 csb, FCDotCDC1604DashP6 lsb) {
int idx = 0;
idx += (msb.ordinal() - FCDotCDC1604DashP6._ESC6_X1.ordinal()) * 9;
idx += (csb.ordinal() - FCDotCDC1604DashP6._ESC6_X1.ordinal()) * 3;
idx += (lsb.ordinal() - FCDotCDC1604DashP6._ESC6_X1.ordinal());
return valueOf(idx);
}
}

View file

@ -0,0 +1,101 @@
/*
* Copyright (c) 2004-2014, Willem Cazander
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
* that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
* following disclaimer.
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
* the following disclaimer in the documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package org.x4o.fc18.cake2.zero33;
import java.util.ArrayList;
import java.util.List;
import org.x4o.fc18.cake2.FourCornerX06BaklavaPointSequence;
import org.x4o.fc18.cake2.FourCornerX08MuffinPointSequence;
import org.x4o.fc18.cake2.FourCornerX18CakePointSequence;
/**
* "FC.DEC0108-E10" Four Corner dot Directly Escaped Control of 8 embedded control codes.
*
* Select data gram local text symbols for 6 and 8 bit systems.
*
* And these can be used within an user escape sequence and/or in the vt06 sequences as serial switching.
*
* @author Willem Cazander
* @version 1.0 Jan 21, 2025
*/
public enum FCDotDEC0801DashE10 implements FourCornerX06BaklavaPointSequence, FourCornerX08MuffinPointSequence, FourCornerX18CakePointSequence {
/// ¡¡¡
/// Back to normal dough
E10_CDC1604_P6,
/// ¡¡¿
/// 2 gram of BMW (booleans)
E10_BMW0102_S2,
/// ¡¿¡
/// 10 gram of AMD (decimals)
E10_AMD0110_SA,
/// ¡¿¿
/// 27 gram of NES (unvocalized-hebrew)
E10_NES0127_9C,
/// ¿¡¿
/// 3 gram of NXP (3-phase)
E10_NXP0103_S3,
/// ¿¡¿
/// 1 gram of UWU (white space)
/// Typewriter gram escape the the UWU word space word index register lookup the right white and left width for user.
E10_UWU0101_S1,
/// ¿¡¡
/// 26 gram of ICL (lowercase)
E10_ICL0126_9B,
/// ¿¿¿
/// 8 gram of OCE (octals)
E10_OCE0801_H3,
;
@Override
public List<Integer> baklavaPointSequence() {
return FCDotCDC1604DashP6.pepper3SequenceWritePoints(ordinal());
}
@Override
public List<Integer> muffinPointSequence() {
return baklavaPointSequence();
}
@Override
public List<Integer> cakePointSequence() {
return baklavaPointSequence();
}
public List<Integer> baklavaPointsE10(int offset) {
List<Integer> result = new ArrayList<>();
result.addAll(FCDotDEC2701DashPX0.ESC_DEC0801_E10.baklavaPointSequence());
result.addAll(baklavaPointSequence());
result.add(FCDotCDC1604DashP6.NX01_A.ordinal() + offset);
//result.add(FCDotCDC1604DashP6.SEQ_SALAH__EXCLAMATION.cakePointDotIndex()); // TODO: add api layer snake for head
return result;
}
}

View file

@ -0,0 +1,100 @@
/*
* Copyright (c) 2004-2014, Willem Cazander
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
* that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
* following disclaimer.
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
* the following disclaimer in the documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package org.x4o.fc18.cake2.zero33;
import java.util.ArrayList;
import java.util.List;
import org.x4o.fc18.cake2.FourCornerX06BaklavaPointSequence;
import org.x4o.fc18.cake2.FourCornerX08MuffinPointSequence;
import org.x4o.fc18.cake2.FourCornerX18CakePointSequence;
/**
* "FC.DEC0108-E16" Four Corner dot Directly Escaped Control of 8 symbols modes.
*
* @author Willem Cazander
* @version 1.0 Jan 21, 2025
*/
public enum FCDotDEC0801DashE16 implements FourCornerX06BaklavaPointSequence, FourCornerX08MuffinPointSequence, FourCornerX18CakePointSequence {
/// ¡¡¡
/// Return back to P6 mode.
ESC68_CDC1604_P6,
/// ¡¡¿
/// Select APL page 7A mode.
ESC6_APL0127_P7A,
/// ¡¿¡
/// Select APL page 7B mode.
ESC6_APL0127_P7B,
/// ¡¿¿
/// Select APL page 7C mode.
ESC6_APL0127_P7C,
/// ¿¡¿
/// Select BYD page 7D mode.
ESC6_BYD0127_P7D,
/// ¿¡¿
/// Select BYD page 7E mode.
ESC6_BYD0127_P7E,
/// ¿¡¡
/// Select BYD page 7F mode.
ESC6_BYD0127_P7F,
/// ¿¿¿
/// Select packed pie terminator symbol on 6 and 8 bit systems.
/// A = 1, first P6 is terminator select, than next P6 _A++ select pie part 1-27, until other P6 stops it.
/// Example ascii "012" is
/// 012 = __PIE NX10_J NX01_A NX02_B NX02_C
/// TODO: Add negative AT for -1 to -27 as P6 symbols to select PIE9D + map in __RESERVED_PIE_SYMBOLS
ESC68_PIE,
;
@Override
public List<Integer> baklavaPointSequence() {
return FCDotCDC1604DashP6.pepper3SequenceWritePoints(ordinal());
}
@Override
public List<Integer> muffinPointSequence() {
return baklavaPointSequence();
}
@Override
public List<Integer> cakePointSequence() {
return baklavaPointSequence();
}
public List<Integer> baklavaPointsE16(int offset) {
List<Integer> result = new ArrayList<>();
result.addAll(FCDotDEC2701DashPX0.ESC68_DEC0801_E16.baklavaPointSequence());
result.addAll(baklavaPointSequence());
result.add(FCDotCDC1604DashP6.NX01_A.ordinal() + offset);
//result.add(FCDotCDC1604DashP6.SEQ_SALAH__EXCLAMATION.cakePointDotIndex()); // TODO: add api layer snake for head
return result;
}
}

View file

@ -0,0 +1,79 @@
/*
* Copyright (c) 2004-2014, Willem Cazander
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
* that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
* following disclaimer.
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
* the following disclaimer in the documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package org.x4o.fc18.cake2.zero33;
import java.util.List;
import org.x4o.fc18.cake2.FourCornerX06BaklavaPointSequence;
import org.x4o.fc18.cake2.FourCornerX08MuffinPointSequence;
import org.x4o.fc18.cake2.FourCornerX18CakePointSequence;
/**
* "FC.DEC0108-E19" Four Corner dot Directly Escaped Control of 8 embedded control codes.
*
* @author Willem Cazander
* @version 1.0 Jan 21, 2025
*/
public enum FCDotDEC0801DashE19 implements FourCornerX06BaklavaPointSequence, FourCornerX08MuffinPointSequence, FourCornerX18CakePointSequence {
/// ¡¡¡
/// Write out an basic structure NEXT token, also called a line feed with automatic carriage return.
TYPE_WRITER_TTY0001_NL,
/// ¡¡¿
__RESERVED_2,
/// ¡¿¡
__RESERVED_3,
/// ¡¿¿
__RESERVED_4,
/// ¿¡¿
__RESERVED_5,
/// ¿¡¿
__RESERVED_6,
/// ¿¡¡
__RESERVED_7,
/// ¿¿¿
__RESERVED_8,
;
@Override
public List<Integer> baklavaPointSequence() {
return FCDotCDC1604DashP6.pepper3SequenceWritePoints(ordinal());
}
@Override
public List<Integer> muffinPointSequence() {
return baklavaPointSequence();
}
@Override
public List<Integer> cakePointSequence() {
return baklavaPointSequence();
}
}

View file

@ -0,0 +1,43 @@
/*
* Copyright (c) 2004-2014, Willem Cazander
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
* that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
* following disclaimer.
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
* the following disclaimer in the documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package org.x4o.fc18.cake2.zero33;
/**
* "FC.DEC0901-EU" Four Corner dot Directly Escaped Control of 9 Extra User control codes.
*
* @author Willem Cazander
* @version 1.0 Jan 21, 2025
*/
public enum FCDotDEC0901DashEU {
ESC_USER_1,
ESC_USER_2,
ESC_USER_3,
ESC_USER_4,
ESC_USER_5,
ESC_USER_6,
ESC_USER_7,
ESC_USER_8,
ESC_USER_9,
;
}

View file

@ -0,0 +1,216 @@
/*
* Copyright (c) 2004-2014, Willem Cazander
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
* that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
* following disclaimer.
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
* the following disclaimer in the documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package org.x4o.fc18.cake2.zero33;
import java.util.List;
import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerX06BaklavaPointSequence;
import org.x4o.fc18.cake2.FourCornerX08MuffinPointSequence;
import org.x4o.fc18.cake2.FourCornerX18CakePointDotIndex;
/**
* "FC.DEC0127-PX0" Four Corner dot Direct or Escaped Control in grid of 1 by 27 of dashed CDC invisible page X Zero codes.
*
* A 6 bit computer always send 3 escapes to flag one of these escape control modes.
*
* A 8 or 18 bit computer used these escape cake points directly.
*
* NOTE: Only escapes starting with _ESC6_X3 are allowed to embed in a escape sequence.
*
* @author Willem Cazander
* @version 1.0 Dec 24, 2024
*/
public enum FCDotDEC2701DashPX0 implements FourCornerX06BaklavaPointSequence, FourCornerX08MuffinPointSequence, FourCornerX18CakePointDotIndex {
// =========== External escape sequence, who MUST terminate with SEQ_SALAH__EXCLAMATION.
/// _ESC6_X1 _ESC6_X1 _ESC6_X1 = 1
_ESC_USER_1,
/// _ESC6_X1 _ESC6_X1 _ESC6_X2 = 2
_ESC_USER_2,
/// _ESC6_X1 _ESC6_X1 _ESC6_X3 = 3
_ESC_USER_3,
/// _ESC6_X1 _ESC6_X2 _ESC6_X1 = 4
_ESC_USER_4,
/// _ESC6_X1 _ESC6_X2 _ESC6_X2 = 5
_ESC_USER_5,
/// _ESC6_X1 _ESC6_X2 _ESC6_X3 = 6
_ESC_USER_6,
/// _ESC6_X1 _ESC6_X3 _ESC6_X1 = 7
_ESC_USER_7,
/// _ESC6_X1 _ESC6_X3 _ESC6_X2 = 8
_ESC_USER_8,
/// _ESC6_X1 _ESC6_X3 _ESC6_X3 = 9
_ESC_USER_9,
// =========== Internal escape sequence, to embed symbols,fractions and adult texts.
/// _ESC6_X2 _ESC6_X1 _ESC6_X1 = 10
/// Embed data gram codes with pepper and salt in text and end with !
/// In the above 9 "user" escapes and in ESC_VT06 this can be used without this prefix to switch.
ESC_DEC0801_E10,
/// _ESC6_X2 _ESC6_X1 _ESC6_X2 = 11
/// If your machine has KANJI roms and display engine support than embed using this.
/// Single argument serial bank switching kanji KuTen escape string must end with !
/// Token to select plane;
/// _PEPPER_DOWNUP_EXCLAMATION = JIS X 0208 plane 1 (DEFAULT and in MSX1++ ROMs)
/// _PEPPER_DOWNUP_QUESTION = JIS X 0213 plane 2
/// _SALT_COMPARE_LEFT = JIS X reserved plane 3
/// _SALT_COMPARE_RIGHT = JIS X reserved plane 4
/// Token to select KuTen
/// NY10_CARET - NY18_ASTERISK = posimal(1-9) MSB of KuTen (1=DEFAULT)
/// NY01_AT - NY09_EQUALS = posimal(1-9) LSB of KuTen (1=DEFAULT)
/// NX17_Q - NX22_V = Ten row (0-16-32-48-64-80) (0=DEFAULT)
/// Token to fire a glyph dough character;
/// NX01_A - NX16_P = 0x0 - 0xF
/// Token to reset banking to first value
/// NX27_AMPERSAND = bank reset
/// Example escape for 𪚲鳦; (last used than first used glyph or G=2-94-87 and B=2-94-1)
/// [3*ESC]¿*_VGQB!
ESC_KANJI,
/// _ESC6_X2 _ESC6_X1 _ESC6_X3 = 12
__ESC_RESERVED_B3,
/// _ESC6_X2 _ESC6_X2 _ESC6_X1 = 13
__ESC_RESERVED_B4,
/// _ESC6_X2 _ESC6_X2 _ESC6_X2 = 14
__ESC_RESERVED_B5,
/// _ESC6_X2 _ESC6_X2 _ESC6_X3 = 15
__ESC_RESERVED_B6,
/// _ESC6_X2 _ESC6_X3 _ESC6_X1 = 16
/// Embed symbol mode starts in CDC, use sequence of 3 UPDOWN letters to select mode and end with !
ESC68_DEC0801_E16,
/// _ESC6_X2 _ESC6_X3 _ESC6_X2 = 17
/// Select packed pie terminator number for 6 and 8 bit systems.
/// First NXX P6 is terminator select, than next NXX P6 are values, until out of range.
/// TODO: Double range to 54 with the negative AT (= symbols) for -1=AT=28 -2=BAR_V_RIGHT=29
ESC68_NCR,
/// _ESC6_X2 _ESC6_X3 _ESC6_X3 = 18
/// On 6/8 bit escape to 18 bit four corner cake points.
/// Stream per six octals as CDC chars in NX01_A to NX08_H, and MUST end with !.
ESC68_FC18,
// =========== Internal control sequences
/// _ESC6_X3 _ESC6_X1 _ESC6_X1 = 19
/// Extra sequence selector for type writer signals.
ESC68_DEC0801_E19,
/// _ESC6_X3 _ESC6_X1 _ESC6_X2 = 20
__ESC_RESERVED_C2,
/// _ESC6_X3 _ESC6_X1 _ESC6_X3 = 21
__ESC_RESERVED_C3,
/// _ESC6_X3 _ESC6_X2 _ESC6_X1 = 22
__ESC_RESERVED_C4,
/// _ESC6_X3 _ESC6_X2 _ESC6_X2 = 23
__ESC_RESERVED_C5,
/// _ESC6_X3 _ESC6_X2 _ESC6_X3 = 24
__ESC_RESERVED_C6,
/// _ESC6_X3 _ESC6_X3 _ESC6_X1 = 25
__ESC_RESERVED_C7,
/// _ESC6_X3 _ESC6_X3 _ESC6_X2 = 26
/// Virtual Typewriter 0ctal Six bit control sequences with argumented commands which MUST end with !
ESC_VT06,
/// _ESC6_X3 _ESC6_X3 _ESC6_X3 = 27
/// An optional triple escape stops the open ended escape sequence.
ESC_STOP,
;
private static final FCDotDEC2701DashPX0[] VALUES = values();
private FCDotDEC2701DashPX0() {
}
public boolean isExternal() {
if (ordinal() <= _ESC_USER_9.ordinal()) {
return true;
}
return false;
}
@Override
public List<Integer> baklavaPointSequence() {
return List.of(
FCDotCDC1604DashP6._ESC6_X1.ordinal() + (ordinal() / 9),
FCDotCDC1604DashP6._ESC6_X1.ordinal() + ((ordinal() / 3) % 3),
FCDotCDC1604DashP6._ESC6_X1.ordinal() + (ordinal() % 3)
);
}
@Override
public List<Integer> muffinPointSequence() {
return cakePointSequence();
}
@Override
public List<Integer> cakePointSequence() {
return List.of(cakePointDotIndex());
}
@Override
public int cakePointDotIndex() {
return FourCornerDotCake.FC_DEC0127_PX0.getStart() + ordinal();
}
static public int valuesLength() {
return VALUES.length;
}
static public FCDotDEC2701DashPX0 valueOf(int idx) {
return VALUES[idx];
}
static public FCDotDEC2701DashPX0 valueOfCakePoint(int cakePoint) {
return valueOf(cakePoint - FourCornerDotCake.FC_DEC0127_PX0.getStart());
}
static public FCDotDEC2701DashPX0 valueOf(FCDotCDC1604DashP6 msb, FCDotCDC1604DashP6 csb, FCDotCDC1604DashP6 lsb) {
int idx = 0;
idx += (msb.ordinal() - FCDotCDC1604DashP6._ESC6_X1.ordinal()) * 9;
idx += (csb.ordinal() - FCDotCDC1604DashP6._ESC6_X1.ordinal()) * 3;
idx += (lsb.ordinal() - FCDotCDC1604DashP6._ESC6_X1.ordinal());
return valueOf(idx);
}
}

View file

@ -27,7 +27,6 @@ import java.util.Objects;
import org.x4o.fc18.cake2.FourCornerDotColleZero33VT; import org.x4o.fc18.cake2.FourCornerDotColleZero33VT;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* The "VT-06.0A" cursor action sequences. * The "VT-06.0A" cursor action sequences.
@ -63,11 +62,11 @@ public enum VTDash06DotZeroACursor implements FourCornerDotColleZero33VT {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC_VT06.baklavaPointsVT06Action(actionGroup, action); return baklavaPointsVT06Action(actionGroup, action);
} }
@Override @Override
public List<Integer> cakePointSequence() { public List<Integer> cakePointSequence() {
return FCDotDEC0127DashPX0.ESC_VT06.cakePointsVT06Action(actionGroup, action); return cakePointsVT06Action(actionGroup, action);
} }
} }

View file

@ -27,7 +27,6 @@ import java.util.Objects;
import org.x4o.fc18.cake2.FourCornerDotColleZero33VT; import org.x4o.fc18.cake2.FourCornerDotColleZero33VT;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/** /**
* The "VT-06.0A" cursor action sequences. * The "VT-06.0A" cursor action sequences.
@ -54,11 +53,11 @@ public enum VTDash06DotZeroCClear implements FourCornerDotColleZero33VT {
@Override @Override
public List<Integer> baklavaPointSequence() { public List<Integer> baklavaPointSequence() {
return FCDotDEC0127DashPX0.ESC_VT06.baklavaPointsVT06Action(actionGroup, action); return baklavaPointsVT06Action(actionGroup, action);
} }
@Override @Override
public List<Integer> cakePointSequence() { public List<Integer> cakePointSequence() {
return FCDotDEC0127DashPX0.ESC_VT06.cakePointsVT06Action(actionGroup, action); return cakePointsVT06Action(actionGroup, action);
} }
} }

View file

@ -24,7 +24,7 @@ package org.x4o.fc18.zion7;
import java.util.List; import java.util.List;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0; import org.x4o.fc18.cake2.zero33.FCDotDEC0901DashEU;
/// Handles the lexer salah sequence strobes. /// Handles the lexer salah sequence strobes.
/// ///
@ -32,5 +32,5 @@ import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/// @version 1.0 Jan 11, 2025 /// @version 1.0 Jan 11, 2025
public interface FourCornerZion7SalahSequence extends FourCornerZion7Candlelier { public interface FourCornerZion7SalahSequence extends FourCornerZion7Candlelier {
void strobeSalahSequence(FCDotDEC0127DashPX0 type, List<List<Integer>> arguments); void strobeSalahSequence(FCDotDEC0901DashEU type, List<List<Integer>> arguments);
} }

View file

@ -0,0 +1,35 @@
/*
* Copyright (c) 2004-2014, Willem Cazander
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
* that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
* following disclaimer.
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
* the following disclaimer in the documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package org.x4o.fc18.zion7;
import java.util.List;
import org.x4o.fc18.cake2.zero33.FCDotDEC0901DashEU;
/// Handles the lexer water codex strobes.
///
/// @author Willem Cazander
/// @version 1.0 Jan 22, 2025
public interface FourCornerZion7WaterCodex extends FourCornerZion7Candlelier {
}

View file

@ -26,11 +26,14 @@ import java.math.BigInteger;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
import java.util.Optional;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0; import org.x4o.fc18.cake2.zero33.FCDotDEC0801DashE10;
import org.x4o.fc18.cake2.zero33.FCDotDEC0801DashE16;
import org.x4o.fc18.cake2.zero33.FCDotDEC0801DashE19;
import org.x4o.fc18.cake2.zero33.FCDotDEC0901DashEU;
import org.x4o.fc18.cake2.zero33.FCDotDEC2701DashPX0;
/// Parsed FC text and calls the handler methods for the classified strobe lights. /// Parsed FC text and calls the handler methods for the classified strobe lights.
/// ///
@ -386,11 +389,12 @@ public class FourCornerZionStenoLexer {
static class StenoScannerCDCDEC extends StenoScanner { static class StenoScannerCDCDEC extends StenoScanner {
// TODO: remove state here // TODO: remove state here
private Integer numberMode = null;
private boolean numberPIE = true;
private FCDotDEC0127DashPX0 decMode = null;
private int scanIndex = 0; private int scanIndex = 0;
private int scanIndexEnd = 0; private int scanIndexEnd = 0;
private Integer ncrMode = null;
private Integer pieMode = null;
private FCDotDEC2701DashPX0 decMode = null;
private Integer pepperMode = null;
public StenoScannerCDCDEC() { public StenoScannerCDCDEC() {
super(FourCornerDotCake.FC_CDC1604_P6.getStart(), FourCornerDotCake.FC_DEC0127_PX0.getStop()); super(FourCornerDotCake.FC_CDC1604_P6.getStart(), FourCornerDotCake.FC_DEC0127_PX0.getStop());
@ -398,51 +402,76 @@ public class FourCornerZionStenoLexer {
@Override @Override
public void process(FourCornerZionStenoLexer lexer, int idxFirst, int idxLast) { public void process(FourCornerZionStenoLexer lexer, int idxFirst, int idxLast) {
numberMode = null; decMode = null;
numberPIE = true; ncrMode = null;
pieMode = null;
pepperMode = null;
scanIndex = idxFirst; scanIndex = idxFirst;
scanIndexEnd = idxLast; scanIndexEnd = idxLast;
for (scanIndex = idxFirst; scanIndex <= idxLast; scanIndex++) { for (scanIndex = idxFirst; scanIndex <= scanIndexEnd; scanIndex++) {
int cdcDECPoint = lexer.input.get(scanIndex); if (handleEscape(lexer)) {
// Log state changes
if (FCDotCDC1604DashP6._NEWLINE.ordinal() == cdcDECPoint) {
lexer.currLine++;
lexer.currCol = 0;
lexer.fireSignals.fireStateLine(lexer.currLine);
lexer.fireSignals.fireStateColumn(lexer.currCol);
}
// No escaping, print CDC or DEC code
if (!lexer.handlerEscape) {
if (FourCornerDotCake.FC_DEC0127_PX0.contains(cdcDECPoint)) {
lexer.handler.strobeWord(FourCornerDotCake.FC_DEC0127_PX0, cdcDECPoint - FourCornerDotCake.FC_DEC0127_PX0.getStart());
} else {
lexer.handler.strobeWord(FourCornerDotCake.FC_CDC1604_P6, cdcDECPoint);
}
continue; continue;
} }
if (decMode != null && handleDECMode(lexer)) {
// Handle 6 bit CDC and 6/8/18 bit DEC codes continue;
handleCDCDEC(lexer, cdcDECPoint, null); }
int cdcDECPoint = lexer.input.get(scanIndex);
if (FourCornerDotCake.FC_DEC0127_PX0.contains(cdcDECPoint)) {
lexer.handler.strobeWord(FourCornerDotCake.FC_DEC0127_PX0, cdcDECPoint - FourCornerDotCake.FC_DEC0127_PX0.getStart());
} else {
lexer.handler.strobeWord(FourCornerDotCake.FC_CDC1604_P6, cdcDECPoint);
}
} }
} }
private FCDotDEC0127DashPX0 readEscape6(FourCornerZionStenoLexer lexer, int cdcPoint1) { private void cleanOldDECMode() {
// Read 8 or 18 bit Direct Escape Code pepperMode = null;
if (FourCornerDotCake.FC_DEC0127_PX0.contains(cdcPoint1)) { ncrMode = null;
return FCDotDEC0127DashPX0.valueOfCakePoint(cdcPoint1); pieMode = null;
}
private boolean handleEscape(FourCornerZionStenoLexer lexer) {
if (!lexer.handlerEscape) {
return false; // disable escape handing
} }
// Read 6 bit escape sequence int cdcDECPoint = lexer.input.get(scanIndex);
FCDotCDC1604DashP6 x1 = FCDotCDC1604DashP6.valueOf(cdcPoint1); if (FourCornerDotCake.FC_DEC0127_PX0.contains(cdcDECPoint)) {
FCDotCDC1604DashP6 x2 = null; decMode = FCDotDEC2701DashPX0.valueOfCakePoint(cdcDECPoint);
FCDotCDC1604DashP6 x3 = null; cleanOldDECMode();
return true;
} else if (FCDotCDC1604DashP6.isEscape6(cdcDECPoint)) {
decMode = readEscape6(lexer);
cleanOldDECMode();
return true;
}
// TODO: move this code where used
if (FCDotCDC1604DashP6.isEscapePepper(cdcDECPoint)) {
pepperMode = readEscapePepper3(lexer);
// pepper is allowed to be last char of stream of ending with new line ending
if (FCDotDEC2701DashPX0.ESC68_DEC0801_E19.equals(decMode)) {
FCDotDEC0801DashE19 e19Mode = FCDotDEC0801DashE19.values()[pepperMode];
if (e19Mode == FCDotDEC0801DashE19.TYPE_WRITER_TTY0001_NL) {
decMode = null;
pepperMode = null;
lexer.handler.strobeWord(FourCornerDotCake.FC_TTY0001_NL, 0); // new line
return true;
}
lexer.smokeSignals.burnUnsupported(lexer.currLine, lexer.currCol, pepperMode);
}
return true;
}
return false;
}
private FCDotDEC2701DashPX0 readEscape6(FourCornerZionStenoLexer lexer) {
int cdcPoint1 = lexer.input.get(scanIndex);
if (scanIndex >= scanIndexEnd) { if (scanIndex >= scanIndexEnd) {
return null; return null;
} }
scanIndex++; scanIndex++;
int cdcPoint2 = lexer.input.get(scanIndex); int cdcPoint2 = lexer.input.get(scanIndex);
if (FCDotCDC1604DashP6.isEscape6(cdcPoint2)) { if (!FCDotCDC1604DashP6.isEscape6(cdcPoint2)) {
x2 = FCDotCDC1604DashP6.valueOf(cdcPoint2);
} else {
return null; return null;
} }
if (scanIndex >= scanIndexEnd) { if (scanIndex >= scanIndexEnd) {
@ -450,223 +479,255 @@ public class FourCornerZionStenoLexer {
} }
scanIndex++; scanIndex++;
int cdcPoint3 = lexer.input.get(scanIndex); int cdcPoint3 = lexer.input.get(scanIndex);
if (FCDotCDC1604DashP6.isEscape6(cdcPoint3)) { if (!FCDotCDC1604DashP6.isEscape6(cdcPoint3)) {
x3 = FCDotCDC1604DashP6.valueOf(cdcPoint3);
} else {
return null; return null;
} }
return FCDotDEC0127DashPX0.valueOf(x1, x2, x3); FCDotCDC1604DashP6 x1 = FCDotCDC1604DashP6.valueOf(cdcPoint1);
FCDotCDC1604DashP6 x2 = FCDotCDC1604DashP6.valueOf(cdcPoint2);
FCDotCDC1604DashP6 x3 = FCDotCDC1604DashP6.valueOf(cdcPoint3);
return FCDotDEC2701DashPX0.valueOf(x1, x2, x3);
} }
private void handleCDCDEC(FourCornerZionStenoLexer lexer, int cdcPoint, FCDotDEC0127DashPX0 startMode) { private Integer readEscapePepper3(FourCornerZionStenoLexer lexer) {
int cdcPoint1 = lexer.input.get(scanIndex);
// TODO: make simple if (scanIndex >= scanIndexEnd) {
return null;
if (startMode != null) {
numberMode = null;
decMode = startMode;
} }
// Start of escape scanIndex++;
if (FCDotCDC1604DashP6.isEscape6(cdcPoint) || FourCornerDotCake.FC_DEC0127_PX0.contains(cdcPoint)) { int cdcPoint2 = lexer.input.get(scanIndex);
numberMode = null; // out of range, thus stop if (!FCDotCDC1604DashP6.isEscapePepper(cdcPoint2)) {
decMode = readEscape6(lexer, cdcPoint); return null;
if (decMode == null) {
lexer.smokeSignals.burnInvalidEscape(lexer.currLine, lexer.currCol, cdcPoint);
return;
}
if (decMode == FCDotDEC0127DashPX0.ESC68_PIE || decMode == FCDotDEC0127DashPX0.ESC68_NCR) {
if (scanIndex >= scanIndexEnd) {
return;
}
scanIndex++;
numberMode = lexer.input.get(scanIndex);
numberPIE = decMode == FCDotDEC0127DashPX0.ESC68_PIE; // is false for NCR
if (numberMode < FCDotCDC1604DashP6.NX01_A.ordinal()) {
cdcPoint = numberMode; // print char
numberMode = null; // invalid selector, thus stop
} else {
if (scanIndex >= scanIndexEnd) {
return;
}
scanIndex++;
cdcPoint = lexer.input.get(scanIndex); // fetch next letter, for number mode
}
} else {
boolean modeDone = readDECMode(lexer);
if (modeDone) {
return; // fetch next
}
if (scanIndex >= scanIndexEnd) {
return;
}
scanIndex++;
cdcPoint = lexer.input.get(scanIndex); // is used by readEscape6, thus read again
}
} }
if (scanIndex >= scanIndexEnd) {
// Escape without body and new escape ... return null;
if (FCDotCDC1604DashP6.isEscape6(cdcPoint) || FourCornerDotCake.FC_DEC0127_PX0.contains(cdcPoint)) {
//goto next_escape; TODO: add extra loop to remove stack here...
handleCDCDEC(lexer, cdcPoint, startMode);
return;
} }
scanIndex++;
// FIXME: this pages need a stop on out of range too int cdcPoint3 = lexer.input.get(scanIndex);
if (decMode == FCDotDEC0127DashPX0.ESC6_APL0127_P7A) { if (!FCDotCDC1604DashP6.isEscapePepper(cdcPoint3)) {
lexer.handler.strobeWord(FourCornerDotCake.FC_APL0127_P7A, cdcPoint - FCDotCDC1604DashP6.NX01_A.ordinal()); return null;
return;
}
if (decMode == FCDotDEC0127DashPX0.ESC6_APL0127_P7B) {
lexer.handler.strobeWord(FourCornerDotCake.FC_APL0127_P7B, cdcPoint - FCDotCDC1604DashP6.NX01_A.ordinal());
return;
}
if (decMode == FCDotDEC0127DashPX0.ESC6_APL0127_P7C) {
lexer.handler.strobeWord(FourCornerDotCake.FC_APL0127_P7C, cdcPoint - FCDotCDC1604DashP6.NX01_A.ordinal());
return;
}
if (decMode == FCDotDEC0127DashPX0.ESC6_BYD0127_P7D) {
lexer.handler.strobeWord(FourCornerDotCake.FC_BYD0127_P7D, cdcPoint - FCDotCDC1604DashP6.NX01_A.ordinal());
return;
}
if (decMode == FCDotDEC0127DashPX0.ESC6_BYD0127_P7E) {
lexer.handler.strobeWord(FourCornerDotCake.FC_BYD0127_P7E, cdcPoint - FCDotCDC1604DashP6.NX01_A.ordinal());
return;
}
if (decMode == FCDotDEC0127DashPX0.ESC6_BYD0127_P7F) {
lexer.handler.strobeWord(FourCornerDotCake.FC_BYD0127_P7F, cdcPoint - FCDotCDC1604DashP6.NX01_A.ordinal());
return;
}
//System.out.println("decMode="+decMode + " cdcPoint: " + cdcPoint + " numnerMode: " + numberMode);
if (decMode == FCDotDEC0127DashPX0.ESC_STOP) {
//decMode = null;
numberMode = null; // stop requested, print normal
}
if (numberMode != null && (cdcPoint > numberMode)) {
numberMode = null; // out of range
}
if (numberMode != null && (cdcPoint < FCDotCDC1604DashP6.NX01_A.ordinal())) {
numberMode = null; // below index 1 is end number mode
}
if (numberMode == null) {
Optional<FourCornerDotCake> slice = FourCornerDotCake.valueFromCakePoint(cdcPoint);
if (slice.isEmpty()) {
lexer.smokeSignals.burnUnsupported(lexer.currLine, lexer.currCol, cdcPoint);
return;
}
lexer.handler.strobeWord(slice.get(), cdcPoint);
return;
}
if (numberPIE) {
int terminatorOffZero = numberMode - FCDotCDC1604DashP6.NX01_A.ordinal();
int numberIdxOffZero = cdcPoint - FCDotCDC1604DashP6.NX01_A.ordinal();
FourCornerDotCake slice = FourCornerDotCake.values()[terminatorOffZero + FourCornerDotCake.FC_PIE9C_01.ordinal()];
lexer.handler.strobeWord(slice, numberIdxOffZero);
} else { // _PIN = ²
int terminatorOff = numberMode - FCDotCDC1604DashP6.NX01_A.ordinal() + 1;
int numberIdxOff = cdcPoint - FCDotCDC1604DashP6.NX01_A.ordinal() + 1;
BigInteger denominator = BigInteger.valueOf(terminatorOff);
BigInteger numerator = BigInteger.valueOf(numberIdxOff);
lexer.handler.strobeNCR1632(denominator, numerator);
} }
FCDotCDC1604DashP6 x1 = FCDotCDC1604DashP6.valueOf(cdcPoint1);
FCDotCDC1604DashP6 x2 = FCDotCDC1604DashP6.valueOf(cdcPoint2);
FCDotCDC1604DashP6 x3 = FCDotCDC1604DashP6.valueOf(cdcPoint3);
return FCDotCDC1604DashP6.pepper3SequenceRead(x1, x2, x3);
} }
private boolean readDECMode(FourCornerZionStenoLexer lexer) { private boolean handleDECMode(FourCornerZionStenoLexer lexer) {
for (FCDotDEC0127DashPX0 salahMode : FCDotDEC0127DashPX0.values()) { if (FCDotDEC2701DashPX0.ESC_STOP.equals(decMode)) {
if (!salahMode.isExternal()) { cleanOldDECMode();
continue; decMode = null;
} return false; // print current char
if (salahMode.equals(decMode)) {
if (salahMode.name().startsWith("__")) {
lexer.smokeSignals.burnSalahDECUnsupported(lexer.currLine, lexer.currCol, decMode);
return false;
}
List<List<Integer>> args = new ArrayList<>();
scanSalahRakaAt(lexer, args);
if (!args.isEmpty() && lexer.handlerSalahSequence != null) {
lexer.handlerSalahSequence.strobeSalahSequence(salahMode, args);
}
return true;
}
} }
if (FCDotDEC0127DashPX0.ESC68_FC18.equals(decMode)) { if (decMode.isExternal()) {
List<List<Integer>> result = new ArrayList<>(); List<List<Integer>> args = new ArrayList<>();
scanSalahRakaAt(lexer, result); boolean readOK = scanSalahRakaAt(lexer, args);
if (result.isEmpty()) { if (readOK == false) {
return false; return true; // point is eaten
} }
List<Integer> renderCakePoints = new ArrayList<>(); if (lexer.handlerSalahSequence != null) {
for (List<Integer> argu : result) { FCDotDEC0901DashEU salahMode = FCDotDEC0901DashEU.values()[decMode.ordinal()];
int cakePointArgu = 0; lexer.handlerSalahSequence.strobeSalahSequence(salahMode, args);
int cakePointIdx = 6;
for (Integer octal : argu) {
if (octal < FCDotCDC1604DashP6.NX01_A.ordinal()) {
continue;
}
if (octal > FCDotCDC1604DashP6.NX08_H.ordinal()) {
continue;
}
int offset = octal - FCDotCDC1604DashP6.NX01_A.ordinal();
cakePointArgu = cakePointArgu + (offset << (cakePointIdx*3));
cakePointIdx--;
if (cakePointIdx < 0) {
renderCakePoints.add(cakePointArgu);
cakePointIdx = 6;
cakePointArgu = 0;
}
}
} }
lexer.handler.strobeRecursiveCake(renderCakePoints);
return true; return true;
} }
if (pepperMode != null) {
return handlePepper(lexer);
}
if (FCDotDEC2701DashPX0.ESC68_NCR.equals(decMode)) {
return handleNCR(lexer); // TODO: add small bank switching ?
}
if (FCDotDEC2701DashPX0.ESC68_FC18.equals(decMode)) {
decMode = null;
return handleFC18(lexer);
}
if (FCDotDEC2701DashPX0.ESC_VT06.equals(decMode)) {
// TODO: impl
}
if (FCDotDEC2701DashPX0.ESC_KANJI.equals(decMode)) {
// TODO: impl
}
return false; return false;
} }
private ScanResult scanSalahRakaAt(FourCornerZionStenoLexer lexer, List<List<Integer>> result) { private boolean handlePepper(FourCornerZionStenoLexer lexer) {
int cdcPoint = lexer.input.get(scanIndex);
if (FCDotDEC2701DashPX0.ESC_DEC0801_E10.equals(decMode)) {
FCDotDEC0801DashE10 e10Mode = FCDotDEC0801DashE10.values()[pepperMode];
if (e10Mode == FCDotDEC0801DashE10.E10_UWU0101_S1) {
decMode = null;
pepperMode = null;
lexer.handler.strobeWord(FourCornerDotCake.FC_UWU0101_S1, 0); // white space
return false; // print current char, which is the next....
}
lexer.smokeSignals.burnUnsupported(lexer.currLine, lexer.currCol, cdcPoint);
return false;
}
if (FCDotDEC2701DashPX0.ESC68_DEC0801_E16.equals(decMode)) {
FCDotDEC0801DashE16 e10Mode = FCDotDEC0801DashE16.values()[pepperMode];
if (e10Mode == FCDotDEC0801DashE16.ESC68_CDC1604_P6) {
pepperMode = null;
return true;
}
// TODO: add PIE left/right + elevator button support
if (cdcPoint < FCDotCDC1604DashP6.NX01_A.ordinal()) {
pepperMode = null;
return false;
}
if (e10Mode == FCDotDEC0801DashE16.ESC6_APL0127_P7A) {
lexer.handler.strobeWord(FourCornerDotCake.FC_APL0127_P7A, cdcPoint - FCDotCDC1604DashP6.NX01_A.ordinal());
return true;
}
if (e10Mode == FCDotDEC0801DashE16.ESC6_APL0127_P7B) {
lexer.handler.strobeWord(FourCornerDotCake.FC_APL0127_P7B, cdcPoint - FCDotCDC1604DashP6.NX01_A.ordinal());
return true;
}
if (e10Mode == FCDotDEC0801DashE16.ESC6_APL0127_P7C) {
lexer.handler.strobeWord(FourCornerDotCake.FC_APL0127_P7C, cdcPoint - FCDotCDC1604DashP6.NX01_A.ordinal());
return true;
}
if (e10Mode == FCDotDEC0801DashE16.ESC6_BYD0127_P7D) {
lexer.handler.strobeWord(FourCornerDotCake.FC_BYD0127_P7D, cdcPoint - FCDotCDC1604DashP6.NX01_A.ordinal());
return true;
}
if (e10Mode == FCDotDEC0801DashE16.ESC6_BYD0127_P7E) {
lexer.handler.strobeWord(FourCornerDotCake.FC_BYD0127_P7E, cdcPoint - FCDotCDC1604DashP6.NX01_A.ordinal());
return true;
}
if (e10Mode == FCDotDEC0801DashE16.ESC6_BYD0127_P7F) {
lexer.handler.strobeWord(FourCornerDotCake.FC_BYD0127_P7F, cdcPoint - FCDotCDC1604DashP6.NX01_A.ordinal());
return true;
}
if (e10Mode == FCDotDEC0801DashE16.ESC68_PIE) {
return handlePIE(lexer);
}
}
return false;
}
private boolean handlePIE(FourCornerZionStenoLexer lexer) {
int cdcPoint = lexer.input.get(scanIndex);
if (pieMode == null) {
pieMode = cdcPoint;
if (pieMode < FCDotCDC1604DashP6.NX01_A.ordinal()) {
pieMode = null; // invalid selector, thus stop
return false; // print char
} else {
return true;
}
}
if (pieMode != null) {
if (cdcPoint < FCDotCDC1604DashP6.NX01_A.ordinal()) {
pieMode = null;
return false;
}
if (cdcPoint > pieMode) {
pieMode = null;
return false;
}
}
int terminatorOffZero = pieMode - FCDotCDC1604DashP6.NX01_A.ordinal();
int numberIdxOffZero = cdcPoint - FCDotCDC1604DashP6.NX01_A.ordinal();
FourCornerDotCake slice = FourCornerDotCake.values()[terminatorOffZero + FourCornerDotCake.FC_PIE9C_01.ordinal()];
lexer.handler.strobeWord(slice, numberIdxOffZero);
return true;
}
private boolean handleNCR(FourCornerZionStenoLexer lexer) {
int cdcPoint = lexer.input.get(scanIndex);
if (ncrMode == null) {
ncrMode = cdcPoint;
if (ncrMode < FCDotCDC1604DashP6.NX01_A.ordinal()) {
ncrMode = null; // invalid selector, thus stop
return false; // print char
} else {
return true;
}
}
if (ncrMode != null) {
if (cdcPoint < FCDotCDC1604DashP6.NX01_A.ordinal()) {
ncrMode = null;
return false;
}
if (cdcPoint > ncrMode) {
ncrMode = null;
return false;
}
}
int terminatorOff = ncrMode - FCDotCDC1604DashP6.NX01_A.ordinal() + 1;
int numberIdxOff = cdcPoint - FCDotCDC1604DashP6.NX01_A.ordinal() + 1;
BigInteger denominator = BigInteger.valueOf(terminatorOff);
BigInteger numerator = BigInteger.valueOf(numberIdxOff);
lexer.handler.strobeNCR1632(denominator, numerator);
return true;
}
private boolean handleFC18(FourCornerZionStenoLexer lexer) {
List<List<Integer>> result = new ArrayList<>();
scanSalahRakaAt(lexer, result);
if (result.isEmpty()) {
return true;
}
List<Integer> renderCakePoints = new ArrayList<>();
for (List<Integer> argu : result) {
int cakePointArgu = 0;
int cakePointIdx = 6;
for (Integer octal : argu) {
if (octal < FCDotCDC1604DashP6.NX01_A.ordinal()) {
continue;
}
if (octal > FCDotCDC1604DashP6.NX08_H.ordinal()) {
continue;
}
int offset = octal - FCDotCDC1604DashP6.NX01_A.ordinal();
cakePointArgu = cakePointArgu + (offset << (cakePointIdx*3));
cakePointIdx--;
if (cakePointIdx < 0) {
renderCakePoints.add(cakePointArgu);
cakePointIdx = 6;
cakePointArgu = 0;
}
}
}
if (renderCakePoints.isEmpty()) {
return true;
}
lexer.handler.strobeRecursiveCake(renderCakePoints);
return true;
}
private boolean scanSalahRakaAt(FourCornerZionStenoLexer lexer, List<List<Integer>> result) {
List<Integer> argu = new ArrayList<>(); List<Integer> argu = new ArrayList<>();
while (scanIndex <= scanIndexEnd) { while (scanIndex <= scanIndexEnd) {
scanIndex++;
int cdcPoint = lexer.input.get(scanIndex); int cdcPoint = lexer.input.get(scanIndex);
if (cdcPoint == FCDotCDC1604DashP6._NUL.ordinal()) { if (cdcPoint == FCDotCDC1604DashP6._NUL.ordinal()) {
lexer.smokeSignals.burnSalahInvalidCakePoint(lexer.currLine, lexer.currCol, cdcPoint); lexer.smokeSignals.burnSalahInvalidCakePoint(lexer.currLine, lexer.currCol, cdcPoint);
result.clear(); result.clear();
return ScanResult.NEXT; // _NUL not allowed salah scanIndex--;
return false; // _NUL not allowed salah
} }
if (FCDotCDC1604DashP6.isEscape6(cdcPoint) || FourCornerDotCake.FC_DEC0127_PX0.contains(cdcPoint)) { if (FCDotCDC1604DashP6.isEscape6(cdcPoint)) {
FCDotDEC0127DashPX0 embedESC = readEscape6(lexer, cdcPoint);
if (embedESC == null) {
lexer.smokeSignals.burnInvalidEscape(lexer.currLine, lexer.currCol, cdcPoint);
result.clear();
return ScanResult.NEXT;
}
if (FCDotDEC0127DashPX0.ESC_SEQ_SALAH.equals(embedESC)) {
result.add(argu);
return ScanResult.DONE; // 6/8/18 bits are DONE
}
if (FCDotDEC0127DashPX0.ESC_SEQ_RAKA_AT.equals(embedESC)) {
result.add(argu);
argu = new ArrayList<>();
//if (safeNext(input).isEOF()) {
// return ScanResult.EOF;
//}
continue; // Next argument
}
if (!embedESC.isEmbeddable()) {
lexer.smokeSignals.burnSalahDECIllegal(lexer.currLine, lexer.currCol, embedESC);
result.clear();
return ScanResult.NEXT;
}
// FIXME: this is wrong
//handleCDCDEC(lexer, cdcPoint, embedESC);
result.add(argu); result.add(argu);
continue; scanIndex--;
return true;
} }
if (FCDotCDC1604DashP6._SALAH_EXCLAMATION.ordinal() == cdcPoint) {
result.add(argu);
return true;
}
if (FCDotCDC1604DashP6._RAKA_QUESTION.ordinal() == cdcPoint) {
result.add(argu);
argu = new ArrayList<>();
scanIndex++;
continue; // Next argument
}
scanIndex++;
argu.add(cdcPoint); argu.add(cdcPoint);
} }
lexer.smokeSignals.burnSalahMissingAmen(lexer.currLine, lexer.currCol); lexer.smokeSignals.burnSalahMissingAmen(lexer.currLine, lexer.currCol);
result.clear(); result.clear();
return ScanResult.NEXT; return false;
} }
} }
} }

View file

@ -22,8 +22,6 @@
*/ */
package org.x4o.fc18.zion7; package org.x4o.fc18.zion7;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0;
/// Provides lexer smoke signals feedback. /// Provides lexer smoke signals feedback.
/// ///
/// @author Willem Cazander /// @author Willem Cazander
@ -37,10 +35,6 @@ public interface FourCornerZionStenoLexerSmoke {
void burnSalahInvalidCakePoint(int line, int col, int cakePoint); void burnSalahInvalidCakePoint(int line, int col, int cakePoint);
void burnSalahDECUnsupported(int line, int col, FCDotDEC0127DashPX0 mode);
void burnSalahDECIllegal(int line, int col, FCDotDEC0127DashPX0 mode);
void burnSalahMissingAmen(int line, int col); void burnSalahMissingAmen(int line, int col);
@ -57,14 +51,6 @@ public interface FourCornerZionStenoLexerSmoke {
default void burnSalahInvalidCakePoint(int line, int col, int cakePoint) { default void burnSalahInvalidCakePoint(int line, int col, int cakePoint) {
} }
@Override
default void burnSalahDECUnsupported(int line, int col, FCDotDEC0127DashPX0 mode) {
}
@Override
default void burnSalahDECIllegal(int line, int col, FCDotDEC0127DashPX0 mode) {
}
@Override @Override
default void burnSalahMissingAmen(int line, int col) { default void burnSalahMissingAmen(int line, int col) {
} }

View file

@ -31,7 +31,9 @@ import org.junit.jupiter.api.Test;
import org.x4o.fc18.cake2.FourCornerX06BaklavaPointSequence; import org.x4o.fc18.cake2.FourCornerX06BaklavaPointSequence;
import org.x4o.fc18.cake2.pie9c.FCDotPIE9CDash26; import org.x4o.fc18.cake2.pie9c.FCDotPIE9CDash26;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0; import org.x4o.fc18.cake2.zero33.FCDotDEC0801DashE10;
import org.x4o.fc18.cake2.zero33.FCDotDEC0801DashE16;
import org.x4o.fc18.cake2.zero33.FCDotDEC2701DashPX0;
/** /**
* Tests four corner displayed as unicode. * Tests four corner displayed as unicode.
@ -46,32 +48,38 @@ public class FourCornerUnicodeDisplayTest {
List<FourCornerX06BaklavaPointSequence> cdc = new ArrayList<>(); List<FourCornerX06BaklavaPointSequence> cdc = new ArrayList<>();
cdc.add(FCDotPIE9CDash26.LOW_A); cdc.add(FCDotPIE9CDash26.LOW_A);
cdc.add(FCDotPIE9CDash26.LOW_B); // if used as this per letter full escaping here.... cdc.add(FCDotPIE9CDash26.LOW_B); // if used as this per letter full escaping here....
cdc.add(FCDotCDC1604DashP6._SPACE); // out of range is end lower //cdc.add(FCDotCDC1604DashP6._SPACE); // out of range is end lower
cdc.add(FCDotDEC2701DashPX0.ESC_DEC0801_E10);
cdc.add(FCDotDEC0801DashE10.E10_UWU0101_S1);
cdc.add(FCDotCDC1604DashP6.NX02_B); cdc.add(FCDotCDC1604DashP6.NX02_B);
cdc.add(FCDotCDC1604DashP6.NX03_C); cdc.add(FCDotCDC1604DashP6.NX03_C);
cdc.add(FCDotCDC1604DashP6.NX04_D); cdc.add(FCDotCDC1604DashP6.NX04_D);
cdc.add(FCDotCDC1604DashP6.NY16_DOT); cdc.add(FCDotCDC1604DashP6.NY16_DOT);
cdc.addAll(FCDotDEC0127DashPX0.ESC68_PIE.toX06BaklavaPoints()); cdc.add(FCDotDEC2701DashPX0.ESC68_DEC0801_E16);
cdc.add(FCDotDEC0801DashE16.ESC68_PIE);
cdc.add(FCDotCDC1604DashP6.NX26_Z); // select lower case cdc.add(FCDotCDC1604DashP6.NX26_Z); // select lower case
cdc.add(FCDotCDC1604DashP6.NX10_J); cdc.add(FCDotCDC1604DashP6.NX10_J);
cdc.add(FCDotCDC1604DashP6.NX11_K); cdc.add(FCDotCDC1604DashP6.NX11_K);
cdc.add(FCDotCDC1604DashP6.NX12_L); cdc.add(FCDotCDC1604DashP6.NX12_L);
cdc.add(FCDotCDC1604DashP6.NX13_M); cdc.add(FCDotCDC1604DashP6.NX13_M);
cdc.addAll(FCDotDEC0127DashPX0.ESC_STOP.toX06BaklavaPoints()); cdc.add(FCDotDEC2701DashPX0.ESC_STOP);
cdc.add(FCDotCDC1604DashP6.NX15_O); cdc.add(FCDotCDC1604DashP6.NX15_O);
Assertions.assertEquals("ab BCD.jklmO", FourCornerUnicodeDisplay.text().renderFromX06(cdc)); Assertions.assertEquals("ab BCD.jklmO", FourCornerUnicodeDisplay.text().renderFromX06(cdc));
Assertions.assertEquals("␃␃␁ZA␃␃␁ZB BCD.␃␃␁ZJKLM␃␃␃O", FourCornerUnicodeDisplay.raw().renderFromX06(cdc)); //Assertions.assertEquals("␃␃␁ZA␃␃␁ZB BCD.␃␃␁ZJKLM␃␃␃O", FourCornerUnicodeDisplay.raw().renderFromX06(cdc));
Assertions.assertEquals("␇␘␆¿¿¿ZA␇␘␆¿¿¿ZB␇␆␆¿¡¿BCD.␇␘␆¿¿¿ZJKLM␘␘␘O", FourCornerUnicodeDisplay.raw().renderFromX06(cdc));
} }
@Test @Test
public void testNumberTerminatorOutOfRange() throws Exception { public void testNumberTerminatorOutOfRange() throws Exception {
List<FourCornerX06BaklavaPointSequence> cdc = new ArrayList<>(); List<FourCornerX06BaklavaPointSequence> cdc = new ArrayList<>();
cdc.add(FCDotCDC1604DashP6.NX24_X); // = X cdc.add(FCDotCDC1604DashP6.NX24_X); // = X
cdc.addAll(FCDotDEC0127DashPX0.ESC68_PIE.toX06BaklavaPoints()); cdc.add(FCDotDEC2701DashPX0.ESC68_DEC0801_E16);
cdc.add(FCDotDEC0801DashE16.ESC68_PIE);
cdc.add(FCDotCDC1604DashP6.NY10_CARET); // ^ cdc.add(FCDotCDC1604DashP6.NY10_CARET); // ^
cdc.add(FCDotCDC1604DashP6.NY06_PERCENT); // = % cdc.add(FCDotCDC1604DashP6.NY06_PERCENT); // = %
cdc.addAll(FCDotDEC0127DashPX0.ESC68_PIE.toX06BaklavaPoints()); cdc.add(FCDotDEC2701DashPX0.ESC68_DEC0801_E16);
cdc.add(FCDotDEC0801DashE16.ESC68_PIE);
cdc.add(FCDotCDC1604DashP6.NY01_AT); cdc.add(FCDotCDC1604DashP6.NY01_AT);
cdc.add(FCDotCDC1604DashP6.NX11_K); // = K cdc.add(FCDotCDC1604DashP6.NX11_K); // = K
@ -81,10 +89,12 @@ public class FourCornerUnicodeDisplayTest {
@Test @Test
public void testNumberPieOutOfRange() throws Exception { public void testNumberPieOutOfRange() throws Exception {
List<FourCornerX06BaklavaPointSequence> cdc = new ArrayList<>(); List<FourCornerX06BaklavaPointSequence> cdc = new ArrayList<>();
cdc.addAll(FCDotDEC0127DashPX0.ESC68_PIE.toX06BaklavaPoints()); cdc.add(FCDotDEC2701DashPX0.ESC68_DEC0801_E16);
cdc.add(FCDotDEC0801DashE16.ESC68_PIE);
cdc.add(FCDotCDC1604DashP6.NX01_A); cdc.add(FCDotCDC1604DashP6.NX01_A);
cdc.add(FCDotCDC1604DashP6.NX02_B); // B cdc.add(FCDotCDC1604DashP6.NX02_B); // B
cdc.addAll(FCDotDEC0127DashPX0.ESC68_PIE.toX06BaklavaPoints()); cdc.add(FCDotDEC2701DashPX0.ESC68_DEC0801_E16);
cdc.add(FCDotDEC0801DashE16.ESC68_PIE);
cdc.add(FCDotCDC1604DashP6.NX10_J); cdc.add(FCDotCDC1604DashP6.NX10_J);
cdc.add(FCDotCDC1604DashP6.NX04_D); // 3 cdc.add(FCDotCDC1604DashP6.NX04_D); // 3
cdc.add(FCDotCDC1604DashP6.NX11_K); // K cdc.add(FCDotCDC1604DashP6.NX11_K); // K
@ -101,9 +111,9 @@ public class FourCornerUnicodeDisplayTest {
cdc.add(FCDotCDC1604DashP6.NY20_PLUS.ordinal()); cdc.add(FCDotCDC1604DashP6.NY20_PLUS.ordinal());
cdc.addAll(FourCornerUnicodeMapper.DICTIONARY.embedUNI2K("𑀳𑁂𑀮𑀺𑀉𑁄𑀤𑁄𑀭𑁂𑀡 𑀪𑀸𑀕")); cdc.addAll(FourCornerUnicodeMapper.DICTIONARY.embedUNI2K("𑀳𑁂𑀮𑀺𑀉𑁄𑀤𑁄𑀭𑁂𑀡 𑀪𑀸𑀕"));
cdc.add(FCDotCDC1604DashP6.NY14_SEMICOLON.ordinal()); cdc.add(FCDotCDC1604DashP6.NY14_SEMICOLON.ordinal());
cdc.add(FCDotCDC1604DashP6._NEWLINE.ordinal()); //cdc.add(FCDotCDC1604DashP6._NEWLINE.ordinal());
String outputExpected = "W=©Δ∞ 仙上主天+𑀳𑁂𑀮𑀺𑀉𑁄𑀤𑁄𑀭𑁂𑀡 𑀪𑀸𑀕;\n"; String outputExpected = "W=©Δ∞ 仙上主天+𑀳𑁂𑀮𑀺𑀉𑁄𑀤𑁄𑀭𑁂𑀡 𑀪𑀸𑀕;";
Assertions.assertEquals(outputExpected, FourCornerUnicodeDisplay.text().renderFromInt18(cdc)); Assertions.assertEquals(outputExpected, FourCornerUnicodeDisplay.text().renderFromInt18(cdc));
int bitsUTF8 = outputExpected.getBytes(StandardCharsets.UTF_8).length*8; int bitsUTF8 = outputExpected.getBytes(StandardCharsets.UTF_8).length*8;

View file

@ -32,7 +32,8 @@ import org.x4o.fc18.cake2.FourCornerX18CakePointSequence;
import org.x4o.fc18.cake2.pie9c.FCDotPIE9CDash10; import org.x4o.fc18.cake2.pie9c.FCDotPIE9CDash10;
import org.x4o.fc18.cake2.pie9c.FCDotPIE9CDash26; import org.x4o.fc18.cake2.pie9c.FCDotPIE9CDash26;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0; import org.x4o.fc18.cake2.zero33.FCDotDEC0801DashE19;
import org.x4o.fc18.cake2.zero33.FCDotDEC2701DashPX0;
/** /**
* Tests four corner unicode import. * Tests four corner unicode import.
@ -64,17 +65,20 @@ public class FourCornerUnicodeImportTest {
List<FourCornerX06BaklavaPointSequence> cdc = FourCornerUnicodeImport.strict().convertToX06("foobar"); List<FourCornerX06BaklavaPointSequence> cdc = FourCornerUnicodeImport.strict().convertToX06("foobar");
Assertions.assertNotNull(cdc); Assertions.assertNotNull(cdc);
Assertions.assertFalse(cdc.isEmpty()); Assertions.assertFalse(cdc.isEmpty());
Assertions.assertEquals(10, cdc.size()); Assertions.assertEquals(13, cdc.size());
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3, cdc.get(0)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X2, cdc.get(0));
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3, cdc.get(1)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3, cdc.get(1));
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X1, cdc.get(2)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X1, cdc.get(2));
Assertions.assertEquals(FCDotCDC1604DashP6.NX26_Z, cdc.get(3)); Assertions.assertEquals(FCDotCDC1604DashP6._PEPPER_DOWNUP_QUESTION, cdc.get(3));
Assertions.assertEquals(FCDotCDC1604DashP6.NX06_F, cdc.get(4)); Assertions.assertEquals(FCDotCDC1604DashP6._PEPPER_DOWNUP_QUESTION, cdc.get(4));
Assertions.assertEquals(FCDotCDC1604DashP6.NX15_O, cdc.get(5)); Assertions.assertEquals(FCDotCDC1604DashP6._PEPPER_DOWNUP_QUESTION, cdc.get(5));
Assertions.assertEquals(FCDotCDC1604DashP6.NX15_O, cdc.get(6)); Assertions.assertEquals(FCDotCDC1604DashP6.NX26_Z, cdc.get(6));
Assertions.assertEquals(FCDotCDC1604DashP6.NX02_B, cdc.get(7)); Assertions.assertEquals(FCDotCDC1604DashP6.NX06_F, cdc.get(7));
Assertions.assertEquals(FCDotCDC1604DashP6.NX01_A, cdc.get(8)); Assertions.assertEquals(FCDotCDC1604DashP6.NX15_O, cdc.get(8));
Assertions.assertEquals(FCDotCDC1604DashP6.NX18_R, cdc.get(9)); Assertions.assertEquals(FCDotCDC1604DashP6.NX15_O, cdc.get(9));
Assertions.assertEquals(FCDotCDC1604DashP6.NX02_B, cdc.get(10));
Assertions.assertEquals(FCDotCDC1604DashP6.NX01_A, cdc.get(11));
Assertions.assertEquals(FCDotCDC1604DashP6.NX18_R, cdc.get(12));
String out = FourCornerUnicodeDisplay.text().renderFromX06(cdc); String out = FourCornerUnicodeDisplay.text().renderFromX06(cdc);
Assertions.assertEquals("foobar", out); Assertions.assertEquals("foobar", out);
@ -85,20 +89,23 @@ public class FourCornerUnicodeImportTest {
List<FourCornerX06BaklavaPointSequence> cdc = FourCornerUnicodeImport.strict().convertToX06("fooBAR"); List<FourCornerX06BaklavaPointSequence> cdc = FourCornerUnicodeImport.strict().convertToX06("fooBAR");
Assertions.assertNotNull(cdc); Assertions.assertNotNull(cdc);
Assertions.assertFalse(cdc.isEmpty()); Assertions.assertFalse(cdc.isEmpty());
Assertions.assertEquals(13, cdc.size()); Assertions.assertEquals(16, cdc.size());
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3, cdc.get(0)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X2, cdc.get(0));
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3, cdc.get(1)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3, cdc.get(1));
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X1, cdc.get(2)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X1, cdc.get(2));
Assertions.assertEquals(FCDotCDC1604DashP6.NX26_Z, cdc.get(3)); Assertions.assertEquals(FCDotCDC1604DashP6._PEPPER_DOWNUP_QUESTION, cdc.get(3));
Assertions.assertEquals(FCDotCDC1604DashP6.NX06_F, cdc.get(4)); Assertions.assertEquals(FCDotCDC1604DashP6._PEPPER_DOWNUP_QUESTION, cdc.get(4));
Assertions.assertEquals(FCDotCDC1604DashP6.NX15_O, cdc.get(5)); Assertions.assertEquals(FCDotCDC1604DashP6._PEPPER_DOWNUP_QUESTION, cdc.get(5));
Assertions.assertEquals(FCDotCDC1604DashP6.NX15_O, cdc.get(6)); Assertions.assertEquals(FCDotCDC1604DashP6.NX26_Z, cdc.get(6));
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3, cdc.get(7)); Assertions.assertEquals(FCDotCDC1604DashP6.NX06_F, cdc.get(7));
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3, cdc.get(8)); Assertions.assertEquals(FCDotCDC1604DashP6.NX15_O, cdc.get(8));
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3, cdc.get(9)); Assertions.assertEquals(FCDotCDC1604DashP6.NX15_O, cdc.get(9));
Assertions.assertEquals(FCDotCDC1604DashP6.NX02_B, cdc.get(10)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3, cdc.get(10));
Assertions.assertEquals(FCDotCDC1604DashP6.NX01_A, cdc.get(11)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3, cdc.get(11));
Assertions.assertEquals(FCDotCDC1604DashP6.NX18_R, cdc.get(12)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3, cdc.get(12));
Assertions.assertEquals(FCDotCDC1604DashP6.NX02_B, cdc.get(13));
Assertions.assertEquals(FCDotCDC1604DashP6.NX01_A, cdc.get(14));
Assertions.assertEquals(FCDotCDC1604DashP6.NX18_R, cdc.get(15));
String out = FourCornerUnicodeDisplay.text().renderFromX06(cdc); String out = FourCornerUnicodeDisplay.text().renderFromX06(cdc);
Assertions.assertEquals("fooBAR", out); Assertions.assertEquals("fooBAR", out);
@ -109,16 +116,19 @@ public class FourCornerUnicodeImportTest {
List<FourCornerX08MuffinPointSequence> cdc = FourCornerUnicodeImport.strict().convertToX08("fooBAR"); List<FourCornerX08MuffinPointSequence> cdc = FourCornerUnicodeImport.strict().convertToX08("fooBAR");
Assertions.assertNotNull(cdc); Assertions.assertNotNull(cdc);
Assertions.assertFalse(cdc.isEmpty()); Assertions.assertFalse(cdc.isEmpty());
Assertions.assertEquals(9, cdc.size()); Assertions.assertEquals(12, cdc.size());
Assertions.assertEquals(FCDotDEC0127DashPX0.ESC68_PIE, cdc.get(0)); Assertions.assertEquals(FCDotDEC2701DashPX0.ESC68_DEC0801_E16, cdc.get(0));
Assertions.assertEquals(FCDotCDC1604DashP6.NX26_Z, cdc.get(1)); Assertions.assertEquals(FCDotCDC1604DashP6._PEPPER_DOWNUP_QUESTION, cdc.get(1));
Assertions.assertEquals(FCDotCDC1604DashP6.NX06_F, cdc.get(2)); Assertions.assertEquals(FCDotCDC1604DashP6._PEPPER_DOWNUP_QUESTION, cdc.get(2));
Assertions.assertEquals(FCDotCDC1604DashP6.NX15_O, cdc.get(3)); Assertions.assertEquals(FCDotCDC1604DashP6._PEPPER_DOWNUP_QUESTION, cdc.get(3));
Assertions.assertEquals(FCDotCDC1604DashP6.NX15_O, cdc.get(4)); Assertions.assertEquals(FCDotCDC1604DashP6.NX26_Z, cdc.get(4));
Assertions.assertEquals(FCDotDEC0127DashPX0.ESC_STOP, cdc.get(5)); Assertions.assertEquals(FCDotCDC1604DashP6.NX06_F, cdc.get(5));
Assertions.assertEquals(FCDotCDC1604DashP6.NX02_B, cdc.get(6)); Assertions.assertEquals(FCDotCDC1604DashP6.NX15_O, cdc.get(6));
Assertions.assertEquals(FCDotCDC1604DashP6.NX01_A, cdc.get(7)); Assertions.assertEquals(FCDotCDC1604DashP6.NX15_O, cdc.get(7));
Assertions.assertEquals(FCDotCDC1604DashP6.NX18_R, cdc.get(8)); Assertions.assertEquals(FCDotDEC2701DashPX0.ESC_STOP, cdc.get(8));
Assertions.assertEquals(FCDotCDC1604DashP6.NX02_B, cdc.get(9));
Assertions.assertEquals(FCDotCDC1604DashP6.NX01_A, cdc.get(10));
Assertions.assertEquals(FCDotCDC1604DashP6.NX18_R, cdc.get(11));
String out = FourCornerUnicodeDisplay.text().renderFromX08(cdc); String out = FourCornerUnicodeDisplay.text().renderFromX08(cdc);
Assertions.assertEquals("fooBAR", out); Assertions.assertEquals("fooBAR", out);
@ -171,19 +181,22 @@ public class FourCornerUnicodeImportTest {
List<FourCornerX06BaklavaPointSequence> cdc = FourCornerUnicodeImport.strict().convertToX06("01201337"); List<FourCornerX06BaklavaPointSequence> cdc = FourCornerUnicodeImport.strict().convertToX06("01201337");
Assertions.assertNotNull(cdc); Assertions.assertNotNull(cdc);
Assertions.assertFalse(cdc.isEmpty()); Assertions.assertFalse(cdc.isEmpty());
Assertions.assertEquals(12, cdc.size()); Assertions.assertEquals(15, cdc.size());
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3, cdc.get(0)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X2, cdc.get(0));
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3, cdc.get(1)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3, cdc.get(1));
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X1, cdc.get(2)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X1, cdc.get(2));
Assertions.assertEquals(FCDotCDC1604DashP6.NX10_J, cdc.get(3)); Assertions.assertEquals(FCDotCDC1604DashP6._PEPPER_DOWNUP_QUESTION, cdc.get(3));
Assertions.assertEquals(FCDotCDC1604DashP6.NX01_A, cdc.get(4)); // 0 Assertions.assertEquals(FCDotCDC1604DashP6._PEPPER_DOWNUP_QUESTION, cdc.get(4));
Assertions.assertEquals(FCDotCDC1604DashP6.NX02_B, cdc.get(5)); // 1 Assertions.assertEquals(FCDotCDC1604DashP6._PEPPER_DOWNUP_QUESTION, cdc.get(5));
Assertions.assertEquals(FCDotCDC1604DashP6.NX03_C, cdc.get(6)); // 2 Assertions.assertEquals(FCDotCDC1604DashP6.NX10_J, cdc.get(6));
Assertions.assertEquals(FCDotCDC1604DashP6.NX01_A, cdc.get(7)); // 0 Assertions.assertEquals(FCDotCDC1604DashP6.NX01_A, cdc.get(7)); // 0
Assertions.assertEquals(FCDotCDC1604DashP6.NX02_B, cdc.get(8)); // 1 Assertions.assertEquals(FCDotCDC1604DashP6.NX02_B, cdc.get(8)); // 1
Assertions.assertEquals(FCDotCDC1604DashP6.NX04_D, cdc.get(9)); // 3 Assertions.assertEquals(FCDotCDC1604DashP6.NX03_C, cdc.get(9)); // 2
Assertions.assertEquals(FCDotCDC1604DashP6.NX04_D, cdc.get(10)); // 3 Assertions.assertEquals(FCDotCDC1604DashP6.NX01_A, cdc.get(10)); // 0
Assertions.assertEquals(FCDotCDC1604DashP6.NX08_H, cdc.get(11)); // 7 Assertions.assertEquals(FCDotCDC1604DashP6.NX02_B, cdc.get(11)); // 1
Assertions.assertEquals(FCDotCDC1604DashP6.NX04_D, cdc.get(12)); // 3
Assertions.assertEquals(FCDotCDC1604DashP6.NX04_D, cdc.get(13)); // 3
Assertions.assertEquals(FCDotCDC1604DashP6.NX08_H, cdc.get(14)); // 7
String out = FourCornerUnicodeDisplay.text().renderFromX06(cdc); String out = FourCornerUnicodeDisplay.text().renderFromX06(cdc);
Assertions.assertEquals("01201337", out); Assertions.assertEquals("01201337", out);
@ -194,17 +207,20 @@ public class FourCornerUnicodeImportTest {
List<FourCornerX08MuffinPointSequence> cdc = FourCornerUnicodeImport.strict().convertToX08("01201337"); List<FourCornerX08MuffinPointSequence> cdc = FourCornerUnicodeImport.strict().convertToX08("01201337");
Assertions.assertNotNull(cdc); Assertions.assertNotNull(cdc);
Assertions.assertFalse(cdc.isEmpty()); Assertions.assertFalse(cdc.isEmpty());
Assertions.assertEquals(10, cdc.size()); Assertions.assertEquals(13, cdc.size());
Assertions.assertEquals(FCDotDEC0127DashPX0.ESC68_PIE, cdc.get(0)); Assertions.assertEquals(FCDotDEC2701DashPX0.ESC68_DEC0801_E16, cdc.get(0));
Assertions.assertEquals(FCDotCDC1604DashP6.NX10_J, cdc.get(1)); Assertions.assertEquals(FCDotCDC1604DashP6._PEPPER_DOWNUP_QUESTION, cdc.get(1));
Assertions.assertEquals(FCDotCDC1604DashP6.NX01_A, cdc.get(2)); // 0 Assertions.assertEquals(FCDotCDC1604DashP6._PEPPER_DOWNUP_QUESTION, cdc.get(2));
Assertions.assertEquals(FCDotCDC1604DashP6.NX02_B, cdc.get(3)); // 1 Assertions.assertEquals(FCDotCDC1604DashP6._PEPPER_DOWNUP_QUESTION, cdc.get(3));
Assertions.assertEquals(FCDotCDC1604DashP6.NX03_C, cdc.get(4)); // 2 Assertions.assertEquals(FCDotCDC1604DashP6.NX10_J, cdc.get(4));
Assertions.assertEquals(FCDotCDC1604DashP6.NX01_A, cdc.get(5)); // 0 Assertions.assertEquals(FCDotCDC1604DashP6.NX01_A, cdc.get(5)); // 0
Assertions.assertEquals(FCDotCDC1604DashP6.NX02_B, cdc.get(6)); // 1 Assertions.assertEquals(FCDotCDC1604DashP6.NX02_B, cdc.get(6)); // 1
Assertions.assertEquals(FCDotCDC1604DashP6.NX04_D, cdc.get(7)); // 3 Assertions.assertEquals(FCDotCDC1604DashP6.NX03_C, cdc.get(7)); // 2
Assertions.assertEquals(FCDotCDC1604DashP6.NX04_D, cdc.get(8)); // 3 Assertions.assertEquals(FCDotCDC1604DashP6.NX01_A, cdc.get(8)); // 0
Assertions.assertEquals(FCDotCDC1604DashP6.NX08_H, cdc.get(9)); // 7 Assertions.assertEquals(FCDotCDC1604DashP6.NX02_B, cdc.get(9)); // 1
Assertions.assertEquals(FCDotCDC1604DashP6.NX04_D, cdc.get(10)); // 3
Assertions.assertEquals(FCDotCDC1604DashP6.NX04_D, cdc.get(11)); // 3
Assertions.assertEquals(FCDotCDC1604DashP6.NX08_H, cdc.get(12)); // 7
String out = FourCornerUnicodeDisplay.text().renderFromX08(cdc); String out = FourCornerUnicodeDisplay.text().renderFromX08(cdc);
Assertions.assertEquals("01201337", out); Assertions.assertEquals("01201337", out);
@ -234,15 +250,19 @@ public class FourCornerUnicodeImportTest {
List<FourCornerX06BaklavaPointSequence> cdc = FourCornerUnicodeImport.strict().convertToX06("A\nB\rC\r\nD\n"); List<FourCornerX06BaklavaPointSequence> cdc = FourCornerUnicodeImport.strict().convertToX06("A\nB\rC\r\nD\n");
Assertions.assertNotNull(cdc); Assertions.assertNotNull(cdc);
Assertions.assertFalse(cdc.isEmpty()); Assertions.assertFalse(cdc.isEmpty());
Assertions.assertEquals(8, cdc.size()); Assertions.assertEquals(12, cdc.size());
Assertions.assertEquals(FCDotCDC1604DashP6.NX01_A, cdc.get(0)); Assertions.assertEquals(FCDotCDC1604DashP6.NX01_A, cdc.get(0));
Assertions.assertEquals(FCDotCDC1604DashP6._NEWLINE, cdc.get(1)); Assertions.assertEquals(FCDotDEC2701DashPX0.ESC68_DEC0801_E19, cdc.get(1));
Assertions.assertEquals(FCDotCDC1604DashP6.NX02_B, cdc.get(2)); Assertions.assertEquals(FCDotDEC0801DashE19.TYPE_WRITER_TTY0001_NL, cdc.get(2));
Assertions.assertEquals(FCDotCDC1604DashP6._NEWLINE, cdc.get(3)); Assertions.assertEquals(FCDotCDC1604DashP6.NX02_B, cdc.get(3));
Assertions.assertEquals(FCDotCDC1604DashP6.NX03_C, cdc.get(4)); Assertions.assertEquals(FCDotDEC2701DashPX0.ESC68_DEC0801_E19, cdc.get(4));
Assertions.assertEquals(FCDotCDC1604DashP6._NEWLINE, cdc.get(5)); Assertions.assertEquals(FCDotDEC0801DashE19.TYPE_WRITER_TTY0001_NL, cdc.get(5));
Assertions.assertEquals(FCDotCDC1604DashP6.NX04_D, cdc.get(6)); Assertions.assertEquals(FCDotCDC1604DashP6.NX03_C, cdc.get(6));
Assertions.assertEquals(FCDotCDC1604DashP6._NEWLINE, cdc.get(7)); Assertions.assertEquals(FCDotDEC2701DashPX0.ESC68_DEC0801_E19, cdc.get(7));
Assertions.assertEquals(FCDotDEC0801DashE19.TYPE_WRITER_TTY0001_NL, cdc.get(8));
Assertions.assertEquals(FCDotCDC1604DashP6.NX04_D, cdc.get(9));
Assertions.assertEquals(FCDotDEC2701DashPX0.ESC68_DEC0801_E19, cdc.get(10));
Assertions.assertEquals(FCDotDEC0801DashE19.TYPE_WRITER_TTY0001_NL, cdc.get(11));
String out = FourCornerUnicodeDisplay.text().renderFromX06(cdc); String out = FourCornerUnicodeDisplay.text().renderFromX06(cdc);
Assertions.assertEquals("A\nB\nC\nD\n", out); Assertions.assertEquals("A\nB\nC\nD\n", out);

View file

@ -29,7 +29,7 @@ import java.util.List;
import org.x4o.fc18.FourCornerUnicodeDisplay; import org.x4o.fc18.FourCornerUnicodeDisplay;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0; import org.x4o.fc18.cake2.zero33.FCDotDEC2701DashPX0;
import org.x4o.o2o.io.ContentWriterHtml.Tag; import org.x4o.o2o.io.ContentWriterHtml.Tag;
import org.x4o.o2o.io.sax3.ContentCloseable; import org.x4o.o2o.io.sax3.ContentCloseable;
import org.x4o.o2o.tdoc.ApiDocContentCss; import org.x4o.o2o.tdoc.ApiDocContentCss;
@ -82,7 +82,7 @@ public class FCDocPageWriterBaklava implements ApiDocPageWriter, FCDocSegmentWri
} }
List<Integer> piNum = new ArrayList<>(); List<Integer> piNum = new ArrayList<>();
//piNum.add(FCDotCDC1604DashP6.__NCR68.ordinal());\ //piNum.add(FCDotCDC1604DashP6.__NCR68.ordinal());\
for (int letter : FCDotDEC0127DashPX0.ESC68_NCR.baklavaPointSequence()) { for (int letter : FCDotDEC2701DashPX0.ESC68_NCR.baklavaPointSequence()) {
piNum.add(letter); piNum.add(letter);
} }
piNum.add(FCDotCDC1604DashP6.NX01_A.ordinal() + t); piNum.add(FCDotCDC1604DashP6.NX01_A.ordinal() + t);

View file

@ -37,30 +37,25 @@ public class FCDotDEC0127DashPX0Test {
@Test @Test
public void testSize() throws Exception { public void testSize() throws Exception {
Assertions.assertEquals(27, FCDotDEC0127DashPX0.values().length); Assertions.assertEquals(27, FCDotDEC2701DashPX0.values().length);
} }
@Test @Test
public void testBaklavaSequence() throws Exception { public void testBaklavaSequence() throws Exception {
List<Integer> seq = null; List<Integer> seq = null;
seq = FCDotDEC0127DashPX0._ESC_USER_1.baklavaPointSequence(); seq = FCDotDEC2701DashPX0._ESC_USER_1.baklavaPointSequence();
Assertions.assertEquals(3, seq.size()); Assertions.assertEquals(3, seq.size());
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X1.ordinal(), seq.get(0)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X1.ordinal(), seq.get(0));
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X1.ordinal(), seq.get(1)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X1.ordinal(), seq.get(1));
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X1.ordinal(), seq.get(2)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X1.ordinal(), seq.get(2));
seq = FCDotDEC0127DashPX0.ESC_VT06.baklavaPointSequence(); seq = FCDotDEC2701DashPX0.ESC_VT06.baklavaPointSequence();
Assertions.assertEquals(3, seq.size()); Assertions.assertEquals(3, seq.size());
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X1.ordinal(), seq.get(0)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3.ordinal(), seq.get(0));
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X2.ordinal(), seq.get(1)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3.ordinal(), seq.get(1));
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3.ordinal(), seq.get(2)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X2.ordinal(), seq.get(2));
seq = FCDotDEC0127DashPX0.ESC_NETHER.baklavaPointSequence(); seq = FCDotDEC2701DashPX0.ESC_STOP.baklavaPointSequence();
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X2.ordinal(), seq.get(0));
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X2.ordinal(), seq.get(1));
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3.ordinal(), seq.get(2));
seq = FCDotDEC0127DashPX0.ESC_STOP.baklavaPointSequence();
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3.ordinal(), seq.get(0)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3.ordinal(), seq.get(0));
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3.ordinal(), seq.get(1)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3.ordinal(), seq.get(1));
Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3.ordinal(), seq.get(2)); Assertions.assertEquals(FCDotCDC1604DashP6._ESC6_X3.ordinal(), seq.get(2));

View file

@ -46,11 +46,11 @@ public class FCDotVT06Test {
List<FourCornerX06BaklavaPointSequence> cdc = new ArrayList<>(); List<FourCornerX06BaklavaPointSequence> cdc = new ArrayList<>();
cdc.add(VTDash06DotZeroACursor.NX_CURSOR_GOTO); cdc.add(VTDash06DotZeroACursor.NX_CURSOR_GOTO);
cdc.addAll(FourCornerUnicodeMapper.DICTIONARY.toDecimalsX06(123)); cdc.addAll(FourCornerUnicodeMapper.DICTIONARY.toDecimalsX06(123));
cdc.add(FCDotDEC0127DashPX0.ESC_SEQ_RAKA_AT); cdc.add(FCDotCDC1604DashP6._RAKA_QUESTION);
cdc.addAll(FourCornerUnicodeMapper.DICTIONARY.toDecimalsX06(456)); cdc.addAll(FourCornerUnicodeMapper.DICTIONARY.toDecimalsX06(456));
cdc.add(FCDotDEC0127DashPX0.ESC_SEQ_SALAH); cdc.add(FCDotCDC1604DashP6._SALAH_EXCLAMATION);
Assertions.assertEquals("␁␂␃AG␃␃␁JBCD␂␃␂␃␃␁JEFG␂␃␁", FourCornerUnicodeDisplay.raw().renderFromX06(cdc)); Assertions.assertEquals("␘␘␇AG␇␘␆¿¿¿JBCD?␇␘␆¿¿¿JEFG!", FourCornerUnicodeDisplay.raw().renderFromX06(cdc));
// TODO: Fix lexer embedded escapes, and display external with single unicode escape sign // TODO: Fix lexer embedded escapes, and display external with single unicode escape sign
//Assertions.assertEquals("?AG?BCD?EFG!", FourCornerUnicodeDisplay.text().renderFromX06(cdc)); //Assertions.assertEquals("?AG?BCD?EFG!", FourCornerUnicodeDisplay.text().renderFromX06(cdc));
} }
@ -60,8 +60,8 @@ public class FCDotVT06Test {
List<FourCornerX06BaklavaPointSequence> cdc = new ArrayList<>(); List<FourCornerX06BaklavaPointSequence> cdc = new ArrayList<>();
cdc.add(VTDash06DotZeroCClear.VT_CLEAR_TOP); cdc.add(VTDash06DotZeroCClear.VT_CLEAR_TOP);
cdc.addAll(FourCornerUnicodeMapper.DICTIONARY.toDecimalsX06(5)); cdc.addAll(FourCornerUnicodeMapper.DICTIONARY.toDecimalsX06(5));
cdc.add(FCDotDEC0127DashPX0.ESC_SEQ_SALAH); cdc.add(FCDotCDC1604DashP6._SALAH_EXCLAMATION);
Assertions.assertEquals("␁␂␃CA␃␃␁JF␂␃␁", FourCornerUnicodeDisplay.raw().renderFromX06(cdc)); Assertions.assertEquals("␘␘␇CA␇␘␆¿¿¿JF!", FourCornerUnicodeDisplay.raw().renderFromX06(cdc));
} }
} }

View file

@ -31,7 +31,7 @@ import org.x4o.fc18.FourCornerUnicodeDisplay;
import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCake;
import org.x4o.fc18.cake2.FourCornerX06BaklavaPointSequence; import org.x4o.fc18.cake2.FourCornerX06BaklavaPointSequence;
import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6;
import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0; import org.x4o.fc18.cake2.zero33.FCDotDEC2701DashPX0;
/** /**
* Tests four corner lexer parts. * Tests four corner lexer parts.
@ -53,7 +53,7 @@ public class LexerNCRTest {
lexer.read(cdc); lexer.read(cdc);
Assertions.assertEquals(1, fireWalker.ncr1632BankSparkler); Assertions.assertEquals(1, fireWalker.ncr1632BankSparkler);
cdc.addAll(FCDotDEC0127DashPX0.ESC_STOP.toInt18BaklavaPoints()); // the print above auto value + next test cdc.addAll(FCDotDEC2701DashPX0.ESC_STOP.baklavaPointSequence()); // the print above auto value + next test
cdc.add(FourCornerDotCake.FC_NCR1632_XN.getStart() - 1 + 123); // normal NXX_123 cdc.add(FourCornerDotCake.FC_NCR1632_XN.getStart() - 1 + 123); // normal NXX_123
cdc.add(FourCornerDotCake.FC_NCR1632_XN.getStart() + (512*4) + 2); /// auto NXX_123 + this cdc.add(FourCornerDotCake.FC_NCR1632_XN.getStart() + (512*4) + 2); /// auto NXX_123 + this
fireWalker.reset(); fireWalker.reset();
@ -61,7 +61,7 @@ public class LexerNCRTest {
Assertions.assertEquals(2, fireWalker.ncr1632BankSparkler); Assertions.assertEquals(2, fireWalker.ncr1632BankSparkler);
Assertions.assertEquals(0, fireWalker.ncr1632BankReset); Assertions.assertEquals(0, fireWalker.ncr1632BankReset);
cdc.addAll(FCDotDEC0127DashPX0.ESC_STOP.toInt18BaklavaPoints()); // the print above auto value + next test (normal bank reset) cdc.addAll(FCDotDEC2701DashPX0.ESC_STOP.cakePointSequence()); // the print above auto value + next test (normal bank reset)
cdc.add(FourCornerDotCake.FC_NCR1632_XD.getStart() - 1 + 11); cdc.add(FourCornerDotCake.FC_NCR1632_XD.getStart() - 1 + 11);
cdc.add(FourCornerDotCake.FC_NCR1632_XD.getStart() + (512*3) + 12); cdc.add(FourCornerDotCake.FC_NCR1632_XD.getStart() + (512*3) + 12);
cdc.add(FourCornerDotCake.FC_NCR1632_XN.getStart() + (512*4) + 13); cdc.add(FourCornerDotCake.FC_NCR1632_XN.getStart() + (512*4) + 13);
@ -82,18 +82,20 @@ public class LexerNCRTest {
List<FourCornerX06BaklavaPointSequence> cdc = new ArrayList<>(); List<FourCornerX06BaklavaPointSequence> cdc = new ArrayList<>();
cdc.add(FCDotCDC1604DashP6.NX24_X); // = X cdc.add(FCDotCDC1604DashP6.NX24_X); // = X
cdc.add(FCDotCDC1604DashP6.NY09_EQUALS); cdc.add(FCDotCDC1604DashP6.NY09_EQUALS);
cdc.addAll(FCDotDEC0127DashPX0.ESC68_NCR.toX06BaklavaPoints()); cdc.add(FCDotCDC1604DashP6._ESC6_X2);
cdc.add(FCDotCDC1604DashP6._ESC6_X3);
cdc.add(FCDotCDC1604DashP6._ESC6_X2);
cdc.add(FCDotCDC1604DashP6.NX15_O); // T015 cdc.add(FCDotCDC1604DashP6.NX15_O); // T015
cdc.add(FCDotCDC1604DashP6.NX14_N); // NXX_014 cdc.add(FCDotCDC1604DashP6.NX14_N); // NXX_014
cdc.add(FCDotCDC1604DashP6.NX05_E); // NXX_005 cdc.add(FCDotCDC1604DashP6.NX05_E); // NXX_005
cdc.add(FCDotCDC1604DashP6.NX07_G); // NXX_007 cdc.add(FCDotCDC1604DashP6.NX07_G); // NXX_007
cdc.add(FCDotCDC1604DashP6.NX15_O); // NXX_015 cdc.add(FCDotCDC1604DashP6.NX15_O); // NXX_015
cdc.add(FCDotCDC1604DashP6.NX04_D); // NXX_004 cdc.add(FCDotCDC1604DashP6.NX04_D); // NXX_004
cdc.add(FCDotCDC1604DashP6.NY14_SEMICOLON); //cdc.add(FCDotCDC1604DashP6.NY14_SEMICOLON);
cdc.add(FCDotCDC1604DashP6._NEWLINE); //cdc.add(FCDotCDC1604DashP6._NEWLINE);
Assertions.assertEquals("X=¹⁴/₁₅⁵/₁₅⁷/₁₅¹⁵/₁₅⁴/₁₅;\n", FourCornerUnicodeDisplay.text().renderFromX06(cdc)); Assertions.assertEquals("X=¹⁴/₁₅⁵/₁₅⁷/₁₅¹⁵/₁₅⁴/₁₅", FourCornerUnicodeDisplay.text().renderFromX06(cdc));
Assertions.assertEquals("X=␃␃␂ONEGOD;\n", FourCornerUnicodeDisplay.raw().renderFromX06(cdc)); Assertions.assertEquals("X=␇␘␇ONEGOD", FourCornerUnicodeDisplay.raw().renderFromX06(cdc));
} }
@Test @Test
@ -111,9 +113,9 @@ public class LexerNCRTest {
cdc.add(FourCornerDotCake.FC_NCR1632_XN.getStart() - 1 + 123); // NXX_123 cdc.add(FourCornerDotCake.FC_NCR1632_XN.getStart() - 1 + 123); // NXX_123
cdc.add(FourCornerDotCake.FC_NCR1632_XN.getStart() - 1 + 4); // NXX_004 cdc.add(FourCornerDotCake.FC_NCR1632_XN.getStart() - 1 + 4); // NXX_004
cdc.add(FCDotCDC1604DashP6.NY14_SEMICOLON.ordinal()); cdc.add(FCDotCDC1604DashP6.NY14_SEMICOLON.ordinal());
cdc.add(FCDotCDC1604DashP6._NEWLINE.ordinal()); //cdc.add(FCDotCDC1604DashP6._NEWLINE.ordinal());
Assertions.assertEquals("X=¹¹/₁¹/₁¹⁴/₁₅¹²³/₁₀₂₅⁴/₁₀₂₅;\n", FourCornerUnicodeDisplay.text().renderFromInt18(cdc)); Assertions.assertEquals("X=¹¹/₁¹/₁¹⁴/₁₅¹²³/₁₀₂₅⁴/₁₀₂₅;", FourCornerUnicodeDisplay.text().renderFromInt18(cdc));
} }
@Test @Test