Fixed offset of DEC pages and some other texts
This commit is contained in:
parent
1a314900ca
commit
c5d497d2d1
|
@ -33,6 +33,10 @@ import org.x4o.o2o.fc18.FourCornerX18CakePoints;
|
|||
/**
|
||||
* "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
|
||||
|
@ -44,34 +48,46 @@ public enum FCDotDEC0127DashPX0 implements FourCornerX06BaklavaPoints, FourCorne
|
|||
|
||||
/// _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 Six bit control support 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, mixes ending
|
||||
// =========== Internal escape sequence, with mixed endings
|
||||
|
||||
/// _ESC6_X2 _ESC6_X1 _ESC6_X1
|
||||
__ESC_RESERVED_B1,
|
||||
|
||||
/// _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,
|
||||
|
||||
|
@ -90,13 +106,16 @@ public enum FCDotDEC0127DashPX0 implements FourCornerX06BaklavaPoints, FourCorne
|
|||
/// 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.
|
||||
ESC_NETHER,
|
||||
|
||||
/// _ESC6_X2 _ESC6_X3 _ESC6_X1
|
||||
/// End of argumented escape sequence prayer.
|
||||
ESC_SEQ_SALAH,
|
||||
|
||||
/// _ESC6_X2 _ESC6_X3 _ESC6_X2
|
||||
/// Next argument separator for escape command sequences which MUST end with ESC_SEQ_SALAH.
|
||||
/// Only allowed cake points are 7-63 or from { to & 6 bit chars.
|
||||
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.
|
||||
|
@ -106,29 +125,36 @@ public enum FCDotDEC0127DashPX0 implements FourCornerX06BaklavaPoints, FourCorne
|
|||
|
||||
/// _ESC6_X3 _ESC6_X1 _ESC6_X1
|
||||
ESC6_APL0127_P7A,
|
||||
|
||||
/// _ESC6_X3 _ESC6_X1 _ESC6_X2
|
||||
ESC6_APL0127_P7B,
|
||||
|
||||
/// _ESC6_X3 _ESC6_X1 _ESC6_X3
|
||||
ESC6_APL0127_P7C,
|
||||
|
||||
/// _ESC6_X3 _ESC6_X2 _ESC6_X1
|
||||
ESC6_BYD0127_P7D,
|
||||
|
||||
/// _ESC6_X3 _ESC6_X2 _ESC6_X2
|
||||
ESC6_BYD0127_P7E,
|
||||
|
||||
/// _ESC6_X3 _ESC6_X2 _ESC6_X3
|
||||
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
|
||||
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.
|
||||
ESC68_NCR,
|
||||
|
||||
/// _ESC6_X3 _ESC6_X3 _ESC6_X3
|
||||
/// An optional triple escape stops the open ended escape sequence.
|
||||
/// VT-100 Manual: "ESC also cancels any escape sequence".
|
||||
ESC_STOP,
|
||||
|
||||
/*
|
||||
|
|
|
@ -274,7 +274,7 @@ public class FourCornerZionStenoLexer {
|
|||
List<Integer> result = new ArrayList<>();
|
||||
ScanResult status = safeReadCakePoints(input, FourCornerDotCake.FC_NCR1632_XD.getStart(), FourCornerDotCake.FC_NCR1632_XN.getStop(), result);
|
||||
if (!result.isEmpty()) {
|
||||
handlePoints(result); // mix of four blocks
|
||||
handlePoints(result); // mix of the two blocks
|
||||
}
|
||||
return status;
|
||||
}
|
||||
|
@ -374,27 +374,27 @@ public class FourCornerZionStenoLexer {
|
|||
}
|
||||
// Handle 8 and 18 bit direct cake points
|
||||
if (FourCornerDotCake.FC_APL0127_P7A.contains(muffinPoint)) {
|
||||
handler.strobeWords(FourCornerDotCake.FC_APL0127_P7A, List.of(muffinPoint));
|
||||
handler.strobeWords(FourCornerDotCake.FC_APL0127_P7A, List.of(muffinPoint - FourCornerDotCake.FC_APL0127_P7A.getStart()));
|
||||
continue;
|
||||
}
|
||||
if (FourCornerDotCake.FC_APL0127_P7B.contains(muffinPoint)) {
|
||||
handler.strobeWords(FourCornerDotCake.FC_APL0127_P7B, List.of(muffinPoint));
|
||||
handler.strobeWords(FourCornerDotCake.FC_APL0127_P7B, List.of(muffinPoint - FourCornerDotCake.FC_APL0127_P7B.getStart()));
|
||||
continue;
|
||||
}
|
||||
if (FourCornerDotCake.FC_APL0127_P7C.contains(muffinPoint)) {
|
||||
handler.strobeWords(FourCornerDotCake.FC_APL0127_P7C, List.of(muffinPoint));
|
||||
handler.strobeWords(FourCornerDotCake.FC_APL0127_P7C, List.of(muffinPoint - FourCornerDotCake.FC_APL0127_P7C.getStart()));
|
||||
continue;
|
||||
}
|
||||
if (FourCornerDotCake.FC_BYD0127_P7D.contains(muffinPoint)) {
|
||||
handler.strobeWords(FourCornerDotCake.FC_BYD0127_P7D, List.of(muffinPoint));
|
||||
handler.strobeWords(FourCornerDotCake.FC_BYD0127_P7D, List.of(muffinPoint - FourCornerDotCake.FC_BYD0127_P7D.getStart()));
|
||||
continue;
|
||||
}
|
||||
if (FourCornerDotCake.FC_BYD0127_P7E.contains(muffinPoint)) {
|
||||
handler.strobeWords(FourCornerDotCake.FC_BYD0127_P7E, List.of(muffinPoint));
|
||||
handler.strobeWords(FourCornerDotCake.FC_BYD0127_P7E, List.of(muffinPoint - FourCornerDotCake.FC_BYD0127_P7E.getStart()));
|
||||
continue;
|
||||
}
|
||||
if (FourCornerDotCake.FC_BYD0127_P7F.contains(muffinPoint)) {
|
||||
handler.strobeWords(FourCornerDotCake.FC_BYD0127_P7F, List.of(muffinPoint));
|
||||
handler.strobeWords(FourCornerDotCake.FC_BYD0127_P7F, List.of(muffinPoint - FourCornerDotCake.FC_BYD0127_P7F.getStart()));
|
||||
continue;
|
||||
}
|
||||
if (FourCornerDotCake.__MIND_THE_GAP.contains(muffinPoint)) {
|
||||
|
@ -523,7 +523,7 @@ public class FourCornerZionStenoLexer {
|
|||
return;
|
||||
}
|
||||
if (decMode == FCDotDEC0127DashPX0.ESC_STOP) {
|
||||
decMode = null;
|
||||
//decMode = null;
|
||||
numberMode = null; // stop requested, print normal
|
||||
}
|
||||
if (numberMode != null && (cdcPoint > numberMode)) {
|
||||
|
|
Loading…
Reference in a new issue