I recently acquired a new PC from chillblast to replace my ancient desktop
machine (Viglen) at home. I had a lot of problems setting it up (e.g.
handling screen resolution), that I still don't understand, but it is now
working very well running Fedora 32 (I had some problem I could not fix on
F31, but that may well have simply been my linux incompetence.)

I got poplog running fairly soon (using getpoplog.sh) and it works fine
with and without motif, so that I was very soon able to give up using nano
to set up linux files and use ved instead. (I've never used 'vi'.)

But there was an obscure problem that I've fixed, but don't understand!

I kept finding that if I edited a file for a long time (e.g. using ved to
create a large html file) ved would sometimes crash with this message,
leaving me with a pop11 prompt:

<<<<<<< Access Violation: PC = 00007FFFF7B12890, Addr = 00000007FF6200F0, Code 
= 1 >>>>>>>

;;; MISHAP - serr: MEMORY ACCESS VIOLATION (see above)
;;; PRINT DOING
;;; DOING    :  do_autosave_backup check_and_save_file check_autosave rawcharin 
runproc
;;; editing: /home/axs/mail/xxxstuff.txt, ON LINE 1

Pop11 was still running after that, so I could type 'ved' and continue with
my edit!

I did not understand what was happening. So I looked up the procedure that
produced the message:

        ENTER sourcefile do_autosave_back

That took me to this file

        $usepop/pop/lib/ved/ved_autosave.p

But I was not able to understand what was going on. However, it had several
tests of the value of the string vedautosave_preserve which I had somewhere
set to true.

        ENTER ref vedautosave_preserve

Took me to this entry in REF VEDVARS

vedautosave_preserve -> item                                  [variable]
item -> vedautosave_preserve
        This variable, whose  value should  be a boolean,  a string,  an
        integer or a  procedure, controls whether  the automatic  saving
        mechanism described  in HELP * ved_autosave  creates an  initial
        EXTRA backup  file  for  each file  edited  during  the  current
        session. It  also controls  how  the saving  is done.  For  full
        details see the HELP file.

I then found that if I altered my vedinit file to replace
     vedautosave_preserve = true

with
     vedautosave_preserve = '~~'

The crashes stopped! (At least so far...).

My first puzzle is why this happened on the new machine but not the old
machine. The answer may just be as simple as some slip when copying files
across.

More importantly: is this messy system really needed?

For now I'll just flag up the problem and leave it. Perhaps someone with
experience of designing editors with autosave mechanisms could come up with
a clean new specification.

Or perhaps it's not worth changing. Anyhow it's interesting to note that
given my total inability to remember any of the stuff I had previously
written around 1995, my self-rescue depended on these facts:

        The error message specified the procedure in wihch the error was
        generated. The main variable controlling the behaviour of the procedure
        was clear. That took me to the documentation.

I guess there are more important things to fix.

Aaron

Reply via email to