THE WELCH COMPANY
440 Davis Court #1602
San Francisco, CA 94111-2496
415 781 5700
rodwelch@pacbell.net


S U M M A R Y


DIARY: November 14, 2003 00:25 AM Friday; Rod Welch

SDS context management makes finding information fast and easy.

1...Summary/Objective
2...Context Management Faster Better Cheaper with Unlimited Capacity
3...Sort Subject Index Reduce Memory Requirements Using Get Command
....Virtual Memory for Sorted Subject Indexes is accomplished by...
4...03501 Sort Index to Make Finding Information Fast and Easy
5...Sort Subject Index after Combining Segmented Indexes
6...Opt Tech Sort Commands for Excluding Lines
7...Integrate DOSE Calls to Assemble Segmented Indexes and Sort Indexes
....03501.bat Start Command Session Runs Sort Op
....Start Command Session Runs Sort Op in 03501.bat
....Opt Tech Shows Number of Records Sorted to Facilitate Navigation
....Virtual Memory Design Expands Limitations of 640K RAM
....Number Lines in Sorted Index Facilitates Navigating Knowledge Space
....Functions Navigate Knowledge Space for Organizational Memory
....Scroll Seemlessly through Virtual Memory for Context Management
....Virtual Memory Functions Expand Context Management Seemlessly
....Page Down F9 and PgDn Scroll Down to Next Chained Segment
....Get Command Fails 386 Cycles Reveals Opportunity to Correct Medit
.............................Special label for top PC1
....Scroll Up 1 and 10 Lines Using Get Command
....PA9 Scroll Down 1 Line
....Page Up F10 and PgUp Scroll Up to Prior Chained Segment
8...000001 Mouse Modify Scrolling for Sorted Subject Index


..............
Click here to comment!

CONTACTS 

SUBJECTS
Segment Chain Sorted Subject Index Files into Smaller 50K Files That
Memory Problem Solve with Chained Indexes for Large Sorted Subject In
Get Command Create Alternate with Parameters to Read in a File beginn
Subjects Chain Segmented Indexes Solve Memory Problem with Indexes Se
Virtual Memory Sorted Subject Indexes Segment into 10 Line Chunks tha
Knowledge Space Navigate Organizational Memory Dynamic Knowledge Repo

1108 -
1108 -    ..
1109 - Summary/Objective
1110 -
111001 - Follow up ref SDS 12 0000, ref SDS 9 0000.
111002 -
111003 - Developed a system of virtual memory using the get command revised by
111004 - Morris to expand memory limits of SDS for processing sorted Subject
111005 - Indexes. ref SDS 0 WI7I  In combination with prior improvements to
111006 - segment large indexes, the change today expands command and control of
111007 - the work.  The new design reads only 10 lines to display large files
111008 - in a small memory space. ref SDS 0 IZ5N Scrolling through large files
111009 - is fast and easy with functionality that is seamless to the user.
111010 - Performance using virtual memory is comparable to having all the lines
111011 - in memory. ref SDS 0 VX4J  Context management for finding relevant
111012 - information is now much faster and easier with unlimited capacity for
111013 - construcing and navigating through the Knowledge Space of
111014 - organizational memory that grows every day from investing intellectual
111015 - capital in SDS. Experience using the new get command shows Medit fails
111016 - after 386 cycles; may lead to solution to general problem of
111017 - persistant memory loss. ref SDS 0 C96O
111018 -
111019 -
111020 -
111021 -
111022 -
111024 -  ..
1111 -
1112 -
1113 - Evaluation
1114 -
111401 - Context Management Faster Better Cheaper with Unlimited Capacity
111402 -
111403 - Follow up ref SDS 9 VO9K.
111404 -
111405 - Preliminary testing indicates the work today solves the problem of
111406 - sorting segmented Subject Indexes that previously caused SDS to fail,
111407 - reported on 030810. ref SDS 9 VP4O  Evaluation criteria on 030810,
111408 - ref SDS 9 VO9K, indicate that improvements today make context
111409 - management faster and easier....
111410 -
111411 -    1.  Fast and easy to use, hard to cause a failure, with significant
111412 -        increase in performance by handling unlimited data using
111413 -        virtual memory under point 3.
111415 -         ..
111416 -    2.  Existing procedures either remain the same or are improved, so
111417 -        there is minimal learning curve -- things work better with
111418 -        existing skills. ref SDS 0 IZ5N
111420 -         ..
111421 -    3.  Memory management improved, shown by fewer crashes.
111423 -  ..
111424 - Improvements sorting subject indexes to a large degree eliminate
111425 - limitations on managing context.  Previously, when an index was over
111426 - 1200 lines, it could not by processed because Medit is limited to 640K
111427 - of memory.  The get command revised by Morris yesterday, ref SDS 12
111428 - 03A5, and deployed in a new design scheme with enhanced functionality
111429 - for examining files to select subjects now enables indexes of
111430 - unlimited size, per below. ref SDS 0 VX4J
111432 -  ..
111433 - The new system is fast and easy to use, does not take any more time
111434 - nor require learning new skills and methods, and so is transparent to
111435 - the User under evaluation criteria shown on 030810. ref SDS 9 VO9K
111437 -  ..
111438 - This complements recent improvements to the Subject Index that
111439 - strengthen context management....
111440 -
111441 -        Tools to conform format to
111442 -        construct multiple views of
111443 -        organic structure................... 030717, ref SDS 7 0001
111445 -         ..
111446 -        Tools to cross reference
111447 -        multiple views for context
111448 -        management in Subject Index......... 030809, ref SDS 8 8M7L
111450 -         ..
111451 -        Segment Large Subject Indexes....... 030810, ref SDS 9 0001
111453 -         ..
111454 -        Subject Index runs in separate
111455 -        memory session using Windows
111456 -        Start command....................... 030902, ref SDS 10 0001
111458 -         ..
111459 -        Sort Subject Index capacity
111460 -        increased using system of
111461 -        virtual memory...................... 031114, ref SDS 0 0001
111463 -         ..
111464 -        Assign multiple subjects from
111465 -        sorted index reduces time and
111466 -        effort required for creating
111467 -        multiple views that make finding
111468 -        relevant information fast and
111469 -        easy................................ 031207, ref SDS 15 0001
111471 -         ..
111472 -        Moore's Law applied to software
111473 -        turns faster computers into
111474 -        better productivity................. 040305, ref SDS 16 JT5F
111476 -         ..
111477 -        Search words phrases in sorted
111478 -        subject index for faster
111479 -        precision access to subjects
111480 -        which enables faster access
111481 -        to relevant history................. 050303, ref SDS 18 3P4L
111483 -  ..
111484 - Improvement on 030810 actually increased problems of Medit memory
111485 - limitations, because the ability to segment and chain files encourages
111486 - creating more organic structure, which, when sorted into a single
111487 - large file for context management, greatly increase requirements for
111488 - memory.  Recent tools to facilitate replication of organic structures,
111489 - explained on 890523, ref SDS 1 SQ5L, results in much larger sorted
111490 - indexes when a particular account is assembled into a sorted list for
111491 - study and selection of assignment to an SDS record or calling a
111492 - report.  The improvement on 030902 to open a second session using the
111493 - Windows Start command provided a path for relief, however, this was
111494 - quickly overwhelmed using new tools for navigating through the
111495 - flexible structure of Knowledge Space. ref SDS 0 6S9L  The new system
111496 - developed today and over the next several days, seems to solve the
111497 - problem, so that all of the new tools can be used freely and without
111498 - restrictions due to computer memory.
111499 -
111500 -
111501 -
111502 -
111504 -  ..
1116 -
1117 -
1118 - Planning and Background
1119 -
111901 - Sort Subject Index Reduce Memory Requirements Using Get Command
111902 -
111903 - Follow up ref SDS 12 03A5, ref SDS 9 QG7I.
111904 -
111905 - A number of improvements this year increase the power of SDS by using
111906 - the Windows Start command and various forms of "virtual memory to
111907 - overcome DOS limits on memory.  On 030202 used the Start command to
111908 - call code in a separate memory session for converting SDS records and
111909 - other files into HTML that display on the Internet. ref SDS 6 0001
111910 - Other improvements this year that expand the utility of SDS are listed
111911 - in the record on 000824. ref SDS 2 P83L
111912 -
111913 -        [On 050303 streamlined code developed today, and applied for
111914 -        creating a new search feature in sorted subject indexes.
111915 -        ref SDS 18 3P4L
111917 -  ..
111918 - The plan today provides a new form of "virtual memory" for sorted
111919 - subject indexes comparable to improvements for segmenting subject
111920 - index files developed on 030810, ref SDS 9 0001, and for segmenting
111921 - full subject reports developed on 031028. ref SDS 11 9K5M  Since
111922 - segmented subject indexes must be assembled into one file for context
111923 - management, a method of "virtual memory" is needed to use the sorted
111924 - index without exceeding the limits of DOS.
111925 -
111927 -     ..
111928 -    Virtual Memory for Sorted Subject Indexes is accomplished by...
111929 -
111930 -
111931 -    1.  Use new get command created by Morris yesterday.  Start by
111932 -        reading into memory only 17 lines from a large sorted index
111933 -        file on the disk. ref SDS 12 03A5
111935 -         ..
111936 -    2.  New functions scroll through the index using ten (10) and one
111937 -        (1) line increments. ref SDS 0 RR3O  This is accomplished by
111938 -        deleting 1 or 10 lines and reading in the next 1 or 10 lines
111939 -        from the file on the disk. ref SDS 0 RB4M  Sort diagnostics
111940 -        identify the number of records processed.  This number is used
111941 -        in new commands for jumping to the top and bottom of the index
111942 -        in virtual memory, ref SDS 0 WI7I, even though the actual file
111943 -        on the disk may have thousands of lines, and the file in memory
111944 -        is only 17 lines.
111946 -         ..
111947 -        This form of "virtual memory" only permits examining files;
111948 -        editing is not supported.  Sorted indexes fit this requirement
111949 -        because they are only used to find subjects for understanding
111950 -        context; to select subjects for an SDS record Control Field, or
111951 -        to call a report.  There is no need to edit and save changes to
111952 -        sorted subject files.  This allows applying the get command to
111953 -        use only a small part of memory by reading from the disk
111954 -        consecutive parts of a large file as often as necessary for the
111955 -        user to scroll through the entire file.
111956 -
111957 -            [On 050303 streamlined code developed today, and applied
111958 -            for creating a new search feature in sorted subject
111959 -            indexes. ref SDS 18 3P4L
111961 -         ..
111962 -        The initial screen sets up 17 lines, and thereafter the user
111963 -        can navigate using new functions listed below for scrolling up
111964 -        and down. ref SDS 0 VX4J  This design to solve the memory
111965 -        problem is much different from the scheme developed on 031028
111966 -        to chain segments of a Full Subject Report. ref SDS 11 TJ8L
111968 -         ..
111969 -        Reusing memory applies princple developed on 030810 that reuses
111970 -        sndx data memory for constructing a processor to modify the
111971 -        data that is then read back into the same sndx memory space.
111972 -        ref SDS 9 UP9N
111974 -         ..
111975 -    3.  All other functionality remains the same so that people
111976 -        experience no change in performance between having the entire
111977 -        file in memory and having only 17 line segments, except that a
111978 -        subject index of unlimited size can now be viewed and applied
111979 -        for context management under the new design.
111980 -
111981 -
111982 -
111983 -
111984 -
111985 -
1120 -
112001 -
1121 -

SUBJECTS
Sort Index for Finding Subject Account in Context to Enter into an SD

1203 -
1204 - Progress
120501 -  ..
120502 - 03501  Sort Index to Make Finding Information Fast and Easy
120503 -
120504 - Follow up ref SDS 9 736N.
120505 -
120506 - Line 3900, ref OF 1 4898, -label sortIt in 03501
120507 -
120508 -    This code is called when "Sort" is selected from the menu in the
120509 -    Subject Index.  Modify code developed on 030810, ref SDS 9 UP9N, to
120510 -    now apply the get command for a "virtual memory" system that avoids
120511 -    exceeding Medit limit of 640K on using main memory, per planning
120512 -    above. ref SDS 0 VO5K
120513 -
120514 -
120515 -
120516 -
120517 -
1206 -

SUBJECTS
Opt Tech Sort, 010222
INclude/OMit - criteria for record selection
Opt Tech Sort Program Sorts Subject Indexs and Develops Last Line Num
Chained Segments Exclude Redundant Lines for Sort Subject Index and

1406 -
140701 -  ..
140702 - Sort Subject Index after Combining Segmented Indexes
140703 - Opt Tech Sort Commands for Excluding Lines
140704 - Integrate DOSE Calls to Assemble Segmented Indexes and Sort Indexes
140705 -
140706 - Line 4110, ref OF 1 WR5H, -label ssop1 in 03501
140707 -
140708 -    -label ssop1
140709 -    ins_text !c:\sd\01\o tqia tqii /s(xx,50,c,a) in(2,1,c,eq,":",and,xx,2,c,ne,"$$") > tqic
140710 -    loc_cur 0 25
140711 -    inscnt 91 0
140712 -    loc_cur 0 56
140713 -    inscnt 92 0
140714 -
140715 -       Modify code developed on 030810 to merge segmented indexes into
140716 -       a large index, ref SDS 9 UP9N, by temporarily building the
140717 -       stufqj.bat processor in the memory space for the sndx data file,
140718 -       called in a Windows Start session by 03501.bat, per below.
140719 -       ref SDS 0 5R5G  Today, moved the command to sort the index,
140720 -       which was previously called with a separate dose command, into
140721 -       stufqj.bat, so there is only a single dose call.  loc_cur 0 25
140722 -       enters the column number to start sorting, shown as "xx,50" in
140723 -       the Opt Tech Sort command string.
140725 -                            ..
140726 -                           in(2,1,c,eq,":"
140728 -        ..
140729 -       This part of the command string includes only lines with : in
140730 -       col 2.  Added support make description lines at the top of the
140731 -       file all identified with a semicolon ;, so they are excluded in
140732 -       the sort process. Added command loc_cur 0 56 sets column shown
140733 -       as "xx,2" to exclude lines that identify a "Chained Segment"
140734 -       index, since these are redudant in the report for the user.
140736 -        ..
140737 -       Specifying lines to exclude with the Opt Tech sort program seems
140738 -       to use an "omit" command, based on background reported 010227.
140739 -       ref SDS 3 PF6L  Discovered from the record on 010301 that omit
140740 -       and exclude can also be accomplished using the "include" (in)
140741 -       command with the "ne" param for "not equal." ref SDS 4 JP4F
140742 -       Used this method today.
140743 -
140744 -
140745 -
140746 -
140747 -
1408 -

SUBJECTS
03501.bat in SD 01 Called by DOSE and Runs Windows Start Command to E
03501.bat Create to Run Under Windows Start Command in Second Session

1604 -
160501 -     ..
160502 -    03501.bat Start Command Session Runs Sort Op
160503 -    Start Command Session Runs Sort Op in 03501.bat
160504 -
160505 -    Follow up ref SDS 10 DV5N.
160506 -
160507 - Line 4140, ref OF 1 1I5L, -label ssop1 in 03501 about 40 lines below
160508 -
160509 -    save stufqj.bat
160510 -    dose/c c:\sd\01\03501a.bat
160511 -    loc_cur 3 1
160512 -    immed 5d
160513 -    -goto cssop
160514 -
160515 -        After completing specification for sort op, per above,
160516 -        ref SDS 0 NB8M, run dose to call 03501.bat developed on 030902
160517 -        to run Windows Start command to save memory.  save stufqj.bat
160518 -        writes the sndx file to the disk which has been modified into a
160519 -        batch file with commands for copying segmented subject index
160520 -        files into a single file, ref OF 1 8B7H, and then run Opt Tech
160521 -        sort, per above. ref SDS 0 NB8M  When dose op is over, delete
160522 -        the batch file command lines to restore sndx to a subject index
160523 -        application, per explanation on 030810. ref SDS 9 UP9N
160524 -
160525 -
160526 -
160527 -
160528 -
160529 -
1606 -

SUBJECTS
Last Line Number File FLLN N Filename New Command Needed to Facilitat
Worked Around Immediate Need for Subject Index Navigate Sorted Indexe
Number Line Last File FLLN N Filename New Command Needed to Facilitat
Output Diagnostics Reports Total Records Processed in Output File Whi
Sort List of Subjects into Alphabetical List of Sub-subjects
Medit File Last Line Number FLLN N Filename New Command Needed to Fac
File Last Line Number FLLN N Filename New Command Needed to Facilitat
Navigate Knowledge Space Organizational Memory Dynamic Knowledge Repo
Sorted Subject Index Files Medit Get Command Create Alternate with Pa
Navigate Knowledge Space Organizational Memory Dynamic Knowledge Repo

2412 -
241301 -     ..
241302 -    Opt Tech Shows Number of Records Sorted to Facilitate Navigation
241303 -
241304 -
241305 - Line 4200, ref OF 1 9J5I, -label sSP in 03501
241306 -
241307 -    -label sSP
241308 -    e tqic
241309 -    bot
241310 -    fr /= /
241311 -    strcnt 1 5
241312 -    setgbl 109 @1
241313 -    e sndx
241314 -    purge tqic
241315 -    getgbl 109 109
241316 -    setgbl 109 0
241317 -
241318 -        -label sSP ends sort operation. e tqic opens Opt Tech Sort
241319 -        diagonstic file processing an index or a series of segmented
241320 -        indexes into a single large sorted index to facilitate finding
241321 -        information, created by the code above. ref SDS 0 NB8M  bot
241322 -        jumps to the bottom of the file; fr /= / positions curosr on
241323 -        number of output records.  strcnt 1 5 captures the number of
241324 -        lines that will be the last line number for scrolling through a
241325 -        sorted index.  This accomplishes a pending task Morris has to
241326 -        improve Medit, discussed yesterday. ref SDS 12 F64O
241327 -
241328 -
241330 -     ..
241331 -    Virtual Memory Design Expands Limitations of 640K RAM
241332 -    Number Lines in Sorted Index Facilitates Navigating Knowledge Space
241333 -
241334 -
241335 - Line 4270, ref OF 1 1J9K, -label s1stss in 03501
241336 -
241337 -    -label s1stss
241338 -    line 3
241339 -    loc_cur 3 48
241340 -    -if @157 != 787 ins_text/lling Points                      /
241341 -    loc_cur 4 48
241342 -    immed 9999d
241343 -    setcnt 94 0
241344 -    g tqii 1 17
241345 -    top
241346 -    loc_cur 22 1
241347 -    immed 2a
241348 -    rel_cur 2 0
241349 -    ins_text !Sorted subjects line.............. 17!
241350 -    -return
241351 -
241352 -        g tqii 1 17 applies planning, per above, ref SDS 0 ZL5M, to use
241353 -        new get command for a system of "virtual memory" that reads
241354 -        into memory only the first 17 lines of a large sorted index
241355 -        file. ref SDS 12 03A5  Below, new functions are developed to
241356 -        scroll through the a file of any size on the disk. ref SDS 0
241357 -        RR3O
241358 -
241359 -
241360 -
241361 -
241362 -
2414 -

SUBJECTS
10 Lines Scroll Up F10 Virtual Memory for Sorted Subjects Alphabetica
Functions Sorted Subject Index Navigatge Virtual Memory for Sorted Su
F10 Scroll Up 10 Lines Virtual Memory for Sorted Subjects Alphabetica
Flag Identify Sorted Index

2906 -
290701 -     ..
290702 -    Functions Navigate Knowledge Space for Organizational Memory
290703 -    Scroll Seemlessly through Virtual Memory for Context Management
290704 -    Virtual Memory Functions Expand Context Management Seemlessly
290705 -
290706 -    Follow up ref SDS 11 RR4H.
290707 -
290708 - Line 4220, ref OF 1 HS6L, -label ulsf in 03501
290709 -
290710 -    -label ulsf
290711 -    line 1
290712 -    tl 3
290713 -    loc_cur 6 1
290714 -    fr/.. /
290715 -    setcolor 1 31
290716 -    pf9 @c:\sd\03\03501 -gg pf9up  ................... ref SDS 0 DS5M
290717 -    pfd @c:\sd\03\03501 -gg pf9up..................... ref SDS 0 V463
290718 -    pa9 @c:\sd\03\03501 -gg pa9up..................... ref SDS 0 QF5J
290719 -    pf10 @c:\sd\03\03501 -gg pf10dn................... ref SDS 0 5W3G
290720 -    pfu @c:\sd\03\03501 -gg pf10dn.................... ref SDS 0 RR4I
290721 -
290722 -        After reading the sorted list, per above, ref SDS 0 WI7I, set
290723 -        up standard SI profile.  Need code comparable to functions
290724 -        created on 031029 for scrolling through the report using pf9
290725 -        and pf10 and PgUp and PgDn for up and down that recognize when
290726 -        the end of the file has occurred and can read the next file
290727 -        segment from the disk. ref SDS 11 RR4H
290729 -     ..
290730 -    setcnt 123 666
290731 -
290732 -        Establishes that a sorted index is active.
290733 -
290734 -
290735 -
290736 -
2908 -

SUBJECTS
F9 Scroll Down 10 Lines Virtual Memory for Sorted Subjects Alphabetic
PageDown Scroll Down 10 Lines Cursor Travels with Movement of the Fil

3104 -
310501 -     ..
310502 -    Page Down F9 and PgDn Scroll Down to Next Chained Segment
310503 -    Get Command Fails 386 Cycles Reveals Opportunity to Correct Medit
310504 -
310505 -    This routine implements objectives and planning for "virtual
310506 -    memory" support, explained above, ref SDS 0 6Q4O, by scrolling down
310507 -    the file by using F9 to move the file up 10 lines and setting a
310508 -    switch for Alt F9 to move the file up 1 line.  Another switch
310509 -    scrolls up 10 lines and carries the cursor for Page Down.
310510 -
310511 -        [On 050303 streamlined code developed today, and applied for
310512 -        creating a new search feature in sorted subject indexes.
310513 -        ref SDS 18 3P4L
310515 -  ..
310516 - Line 4310, ref OF 1 4364, -label pfdn in 03501
310517 -
310518 -    -label pfdn
310519 -    setcnt 33 99
310520 -    -goto pfnd1................................... ref SDS 0 U47O
310521 -
310522 -        Flag for the PageDown key to scroll down 10 lines by moving the
310523 -        file up 10 lines and moving the cursor so it remains on the
310524 -        same line number moving up the screen.  -goto pfnd1 skips over
310525 -        assignment for F9 to setcnt 4 10 that begins common code for
310526 -        both F9 and PageDown.
310527 -
310529 -     ..
310530 -    -label pf9up
310531 -    setcnt 33 0
310533 -     ..
310534 -    -label pfnd1
310535 -    setcnt 4 10
310536 -
310537 -        -label pf9up is for F9, per above, ref SDS 0 VX4J, and resets
310538 -        counter 30 for so that F9 scrolls down into the file by moving
310539 -        up 10 lines and leaving the cursor in the same relative
310540 -        position on the screen.  -label pfnd1 is for PageDown to use
310541 -        the same code for scrolling through the file except moving the
310542 -        cursor with the line that moves up the screen, per above.
310543 -        ref SDS 0 V463
310544 -
310546 -  ..
310547 - Line 4320, ref OF 1 GR6O, -label 1line in 03501
310548 -
310549 -    -label 1line
310550 -    tl 0
310551 -    setcura 1 0
310552 -    line 1
310553 -
310554 -        Atl F9 uses this common part of the code for scrolling the file
310555 -        up 1 line, per below. ref SDS 0 QF5J
310557 -         ..
310558 -        Turn titles off, probably not needed, but doesn't hurt. setcura
310559 -        1 0 saves position to restore the cursor at the end of the
310560 -        process. ref SDS 0 824F  line 1 command is probably not needed,
310561 -        but user may figure out a way to mess things up, so restore
310562 -        baseline condition.
310563 -
310565 -     ..
310566 -    loc_cur 24 1
310567 -    chrcnt 5 0
310568 -
310569 -        Check bottom of sndx file to verify the virtual list has not
310570 -        reached the end of the actual sorted file on the disk.  The end
310571 -        of the file is determined when counter 5 = 32 because in that
310572 -        case, it means that fewer than 10 lines were read on the prior
310573 -        pass.
310575 -     ..
310576 -    loc_cur 6 2
310577 -    -if @5 > 32 -goto supop....................... ref SDS 0 RB4M
310578 -
310579 -        Move cursor to top of the file and below the title lines for
310580 -        deleting 10 lines at the top of the current list, which moves
310581 -        the file up 10 lines.  -if @5 > 32 it means the end of the file
310582 -        has not been reached, so -goto supop to get the next 10 lines
310583 -        from the actual file on the disk.
310584 -
310585 -
310587 -                              ..
310588 -                             Special label for top PC1
310589 -                             -------------------------
310590 -
310591 -    -label topSL
310592 -    -gosub s1stss
310593 -    -goto toslj
310594 -
310596 -     ..
310597 -    Scroll Up 1 and 10 Lines Using Get Command
310598 -
310599 -
310600 - Line 4400, ref OF 1 X95J, -label supop in 03501
310601 -
310602 -    -label supop
310603 -    immed 4@d
310604 -    -if @4 = 10 line 10
310605 -    -if @4 = 1 line 19
310606 -    loc_cur 5 36
310607 -    strcnt 3 5
310608 -    addcnt 3 1
310609 -    get tqii @3 @4
310610 -
310611 -        This design enables "virtual memory" for scrolling through a
310612 -        file by deleting 10 lines and reading in the next 10 lines from
310613 -        the file on the disk using the revised get command, per above.
310614 -        ref SDS 0 IZ5N  The current line number is maintained and shown
310615 -        on the computer screen to give the user situational awareness
310616 -        relative to the actual file.  The line number is updated each
310617 -        pass and stored in counter 3. The end of the file is recognized
310618 -        when fewer than 10 lines are read.
310620 -         ..
310621 -        In developing this routine, testing showed multiple use, as
310622 -        occurs when scrolling through a file, causes the get command to
310623 -        fail consistently on cycle 387.  Sent Morris a letter reported
310624 -        in another record, and talked later by phone about correcting
310625 -        work yesterday.  He indicated the problem may occur because he
310626 -        calls "profile" when "get" and "e" commands are used, and this
310627 -        consumes and accumulates memory. ref SDS 13 0001
310628 -
310629 -           [On 031116 letter to Morris discusses schedule to fix
310630 -           problem causing get command to fail after 386 cycles, which
310631 -           hopefully will solve a broader memory problem for Medit.
310632 -           ref SDS 14 0001
310634 -            ..
310635 -           [On 040910 Morris fixes the problem. ref SDS 17 BF8N
310636 -
310638 -     ..
310639 -    loc_cur 4 2
310640 -    setcnt 5 0
310641 -    -label lp3h
310642 -    up
310643 -    addcnt 5 1
310644 -                              Look for "o" in Sorted to identify last line of file
310645 -    chrcnt 3 0
310646 -    -if @3 != 111 -goto lp3h
310647 -    subcnt 5 1
310648 -    loc_cur 0 36
310649 -                                 Read last number and increment it.
310650 -    strcnt 3 5
310651 -    addcnt 3 @5
310652 -    ins_text !          !
310653 -    inscnt 3 0
310655 -     ..
310656 -    -label toslj
310657 -    line 1
310658 -    loc_cur @2 @1
310659 -    rel_cur 1 1
310660 -    -if @33 = 99 -if @2 < 13 loc_cur 6 0
310661 -    -if @33 = 99 -if @2 > 12 rel_cur -10 0
310662 -    tl 3
310663 -    -exit
310664 -
310665 -
310666 -
310667 -
310668 -
310669 -
310671 -     ..
310672 -    PA9 Scroll Down 1 Line
310673 -
310674 -    We do not have compiler space to use the mouse running macro 230,
310675 -    per below. ref SDS 0 CZ9G
310676 -
310677 -    So, will instead assign Alt F9 to scroll down 1 line and a time,
310678 -    which means scrolling up.
310679 -
310681 -  ..
310682 - Line 4290, ref OF 1 S74K, -label up1Ln in 03501
310683 -
310684 -    -label up1Ln
310685 -    setcnt 4 1
310686 -    -goto 1line................................. ref SDS 0 XE4G
310687 -
310688 -        Alt F9 is assigned with special function keys developed for
310689 -        scrolling through a sorted Subject Index, per above.
310690 -        ref SDS 0 VX4J
310691 -
310692 -
310693 -
310694 -
310696 -     ..
310697 -    Page Up F10 and PgUp Scroll Up to Prior Chained Segment
310698 -
310699 -    Follow up, ref SDS 11 RR4I
310700 -
310701 - Line 4250, ref OF 1 CS4K, -label pfup in 03501
310702 -
310703 -    -label pfup
310704 -    setcnt 33 99
310705 -    -goto pgup
310706 -
310708 -     ..
310709 -    -label pf10dn
310710 -    setcnt 33 0
310711 -
310712 -    -label pgup
310713 -    setcura 1 0
310714 -    loc_cur 13 0
310715 -    immed 10d
310716 -    loc_cur 14 36
310717 -    strcnt 3 5
310718 -    subcnt 3 10
310719 -    ins_text !          !
310720 -    inscnt 3 0
310721 -    subcnt 3 16
310722 -    line 3
310723 -    get tqii @3 10
310724 -    down 2
310725 -    loc_cur @2 @1
310726 -    rel_cur 1 1
310727 -    -if @33 = 99 -if @2 < 13 loc_cur 6 0
310728 -    -if @33 = 99 -if @2 > 12 rel_cur -10 0
310729 -    tl 3
310730 -    -exit
310731 -
310732 -
310733 -
310734 -
310736 -  ..
310737 - 000001  Mouse Modify Scrolling for Sorted Subject Index
310738 -
310739 - Line 390, ref OF 4 V54G, -entry 230 in 000001
310741 -  ..
310742 - Had to disconnect mouse support in sorted SI because out of compiler
310743 - space again.
310744 -
310745 -        This is not terribly significant, because these indexes
310746 -        typically have to be scrolled quickly, and the scroll system
310747 -        using the mouse is not fast.
310749 -         ..
310750 -        If we recover compiler space and consier adding this stuff
310751 -        back.
310753 -         ..
310754 -        In the meantime can develop Alt F9 and Alt F10 to scroll one
310755 -        line at a time.
310756 -
310757 -    -entry 230
310758 -    setcura 221 0
310759 -    -if @120 = 1210 -if @118 = 1 -goto HeLpit
310760 -    -if @222 > 23 -goto 23Up................... ref SDS 0 HE5K
310761 -    -if @221 > 77 -goto upDn................... ref SDS 0 3C6G
310762 -    -if @222 = 0 -goto l&r&e
310763 -
310764 -
310766 -  ..
310767 - Line 1500, ref OF 4 W21E, -label 23Up in 000001
310768 -
310769 -    -label 23Up
310770 -    -if @47 > 10 -if @47 < 14 -goto bperr
310771 -    -if @221 > 77 -goto BoTmm
310772 -    getscr 15
310773 -    -if @221 < 19 -goto lft22
310774 -    -if @221 > 18 -if @221 < 35 -goto rgt22
310775 -    -if @47 = 31 -if @123 = 666 -goto sislu1....... ref SDS 0 758K
310776 -    up
310777 -    -exit
310778 -
310779 -        Added call -if @47 = 31 -if @123 = 666 scroll sorted index up
310780 -        one line per click by calling alternate code for scrolling up
310781 -        10 lines, per above. ref SDS 0 RR3O
310782 -
310783 -
310785 -  ..
310786 - Line 1200, ref OF 4 PC5K, -label upDn in 000001
310787 -
310788 -    -label upDn
310789 -    -if @47 > 10 -if @47 < 14 -goto bperr
310790 -    getscr 15
310791 -    -if @222 > 12 -if @222 < 24 -goto up11......... ref SDS 0 RT5G
310792 -    -if @222 < 12 -if @222 > 1 -goto down11........ ref SDS 0 3D3K
310793 -    -if @222 = 1 -goto TopF
310794 -    -exit
310795 -
310796 -        Scroll file 10 lines up or down by clicking in col 79 and 80.
310797 -
310798 -
310800 -  ..
310801 - Line 1560, ref OF 4 HQ7I, -label down11 in 000001
310802 -
310803 -    -label down11
310804 -    -if @47 = 31 -if @123 = 666 -goto ssiD15
310805 -
310806 -        Added call for SI when the list is sorted based on 123 = 666,
310807 -        per above. ref SDS 0 K43J, to call code in 03501 that scrolls
310808 -        the list up 10 lines.
310809 -
310811 -  ..
310812 - Line 1570, ref OF 4 PX8I, -label up11 in 000001
310813 -
310814 -    -label up11
310815 -    -if @47 = 31 -if @123 = 666 -goto ssiD14
310816 -    up 10
310817 -    -exit
310818 -
310819 -        Added call for SI when the list is sorted based on 123 = 666,
310820 -        per above. ref SDS 0 K43J, to call code in 03501 that scrolls
310821 -        the list down 10 lines.
310822 -
310823 -
310825 -  ..
310826 - Line 1580, ref OF 4 WT4J, -label ssiD15 in 000001
310827 -
310828 -    -label ssiD15
310829 -    @c:\sd\03\03501 #15
310830 -    -exit
310831 -
310832 -        Macro 230 for the mouse, per above, ref SDS 0 3D3K, calls 03501
310833 -        for sorted index to run code that scrolls the sorted index up
310834 -        10 lines for each click.
310835 -
310837 -  ..
310838 - Line 1590, ref OF 4 G39O, -label ssiD14 in 000001
310839 -
310840 -    -label ssiD14
310841 -    @c:\sd\03\03501 #14
310842 -    -exit
310843 -
310844 -        Macro 230 for the mouse, per above, ref SDS 0 3D3K, calls 03501
310845 -        for sorted index to run code that scrolls the sorted index down
310846 -        10 lines for each click. ref SDS 0 V463
310848 -  ..
310849 - Line 1610, ref OF 4 RG5M, -label sislu1 in 000001
310850 -
310851 -    -label sislu1
310852 -    @c:\sd\03\03501 #16
310853 -    -exit
310854 -
310855 -
310856 -
310857 -
310858 -
310859 -
310860 -
310861 -
310862 -
3109 -