Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!rutgers!cbmvax!daveh From: daveh@cbmvax.cbm.UUCP (Dave Haynie) Newsgroups: comp.sys.amiga Subject: Re: autoconfig Message-ID: <1768@cbmvax.cbmvax.cbm.UUCP> Date: Mon, 27-Apr-87 12:47:08 EDT Article-I.D.: cbmvax.1768 Posted: Mon Apr 27 12:47:08 1987 Date-Received: Tue, 28-Apr-87 02:03:51 EDT References: <1107@tekred.TEK.COM> Distribution: na Organization: Commodore Technology, West Chester, PA Lines: 51 in article <1107@tekred.TEK.COM>, joels@tekred.TEK.COM (Joel Swank) says: > > In article <1203@ulowell.cs.ulowell.edu>, page@ulowell.cs.ulowell.edu (Bob Page) writes: >> >> The whole point of autoconfig is that you don't need DIP switches. >> ..Bob > > No, the whole point of autoconfig is that you don't need addmem. The board > must know where it resides and tell dos where that is at boot time. You > still need switches to tell the board where it goes. Otherwise it would > be set at the factory and unchangeable. > > Joel Swank > Tektronix, Redmond, Oregon No, no, no, no, no. Bob IS CORRECT. The whole point of Autoconfig is that you don't need configuration switches of any kind. During the autoconfiguration phase of the system startup, the Amiga attempts to read memory mapped starting at $E80000. If any autoconfig boards exist, they'll have PALs that are mapped as memory in this area. When such an add-on board detects its input line called /CONFIGIN is asserted, it will start responding to the $E80000-$E8FFFF range. The data the Amiga reads here determines the amount of normal address or I/O memory the board needs, and if that address range should be added to the pool of free memory. If the board requires memory, the Amiga finds the next chunk of the expansion memory range that can accomodate that amount of memory, and then tells the board that it's located there. The board is now "configured", and it then asserts its /CONFIGOUT line, which is passed as the /CONFIGIN line to the next board. The process repeats itself until the Amiga finds no more boards that'll respond to the $E80000 address. What confuses some people are the memory ranges starting at $000000 and at $C00000. The Amiga's operating system (1.2 OS) will automatically look for RAM beginning at $000000 (and continuing on for up to 2 megs) and it will link any memory found there into the ChipMem list. Similarly, it will look for RAM beginning at $C00000 (and continuing on up for about 1.75 megs) and it will link any memory found there into the FastMem list. This is done before the autoconfiguration process, and memory found this way is certainly automatically recognized memory, but not autoconfig memory in the true sense of the word as applied to Amiga systems. I'm sure some 3rd party add-on boards are using the $C00000 area as a cheap way of adding memory, and while it can be done, the way this memory can be added by a 3rd party company is very critical, and can cause some problems depending on how they do it. The extra RAM space in the $000000 section is reserved for custom chips with a larger address space, the extra RAM space is intended for Amiga systems that support more than 512K of RAM on the motherboard, but only support 512K of chip memory. -- Dave Haynie Commodore-Amiga Usenet: {ihnp4|caip|rutgers}!cbmvax!daveh "The A2000 Guy" BIX : hazy "These are the days of miracle and wonder" -P. Simon