[comp.sys.amiga.tech] Setcpu Problem

helmutn@cip-s06.informatik.rwth-aachen.de (Helmut Neumann) (11/12/90)

Hello (Dave ?),

i have a little problem with setcpu. How can i load Kick 2.0-Versions compiled or
for $200000 ? I really need it, because i bought a 2090 (stupid) and added a
module to make it autoboot. This weekend i got an update, now it works with 
Kickstart 2.0, BUT they use a dirty trick to autoboot without autoconfig by
locating the software at $f10000. So when i load the Kickstart compiled for 
$f00000 this works fine, but he can not find the autoboot-roms. Does an 
Kickstart compiled for $200000 collide with the ram at $200000 from my 
GVP 3001 ?

Thanks for respond, Helmut.

daveh@cbmvax.commodore.com (Dave Haynie) (11/17/90)

In article <3685@rwthinf.UUCP> helmutn@cip-s01.informatik.rwth-aachen.de (Helmut Neumann) writes:
>Hello (Dave ?),

>i have a little problem with setcpu. How can i load Kick 2.0-Versions 
>compiled for $200000 ? 

You can't, with SetCPU.  You would have to use one of the MMU-less tricks,
like what the KickIt program on the 2.0 Developers' Disk.  Here's the problem.
You tell SetCPU to load a KickStart file (or disk, it doesn't really matter).
SetCPU loads the file into a temporary RAM buffer, analyzes it to find where
its assembled for, then builds an MMU table for it.  Once everything it needs
is available, it Disable()s, copies the appropriate chunks into Chip memory
somewhere (to easily survive reboot), then does a reset of the system and
jumps into the ROM at it's virtual start address.

Works great for the normal $f0 or $f8 ROMs, but now consider a $20 ROM.  The
OS starts up, happy as a clam living at $20.  Then it comes across some
autoconfig memory.  As usual, it locates the first such unit at $20.  Only,
there's ROM there.  So when the OS tries to place a memory list and autolink
that memory, it fail -- the memory board appears bad.

Programs like KickIt (I think there's another one called ZKick which is a
bit more robust that KickIt) don't use the MMU, but instead configure the 
first board themselves and leave a ROM tag in RAM of some kind that kicks in
on reset and does the configuration.  SetCPU doesn't count on any OS features
to do its tricks, it simply plays with memory mapping.

>really need it, because i bought a 2090 (stupid) and added a module to make 
>it autoboot. This weekend i got an update, now it works with  Kickstart 2.0, 
>BUT they use a dirty trick to autoboot without autoconfig by locating the 
>software at $f10000. So when i load the Kickstart compiled for $f00000 this 
>works fine, but he can not find the autoboot-roms. 

That's to be expected.  Which is why $00f0xxxx shouldn't be used by any
third party devices -- only Autoconfig devices are supported on the bus.
Period.

>Thanks for respond, Helmut.


-- 
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

smp@myamiga.UUCP (Steve Palm) (11/21/90)

 DH> You can't, with SetCPU.  You would have to use one of the MMU-less tricks,
 DH> like what the KickIt program on the 2.0 Developers' Disk.  Here's the 
 
 Is there any way for a user to gain access to these programs?  Of the
 greatest interest would be the ability to load and run KS 1.1 / 1.2 on
 my A2000.   I suppose I'd have to have a version of the KickStart that
 was compiled for that memory bank, though, right?



--  
 --- {rutgers,gatech,ames}!ncar!asuvax!stjhmc!myamiga!smp --- smp@myamiga ---
    \_________________________Or_FidoNet_1:11/16_________________________/
     Although the Amiga may not be the perfect system, just remember....
               "In the land of the blind, the one-eye is king."
                                         [Aposolius: paroemiae VII.xxiii]