Path: utzoo!attcan!uunet!cbmvax!daveh From: daveh@cbmvax.UUCP (Dave Haynie) Newsgroups: comp.sys.amiga Subject: Re: Lucas board Message-ID: <5232@cbmvax.UUCP> Date: 14 Nov 88 19:15:25 GMT References: <6053@killer.DALLAS.TX.US> Organization: Commodore Technology, West Chester, PA Lines: 34 in article <6053@killer.DALLAS.TX.US>, aimania@killer.DALLAS.TX.US (Walter Rothe) says: > Keywords: Lucas 68020 68881 > The second is that there seems to be an incompatability between the 68020 > and the 68000 when operated in byte mode. The 68k puts out UDS when the > byte in bits 8-15 gets put out and LDS when the byte in bits 0-7 gets > put out. The 68k manual says that that it puts the data out in both bytes > when only one of the strobes is true. However, the 68020 always puts bytes > out in bits 24-31. The problem with the Lucas board is that if you do a > byte move to an odd address, the 68020 winds up writing to bits 8-15 where > the 68k writes to bits 0-7. Am I overlooking something? Yes. What you're not considering is PORT SIZE. Where a particular chunk of data shows up is determined by the address you're using, the instruction size, and the size of the physical memory port you're writing to. If the LUCAS board is doing it's job (if it works at all, it is), all of the Amiga system looks to the 68020 as a 16 bit wide port (port width is controlled with the Data Size ACKnowldege lines /DSACK0 and /DSACK1). The 68020 will write to bits 0-7 (or 16-23 from the '020s point of view) for the 68000 /LDS equivalent, and bits 8-16 (== 24-31) for the 68000 /UDS equivalent. > I didn't see anywhere in the 68020 manual where is says that it duplicates > data on the bus when in byte mode. You need to read over the bus sizing stuff again, especially how DSACKs work. > Walter Rothe -- 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