Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.milw.wisc.edu!leah!rpi!batcomputer!cornell!uw-beaver!blake!ogccse!cvedc!nosun!tektronix!tekgen!tekigm2!phils From: phils@tekigm2.MEN.TEK.COM (Philip E Staub) Newsgroups: comp.sys.amiga.tech Subject: Re: Memory Map Message-ID: <4960@tekigm2.MEN.TEK.COM> Date: 11 Jun 89 07:35:19 GMT References: <17184@louie.udel.EDU> <109194@sun.Eng.Sun.COM> Reply-To: phils@tekigm2.MEN.TEK.COM (Philip E Staub) Distribution: usa Organization: Tektronix, Inc., Vancouver, WA. Lines: 49 In article <109194@sun.Eng.Sun.COM> cmcmanis@sun.UUCP (Chuck McManis) writes: >In article <17184@louie.udel.EDU> new@udel.EDU (Darren New) writes: [deleted stuff about Amiga memory map questions and answers] >space. Of course due to the way the 68000 resets, ROM has to be located >at $FFFFFF, but can extend "down" toward 0 an arbitrary distance, 256K >in the case of the current Amigas, probably 512K in a future Amiga. ( Well, not quite. The 68000 loads its initial PC and Stack Pointer from the first 8 bytes in the address space ($000000 to $000007). This normally requires one of the following: 1. ROM is permanently located starting at 0. (Unless special provisions are made to accommodate it, this usually makes it real ugly to try to redirect exception vectors.) 2. ROM responds to an address range starting at 0 until some action causes it to assume its usual address. I've seen this action consist of anything from an explicit write to a port address to an automatic toggle that happens when you branch to an address in the normal ROM address range. 3. ROM located at both 0 and its normal address until a similar action described in 2. 4. The base address (or entry point) of the ROM is permanently gated onto the data bus when the first longword in memory is accessed, effectively replacing the first 4 bytes of memory with a 4 byte ROM. I'm sure there are other methods of handling this, but these are the major ones I've encountered. Which one does the Amiga use? Well... I knew once, but I forgot! (Shows you how important it is once you know it works, eh?) The location of ROM at $FFFFFF and "down" is usually to avoid fragmenting the available address space unnecessarily, or to simplify chip select decoding. > >--Chuck McManis >uucp: {anywhere}!sun!cmcmanis BIX: cmcmanis ARPAnet: cmcmanis@sun.com >These opinions are my own and no one elses, but you knew that didn't you. >"A most excellent barbarian ... Genghis Kahn!" (I guess I got a bit longwinded picking a very small nit, didn't I? Sorry.) -Phil -- ------------------------------------------------------------------------------ Phil Staub Tektronix, Inc., Vancouver, Washington 98668 phils@tekigm2.MEN.TEK.COM