Trailing-Edge
-
PDP-10 Archives
-
decuslib20-04
-
decus/20-0135/vided1.sim
There is 1 other file named vided1.sim in the archive. Click here to see a list.
00010 OPTIONS(/l/e); COMMENT DISPLAY EDITOR.
00020 See VISTA.MAN for explanations on the routines called by this
00030 program, taken from the class mvista;
00040 EXTERNAL TEXT PROCEDURE conc, front, storbokstav, upcase,
00050 compress, rest, inline, frontstrip, scanto, from, upto;
00060 EXTERNAL CHARACTER PROCEDURE findtrigger, fetchar, getch;
00070 EXTERNAL INTEGER PROCEDURE search, scanint, scan, checkint;
00080 EXTERNAL REF (infile) PROCEDURE findinfile;
00090 EXTERNAL REF (outfile) PROCEDURE findoutfile;
00100 EXTERNAL INTEGER PROCEDURE trmop, gettab;
00110 EXTERNAL BOOLEAN PROCEDURE puttext, numbered, dotypeout;
00120 EXTERNAL PROCEDURE depchar, outstring, forceout, echo;
00130 EXTERNAL PROCEDURE outchr, abort, exit;
00140 EXTERNAL CLASS mvista, qregister=vided0;
00150
00160 mvista CLASS vided1(pageheader,increment,editout,editin,
00170 command, belowcommand, arg, numbered_infile,pageheight,
00180 left_margin, right_margin, qregisters);
00190
00200 INTEGER increment; ! between new line-numbered lines;
00210 INTEGER pageheight; ! 1) before page-end-warning line, 2)
00220 plus height = number of lines kept in core;
00230 INTEGER left_margin, right_margin; ! used when justifying
00240 paragraphs;
00250 BOOLEAN numbered_infile; ! input file had line numbers;
00260 BOOLEAN pageheader; ! Put header and number on new pages;
00270 REF (infile) editin; ! Input file to be edited;
00280 REF (outfile) editout; ! Output file from editing;
00290 TEXT command; ! Text of user &command during editing;
00300 TEXT belowcommand; ! Screen text below user &command;
00310 TEXT ARRAY arg; ! User switch.ini and file creation commands;
00320 REF (qregister) qregisters; ! See description of &Q editor
00330 command;
00340 BEGIN INTEGER ARRAY screen_length[0:height-1]; ! when overwriting
00350 part of the screen with corrected text, this array keeps the old
00360 line lengthes to know how much has to be overwritten;
00370 TEXT ARRAY top_of_page[0:pageheight]; ! lines which have rolled
00380 out on top of the screen but have not yet been output;
00390 INTEGER top_size; ! Number of lines in "top_of_page";
00400 INTEGER top_fill; ! Number of lines currently in "top_of_page";
00410 INTEGER ttytab; ! Value of monitor TRMOP .TTY TAB settings,
00420 governs the handling of <HT> characters at terminal output;
00430 INTEGER pagenumber; ! Count of input page number;
00440 INTEGER debugslow; ! When this variable is nonzero, the program can
00450 be artificially slowed down to create the kind of bugs which only
00460 occur with a heavily loaded computer;
00470 INTEGER out_pagenumber; ! Count of output page number;
00480 INTEGER last_line_number; ! When creating line-numbered files,
00490 number of last line which has been output to the output file;
00500 INTEGER largest_line_number; ! Largest line number yet created;
00510 INTEGER first_text_pos;! 8 for numbered, 0 for other files;
00520 CHARACTER control_f, control_d, control_v, control_u, control_w;
00530 ! What is input when the terminal user pushes CONTROL plus
00540 one of the letters f, d, v, u or w;
00550 BOOLEAN ARRAY tab_position[0:width]; ! tabs set by user;
00560 INTEGER margin_width; ! right_margin-left_margin;
00570 INTEGER cover_length; ! cover old text at end of line;
00580 BOOLEAN first_input_line; ! true when only one line has been input
00590 from the input text file;
00600 BOOLEAN long_line_warned; ! user has been warned about too long
00610 input lines;
00620 BOOLEAN addff; ! Add <form feed> before next output line;
00630 BOOLEAN after_addff; ! Outputting second line of a page;
00640 BOOLEAN endpage; ! Last line of a page has been read from file;
00650 BOOLEAN verybadscreen; ! Terminal screen must be restored from the
00660 computer;
00670 BOOLEAN printing; ! New input lines to be printed on terminal;
00680 BOOLEAN emptyscroll; ! Scroll in blank lines at bottom of screen;
00690 TEXT editin_image_strip; ! Stripped text of last line from the input
00700 text file;
00710 TEXT other_editin_image; ! Extra image to be used sometimes;
00720 TEXT line_model; ! Extra line, often blank, for use sometimes;
00730 TEXT editout_image; ! Image of output text file;
00740 TEXT header; ! Header at top of each page;
00750 TEXT sub_header; ! Subheader = line below header;
00760 TEXT page_word; ! Contains the word "PAGE";
00770 TEXT sid_word; ! Contains the word "SID", swedish for "PAGE";
00780 TEXT sixdigits; ! Used to produce line number text segments;
00790 TEXT page_end_marker; ! Funny text warning user of end-of-page;
00800 TEXT output_line; ! Line to be output to output text file;
00810 TEXT first_scroll_line; ! Top-of-page-line to be scrolled out;
00820 COMMENT REF-variables below used to get faster execution by using
00830 the CALL procedure instead of ordinary PROCEDURE invokings;
00840 REF (one_more_line_please) p_one_more_line_please;
00850 REF (scroll) p_scroll;
00860 REF (editin_true_inimage) p_editin_true_inimage;
00870 REF (true_write) p_true_write;
00880 REF (write) p_write;
00890 REF (editin_inimage) p_editin_inimage;
00900 REF (lower_line) lower_lines;