Annotation of researchv10no/cmd/dimpress/README, revision 1.1

1.1     ! root        1: 
        !             2: Landscape mode has been added. Use the -l option to get it.
        !             3: 
        !             4: 
        !             5: A few words of warning first. The i300 font and raster files have been
        !             6: changed enough so you'll need to install the new versions on ALL systems
        !             7: that can send you troff output files for post-processing. I guarantee
        !             8: you'll have problems if troff and dimpress use different sets of
        !             9: i300 font files, so install the new tables on all your systems as soon
        !            10: as you're convinced things are working properly.
        !            11: 
        !            12: Check the definition of CFLAGS in makefile. If your system doesn't have
        !            13: hardware floating point you'll need the -f option. If it's already
        !            14: there and you've got hardware floating point you may want to get rid
        !            15: of it, although it apparently doesn't hurt things.
        !            16: 
        !            17: I've included files that can be copied to /usr/pub and used with eqn.
        !            18: You'll find them in ./TABLES/pub. Each of the files will only be installed
        !            19: if it doesn't already exist in directory /usr/pub. I didn't do much at
        !            20: all to the i300eqnchar file, so if you've already built one of your own
        !            21: don't use mine!
        !            22: 
        !            23: Find out what version of the operating system is running on your
        !            24: printer. 1.9 and later systems can use the new drawing routines in
        !            25: impdraw.c. Everyone else should compile dimpress using draw.c. Just
        !            26: change all occurrences of impdraw to draw in makefile, or replace
        !            27: impdraw.c with draw.c before you compile things. In addition if you're
        !            28: using the old drawing stuff make sure DX and DY are less than 5 or so,
        !            29: otherwise pictures will come out dotted. Decreasing DX and DY improves
        !            30: pictures drawn the old way, but increases the size and complexity of
        !            31: the output files. You can set DX and DY on the command line (-P option
        !            32: I think) so you may want to experiment a little to find the largest
        !            33: value that gives reasonable pictures. A step size of 3 seems to be
        !            34: decent on Imprint-10s. DX and DY only affect splines in impdraw.c.
        !            35: 
        !            36: If your printer is running a really old operating system you may have
        !            37: problems with illegal instructions. The first place to look if there's
        !            38: trouble is in routine initialize(). Take out the two lines that set
        !            39: the pen diameter. I don't think they're legal on 1.7 or earlier
        !            40: printers. Then make sure you call Imagen about upgrading your printer!
        !            41: Sorry about setting the pen diameter in dimpress.c. Obviously it should
        !            42: have been done in impdraw.c.
        !            43: 
        !            44: The Bell Laboratories logo is included in the new raster files. It's
        !            45: only available in size 36 and can be accessed using \(Lb. In addition
        !            46: the 10 line globe and AT&T are available as single characters so you
        !            47: can build other logos if you want. They're know as characters \(L2
        !            48: and \(LA respectively, and again are only available in size 36.
        !            49: 
        !            50: I've also included a version of the mm macros that will automatically
        !            51: print the Bell Labs logo for device i300. I've only supplied it as
        !            52: an example, and I don't suggest you install it. I made the changes
        !            53: rather quickly and they're not guaranteed. Besides you may have your
        !            54: own local version of the mm macros. An easy way of using the macros
        !            55: that i included without actually installing them is to include the
        !            56: file on the command line and omit all other macros. For example,
        !            57: 
        !            58: 
        !            59:            troff -Ti300 mmt file >file.t
        !            60: 
        !            61: 
        !            62: will replace the -mm option. If file asks for the logo it should get
        !            63: printed - provided you've installed the new font and raster files.
        !            64: 
        !            65: 
        !            66: ----------------------------------------
        !            67: 
        !            68: 
        !            69: A bunch of stuff that can be used with printers that accept Impress, whether
        !            70: they were made by Imagen or not. I've supplied raster files (in directory
        !            71: TABLES/rasti300) that were built (using buildrast) from original versions
        !            72: for the 8/300 as supplied by Imagen. They're written in Imagen's Rst format.
        !            73: File rast.h describes their structure and should be a decent introduction
        !            74: if you don't know anything about the raster files. I've also included font
        !            75: and device files for troff and dimpress in directory TABLES/devi300. Again
        !            76: they were built by buildrast at the same time the raster files were made.
        !            77: If you've got PDQs on your system you'll want to take the binary files
        !            78: from TABLES/PDQ/devi300 and install them too (probably in directory
        !            79: /usr/lib/font/PDQ/devi300).
        !            80: 
        !            81: I've added printer resident fonts to dimpress. Most of the code can
        !            82: be found in res.c. The ASCII files found in /usr/lib/raster/RESIDENT
        !            83: describe the available resident fonts for different printers. Take a
        !            84: look at ./TABLES/RESIDENT/a490 if you want an example. The member maps
        !            85: were built by mkres, actually routine dump_data(), using the description
        !            86: files supplied by Imagen. I changed things a little just to eliminate
        !            87: the need for character codes greater than 127. The font and DESC files
        !            88: for lucida (./TABLES/deva490) also came from Imagen and need to agree
        !            89: with mapping file ./TABLES/RESIDENT/a490. Be careful if you decide to
        !            90: make changes to any of these files.
        !            91: 
        !            92: 
        !            93: ----------------------------------------
        !            94: 
        !            95: 
        !            96: You may have some changes to make to the source code I've supplied. Most
        !            97: of them will have to be made in files init.h, dimpress.h or makefile. I'll
        !            98: list the more obvious ones, although there undoubtedly are some I've forgotten.
        !            99: 
        !           100: 
        !           101: FILES init.h and makefile only:
        !           102: 
        !           103:     FONTDIR    - Needs to be defined as the normal troff font directory
        !           104:                  on your system. I've set it to "/usr/lib/font" which is
        !           105:                  probably correct for your system. The font directory can
        !           106:                  be set at run time (in dimpress and troff) using the -F
        !           107:                  option. If you've got all your font files hidden somewhere
        !           108:                  else make sure you make the change in both of these files.
        !           109: 
        !           110:     BITDIR     - You undoubtedly won't have this directory on your system,
        !           111:                  and you may not have enough disk space to keep all the
        !           112:                  new raster files here. I've defined it to be directory
        !           113:                  "/usr/lib/raster". The post-processor (dimpress) will
        !           114:                  look for new raster files for device "xxx" in directory
        !           115:                  rastxxx located in BITDIR. The -B option can be used to
        !           116:                  do run time setting of *bitdir. The makefile will try
        !           117:                  to install all the raster files that I've supplied in
        !           118:                  appropriately named directories located in BITDIR. The
        !           119:                  raster files I've given you take up about 8000 blocks
        !           120:                  so you'll need at least that much space wherever you
        !           121:                  decide to put them.
        !           122: 
        !           123:                  If really hurting for disk space the best solution is
        !           124:                  to start eliminating raster files in the largest point
        !           125:                  size first. You'd save quite a bit of space by getting
        !           126:                  rid of all the size 36 files, and that may be good
        !           127:                  enough. Remember to update the RASTERLIST file to
        !           128:                  reflect the available point sizes. Most of the output
        !           129:                  you get will look OK, but troff assumes it can print
        !           130:                  characters in any font in all the sizes listed in the
        !           131:                  DESC file. 36 is in the list even though you may have
        !           132:                  have eliminated the raster files. You could easily
        !           133:                  change the DESC size list before running makedev and
        !           134:                  things would improve - unless you're running PDQs.
        !           135:                  In that case troff will usually use the binary files
        !           136:                  I've supplied in ./TABLES/PDQ/devi300 and the change
        !           137:                  you just made to the DESC file won't fix anything.
        !           138:                  Also remember the logo is only available in a size
        !           139:                  36 raster file. Things can easily get messed up so
        !           140:                  make sure you understand what's going on before you
        !           141:                  start to make changes just to save disk space.
        !           142: 
        !           143: 
        !           144:                  If you're going to make a change be sure to do it in
        !           145:                  both init.h and makefile.
        !           146: 
        !           147: 
        !           148: FILE init.h only:
        !           149: 
        !           150:     OLDBITDIR  - This is the directory where you'll find the old Imprint-10
        !           151:                  raster file directory rasti10. I've defined it to be
        !           152:                  "/usr/lib/font/devi10" because that's where the DWB package
        !           153:                  put them. Again you may have them somewhere else on your
        !           154:                  system, and if you do you'll want to change this string,
        !           155:                  otherwise the -Ti10 option won't work properly. You'll also
        !           156:                  have problems if you're not keeping the raster files in
        !           157:                  a directory that begins with "rast". The original version
        !           158:                  of the post-processor was called dcan, and it expected
        !           159:                  to find the raster files in /usr/lib/font/devcan. If
        !           160:                  that's the program you've been running you'll probably
        !           161:                  want to move the old raster files to a new directory.
        !           162: 
        !           163:     IPR                - Full pathname for the ipr program on your system. I've set
        !           164:                  it to "/usr/bin/ipr" but that might not be right for you.
        !           165:                  If your not running Imagen's spooling package you don't
        !           166:                  have to worry about this guy - just make sure you always
        !           167:                  call dimpress with the -t option.
        !           168: 
        !           169: 
        !           170: FILE makefile only:
        !           171: 
        !           172:     CFLAGS     - The drawing routines use floating point, so if you're on
        !           173:                  a system that doesn't have the hardware make sure you
        !           174:                  include the -f option. I may already have added it
        !           175:                  to your makefile, but I'd still suggest checking the
        !           176:                  definition. If it's there it shouldn't hurt anything
        !           177:                  even if you really don't need it.
        !           178: 
        !           179:     BINDIR     - Set to /usr/bin by default. It's where we'll put dimpress
        !           180:                  after it's compiled - provided we're installing things.
        !           181: 
        !           182:     PDQDIR     - If you're running PDQs on your system you'll need special
        !           183:                  binary versions of troff's font files. I've built them on
        !           184:                  one of our systems using the ASCII files in TABLES/dev????.
        !           185:                  If PDQDIR exists on your system the binary files from
        !           186:                  TABLES/PDQ/dev???? will be copied to PDQDIR/dev????. I've
        !           187:                  defined PDQDIR to be $(FONTDIR)/PDQ. If you're not running
        !           188:                  PDQs don't worry because PDQDIR shouldn't be there.
        !           189: 
        !           190:     OWNER      - This will be the owner of any files we install.
        !           191: 
        !           192:     GROUP      - And this will be the group.
        !           193: 
        !           194: 
        !           195: FILE dimpress.h only:
        !           196: 
        !           197:     PR_INIT    - This defines the default values to use with the printers
        !           198:                  that are directly supported by dimpress. If you want to
        !           199:                  add a new printer just make up an appropriate line (look
        !           200:                  at the definition of Prdata) and add it to PR_INIT. The
        !           201:                  list must be terminated by an entry that has NULL defined
        !           202:                  for the value of prname, so make sure you don't put anything
        !           203:                  after the current last line. You also may not agree with
        !           204:                  some of the default values I've picked for the different
        !           205:                  printers. If you don't change them in PR_INIT before you
        !           206:                  compile dimpress.
        !           207: 
        !           208:                  The only difference between i240 and i10 is that when you
        !           209:                  use -Ti10 dimpress looks in OLDBITDIR for a raster directory
        !           210:                  called rasti10, while with -Ti240 it looks in BITDIR for
        !           211:                  rasti240. The -Ti10 option should be used to run Imprint-10s
        !           212:                  using the old raster files. That's the only option you'll
        !           213:                  need to use if you've got OLDBITDIR defined properly.
        !           214: 
        !           215:     PR_NUM     - In dimpress.c pr_num refers to the line in PR_INIT (actually
        !           216:                  the index in prdata[]) that will be used as the default
        !           217:                  printer. I've got it set to zero, which means that the
        !           218:                  8/300 will be the target printer, unless the -T option is
        !           219:                  used. If you want a different default just change the
        !           220:                  definition of PR_NUM.
        !           221: 
        !           222: 
        !           223: That should be most everything that needs changing. Really the most important
        !           224: thing for you to decide is where you want to keep the new raster files, and
        !           225: that means making sure you've got enough space for about 8000 blocks in
        !           226: directory BITDIR. Also if you're short on disk space you may want to make
        !           227: sure you set INS=mv when you run the makefile to do the installation. That
        !           228: will make sure the raster files will be moved instead of copied, so you'll
        !           229: just have one set of raster files lying around. Obviously the makefile will
        !           230: only work once if you move the raster files, but there's probably no other
        !           231: reason to keep two copies around.
        !           232: 
        !           233: 
        !           234: ----------------------------------------
        !           235: 
        !           236: 
        !           237: If you need the -f option and don't have it included in makefile just add
        !           238: CFLAGS='-O -f' to the command lines given below - obviously before the
        !           239: target names.
        !           240: 
        !           241: Once you've made all the required source code changes you can build and
        !           242: install everything by typing,
        !           243: 
        !           244: 
        !           245:        make clobber install
        !           246: 
        !           247: 
        !           248: or if you want to save disk space and only keep one copy of the raster files
        !           249: define INS to be mv on the command line like,
        !           250: 
        !           251: 
        !           252:        make INS=mv clobber install
        !           253: 
        !           254: 
        !           255: I've included clobber just to make sure dimpress is built and installed.
        !           256: Either of these should compile dimpress and makedev, install dimpress in
        !           257: BINDIR, build all the binary font files, which include files in TABLES/dev*
        !           258: and in TABLES/rast*/dev*.
        !           259: 
        !           260: If you just want to compile and build all the required stuff but wait to
        !           261: install things type
        !           262: 
        !           263: 
        !           264:        make all
        !           265: 
        !           266: 
        !           267: I've already mentioned that not all the programs I've supplied will be
        !           268: compiled when you mention targets 'all' or 'install'. You'll probably only
        !           269: need the other programs if you want to do some work on the raster files.
        !           270: In that case,
        !           271: 
        !           272: 
        !           273:        make allprogs
        !           274: 
        !           275: 
        !           276: should take care of everything for you.
        !           277: 
        !           278: 
        !           279: ----------------------------------------
        !           280: 
        !           281: 
        !           282: The programs included in this directory are:
        !           283: 
        !           284: 
        !           285:     dimpress   troff post-processor that generates version 2.0 Impress
        !           286:                commands. Code came from di10 (originally dcan) and has
        !           287:                been extensively modified. It can now generate output using
        !           288:                raster files in either the old (versetec) or new (Imagen's)
        !           289:                format. Reasonable output will be produced on any printers
        !           290:                that accept Impress, independent of the resolution of the
        !           291:                raster files being used.
        !           292: 
        !           293:                By default everything's set up for the 8/300, which is
        !           294:                known as device i300. If you want to use the program to
        !           295:                generate output for another device (like i10) just use add
        !           296:                the -Ti10 option to your command line. That should take
        !           297:                care of setting up  most of the printer dependent variables.
        !           298:                The known printers are i300, i240, i480, and i10. i10 and
        !           299:                i240 are really the same printers, except that i10 assumes
        !           300:                everything is being run the old way (like di10). In other
        !           301:                words the raster files are the old format and they're hidden
        !           302:                away in the font directory. The i240 really just assumes the
        !           303:                raster files are in *bitdir/rast240.
        !           304: 
        !           305:                The drawing routines have also been rewritten to take
        !           306:                advantage of graphics primitives available in Impress. You
        !           307:                should be able to use them if you're running 1.9 or any
        !           308:                newer versions. The new routines are in file impdraw.c
        !           309:                and that's the file used by makefile when you compile
        !           310:                dimpress. If you've got an older printer that doesn't
        !           311:                support the graphics commands change the makefile so it
        !           312:                uses draw.c instead.
        !           313: 
        !           314:                A file called RASTDATA defines the format and resolution of
        !           315:                the raster files. dimpress expects to find it wherever it's
        !           316:                reading raster files. If the file can't be read dimpress
        !           317:                (routine rastsetup()) assumes the raster files are the old
        !           318:                format and 240 dpi resolution. It really should be an error
        !           319:                but RASTDATA is new and won't be part of the old raster file
        !           320:                directory unless you add it.
        !           321: 
        !           322:                Right now RASTDATA can include two commands that are
        !           323:                understood by routine rastsetup(). The first is the string
        !           324:                "format" which should be followed by either "old" or "rst".
        !           325:                The second string is "resolution" which is followed by a
        !           326:                number that specifies the raster file resolution. Everything
        !           327:                else is skipped. Look at file TABLES/rasti300/RASTDATA if
        !           328:                you want an example.
        !           329: 
        !           330:                The first example shows how you would replace di10 by
        !           331:                dimpress. In fact if you defined PR_NUM (dimpress.h) so
        !           332:                it chose i10 as the default printer you could omit the
        !           333:                -Ti10 string. That's not the way I've set things up but
        !           334:                you may want to do it on your system.
        !           335: 
        !           336:                Examples: dimpress -t -Ti10 file > file.i10
        !           337:                          dimpress -t -Ti300 file > file.i300
        !           338: 
        !           339: 
        !           340:     makedev    Program that builds the binary font and device files from
        !           341:                the ASCII versions in TABLES/*. You undoubtedly already
        !           342:                have it available somewhere on your system, but I've
        !           343:                included it anyway just to be complete. I've heard there's
        !           344:                a new and better version of makedev floating around. This
        !           345:                one is the original program that may very well be out of
        !           346:                date by now. If you've got the new makedev use it to build
        !           347:                the binary font and device files.
        !           348: 
        !           349:                Example: makedev DESC ? ??   (overkill but it works)
        !           350: 
        !           351: 
        !           352:     makemap    Code taken from makei10, as supplied in DWB. It's used to
        !           353:                build ASCII font and device files for other typesetters,
        !           354:                like the APS-5, that can be used by dimpress when it's
        !           355:                trying to print files using the new raster files. The
        !           356:                real problem here is that dimpress (in routine put1())
        !           357:                assumes that the code field in the font files it's using
        !           358:                is also the glyph number for the character in any raster
        !           359:                files that are being used. That's probably not true unless
        !           360:                the raster files and the font files were generated together,
        !           361:                as was done for the i300 files. If dimpress used the normal
        !           362:                APS-5 files from /usr/lib/font/devaps you'd be guaranteed
        !           363:                to get garbage.
        !           364: 
        !           365:                Obviously there are a bunch of different ways to get around
        !           366:                the mapping problem. I chose to hide extra font files, built
        !           367:                from the APS-5 and i300 files, in the raster file directory.
        !           368:                When dimpress tries to process a troff output file that
        !           369:                was generated for printing on device 'xxx' it first looks
        !           370:                for a devxxx directory in the raster file directory and
        !           371:                if it doesn't find it there then it uses the normal devxxx
        !           372:                directory in /usr/lib/font.
        !           373: 
        !           374:                I've used makemap to generate ASCII font and device files
        !           375:                for the APS-5 and i10. You'll find them in directory
        !           376:                TABLES/rasti300/devaps and TABLES/rasti300/devi10. That
        !           377:                means you'll be able to do APS preview work using the new
        !           378:                raster files.
        !           379: 
        !           380:                If you want to do the same kind of thing for another printer,
        !           381:                say the 202, you'll need to do the following.
        !           382: 
        !           383:                1: Make a dev202 directory in TABLES/rasti300
        !           384: 
        !           385:                2: Build a FONTMAP file for the 202. Look at the ones in
        !           386:                   TABLES/rasti300/devaps or TABLES/rasti300/devi10.
        !           387: 
        !           388:                3: Compile makemap.
        !           389: 
        !           390:                4: Move makemap to directory TABLES/rasti300 and then change
        !           391:                   into that directory.
        !           392: 
        !           393:                5: Run makemap using a command line something like,
        !           394: 
        !           395:                        makemap -mi300 -Ssource_dir -Fbinary_dir 202
        !           396: 
        !           397:                   where source_dir is where the ASCII files for the 202
        !           398:                   can be found (minus string "/dev202") and binary_dir is
        !           399:                   the directory where makemap can find the binary font
        !           400:                   files for i300.
        !           401: 
        !           402: 
        !           403:     readrast   Simple program that reads raster files in Imagen's Rst
        !           404:                format and dumps bitmap and other glyph information to
        !           405:                stdout in ASCII. Individual glyphs can be selected using
        !           406:                the -o option. If none are selected all the glyphs in each
        !           407:                of the input files will be displayed (and that can take a
        !           408:                long time).
        !           409: 
        !           410:                Example: readrast -o1,5,7-10 R.8 I.14
        !           411: 
        !           412: 
        !           413:     printrast  Another simple program that reads raster files in Imagen's
        !           414:                format and writes Impress commands needed to display glyph
        !           415:                bitmaps and other info on an Imagen printer. Output goes
        !           416:                to stdout. A simple document header is prepended to the file
        !           417:                if the -H option is used. The resolution of the printer we
        !           418:                want to use to print the file should be specified using the
        !           419:                -r option. Raster files are all assumed to be in the current
        !           420:                directory (actually ".").
        !           421: 
        !           422:                Example: printrast -H -r300 R.10 I.10 B.10 CW.18 >xxx
        !           423: 
        !           424: 
        !           425:     buildrast  A fairly involved program that reads an ASCII control file
        !           426:                and raster files supplied directly from Imagen (Rst format
        !           427:                and Tex character set) and builds raster and font files that
        !           428:                that troff and dimpress use. It built all the files you'll
        !           429:                find in directories rasti300 and devi300 using RASTi300 as the
        !           430:                control file. In fact the last three programs were all used
        !           431:                to build the tables for the 8/300. printrast generated hard
        !           432:                copy listings of the characters available in Imagen's raster
        !           433:                files and that was used to build file RASTi300. buildrast
        !           434:                then read RASTi300 and the original raster files and used
        !           435:                them to put together the new files.
        !           436: 
        !           437:                Individual fonts or sizes can be selected using the -f and
        !           438:                -s options respectively. If neither is used all the fonts in
        !           439:                all the point sizes listed in RASTi300 (or whatever file is
        !           440:                the argument) will be built. troff's ASCII files are only
        !           441:                built when the current size that buildrast is working on is
        !           442:                equal to the unitwidth value set in RASTi300. The DESC file
        !           443:                is built at the end after all the raster files have been
        !           444:                finished.
        !           445: 
        !           446:                RASTi300 that you'll find in this directory calls for some
        !           447:                fonts that aren't part of the normal software distribution
        !           448:                tape that Imagen supplies and so probably won't work for
        !           449:                you. If you're trying to build your own raster files use
        !           450:                RASTi300 instead.
        !           451: 
        !           452:                The program doesn't handle the spacewidth command properly.
        !           453:                If you use it to build font files you'll want to add an
        !           454:                appropriate spacewidth definition to the CW font file
        !           455:                after everything has been built. You'll also want to make
        !           456:                your own RASTERLIST file.
        !           457: 
        !           458:                In the example below the original raster files are assumed
        !           459:                to be in the current directory. All the new stuff will be
        !           460:                put in directories ./devi300 and ./rasti300. If you're keeping
        !           461:                Imagen's raster files somewhere else, which might not be
        !           462:                all that unusual because they take up at least 17,000
        !           463:                blocks, use the '-S dir' option to set the directory.
        !           464: 
        !           465:                Example: buildrast RASTi300
        !           466: 
        !           467: 
        !           468: 
        !           469: You'll probably only need to compile dimpress and makedev unless you want
        !           470: to work on the raster files.
        !           471: 
        !           472: 
        !           473: ----------------------------------------
        !           474: 
        !           475: 
        !           476: Most of the missing characters have been added to the raster files.
        !           477: The logo \(Lb is only available in size 36 as are the globe \(L1
        !           478: and the AT&T \(LA. If you want to build up your own logo you can
        !           479: use L1 and LA to do it. The only problem is finding a reasonable
        !           480: font to use for writing the company name. I'm not sure what the
        !           481: best choice is - maybe Bold.
        !           482: 
        !           483: The Roman, Italic, Bold, Bold Italic, and Constant Width fonts are all
        !           484: fairly close to what you might expect, but you may not be all that happy
        !           485: with the rest of the raster files (in particular Helvetica and Palatino).
        !           486: 
        !           487: In most cases dimpress can replace di10, although there are a few
        !           488: differences in the way the options are handled. The important changes are,
        !           489: 
        !           490: 
        !           491:  1: The -x and -y options set offsets in inches rather than pixels, as was
        !           492:     the case in di10.
        !           493: 
        !           494:  2: The -f option used to set the raster table directory has been changed to
        !           495:     -B.
        !           496: 
        !           497:  3: The -e, -b, -h, -H, -L, and -S options in di10 have been removed.
        !           498: 
        !           499: 
        !           500: If you expect to replace dcan by dimpress you'll have a little more work
        !           501: to do. dcan looked for raster files in /usr/lib/font/devcan. If you expect
        !           502: things to work you'll have to move those files into a directory named
        !           503: rasti10. Once that's been done make sure OLDBITDIR (file init.h) is
        !           504: properly defined. The -Ti10 option should then work properly.
        !           505: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.