In the absence of the Silentype /// manual, I wanted to know how the different ESC codes worked since I couldn't get bidirectional printing to look right, sometimes it looks good and other times it looks bad.

I was able to find a table of the ESC codes along with a jump table of the routine address - 1.

ESC codes at $42F4 and Jump table is $4309

[Linked Image from]

So far I've figured out that

ESC < is bidirectional printing
ESC > is unidirectional printing
ESC B is bold on
ESC b is bold off
ESC W [n] is wide width, takes a number that specifies the character width (numbers from 0 to 7, 8 acts like 0)
ESC w turns off wide width
ESC ? is remap the ESC key to character ie ESC ? | makes any occurence of | act like the ESC code
ESC = is reset the silentype to default settings
ESC . [n] is inter-character gap
ESC ^ [n] is line spacing (in 7/4 pixels, so ESC ^ 4 will feed the paper 7 pixels between lines, single line spacing is normally 6)
ESC H [chr$[n]] is move horizontally precisely [n] pixels so ESC H chr$(3) will move the printhead 3 pixels to the right.
ESC V [chr$[n]] is move vertically precisely [n] * (7/4) pixels so ESC V chr$(4) will move the printhead down exactly 7 pixels.

ESC F [n] is choose font 0,1,2 0=Normal, 1 = Compact, 2 = Roman (though they all seem identical, perhaps the "bigger" driver has the additional character sets)

ESC J [chr$([n])] is set Left Margin
ESK K [chr$([n])] is set Right Margin

Last edited by Golden Child; 08/15/19 07:38 PM.