Patrick Finnegan <pat at computer-refuge.org> wrote:
Uhh, registry? Yeah, right.
Well, the International Standard document clearly calls for one. It
says "a register to be established", though, and I guess that has never
been done.
You can start your own registry, I guess.
I'm willing. But then I would need ISO to appoint me as the registrar.
Hmm, maybe I should give this a serious thought. Any idea whom to
approach? After all, the standard calls for a registry and one does not
exist. Similarly to how ISO had appointed ECMA as the registrar for ISO
2022 escape sequences (now it's some other organisation in Japan), IFCTF
could maintain the registry for DA codes.
If there was one, it was at
DEC and only held the codes used by terminals that DEC produced.
All DEC DA responses have the 3/15 private marker after the CSI,
indicating that all following parameters are private and have no global
significance.
ISO clearly intended, on the other hand, to have a global registry. If
you have a code assigned from the global registry, you can send it in
responses without a private marker. No one else can then legitimately
return the same response, and anyone receiving that response would have
every right to assume it's your product.
Private parameters (what DEC used) do not guarantee interoperability:
vendor A can define ?1 to identify one of its products, but another vendor B
would have every right to define ?1 to identify one of *its* products.
You do realize, there were terminals that weren't
VT100 compatible (at
least in their native mode), like Wyse 50/60 terminals, ADM 3/5s, IBM
3151s, Televideo 925s, ... They didn't do the "CSI c" command; they
might have had a "DA" method, but I'm doubtful it was the same as what
DEC did.
DA (CSI c) is not a DECism, it's a feature of the International Standard
ISO 6429. Yes, of course there are terminals that don't care about ISO 6429
and implement their own completely different escape/control/whatever
sequences, but they are not relevant to this discussion. I'm talking about
the standard mechanism for identifying a particular implementation of ISO
6429 among all others in the Universe.
Any reason you don't want to use the (so-called)
"ANSI" vt-100 type
sequences or those from, say, a vt525, for your 'termainal application'?
The product I'm designing follows ISO 6429, which is the successor to
ANSI X3.64 that you are referring to. VT100 is one implementation of
the standard, mine will be another. DEC is one manufacturer, HEC is
another.
My implementation of the standard will be very close to DEC's, but not
identical. I'm deliberately not writing an exact VTxxx emulator since
I want to do a few things differently. The main area of difference is
character set handling. I have made a proper implementation of ISO 2022,
whereas DEC has made some horrible kludges apparently to make it "user-
friendly" in their perverted sense. I'm talking about the horrible mess
with multinational vs. national modes, keyboard variants and typewriter
vs. data processing keys, kludges that have no place in an ISO 2022
terminal.
MS