Logo  

Home - Old Man Programmer

Displaying webapps/vt100/script//typescript

Script started on Fri 31 May 2019 03:01:11 PM EDT
water:/root# ls

Desktop    bin	grub  old	   root  sbaker  startrs  tree	      work
Downloads  c	h10   public_html  run	 soft	 timing   typescript
water:/root# cd vt100

vt100: No such file or directory.
water:/root# cd ~sbakerc//c/vt100

/net/sbaker//c/vt100: No such file or directory.
water:/root# lscd ~sbaker/c/vt100vt100

water:/net/sbaker/vt100# ls

doc  keyboard.js  vt100.html  vt100.js
water:/net/sbaker/vt100# ls -la

total 28
drwxr-xr-x   3 sbaker users 4096 May 31 14:16 .
drwx--x--x 110 sbaker users 4096 May 30 22:31 ..
drwxr-xr-x   4 root   root  4096 May 31 14:24 doc
-rw-r--r--   1 root   root   512 May 31 13:12 keyboard.js
-rw-r--r--   1 sbaker users  923 May 31 13:12 vt100.html
-rw-r--r--   1 sbaker users 8190 May 31 14:16 vt100.js
water:/net/sbaker/vt100# tree

.
|-- doc
|   |-- done
|   |-- vt
|   |-- vt100-ug
|   |   |-- accessories.png
|   |   |-- appendixa.html
|   |   |-- appendixb.html
|   |   |-- appendixc.html
|   |   |-- blocksmall.png
|   |   |-- ch3examp1a.png
|   |   |-- ch3examp1b.png
|   |   |-- ch3examp2a.png
|   |   |-- ch3examp2b.png
|   |   |-- chapter1.html
|   |   |-- chapter2.html
|   |   |-- chapter3.html
|   |   |-- chapter4.html
|   |   |-- chapter5.html
|   |   |-- checkersmall.png
|   |   |-- contents.html
|   |   |-- cover.png
|   |   |-- diamondsmall.png
|   |   |-- figure1-1.html
|   |   |-- figure1-2a.png
|   |   |-- figure1-2b.png
|   |   |-- figure1-3.html
|   |   |-- figure1-4.html
|   |   |-- figure1-5.html
|   |   |-- figure1-6.html
|   |   |-- figure2-1.html
|   |   |-- figure2-2.html
|   |   |-- figure2-3.html
|   |   |-- figure2-4.html
|   |   |-- figure3-1.html
|   |   |-- figure3-2.html
|   |   |-- figure3-2.png
|   |   |-- figure4-1.html
|   |   |-- figure4-2.html
|   |   |-- figure4-3.html
|   |   |-- figure4-4.html
|   |   |-- index.html
|   |   |-- keys
|   |   |   |-- bk
|   |   |   |   |-- 2.png
|   |   |   |   |-- 3.png
|   |   |   |   |-- 4.png
|   |   |   |   |-- 6.png
|   |   |   |   |-- 7.png
|   |   |   |   |-- 8.png
|   |   |   |   |-- 9.png
|   |   |   |   |-- down.png
|   |   |   |   |-- setup.png
|   |   |   |   `-- up.png
|   |   |   `-- br
|   |   |       |-- 0.png
|   |   |       |-- 2.png
|   |   |       |-- 3.png
|   |   |       |-- 4.png
|   |   |       |-- 5.png
|   |   |       |-- 6.png
|   |   |       |-- 7.png
|   |   |       |-- 8.png
|   |   |       |-- 9.png
|   |   |       |-- arrows.png
|   |   |       |-- backspace.png
|   |   |       |-- break.png
|   |   |       |-- capslock.png
|   |   |       |-- ctrl.png
|   |   |       |-- delete.png
|   |   |       |-- downsmall.png
|   |   |       |-- esc.png
|   |   |       |-- g.png
|   |   |       |-- leftsmall.png
|   |   |       |-- linefeed.png
|   |   |       |-- noscroll.png
|   |   |       |-- pf1-4.png
|   |   |       |-- return.png
|   |   |       |-- rightsmall.png
|   |   |       |-- setup.png
|   |   |       |-- shift1.png
|   |   |       |-- tab.png
|   |   |       `-- upsmall.png
|   |   |-- ma-1987.png
|   |   |-- ma-1988.png
|   |   |-- ma-1991.png
|   |   |-- ma-1992.png
|   |   |-- ma-1993.png
|   |   |-- ma-1994.png
|   |   |-- ma-1995.png
|   |   |-- ma-1996.png
|   |   |-- ma-1997.png
|   |   |-- ma-2732.png
|   |   |-- ma-2733.png
|   |   |-- table1-1.html
|   |   |-- table1-2.html
|   |   |-- table1-3.html
|   |   |-- table1-4.html
|   |   |-- table2-1.html
|   |   |-- table3-1.html
|   |   |-- table3-10.html
|   |   |-- table3-2.html
|   |   |-- table3-3.html
|   |   |-- table3-4.html
|   |   |-- table3-5.html
|   |   |-- table3-6.html
|   |   |-- table3-7.html
|   |   |-- table3-8.html
|   |   |-- table3-9.html
|   |   |-- vt100-photo.jpeg
|   |   |-- vt100-ug.css
|   |   `-- vt100.net-logo.png
|   |-- vt100-ug.tar.gz
|   |-- vt102-ug
|   |   |-- appendixa.html
|   |   |-- appendixb.html
|   |   |-- appendixc.html
|   |   |-- appendixd.html
|   |   |-- appendixe.html
|   |   |-- arrowdown.png
|   |   |-- arrowleft.png
|   |   |-- arrowright.png
|   |   |-- arrowup.png
|   |   |-- blocksmall.png
|   |   |-- chapter1.html
|   |   |-- chapter10.html
|   |   |-- chapter2.html
|   |   |-- chapter3.html
|   |   |-- chapter4.html
|   |   |-- chapter5.html
|   |   |-- chapter6.html
|   |   |-- chapter7.html
|   |   |-- chapter8.html
|   |   |-- chapter9.html
|   |   |-- char137.png
|   |   |-- char140.png
|   |   |-- char141.png
|   |   |-- char142.png
|   |   |-- char143.png
|   |   |-- char144.png
|   |   |-- char145.png
|   |   |-- char146.png
|   |   |-- char147.png
|   |   |-- char150.png
|   |   |-- char151.png
|   |   |-- char152.png
|   |   |-- char153.png
|   |   |-- char154.png
|   |   |-- char155.png
|   |   |-- char156.png
|   |   |-- char157.png
|   |   |-- char160.png
|   |   |-- char161.png
|   |   |-- char162.png
|   |   |-- char163.png
|   |   |-- char164.png
|   |   |-- char165.png
|   |   |-- char166.png
|   |   |-- char167.png
|   |   |-- char170.png
|   |   |-- char171.png
|   |   |-- char172.png
|   |   |-- char173.png
|   |   |-- char174.png
|   |   |-- char175.png
|   |   |-- char176.png
|   |   |-- contents.html
|   |   |-- cover.png
|   |   |-- figure1-1.html
|   |   |-- figure1-2.html
|   |   |-- figure1-3.html
|   |   |-- figure1-4.html
|   |   |-- figure1-5.html
|   |   |-- figure1-6.html
|   |   |-- figure1-7.html
|   |   |-- figure1-8.html
|   |   |-- figure1-9.html
|   |   |-- figure10-1.html
|   |   |-- figure2-1.html
|   |   |-- figure3-10.html
|   |   |-- figure3-11.html
|   |   |-- figure3-1a.html
|   |   |-- figure3-1b.html
|   |   |-- figure3-2.html
|   |   |-- figure3-3.html
|   |   |-- figure3-4.html
|   |   |-- figure3-5.html
|   |   |-- figure3-6.html
|   |   |-- figure3-7.html
|   |   |-- figure3-8.html
|   |   |-- figure3-9.html
|   |   |-- figure4-1.html
|   |   |-- figure4-2.html
|   |   |-- figure4-3.html
|   |   |-- figure6-1.html
|   |   |-- figure6-2.html
|   |   |-- figure6-3.html
|   |   |-- figure6-4.html
|   |   |-- figure6-5.html
|   |   |-- figure7-1.html
|   |   |-- figure7-2.html
|   |   |-- figure7-3.html
|   |   |-- figure7-4.html
|   |   |-- figure7-5.html
|   |   |-- figure7-6.html
|   |   |-- figure7-7.html
|   |   |-- figure7-8.html
|   |   |-- figure8-1.html
|   |   |-- figure8-2.html
|   |   |-- figure8-3.html
|   |   |-- figure8-4.html
|   |   |-- figure8-5.html
|   |   |-- figure8-6.html
|   |   |-- figure9-1.html
|   |   |-- figure9-2.html
|   |   |-- figure9-3.html
|   |   |-- figurea-1.html
|   |   |-- figurec-1.html
|   |   |-- figurec-2.html
|   |   |-- index.html
|   |   |-- introduction.html
|   |   |-- keys
|   |   |   `-- br
|   |   |       |-- 0.png
|   |   |       |-- 2.png
|   |   |       |-- 3.png
|   |   |       |-- 4.png
|   |   |       |-- 5.png
|   |   |       |-- 6.png
|   |   |       |-- 7.png
|   |   |       |-- 8.png
|   |   |       |-- 9.png
|   |   |       |-- a.png
|   |   |       |-- arrows.png
|   |   |       |-- arrowslr.png
|   |   |       |-- arrowsud.png
|   |   |       |-- backspace.png
|   |   |       |-- breakhereis.png
|   |   |       |-- c.png
|   |   |       |-- capslock.png
|   |   |       |-- ctrl.png
|   |   |       |-- d.png
|   |   |       |-- delete.png
|   |   |       |-- esc.png
|   |   |       |-- linefeed.png
|   |   |       |-- m.png
|   |   |       |-- noscroll.png
|   |   |       |-- p.png
|   |   |       |-- printenter.png
|   |   |       |-- r.png
|   |   |       |-- return1.png
|   |   |       |-- s.png
|   |   |       |-- setup.png
|   |   |       |-- shift1.png
|   |   |       |-- t.png
|   |   |       `-- tab.png
|   |   |-- ma-1991.png
|   |   |-- ma-1993a.png
|   |   |-- ma-3089c1.png
|   |   |-- ma-3089c2.png
|   |   |-- ma-3089c3.png
|   |   |-- ma-3089c4.png
|   |   |-- ma-3089c5.png
|   |   |-- ma-3089c6.png
|   |   |-- ma-5765.png
|   |   |-- ma-6644.png
|   |   |-- ma-6645.png
|   |   |-- ma-6653a.png
|   |   |-- ma-6656.png
|   |   |-- ma-6666a.png
|   |   |-- ma-6667a.png
|   |   |-- ma-6668.png
|   |   |-- ma-6673b.png
|   |   |-- ma-6673c.png
|   |   |-- ma-6674a.png
|   |   |-- ma-6675d.png
|   |   |-- ma-6675e.png
|   |   |-- ma-6675g.png
|   |   |-- ma-6676a.png
|   |   |-- ma-7256d.png
|   |   |-- ma-7256g.png
|   |   |-- ma-7418b.png
|   |   |-- ma-7419b.png
|   |   |-- ma-7776a.png
|   |   |-- ma-7813a.png
|   |   |-- ma-7813a1.png
|   |   |-- ma-7815.png
|   |   |-- ma-7816a.png
|   |   |-- ma-7817a.png
|   |   |-- ma-7867b.png
|   |   |-- ma-7868b.png
|   |   |-- ma-7868c.png
|   |   |-- ma-8074.png
|   |   |-- ma-8390.png
|   |   |-- ma-8391.png
|   |   |-- ma-9361.png
|   |   |-- ma-9362.png
|   |   |-- ma-9363.png
|   |   |-- ma-9364.png
|   |   |-- ma-9499.png
|   |   |-- ma-9499a.png
|   |   |-- table1-1.html
|   |   |-- table3-1.html
|   |   |-- table3-2.html
|   |   |-- table3-3.html
|   |   |-- table3-4.html
|   |   |-- table4-1.html
|   |   |-- table4-2.html
|   |   |-- table4-3.html
|   |   |-- table4-4.html
|   |   |-- table5-1.html
|   |   |-- table5-10.html
|   |   |-- table5-11.html
|   |   |-- table5-12.html
|   |   |-- table5-13.html
|   |   |-- table5-14.html
|   |   |-- table5-15.html
|   |   |-- table5-2.html
|   |   |-- table5-3.html
|   |   |-- table5-4.html
|   |   |-- table5-5.html
|   |   |-- table5-6.html
|   |   |-- table5-7.html
|   |   |-- table5-8.html
|   |   |-- table5-9.html
|   |   |-- table6-1.html
|   |   |-- table6-10.html
|   |   |-- table6-11.html
|   |   |-- table6-12.html
|   |   |-- table6-13.html
|   |   |-- table6-14.html
|   |   |-- table6-2.html
|   |   |-- table6-3.html
|   |   |-- table6-4.html
|   |   |-- table6-5.html
|   |   |-- table6-6.html
|   |   |-- table6-7.html
|   |   |-- table6-8.html
|   |   |-- table6-9.html
|   |   |-- table7-1.html
|   |   |-- table9-1.html
|   |   |-- tabled-1.html
|   |   |-- vt100.net-logo.png
|   |   |-- vt102-ug-contents.css
|   |   `-- vt102-ug.css
|   `-- vt102-ug.tgz
|-- keyboard.js
|-- vt100.html
`-- vt100.js

8 directories, 340 files
water:/net/sbaker/vt100# tree -0dd

.
`-- doc
    |-- vt100-ug
    |   `-- keys
    |       |-- bk
    |       `-- br
    `-- vt102-ug
        `-- keys
            `-- br

8 directories
water:/net/sbaker/vt100# ls

doc  keyboard.js  vt100.html  vt100.js
water:/net/sbaker/vt100# jove vt100.js

"vt100.js" 312 lines, 8190 characters.var terminal = {
  colors : ["#000000", "#cd0000", "#00cd00", "#cdcd00", "#0000ee", "#cd00cd", "#00cdcd!"#7f7f7f", "#ff0000", "#00ff00", "#ffff00", "#5c5cff", "#ff00ff", "#00ffff!
  ],window : null, scrollback : null, tc : null,
  sc : null,
  m : null, row : null,
  // m: { e : col, char : " ", fg : this.fg, bg: this.bg };
  rows : 0, cols : 0,
  homeRow: 0, homeCol : 0,
  tmargin: 0, bmargin: 0,
  cx : 0, cy : 0,
  fg : 7, bg : 0,
  cq : "",
  mode : 0,
  // 0 = normal, 1 = escape encountered:
  //	2 = [ encountered, 3 = ( encountered, 4 = ) encountered
  newrow : function(oldline) { -3- "vt100.js"   [vt100.js] (15:01) (Text Fill)                               !!!0000ee", "#cd00cd", "#00cdcd", "#e5e5e5",
!5c5cff", "#ff00ff", "#00ffff", "#ffffff"
!!!!!!his.bg };
!!!!!!!!!!! encountered
!!dcd00", "#0000ee", "#cd00cd", "#00cdcd", "#e5e5e5",
!fff00", "#5c5cff", "#ff00ff", "#00	", "#ffffff"
! null,
!.fg, bg: this.bg };red, 4 = ) encounteredcd00", "#cdcd00", "#0000ee", "#cd00cd", "#00cdcd", "#e5e5e5",
!ff00", "#ffff00", "#5c5cff", "#ff00ff", "#00	f", "#ffffff"
!null, tc : null,
! fg : this.fg, bg: this.bg };countered:
!( encountered, 4 = ) encountered000", "#00cd00", "#cdcd00", "#0000ee", "#cd00cd", "#00cdcd", "#e5e5e5",
!000", "#00ff00", "#ffff00", "#5c5cff", "#ff00	", "#00	fff", "#ffffff"
!ollback : null, tc : null,
!ll,
!har	" ", fg : this.fg, bg: this.bg };
!,l : 0,
!n: 0, escape encountered:
!ered, 3 = ( encountered, 4 = ) encountered
!oldline) {!al = {
! [", "#cd0000", "#00cd00", "#cdcd00", "#0000ee", "#cd00cd", "#00cdcd", "#e5e5!
!7f", "#ff0000", "#00	00", "#ffff00", "#5c5cff", "#ff00ff", "#00	", "#ffff!
! null, scrollback : null, tc : null,
!l,, row : null,
!e : col, char	 " ", 	 : this.fg, bg: this.bg };
!, cols : 0,
! 0, homeCol : 0,
! 0, bmargin: 0,
!cy : 0,
!bg : 0,
!,ormal, 1 = escape encountered:
! [ encountered, 3 = ( encountered, 4 = ) encountered
! function(oldline) {var terminal = {
  colors : [
    "#000000", "#cd0000", "#00	00", "#cdcd00", "#0000ee", "#cd	0cd", "#00cdcd
    "#7f7f7f", "#ff0000", "#00	00", "#ffff00", "#5c5cff", "#ff	0ff", "#00
  ],
  window : null, scrollback : null, tc : null,
  sc : null,
  m : null, row : null,
  // m: { e : col, char : " ", fg : this.fg, 	: this.bg };
  rows : 0, cols : 0,
  homeRow: 0, homeCol : 0,
  tmargin: 0, bmargin: 0,
  cx : 0, cy : 0,
  fg : 7, bg : 0,
  cq : "",
  mode : 0,
  // 0 = normal, 1 = escape encountered:
  //   2 = [ encountered, 3 = ( encountered, 4 = ) encountered
  newrow : function(oldline) {!!!000ee", "#cd00cd", "#00cdcd", "#e5e5e5",
!c5cff", "#ff00ff", "#00ffff", "#ffffff"
!!!!!!is.bg };
!!!!!!!!!!!encountered
!!var terminal = {
  colors : [
    "#000000", "#cd0000", "#00cd00", "#cdcd00", "#0000ee", "#cd00cd", "#00cdcd!
    "#7f7f7f", "#ff0000", "#00ff00", "#ffff00", "#5c5cff", "#ff00ff", "#00ffff!
  ],
  window : null, scrollback : null, tc : null,
  sc : null,
  m : null, row : null,
  // m: { e : col, char : " ", fg : this.fg, bg: this.bg };
  rows : 0, cols : 0,
  homeRow: 0, homeCol : 0,
  tmargin: 0, bmargin: 0,
  cx : 0, cy : 0,
  fg : 7, bg : 0,
  cq : "",
  mode : 0,
  // 0 = normal, 1 = escape encountered:
  //   2 = [ encountered, 3 = ( encountered, 4 = ) encountered
  newrow : function(oldline) {
Dvar row = document.createElement("tr");
Dvar m = [];
Dfor(var c = 0; c < this.cols; c ++) {
Dvar col = document.createElement("td");
Dcol.innerHTML = "&nbsp;";
Dif (oldline != undefined) {
Dm[c] = { e : col, char : " ", fg : oldline[c].fg, bg: oldline[c].bg};
D} else {
Dm[c] = { e : col, char : " ", fg : this.fg, bg: this.bg };
D}
Dthis.setColor(m[c], m[c].fg, m[c].bg);
Drow.appendChild(col);
D}
Dreturn { m: m, row: row };
D},
DDscrollup : function() {
Dif (this.tmargin == 0)
Dthis.scrollback.appendChild(this.row[0]);
Delse
Dthis.window.removeChild(this.row[this.tmargin]);
DDvar nr = this.newrow();
Dfor(var r = this.tmargin; r < this.bmargin; r++) {
Dthis.m[r] = this.m[r+1];
Dthis.row[r] = this.row[r+1];
D}
Mvar col = document.createElement("td");
Mfor(var c = 0; c < this.cols; c ++) {
Mvar m = [];
Mvar row = document.createElement("tr");
Mnewrow : function(oldline) {
MM//	2 = [ encountered, 3 = ( encountered, 4 = ) encountered
M// 0 = normal, 1 = escape encountered:
Mmode : 0,
MMcq : "",
Mfg : 7, bg : 0,
Mcx : 0, cy : 0,
Mtmargin: 0, bmargin: 0,
MhomeRow: 0, homeCol : 0,
Mrows : 0, cols : 0,
M}
      this.setColor(m[c], m[c].fg, m[c].bg);
      r	w.appendChild(col);
    }  return { m: m, row: row };
  },
  scrollup : function() {
    if (this.tmargin == 0)
      this.scrollback.appendChild(this.row[0]);
    elsethis.window.removeChild(this.row[this.tmargin]);
	nr = this.newrow();
    for(var r = this.tmargin; r < this.bmargin; r++) {
      this.m[r] = this.m[r+1];
	this.row[r] = this.row[r+1];
    }this.m[this.bmargin] = nr.m;
    this.row[this.bmargin] = nr.row;
    if (this.bmargin == this.rows-1) {
	this.window.appendChild(nr.row);
	this.tc.scrollTop = this.tc.clientHeight;	this.tc.scrollTop = this.tc.clientHeight;} elsethis.window.insertBefore(nr.row, this.row[this.bmargin+1]);
  },
  scrolldown : function() {var nr = this.newrow();
    var old = this.row[this.bmargin];
    for(var r = this.bmargin; r > 	tmargin	r--) {
      this.m[r] = this.m[r-1];
	is.row[r] = this.row[r-1];
    }this.m[this.tmargin] = nr.m;
    thir.row[this.tmargin] = nr.row;
    this.window.insertBefore(nr.row, this.row[this.tmargin]);
    this.window.removeChild(old);
  },
  tab : function() {
    this.cx = Math.min(this.cols-1, (8*Math.floor((this.cx+8)/8)));
  },cr : function() {  cr : function() {this.cx = 0;
  },down : function(lines, scroll) {do {
      if (this.cy == this.bmargin) {    if (scroll) this.scrollup();  } else this.cy++;} while (--lines > 0);
  },up : function(lines, scroll) {
    do {  if (this.cy == this.tmargin) {
        if (scroll) this.scrolldown();
      } else 	s.cy--;
    } while (--lines > 0);
  },left : function(cols) {
    this.cx = Math.max(0, this.cx-(cols?cols:1));
//     do {
//       if (this.cx > 0) this.cx--;
//  	} while (--cols > 0);
  },      this.tc.scrollTop = this.tc.clientHeight;} else
      this.window.insertBefore(nr.row, this.row[this.bmargin+1]);
  },
  scrolldown : function() {var nr = this.newrow();var old = this.row[this.bmargin];
    for(var r = this.bmargin; r > this.tmargin; r--) {
      this.m[r] = this.m[r-1];
      this.row[r] = this.row[r-1];
    }this.m[this.tmargin] = nr.m;
    thir.row[	s.tmargin] = nr.row;
    this.window.insertBefore(nr.row, this.row[this.tmargin]);
    this.window.removeChild(old);
  },
  tab : function() {
    this.cx = Math.min(this.cols-1, (8*Math.floor((this.cx+8)/8)));
  },cr : function() {	}  this.setColor(m[c], m[c].fg, m[c].bg);
	row.appendChild(col);
    }return { m: m, row: row };
  },
  scrollup : function() {if (this.tmargin == 0)
      this.scrollback.appendChild(	row[0]);
    elseis.window.removeChild(this.row[this.tmargin]);
    var nr = this.newrow();
    for(var r = this.tmargin; r < this.bmargin; r++) {
      this.m[r] = this.m[r+1];
      this.row[r] = this.row[r+1];
    }this.m[this.bmargin] = nr.m;
    this.row[this.bmargin] = nr.row;
    if (this.bmargin == this.rows-1) {
      this.window.appendChild(nr.row);
      this.tc.scrollTop = this.tc.clientHeight;  rows : 0, cols : 0,
  homeR	w: 0, homeCol : 0,
  tmargin: 0, bmargin: 0,
  cx : 0, cy : 0,
  fg : 7, bg : 0,
  cq : "",
  mode : 0,
  // 0 = normal, 1 = escape encountered:
  //   2 = [ encountered, 3 = ( encountered, 4 = ) encountered
  newrow : function(oldline) {
	row = document.createElement("tr");
    var m = [];
    for(var c = 0; c < this.cols; c ++) {
	var col = document.createElement("td");
      col.innerHTML = "&nbsp;";
      if (oldline != undefined) {
        m[c] = { e : col, char : " ", fg : oldline[c].fg, bg: oldline[c].bg};
      } else {
	  m[c] = { e : col, char : " ", fg : this.fg, bg: this.bg };
	}
Dthis.setColor(m[c], m[c].fg, m[c].bg);
Drow.appendChild(col);
D}
Dreturn { m: m, row: row };
D},
DDscrollup : function() {
Dif (this.tmargin == 0)
Dthis.scrollback.appendChild(this.row[0]);
Delse
Dthis.window.removeChild(this.row[this.tmargin]);
M	this.setColor(m[c], m[c].fg, m[c].bg);*Dthis.window.removeChild(this.row[this.tmargin]);DDvar nr = this.newrow();
Dfor(var r = this.tmargin; r < this.bmargin; r++) {
Dthis.m[r] = this.m[r+1];
Dthis.row[r] = this.row[r+1];
D}
Dthis.m[this.bmargin] = nr.m;
Dthis.row[this.bmargin] = nr.row;
Dif (this.bmargin == this.rows-1) {
Dthis.window.appendChild(nr.row);
Dthis.tc.scrollTop = this.tc.clientHeight;
D} else
Dthis.window.insertBefore(nr.row, this.row[this.bmargin+1]);
D},
DDscrolldown : function() {
Dvar nr = this.newrow();
Dvar old = this.row[this.bmargin];
DDfor(var r = this.bmargin; r > this.tmargin; r--) {
Dthis.m[r] = this.m[r-1];
Dthis.row[r] = this.row[r-1];
D}
Dthis.m[this.tmargin] = nr.m;
Dthir.row[this.tmargin] = nr.row;
Dthis.window.insertBefore(nr.row, this.row[this.tmargin]);
Dthis.window.removeChild(old);
D},
DSome buffers haven't been saved; leave anyway? y
water:/net/sbaker/vt100# ls

doc  keyboard.js  vt100.html  vt100.js
water:/net/sbaker/vt100# ^Dexit

Script done on Fri 31 May 2019 03:02:03 PM EDT