Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ulowell!cbmvax!daveh From: daveh@cbmvax.UUCP (Dave Haynie) Newsgroups: comp.sys.amiga.tech Subject: Re: Longword alignment with 68020 Message-ID: <6101@cbmvax.UUCP> Date: 28 Feb 89 17:15:06 GMT References: <3503@sugar.uu.net> Distribution: na Organization: Commodore Technology, West Chester, PA Lines: 29 in article <3503@sugar.uu.net>, karl@sugar.uu.net (Karl Lehenbauer) says: > In article <10803@well.UUCP>, ewhac@well.UUCP (Leo 'Bols Ewhac' Schwab) writes: >> As an extra added bonus, the '020 will read and write words on odd >> *byte* boundaries (but you pay a heavy performance penalty). An entire >> class of Gurus almost disappears! (Type 00000003, Address error.) > ...and an entire class of bugs becomes harder to find. Sigh. There are really two things (three, if you count memory failure) that give you GURU 3s. First is the simple "I didn't align my data properly" bug, which isn't a problem with a 68020, but is with the Amiga OS. This would result in a GURU 3 changing into a library call error of some kind, and is harder to track down on a 68020 system than on a 68000 system. Fortunately, if you're using a compiler, this one's not all that easy to get. The second kind is the "I'm reading E-Space and acting on it" bug, in which you perhaps forget to reference or dereference in some place, and end up using a data value as an address. Some of this can be trapped by using my SetCPU V1.4 program with the FASTROM TRAP option. That turns on trapping of access to memory outside of the 24 bit address space, which can catch a good portion of the possible GURU 3s in this class, changing them into GURU 2s. > -- uunet!sugar!karl | "Everyone has a purpose in life. Perhaps yours is > -- karl@sugar.uu.net | watching television." -- David Letterman > -- Usenet BBS (713) 438-5018 -- Dave Haynie "The 32 Bit Guy" Commodore-Amiga "The Crew That Never Rests" {uunet|pyramid|rutgers}!cbmvax!daveh PLINK: D-DAVE H BIX: hazy Amiga -- It's not just a job, it's an obsession