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: August 14, 1993 09:14 AM Saturday;
Rod Welch
Visit Morris to improve SDS.
1...Summary/Objective
....Morris' Comment
2...Improving Memory Management Above 640K
.....Morris' Comment
..............
Click here to comment!
CONTACTS
0201 - Chips & Tech. O-00000039 0201
020101 - Mr. Morris E. Jones
020102 - Vice President
020103 - Advanced Products
SUBJECTS
SDS Improvements to Medit
Templates, freeze top lines
Menu and User Interface
0505 -
0505 - ..
0506 - Summary/Objective
0507 -
050701 - Follow up ref SDS 19 0000, ref SDS 17 0000.
050702 -
050704 - ..
050705 - Template Header line code requires improvements per ref SDS 9 line
050706 - 052705.
050707 -
050708 -
050709 - Morris feels this should be done after the menu system is
050710 - developed, because it will apply similar code.
050711 -
050713 - ..
050714 - Began major effort to create an Medit menu system, per ref SDS 11 line
050715 - 080703.
050716 -
050718 - ..
050719 - Should we put the menus in memory?
050721 - ..
050722 - Morris' Comment
050723 -
050724 - It will take 20kb and run faster. The limitation of expansion
050725 - should be 64kb. I think we should put it in memory because the
050726 - system speed is an issue. You will also need to set a pointer to
050727 - the menu files in all the macros and etc. If it is in memory, then
050728 - the user just gets a new version of e.exe, and everything will
050729 - work.
050730 -
050731 -
050732 -
050734 - ..
050735 - Posmouse x y, this turned out not to be helpful, so we may be able to
050736 - delete the code, ref OF 3 line 1909.
050737 -
050738 - Did no work on deleting this code. Need to remind Morris to
050739 - consider the disposition of this code. Maybe it will turn out to
050740 - be applicable for something.
050741 -
050742 -
050743 -
0508 -
SUBJECTS
SDS Improvements to Medit
Menu and User Interface
Timing Command
0605 -
0606 - 000003
060701 - ..
060702 - Line 1225 - entry 817 is not working to temporarily show a message.
060703 - Maybe it will only work in a non-compiled macro. It seems to work in
060704 - 04702.
060706 - ..
060707 - See also ref SDS 18 line 040905.
060708 -
060709 - Did not have time to work on this today.
060710 -
060711 -
060712 -
0608 -
SUBJECTS
SDS Reports
Memos, 022C05
Reports, 910203
Assignments
0906 -
090701 - ..
090702 - Menu problem at ref SDS 19 line 061609.
090703 -
090704 - The solution to this turned out that I had entered the filename
090705 - incorrectly for 0704013. I entered 07040131 #4 and that file does
090706 - not exist. Morris made a change so if I do this again, it will
090707 - not crash Medit.
090708 -
090709 -
090710 -
0908 -
SUBJECTS
SDS Improvements to Medit
Backspace
1004 -
100501 - ..
100502 - Should apply to backspace the feature that allows me to execute a
100503 - macro before it completes, so I can have it stay in the text field in
100504 - an SDS record, instead of go into the line number field.
100506 - ..
100507 - Another problem is that particularly in the Subject Index, there are
100508 - occassions when backspace gets lost and jumps to the next line. I
100509 - think it is related to the screen being offset in combination with
100510 - doing an eol that resets the margins, but am not sure if this is
100511 - really required to cause a crash.
100512 -
100514 - ..
100515 - Did not have time to work on this today. I believe though that
100516 - Morris finally copied the Medit code from CPU #3, to his home
100517 - compuer, so he has the backspace code that Morri created. I tried
100518 - his computer this evening, while he was working on mine, and found
100519 - backspace is not working on e.exe compiled from his Medit files.
100520 - I therefore, asked him to copy the code from my CPU #3, to his
100521 - computer and he did that by copying the .asm files.
100522 -
100523 -
100524 -
100525 -
1006 -
SUBJECTS
SDS Improvements to Medit
Memory management (avoid crashing)
Memory capacity of Medit, increase.
Upper Memory Enable EMMS
Memory Solve Problem Use Upper Memory Block
1407 -
140801 - ..
140802 - Need function to tell us what files are still in memory, after they
140803 - are read in and when they are purged.
140804 -
140805 - Did not address this today. Still pending.
140807 - ..
140808 - Do some long SDS routines in assembly, so they take less memory.
140810 - ..
140811 - Improve Medit so when files are closed, the memory becomes available
140812 - for subsequent use, instead of it accumulating usage as seems to be
140813 - the case now.
140814 -
140815 - Morris might be able to analyse this with debug by loading the
140816 - program to near capacity, then purging files then loading another
140817 - that crashes the program, even though we are within the normal
140818 - range of conventional memory.
140820 - ..
140821 - [On 020525 purchased memturbo hoping this could recover RAM to
140822 - improve SDS, but does not seem to work. ref SDS 24 0001
140823 -
140824 -
140826 - ..
140827 - Improving Memory Management Above 640K
140828 -
140829 - Can an intermediate solution for improving productivity be
140830 - accomplished by increasing memory for SDS by using upper memory above
140831 - 640K?
140832 -
140833 - For example, macros, as distinguished from a work file, like an SDS
140834 - record, could be loaded into memory above 1 MB, if it exists, and if
140835 - it does not, then it would loaded in conventional.
140836 -
140837 - [On 010205 Morris feels Medit assemble language can be modified to
140838 - support Windows 32-bit memory address -- code changes would take 1
140839 - week to modify and 6 months to debug. ref SDS 21 6Q8H
140841 - ..
140842 - This was considered on 930403. ref SDS 12 IA7K
140844 - ..
140845 - On 930720 experience configuring SDS to run under OS2 and turning off
140846 - CGA mode may offer an opportunity to increase RAM for SDS. ref SDS 16
140847 - 5955
140848 -
140850 - ..
140851 - Morris' Comment
140852 -
140853 - Use EMS or XMS to place small files in the page frame. They will
140854 - only be accessed one file at a time. When switching from file to
140855 - file, the page frames could be swapped in. The local variables
140856 - could also be stored there with some cleverness and a flag
140857 - indicating if the file is in low or high memory. The problem is
140858 - that when a file flows out of the EMS region, everything will have
140859 - to be moved into low memory. Perhaps just macros and other files
140860 - could be kept there.
140862 - ..
140863 - Just keeping the file headers there would save several 2KB per
140864 - macro.
140866 - ..
140867 - Possibly use the address of the segment as an index into the page
140868 - table in the ems system. The upper 6 bits are the index. The
140869 - code would have to be modified to check for a legal value, and
140870 - substitute in the correct page amount. Perhaps changing the code
140871 - to work with a pointer larger than 2 bytes would work pretty well.
140872 - If the code is set up to not thrash around the pages, this would
140873 - be the best. The pointers are now 2 bytes. We would have to
140874 - replace the forward links with a subroutine call to move the
140875 - pointer forward. The subroutine would switch pages as necessiary.
140876 - I need to think about the reverse links we have now.
140878 - ..
140879 - This would require EMM386, or the program would have to work out
140880 - of just the 640kb. We need to understand the impact on windows.
140882 - ..
140883 - Morris said modifications to existing Medit code to accomodate these
140884 - improvements, might require 2 days work to complete.
140885 -
140886 - [On 930819 Morris says he reviewed the Medit code and feels
140887 - the scope of the work is more than 2 days, so he suggests a
140888 - Windows SDS app would be easier to create. ref SDS 20 QL7H
140890 - ..
140891 - Morris mentioned at one point that he could create the ability to
140892 - address work files of up to 1 MB. We could have as many as would fit
140893 - in however much memory is available, but it would reduce memory
140894 - available to Windows. Since Windows and OS2 both use a swap file,
140895 - that would not necessarily be a big problem.
140896 -
140897 - [On 010205 Morris reviewed various options for increasing
140898 - memory for SDS. ref SDS 21 0001
140900 - ..
140901 - [On 020519 contacted Microsoft for assistance. ref SDS 22 LQ4M
140903 - ..
140904 - [On 020522 submitted e.exe to Microsoft for investigation.
140905 - ref SDS 23 355L
140907 - ..
140908 - [On 020606 Microsoft reviewing e.exe for solution. ref SDS 25
140909 - WO5N
140910 -
140911 -
140912 -
140913 -
140914 -
1410 -
SUBJECTS
SDS Improvements to Medit
Function Keys 11 & 12, and Enter Key, program
1504 -
150501 - ..
150502 - PROGRAMMABLE NUMERIC KEYS
150503 -
150504 - Make keys programable so we can use them for return to marks. The
150505 - control codes are those with nums on, or shift with nums off.
150506 -
150507 - Did not address this today.
150508 -
150509 -
150510 -
150511 -
1506 -
SUBJECTS
SDS Improvements to Medit
Counters, @@ (globals, other)
1604 -
160501 - ..
160502 - Need to be able to create a command like:
160503 -
160504 - setcnt @100 @@100
160505 -
160506 - setgbl @1 @@1
160507 -
160508 - Will use this in a macro like 118 in file 000007.
160509 -
160510 - Did not address this today.
160511 -
160512 -
160514 - ..
1606 -
1607 -
1608 - 000007
1609 - ..
160901 - Line 644 - entry 1180, the above change would allow
160902 - consolidating code at this location.
160903 -
160904 -
160905 -
160906 -
1610 -
SUBJECTS
SDS Improvements to Medit
Counters, @@ (globals, other)
Morris' program for d:
1705 -
170601 - ..
170602 - Tried to update SDS on Morris' computer, but could not get it to
170603 - compile correclty on his computer. Previous update was at ref SDS 8
170604 - 0000
170606 - ..
170607 - Morris was using my computer, so I did not have an opportunity to
170608 - sort this out.
170609 -
170610 -
170611 -
170612 -
170613 -
170614 -
170615 -
170616 -
170617 -
1707 -
Distribution. . . . See "CONTACTS"