unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* "teco line noise"
@ 2004-11-17  2:07 Ben Wing
  2004-11-17  2:34 ` Alfred M. Szmidt
  0 siblings, 1 reply; 4+ messages in thread
From: Ben Wing @ 2004-11-17  2:07 UTC (permalink / raw)
  Cc: 'XEmacs Beta'

Still can't find any version of GNU Emacs before 18.55 but I found this:



[beginning of manual]







                   MASSACHUSETTS INSTITUTE OF TECHNOLOGY
                    ARTIFICIAL INTELLIGENCE LABORATORY






     AI Memo 555                                        2 October 1981







                       EMACS MANUAL FOR TWENEX USERS
EMACS MANUAL FOR TWENEX USERS                       EMACS MANUAL FOR TWENEX
USERS


                                    BY                                    BY
BY


                            RICHARD M. STALLMAN
RICHARD M. STALLMAN                            RICHARD M. STALLMAN


                            A REFERENCE MANUAL                            A
REFERENCE MANUAL                            A REFERENCE MANUAL


            FOR THE EXTENSIBLE, CUSTOMIZABLE, SELF-DOCUMENTING
FOR THE EXTENSIBLE, CUSTOMIZABLE, SELF-DOCUMENTING            FOR THE
EXTENSIBLE, CUSTOMIZABLE, SELF-DOCUMENTING


                         REAL-TIME DISPLAY EDITOR
REAL-TIME DISPLAY EDITOR                         REAL-TIME DISPLAY EDITOR


               This manual corresponds to EMACS version 161



[excerpt from emacs.src]
\f
!* START !

EI^[			!*Close off the input file			!
HK			!*Purge the buffer				!
GZ			!*Pull in the command line from QZT		!
J			!*Jump back to beginning			!
^D
128,0ET			!*Reset abort on error bit			!
-1,5:W			!*Set terminal to hold whole screen		!
^[			!*Discard numeric argument returned by :W cmd	!
22,2:W			!*Protect the bottom 2 status lines from update	!
^[			!*Discard numeric argument returned by :W cmd	!

!* Preload QHT with macro to erase a given line on screen, leave cursor	!
!* at that line, and make TECO forget it did anything to the terminal.	!

@^UH~			!* QHT <= macro between the "~" s		!
  [A			!* Push QAT and QAN onto Q register stack	!
  UA			!* QAN <= input line number			!
  0,1ET			!* Enable image mode output			!
  27^T			!* Send escape to terminal			!
  ^^[^T
QA\
^YT
^YK
^^H^T
  1,0ET			!* Disable image mode output			!
  ^^KMM			!* Kill the current lines contents		!
  32768W		!* Make TECO forget we messed with screen	!
  ]A			!* Pop QAT and QAN off the Q register stack	!
~			!* End of macro load into QHT			!

!*Preload QMT with macro to output characters to terminal in image mode !
!*Q registers affected by an MM:  QAN					!

@^UM~			!*QMT <= macro between "~" s  			!
  UA			!*QAN <= macro's argument (char to output) 	!
  0,1ET			!*Set image mode bit				!
  27^T			!*Send ESC to terminal for special sequence	!
^^[^T
  QA^T			!*Send the saved character to terminal		!
  1,0ET			!*Reset back to non image mode			!
~			!*End of image mode macro load in QMT		!

!*Preload QUT with macro to optionally save a modified buffer		!
!*Q register affected by MU:  QLT, QAN, QST, QAN, QTN, QQN, QYN, QXN,	!
!*QWT									!

@^UU~			!*QUT <= all characters between the "~" s	!
  <			!*Begin loop to save buffer			!
    @^UL%Save%		!*QLT <= "Save"					!
    @32:^UL%%		!*QLT <= "Save "				!
    @:^UL%modified%	!*QLT <= "Save modified"			!
    @32:^UL%%		!*QLT <= "Save modified "			!
    @:^UL%buffer%	!*QLT <= "Save modified buffer?"		!
    @32:^UL%%		!*QLT <= "Save modified buffer? "		!
    @:^UL%(Y/N)%	!*QLT <= "Save modified buffer? (Y/N)"		!
    MN			!*Get response from user			!
    UA			!*Save returned success/abort code		!
    QA;			!*Abort function if string fetch failed		!
    GS			!*Get the response string			!
    -1A-^^N"E		!*If response is "N" then			!
      -1UA		!*QAN <= code for successful execution		!
      HK		!*Purge the current buffer			!
      0;		!*Abort iteration and go to terminal code	!
    '			!*End of "N" processing				!
    -1A-^^Y"E		!*If response is "Y" then			!
      ^YK		!*Delete response from text buffer		!
      @^UL%File:%	!*QLT <= "File:"				!
      @32:^UL%%		!*QLT <= "File: "				!
      MN		!*Get response from user			!
      UA		!*Save returned success/abort code		!
      QA;		!*Abort function if string fetch failed		!
      @^UA%@EW/%	!*QAT <= "@EW/"					!
      GS		!*Pull file name string into buffer		!
      ^Y:XA		!*QAT <= "@EW/<filename>"			!
      ^YK		!*Delete from buffer in case we bomb		!
      @:^UA%/%		!*QAT <= "@EW/<filename>/"			!
      MA		!*Open the file to save current buffer in	!
      EC		!*Write out buffer and close file		!
      HK		!*Purge the buffer				!
      0;		!*Abort iteration and go to terminal code	!
    '			!*End of "Y" processing				!
    ^YK			!*Delete previous response from text buffer	!
  >			!*End loop to save buffer			!
QA			!*Return success code				!
~

!*Preload QPT with macro to get next char from terminal stream		!
!*Q registers affected by MP: QTN, QYN, QXN, QQN			!

@^UP~			!*QPT <= everything between "~" s		!
  0,32ET		!*Set read with no wait for pending commands	!
  ^TUT			!*QTN <= next pending command (-1 if none)	!
  QT"L			!*If no pending commands then			!
    32,0ET		!*Reset read with no wait bit to get user input	!
    16&QZ"E		!*If screen update is not inhibited then	!
      -1W		!*Update the terminal screen			!
    '			!*End of screen update test			!
    ^TUT		!*QTN <= next command from user			!
  '			!*End of no pending commands execution		!
  QT-7"E		!*If input from terminal is a ^G then		!
    0UY			!*Reset counter to exit current macro		!
    0UX			!*Reset counter to exit pending macros		!
    0UQ			!*Reset word to cause abort to highest level	!
  '			!*End of ^G from terminal processing		!
  QQ			!*Return ^G abort code as numerical argument	!
~			!*End of QPT macro load				!

!* Preload QOT with macro to update editor status line (line 23)	!

@^UO~			!* QOT <= all characters between the "~" s	!
  23MH			!* Go ready the editor status line		!
  @^A%EMACS%		!* First entry on editor status line		!
  32^T			!* Send blank to terminal			!
  @^A%Ver%		!* Second entry on editor status line		!
  32^T			!* Send blank to terminal			!
  @^A%1.4%		!* Third entry on editor status line		!
  32^T			!* Send blank to terminal			!
  32^T			!* Send blank to terminal			!
  QZ&32"N		!* If LEARN mode is enabled then		!
    @^A%(Learn)%	!* Show learn prompt				!
  |			!* Else if not learn mode			!
    @^A%(Fundamental)%	!* Show fundamental mode			!
  '			!* End of mode entry on status line		!
  32^T			!* Send blank to terminal			!
  32^T			!* Send blank to terminal			!
  12&QZ"N		!* If a primary file is open then		!
    32^T		!* Send another blank to terminal		!
    @^A%File:%		!* Filespec is last entry on status line	!
    8&QZ"N		!* If primary output file stream is open then	!
      :GT		!* Get the output file spec			!
    |			!* Else input file must be open			!
      :GK		!* Get input file spec				!
    '			!* End of file spec test			!
  '			!* End of filespec insertion			!
  32768W		!* Forget we did anything to screen		!
~			!* End of status line update macro		!

!*Preload QXT with macro to fetch next command character		!
!*Q registers affected by MX:  QTN, QYN, QXN, QQN, QWT,			!

@^UX~			!*QXT <= all characters between the "~" s	!
  QY"E			!*If no EMACS macro commands to execute then	!
    MP			!*Get next command from command stream		!
    32&QZ"N		!*If learn mode is enabled then 		!
      @QT:^UW%%		!*Append the command to the macro buffer	!
    '			!*End of macro collection test			!
  '			!*End of no EMACS macro commands execution	!
  QY"L			!*If EMACS macro commands to execute then	!
    GW			!*Pull macro commands into buffer		!
    QYAUT		!*QTN <= EMACS command extracted from string	!
    ^YK			!*Kill string in buffer				!
    %Y			!*Increment macro command counter		!
    "E			!*If was last EMACS macro command then		!
      %X		!*Increment macro repeat counter		!
      "L		!*If more repeat loops to be done then		!
        -:QWUY		!*Restore command counter contents		!
      '			!*End of macro command counter restore		!
    '			!*End of last repeat loop test			!
  '			!*End of EMACS macro command fetch		!
  QQ			!*Return abort code as argument			!
~			!*End of QXT macro load				!

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: "teco line noise"
  2004-11-17  2:07 "teco line noise" Ben Wing
@ 2004-11-17  2:34 ` Alfred M. Szmidt
  2004-11-17  8:38   ` Gian Uberto Lauri
  0 siblings, 1 reply; 4+ messages in thread
From: Alfred M. Szmidt @ 2004-11-17  2:34 UTC (permalink / raw)
  Cc: xemacs-beta, emacs-devel

   Still can't find any version of GNU Emacs before 18.55 but I found
   this:

Well, not really "GNU" Emacs, since the GNU project didn't exist at
the time, but we have Emacs written in Teco by Richard and co. running
here on occassions on ITS (in a emulator sadly, since we can't afford
the electric bill for the PDP-10, grrr).

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: "teco line noise"
  2004-11-17  2:34 ` Alfred M. Szmidt
@ 2004-11-17  8:38   ` Gian Uberto Lauri
  2004-11-17 17:12     ` Alfred M. Szmidt
  0 siblings, 1 reply; 4+ messages in thread
From: Gian Uberto Lauri @ 2004-11-17  8:38 UTC (permalink / raw)
  Cc: xemacs-beta, emacs-devel, Ben Wing

>>>>> "AMS" == Alfred M Szmidt <ams@kemisten.nu> writes:

AMS>    Still can't find any version of GNU Emacs before 18.55 but I found
AMS>    this:

AMS> Well, not really "GNU" Emacs, since the GNU project didn't exist at
AMS> the time, but we have Emacs written in Teco by Richard and co. running
AMS> here on occassions on ITS (in a emulator sadly, since we can't afford
AMS> the electric bill for the PDP-10, grrr).

Very interesting. Where one can get this venerable stuff ?

(Going to preach the word of the True One Editor thi evening :) )

-- 
 /\            ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
  //--\ | | \|  |   Integralista GNUslamico e fancazzista 
\/

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: "teco line noise"
  2004-11-17  8:38   ` Gian Uberto Lauri
@ 2004-11-17 17:12     ` Alfred M. Szmidt
  0 siblings, 0 replies; 4+ messages in thread
From: Alfred M. Szmidt @ 2004-11-17 17:12 UTC (permalink / raw)
  Cc: xemacs-beta, emacs-devel, ben

   AMS> Well, not really "GNU" Emacs, since the GNU project didn't
   AMS> exist at the time, but we have Emacs written in Teco by
   AMS> Richard and co. running here on occassions on ITS (in a
   AMS> emulator sadly, since we can't afford the electric bill for
   AMS> the PDP-10, grrr).

   Very interesting. Where one can get this venerable stuff ?

I don't know, since I didn't setup the emulator, sorry.  I only use
it.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2004-11-17 17:12 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-11-17  2:07 "teco line noise" Ben Wing
2004-11-17  2:34 ` Alfred M. Szmidt
2004-11-17  8:38   ` Gian Uberto Lauri
2004-11-17 17:12     ` Alfred M. Szmidt

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).