Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!world!mkahl From: mkahl@world.std.com (Michael Kahl) Newsgroups: comp.os.minix Subject: Re: macminix Summary: fix for overwriting low memory Message-ID: <1991Jan5.031942.446@world.std.com> Date: 5 Jan 91 03:19:42 GMT References: <1990Dec22.1046.1132@canrem.uucp> Organization: The World @ Software Tool & Die Lines: 32 In article <1990Dec22.1046.1132@canrem.uucp> "glen lalonde" writes: >**** MacMinix upon boot overwrites the address error trap handler >address in low memory! This will cause a great number of problems, >since address errors will not drop you into macsbug but will cause >strange system behaviour. Most of the time the internal drive will >start to run, for no reason at all, after a little while of runnning >some bad code it will just crash the system. PLEASE post a fix if >you know what part of the system is trashing the vector. I think >it is at 0x0c in memory if I recall correctly. Here is the fix. I have no idea what the original code might have been meant to accomplish, but it's clearly in error. *** /usr/src/kernel/console.c~ Thu Dec 20 23:00:34 1990 --- /usr/src/kernel/console.c Thu Dec 20 23:00:59 1990 *************** *** 115,121 **** if (scrollrgn == 0) scrollrgn = NewRgn(); vdusetparams(line, 1, monaco, 9, line == 0 ? 1 : 0, 1, 0L, 1, 0, 0); ! GetNextEvent(GetNextEvent(0, &e)); } --- 115,121 ---- if (scrollrgn == 0) scrollrgn = NewRgn(); vdusetparams(line, 1, monaco, 9, line == 0 ? 1 : 0, 1, 0L, 1, 0, 0); ! GetNextEvent(0, &e); }