1
0
mirror of synced 2026-02-27 01:19:42 +00:00

remove duplicate \DISPLAYLINE accidentally in MAIKOETHER (#550)

This commit is contained in:
Larry Masinter
2021-10-27 12:13:23 -07:00
committed by GitHub
parent 18f5da85fd
commit 5490abb143
2 changed files with 14 additions and 267 deletions

View File

@@ -1,13 +1,11 @@
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "XCL" BASE 10)
(FILECREATED "25-Mar-2021 09:50:57" |{DSK}<home>larry>ilisp>medley>sources>MAIKOETHER.;2| 47411
|changes| |to:| (VARS MAIKOETHERCOMS \\EPT.3TO10)
(FNS \\MAIKO.10MBSENDPACKET \\MAIKO.10MBWATCHER \\MAIKO.ETHERRESUME
\\MAIKO.ETHERSUSPEND \\MAIKO.INPUT.INTERRUPT \\MAIKO.10MBSTARTDRIVER
\\MAIKO.10MBTURNONETHER \\MAIKO.10MB.RESTART.ETHER \\MAIKO.CHECKSUM)
(FILECREATED "25-Oct-2021 15:12:33" |{DSK}<home>larry>medley>sources>MAIKOETHER.;2| 28792
|previous| |date:| " 4-May-91 15:52:07" |{DSK}<home>larry>ilisp>medley>sources>MAIKOETHER.;1|
)
|changes| |to:| (FNS \\DISPLAYLINE)
(VARS MAIKOETHERCOMS)
|previous| |date:| "25-Mar-2021 09:50:57" |{DSK}<home>larry>medley>sources>MAIKOETHER.;1|)
; Copyright (c) 1988-1991, 2021 by Venue & Xerox Corporation.
@@ -16,7 +14,7 @@
(RPAQQ MAIKOETHERCOMS
((FNS \\10MB.RESTART.ETHER \\10MB.STARTDRIVER \\10MB.TURNOFFETHER \\10MB.TURNONETHER
\\10MBSENDPACKET \\10MBWATCHER \\DISPLAYLINE \\MAIKO.10MBSENDPACKET \\MAIKO.10MBWATCHER
\\10MBSENDPACKET \\10MBWATCHER \\MAIKO.10MBSENDPACKET \\MAIKO.10MBWATCHER
\\MAIKO.ETHERRESUME \\MAIKO.ETHERSUSPEND \\MAIKO.INPUT.INTERRUPT \\NS.SETTIME
\\PUP.SETTIME \\MAIKO.10MBSTARTDRIVER \\MAIKO.10MBTURNONETHER \\MAIKO.10MB.RESTART.ETHER
\\MAIKO.CHECKSUM)
@@ -183,256 +181,6 @@
(SETQ CNTR 0)
(GO LP))))
(\\DISPLAYLINE
(LAMBDA (TEXTOBJ LINE WINDOW) (* \; "Edited 5-Apr-89 16:22 by snow")
(* |;;| "Display the line of text LINE in the edit window where it belongs.")
(* |;;| " This Function works on MIAKO")
(PROG ((CH 0)
(CHLIST (|fetch| (THISLINE CHARS) |of| (|fetch| THISLINE |of| TEXTOBJ)))
(WLIST (|fetch| (THISLINE WIDTHS) |of| (|ffetch| THISLINE |of| TEXTOBJ)))
(LOOKS (|fetch| (THISLINE LOOKS) |of| (|ffetch| THISLINE |of| TEXTOBJ)))
(WINDOWDS (WINDOWPROP (OR WINDOW (CAR (|fetch| (TEXTOBJ \\WINDOW) |of| TEXTOBJ)))
'DSP))
(TEXTLEN (|ffetch| (TEXTOBJ TEXTLEN) |of| TEXTOBJ))
(THISLINE (|ffetch| (TEXTOBJ THISLINE) |of| TEXTOBJ))
(TERMSA (|ffetch| (TEXTOBJ TXTTERMSA) |of| TEXTOBJ))
(STREAM (|ffetch| (TEXTOBJ STREAMHINT) |of| TEXTOBJ))
(OLDCACHE (|fetch| LCBITMAP |of| (|ffetch| (TEXTOBJ DISPLAYCACHE) |of|
TEXTOBJ)))
(DS (|ffetch| (TEXTOBJ DISPLAYCACHEDS) |of| TEXTOBJ))
(HCPYDS (|ffetch| (TEXTOBJ DISPLAYHCPYDS) |of| TEXTOBJ))
(HARDCOPYMODE (|fetch| (FMTSPEC FMTHARDCOPY) |of| (|fetch| (LINEDESCRIPTOR
LFMTSPEC)
|of| LINE)))
LOOKSTARTX CACHE \\PCHARSLEFT \\PSTRING \\PFILE FONT OFONT OLOOKS XOFFSET CLIPLEFT
CLIPRIGHT DISPLAYDATA DDPILOTBBT DDWIDTHCACHE DDOFFSETCACHE CURY LHEIGHT SCALE)
(SETQ LHEIGHT (COND
((|ffetch| (LINEDESCRIPTOR PREVLINE) |of| LINE)
(* \;
 "So if theres a base-to-base measure, we clear everything right.")
(IMAX (IDIFFERENCE (|fetch| YBOT |of| (|ffetch| (
LINEDESCRIPTOR
PREVLINE)
|of| LINE))
(|ffetch| (LINEDESCRIPTOR YBOT) |of| LINE))
(|ffetch| (LINEDESCRIPTOR LHEIGHT) |of| LINE)))
(T (|ffetch| (LINEDESCRIPTOR LHEIGHT) |of| LINE))))
(COND
(HARDCOPYMODE (* \;
 "This is a hardcopy-mode line. Scale things.")
(* \; "(SETQ DS HCPYDS)")
(SETQ SCALE (DSPSCALE NIL HCPYDS)))
(T (SETQ SCALE 1)))
(SETQ CACHE (\\TEDIT.LINECACHE (|ffetch| (TEXTOBJ DISPLAYCACHE) |of| TEXTOBJ)
(COND
(HARDCOPYMODE (FIXR (FQUOTIENT (|fetch| RIGHTMARGIN |of|
LINE)
SCALE)))
(T (|fetch| RIGHTMARGIN |of| LINE)))
LHEIGHT))
(COND
((NEQ CACHE OLDCACHE) (* \;
 "We changed the bitmaps because this line was bigger--update the displaystream, too")
(DSPDESTINATION CACHE DS)
(DSPCLIPPINGREGION (|create| REGION
LEFT _ 0
BOTTOM _ 0
WIDTH _ (|fetch| BITMAPWIDTH |of| CACHE)
HEIGHT _ (|ffetch| BITMAPHEIGHT |of| CACHE))
DS)))
(BITBLT NIL 0 0 CACHE 0 0 NIL NIL 'TEXTURE 'REPLACE WHITESHADE)
(* \; "Clear the line cache")
(COND
(HARDCOPYMODE (* \;
 "This is a hardcopy-mode line. Scale things.")
(* \; "(SETQ DS HCPYDS)")
(SETQ SCALE (DSPSCALE NIL HCPYDS)))
(T (SETQ SCALE 1)))
(COND
((AND (NOT (ZEROP (|fetch| CHAR1 |of| LINE)))
(ILEQ (|ffetch| CHAR1 |of| LINE)
TEXTLEN)
(IGEQ (|ffetch| YBOT |of| LINE)
(|ffetch| WBOTTOM |of| TEXTOBJ)))
(* |;;| "Only display the line of it contains text (CHAR1 > 0), appears before the end of the test, and is on-screen.")
(COND
((NEQ (|fetch| DESC |of| THISLINE)
LINE) (* \;
 "No image cache -- re-format and display")
(\\FORMATLINE TEXTOBJ NIL (|ffetch| CHAR1 |of| LINE)
LINE)))
(MOVETO (|ffetch| LEFTMARGIN |of| LINE)
(|ffetch| DESCENT |of| LINE)
DS)
(SETQ DISPLAYDATA (|fetch| IMAGEDATA |of| DS))
(SETQ DDPILOTBBT (|ffetch| DDPILOTBBT |of| DISPLAYDATA))
(SETQ XOFFSET (|ffetch| DDXOFFSET |of| DISPLAYDATA))
(* |;;| "The X position of the left edge of the window, since \\TEDIT.BLTCHAR works on the screen bitmap itself.")
(SETQ CLIPLEFT (|ffetch| |DDClippingLeft| |of| DISPLAYDATA))
(* \;
 "The left and right edges of the clipping region for the text display window.")
(SETQ CLIPRIGHT (|ffetch| |DDClippingRight| |of| DISPLAYDATA))
(SETQ OFONT (DSPFONT (|fetch| CLFONT |of| (SETQ OLOOKS (\\EDITELT LOOKS 0)))
DS)) (* \; "The starting font")
(SETQ DDWIDTHCACHE (|ffetch| DDWIDTHSCACHE |of| DISPLAYDATA))
(* \;
 "Cache the character-image widths")
(SETQ DDOFFSETCACHE (|ffetch| DDOFFSETSCACHE |of| DISPLAYDATA))
(* \;
 "And the offset-into-strike-bitmap array")
(SETQ LOOKSTARTX (|ffetch| LEFTMARGIN |of| LINE))
(* \;
 "Starting X position for the current-looks text.")
(AND (|fetch| CLOFFSET |of| OLOOKS)
(RELMOVETO 0 (FIXR (FTIMES SCALE (|ffetch| CLOFFSET |of| OLOOKS)))
DS)) (* \;
 "Any sub- or superscripting at start of line")
(|bind| (LOOKNO _ 1)
DX
(TX _ (IPLUS XOFFSET (|ffetch| LEFTMARGIN |of| LINE))) |for| I
|from| 0 |to| (|fetch| LEN |of| THISLINE)
|do|
(* |;;| "Display the line character by character")
(SETQ CH (\\EDITELT CHLIST I)) (* \;
 "Grab the character (or IMAGEOBJ) to display")
(SETQ DX (\\WORDELT WLIST I)) (* \; "And its width")
(SELECTC CH
(|LMInvisibleRun| (* \;
 "An INVISIBLE run -- skip it, and skip over the char count")
(|add| LOOKNO 1))
(|LMLooksChange| (* \; "A LOOKS change")
(|freplace| DDXPOSITION |of| DISPLAYDATA
|with| (IDIFFERENCE TX XOFFSET))
(* \;
 "Make the displaystream reflect our current X position")
(TEDIT.MODIFYLOOKS LINE LOOKSTARTX DS OLOOKS (|ffetch| DESCENT
|of| LINE))
(* \;
 "Make any necessary changes to the preceding characters (underline, strike-out &c)")
(DSPFONT (|fetch| CLFONT |of| (SETQ OLOOKS (\\EDITELT LOOKS
LOOKNO)))
DS) (* \; "Set the new font")
(|add| LOOKNO 1) (* \;
 "Grab the next set of char looks")
(AND (|ffetch| CLOFFSET |of| OLOOKS)
(RELMOVETO 0 (|ffetch| CLOFFSET |of| OLOOKS)
DS)) (* \; "Account for super/subscripting")
(SETQ LOOKSTARTX (IDIFFERENCE TX XOFFSET))
(* \;
 "Remember the starting Xpos for possible later underlining &c")
)
((CHARCODE (TAB \#^I)) (* \;
 "TAB: use the width from the cache to decide the right formatting.")
(COND
((OR (IEQP CH (CHARCODE \#^I))
(|ffetch| CLLEADER |of| OLOOKS)
(EQ (|ffetch| CLUSERINFO |of| OLOOKS)
'DOTTEDLEADER))
(LET* ((LEADERFONT (COND
(HARDCOPYMODE (FONTCOPY (|ffetch|
CLFONT
|of| OLOOKS)
'DEVICE HCPYDS))
(T (|ffetch| CLFONT |of| OLOOKS))))
(DOTWIDTH (CHARWIDTH (CHARCODE \.)
LEADERFONT))
(TTX (IPLUS TX DOTWIDTH (IDIFFERENCE DOTWIDTH
(IREMAINDER TX DOTWIDTH))))
)
(|while| (ILEQ TTX (IPLUS TX DX))
|do| (COND
(HARDCOPYMODE
(SUBRCALL TEDIT.BLTCHAR (CHARCODE \.)
DS
(FIXR (FQUOTIENT (IDIFFERENCE TTX
DOTWIDTH)
SCALE))
DISPLAYDATA DDPILOTBBT CLIPRIGHT))
((OR TERMSA HARDCOPYMODE)
(* \;
 "Using special instrns from TERMSA")
(\\DSPPRINTCHAR DS (CHARCODE \.)))
(T (* \; "Native charcodes")
(SUBRCALL TEDIT.BLTCHAR (CHARCODE \.)
DS
(IDIFFERENCE TTX DOTWIDTH)
DISPLAYDATA DDPILOTBBT CLIPRIGHT))
)
(|add| TTX DOTWIDTH))))))
(13 (* \; "It's a CR")
NIL)
(COND
((SMALLP CH) (* \;
 "Normal character -- just display it.")
(COND
(HARDCOPYMODE (SUBRCALL TEDIT.BLTCHAR CH DS (FIXR (FQUOTIENT TX
SCALE))
DISPLAYDATA DDPILOTBBT CLIPRIGHT))
((OR TERMSA HARDCOPYMODE) (* \;
 "Using special instrns from TERMSA")
(\\DSPPRINTCHAR DS CH))
(T (* \; "Native charcodes")
(SUBRCALL TEDIT.BLTCHAR CH DS TX DISPLAYDATA DDPILOTBBT
CLIPRIGHT))))
(T (* \; "CH is an object.")
(MOVETO (IDIFFERENCE (FIXR (FQUOTIENT TX SCALE))
XOFFSET)
(SETQ CURY (DSPYPOSITION NIL DS))
DS) (* \;
 "Go to the base line, left edge of the image region.")
(APPLY* (IMAGEOBJPROP CH 'DISPLAYFN)
CH DS 'DISPLAY (|ffetch| STREAMHINT |of| TEXTOBJ))
(* \;
 "Tell him to display himself here.")
(DSPFONT (|ffetch| CLFONT |of| OLOOKS)
DS)
(MOVETO (IDIFFERENCE (FIXR (FQUOTIENT TX SCALE))
XOFFSET)
CURY DS) (* \;
 "Move to after the object's image")
)))
(|add| TX DX) (* \; "Update our X position")
|finally| (|freplace| DDXPOSITION |of| DISPLAYDATA
|with| (IDIFFERENCE (FIXR (FQUOTIENT TX SCALE))
XOFFSET))
(* \;
 "Make any necessary looks mods to the last run of characters")
(TEDIT.MODIFYLOOKS LINE LOOKSTARTX DS OLOOKS (|ffetch| DESCENT
|of| LINE)))))
(BITBLT CACHE 0 0 WINDOWDS 0 (|ffetch| YBOT |of| LINE)
(|ffetch| WRIGHT |of| TEXTOBJ)
LHEIGHT
'INPUT
'REPLACE) (* \;
 "Paint the cached image on the screen (this lessens flicker during update)")
(COND
((|fetch| (FMTSPEC FMTREVISED) |of| (|ffetch| (LINEDESCRIPTOR LFMTSPEC)
|of| LINE))
(* \;
 "This paragraph has been revised, so mark it.")
(\\TEDIT.MARK.REVISION TEXTOBJ (|ffetch| (LINEDESCRIPTOR LFMTSPEC) |of| LINE)
WINDOWDS LINE)))
(SELECTQ (|ffetch| LMARK |of| LINE)
(GREY (* \;
 "This line has some property that isn't visible to the user. Tell him to be careful")
(BITBLT NIL 0 0 WINDOWDS 0 (|ffetch| YBASE |of| LINE)
6 6 'TEXTURE 'PAINT 42405))
(SOLID (* \;
 "This line has some property that isn't visible to the user. Tell him to be careful")
(BITBLT NIL 0 0 WINDOWDS 0 (|ffetch| YBASE |of| LINE)
6 6 'TEXTURE 'PAINT BLACKSHADE))
(BITBLT NIL 0 0 WINDOWDS 0 (|ffetch| YBASE |of| LINE)
6 6 'TEXTURE 'REPLACE WHITESHADE)))))
(\\MAIKO.10MBSENDPACKET
(LAMBDA (NDB PACKET) (* \; "Edited 31-Oct-89 14:10 by bvm")
(PROG NIL
@@ -781,13 +529,12 @@
(RPAQQ \\MAIKO.IO-INTERRUPT-VECTOR NIL)
(PUTPROPS MAIKOETHER COPYRIGHT ("Venue & Xerox Corporation" 1988 1989 1990 1991 2021))
(DECLARE\: DONTCOPY
(FILEMAP (NIL (2870 40835 (\\10MB.RESTART.ETHER 2880 . 3040) (\\10MB.STARTDRIVER 3042 . 4801) (
\\10MB.TURNOFFETHER 4803 . 4963) (\\10MB.TURNONETHER 4965 . 7335) (\\10MBSENDPACKET 7337 . 9708) (
\\10MBWATCHER 9710 . 11049) (\\DISPLAYLINE 11051 . 29389) (\\MAIKO.10MBSENDPACKET 29391 . 31769) (
\\MAIKO.10MBWATCHER 31771 . 33116) (\\MAIKO.ETHERRESUME 33118 . 33277) (\\MAIKO.ETHERSUSPEND 33279 .
33440) (\\MAIKO.INPUT.INTERRUPT 33442 . 35704) (\\NS.SETTIME 35706 . 35986) (\\PUP.SETTIME 35988 .
36269) (\\MAIKO.10MBSTARTDRIVER 36271 . 37926) (\\MAIKO.10MBTURNONETHER 37928 . 40303) (
\\MAIKO.10MB.RESTART.ETHER 40305 . 40658) (\\MAIKO.CHECKSUM 40660 . 40833)) (41890 44955 (
\\MAIKO.ETHER-INTERRUPT 41900 . 44953)) (45077 46440 (\\MAIKO.CONSOLE-LOG-PRINT 45087 . 46438)) (46486
47166 (\\MAIKO.IO-INTERRUPT 46496 . 47164)))))
(FILEMAP (NIL (2591 22216 (\\10MB.RESTART.ETHER 2601 . 2761) (\\10MB.STARTDRIVER 2763 . 4522) (
\\10MB.TURNOFFETHER 4524 . 4684) (\\10MB.TURNONETHER 4686 . 7056) (\\10MBSENDPACKET 7058 . 9429) (
\\10MBWATCHER 9431 . 10770) (\\MAIKO.10MBSENDPACKET 10772 . 13150) (\\MAIKO.10MBWATCHER 13152 . 14497)
(\\MAIKO.ETHERRESUME 14499 . 14658) (\\MAIKO.ETHERSUSPEND 14660 . 14821) (\\MAIKO.INPUT.INTERRUPT
14823 . 17085) (\\NS.SETTIME 17087 . 17367) (\\PUP.SETTIME 17369 . 17650) (\\MAIKO.10MBSTARTDRIVER
17652 . 19307) (\\MAIKO.10MBTURNONETHER 19309 . 21684) (\\MAIKO.10MB.RESTART.ETHER 21686 . 22039) (
\\MAIKO.CHECKSUM 22041 . 22214)) (23271 26336 (\\MAIKO.ETHER-INTERRUPT 23281 . 26334)) (26458 27821 (
\\MAIKO.CONSOLE-LOG-PRINT 26468 . 27819)) (27867 28547 (\\MAIKO.IO-INTERRUPT 27877 . 28545)))))
STOP

Binary file not shown.