Path: utzoo!censor!geac!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!uunet!cbmvax!daveh From: daveh@cbmvax.commodore.com (Dave Haynie) Newsgroups: comp.sys.amiga.tech Subject: Re: Accessing the Chips directly Message-ID: <15683@cbmvax.commodore.com> Date: 7 Nov 90 19:54:08 GMT References: <1220@iceman.jcu.oz> Reply-To: daveh@cbmvax.commodore.com (Dave Haynie) Organization: Commodore, West Chester, PA Lines: 43 In article <1220@iceman.jcu.oz> cpca@iceman.jcu.oz (C Adams) writes: >I was wondering whether C= supported directly writing to the chips >registers. I know you would have to do a Forbid()/Permit() and >make sure blitter DMA was finished etc. to be multitasking friendly, >but does C= state that any new chip set will be compatible with >the old one. In general, you shouldn't write to any machine register. There are some hardware specific things you can do in a quasi-system-supported manner, via hardware "resource" descriptions and calls like OwnBlitter(). >ie. would my program break on an Amiga 4000 if I wrote to the >chips for speed. The underlying chip registers don't change unless there's a good reason for them to change. But if there's a good reason, then they change. The most recent such change was rather trivial -- the A3000 got a different realtime clock, so that we could have a small amount of battery backed RAM for the software folks to play with. But it's certainly possible for other things to change. One other example is the color table. If you wanted a particular color setup on a custom screen, you might try to poke color values into color registers. Now, the OS will reset this, but ignore that for a minute. We recently introduced the ECS chipset in the A3000. If you set up a 35ns pixel display with that 3000, the color mapping physically changes. As long as you used the system call for setting colors, though, everything works properly. So my advice is, use the OS for absolutely everything, and at as high a level as you can. Leave the hardware alone, and you can expect to run on the Amiga 10,000 or whatever. Bang on the hardware, and you may even break on the A3000. If you have any detailed questions on a particular point, ask away -- the software folks probably have a better idea about what they expect to support in future system, and what's properly isolated from the hardware. >Colin Adams >Email: cpca@marlin.jcu.edu.au -- Dave Haynie Commodore-Amiga (Amiga 3000) "The Crew That Never Rests" {uunet|pyramid|rutgers}!cbmvax!daveh PLINK: hazy BIX: hazy Standing on the shoulders of giants leaves me cold -REM