[comp.sys.amiga] Kickstart in ROM question

bryce@COGSCI.BERKELEY.EDU.UUCP (08/18/87)

I have a friend that has placed Kicstart V1.2 in ROM on his A1000.  The
256K of WCS is added to his system with AddWCS (or addmem).

What he would like to do next is add a switch.  One way he gets his
Kicks in ROM, the other way he gets to kick from disk.

The question is... is it possible to do this without switching in 
a set of boot ROM's ???  Or, put another way... can Kickstart V1.2 boot
Kickstart V?.? ???


|\ /|  . Ack! (NAK, EOT, SOH)
{o O} . 
( " )	bryce@cogsci.berkeley.EDU -or- ucbvax!cogsci!bryce
  U	"Success leads to stagnation; stagnation leads to failure."

grr@cbmvax.UUCP (George Robbins) (08/25/87)

In article <8708180804.AA27308@cogsci.berkeley.edu> bryce@COGSCI.BERKELEY.EDU (Bryce Nesbitt) writes:
> I have a friend that has placed Kicstart V1.2 in ROM on his A1000.  The
> 256K of WCS is added to his system with AddWCS (or addmem).
> 
> What he would like to do next is add a switch.  One way he gets his
> Kicks in ROM, the other way he gets to kick from disk.
> 
> The question is... is it possible to do this without switching in 
> a set of boot ROM's ???  Or, put another way... can Kickstart V1.2 boot
> Kickstart V?.? ???

Well, you could do something if you preserved the 2 "bootstrap" ROM's
when adding the kickstart ROM's but I doubt that he did this.  Iff the
switch allowed having the kickstart memory to sit in it's normal place,
it might be possible to run a program that would grab the system, load
the kickstart memory - then you would press reset and throw the switch
at the same time. 

The real question is why bother?  Some ancient and decrepit programs require
kickstart 1.1, but I'd like to think that future kickstart releases will be
sufficiently compatible that all you'll need to do is plug in new ROM's.

-- 
George Robbins - now working for,	uucp: {ihnp4|seismo|rutgers}!cbmvax!grr
but no way officially representing	arpa: cbmvax!grr@seismo.css.GOV
Commodore, Engineering Department	fone: 215-431-9255 (only by moonlite)

bart@amiga.UUCP (Barry A. Whitebook) (08/26/87)

[ eat this line - please! ]

In article <8708180804.AA27308@cogsci.berkeley.edu> bryce@COGSCI.BERKELEY.EDU (Bryce Nesbitt) writes:
> 
> The question is... is it possible to do this without switching in 
> a set of boot ROM's ???  Or, put another way... can Kickstart V1.2 boot
> Kickstart V?.? ???

this is amiga!bart: yes, it is (or should be) with the "ramkick" utility
to load alternate .ld files from V1.1 down into ram memory and protect them
from warmboots... 
(of course, there haven't been any releases of the .ld files from V1.1,
 and you can't replace exec -- don't ask me why... its just too difficult
 to bootstrap the bootstrap in this case)...

here's a binary copy: i suggest you create a foo.library named foo.ld and try
"ramkick -reboot foo.ld" to start...  from then on you can treat foo.library
as if it was in the rom all along!

WARNING!!!!WARNING!!!!WARNING!!!!WARNING!!!!WARNING!!!!WARNING!!!!WARNING!!!!

this will programmatically reboot your machine when you invoke -reboot option

WARNING!!!!WARNING!!!!WARNING!!!!WARNING!!!!WARNING!!!!WARNING!!!!WARNING!!!!

--------------------------------------------------------------------------------
begin 644 ramkick
M   #\P         /          X   "#    :P   1D   !X    #4    ! 
M  "W    "    !0    '               B    &         /I    @R//
M    '"/     )"/(    *"QY    !"/.    !)/)3J[^VBA 2JP K&<  /9A
M  &ZD<@@+ "LY8@@, @0Y8A(YP P1?D   "L1_D    L($!P ! 80C ( ";(
M(#D    D('D    H0_ (  PA "!2R/_Z0BD  1(89UP, 0 @9_8, 0 )9_ F
MR@P! ")G%!3!$AAG0@P! "!G!!3!8/)"&F#4$AAG, P! ")G\@P! "IF(!(8
M# $ 3F<&# $ ;F8$<@I@#@P! $5G!@P! &5F G(;%,%@S$(20I,@/    "B0
MBT: Y(A,WPP 2'D    L+P!.N0   !PCP    !!.N0   "PCP    !0CP   
M !A.N0   ")P "YY    '$YU80  QF$  + CP    " O $*G)$ @*@ D9Q L
M>0    @@0"(H  !.KO^"(BH (&<H)#P   /M3J[_XB/     $"/     %"/ 
M    &&<*Y8@@0"EH  @ I$ZY    (G  8 0@+P $+GD    <+P L>0    0@
M.0    AG!B) 3J[^8DJY    (&<.3J[_?")Y    ($ZN_H8@'TYU2.<!!BX\
M  . !RQX  1.KO^43-]@@'!D8+!![ !<3J[^@$'L %Q.KOZ,3G5#^@ 2< !.
MKOW8(\     (9\).=61O<RYL:6)R87)Y       #[    !@    !   !]@  
M ;(   &F   !F    8H   %J   !9    5X   $^   !+    1P   $.   !
M"    /P   #N    W@   &0   !>    3    $8    :    #@    @    "
M     @    (   $4   !?     $    ,   ! @    $    ,    ]@      
M  /R   #Z@   &L (0 !                ________________        
M                                                            
M                                                            
M                                                            
M                                                            
M                                                            
M                                                            
M                                                            
M                                                            
M                                                 _(   /I   !
M&2\Y   !W$AY     $ZY     $AX  I.N0   81/[P ,3G5.5O_X2.<^/"0N
M  @D;@ ,> !\ 'H )GP     *'P   '<+7D    $__Q"ITAY    +DZY    
M."U __A*@E"/9@Q(>  *3KD   &$6(\HFE."2'D    Z+Q).N0    !*@%"/
M9@1.NO]V8$)V $J$9AA(>0   #PO$DZY     $J 4(]F!'@!=@%(>0   $(O
M$DZY     $J 4(]F!'P!=@%*@V8$3KK_-E."6(I*@F\((%(,$  M9[)*A&8<
M2'D   !*3I-P "IN__PK0 (F*F[__"M  B)8CTJ"9P  ?F   '0O$DZY    
M3"8 6(]F%DZY    /"\ +Q(O%$AY    B$Z38$8@ ^6()@ O$B\#3KD   'R
M* !0CV80( /DB"\ 3KD   !@6(]@)"\$+P-.N0   N1*@%"/9Q0O!"\#+Q)(
M>0   +1.DWH!3^\ $%."6(I*@F\$8(AZ 4J%9V1*AF=@= -Z,B8\    !"\\
M    ""\#3KD   +D2H!0CV="2J[_^&<N8"00 DB 2, O "\42'D   #23I,0
M!4B 2, O $ZY    =$_O ! 0 E,"2@!FU"\\    T$ZY     %B/3.X\?/_4
M3EY.=4CG(# D;P 0(B\ %"!*8$HD2%B*)"C__%&"8#(F2@Q32OQF)K?K  )F
M("\++PA(>0   /Q.N0     O"TZY   ";" *3^\ $& J58)4BG :L()MR" 0
MY8@@0" (9K(O"B\!2'D   $H3KD     < !/[P ,3-\,!$YU2.< ,"1O  P@
M>0    0F: (F(@MG7&!6(@ "@8    !G&@* ?____R9 +PM(>0   5).N0  
M  !0CV R($ O*@ .+R@ #DZY     $J 4(]F'$*K__PO*@ 2+RH #DAY   !
M<$ZY     $_O  P@&V:F3-\, $YU2.<^/"0O "@D;P L+P).N0  !"@L %*&
M)GD    $2'D   &4+RH #DZY     $J 5\-$ TB#2,-/[P ,9R@O.0   =Q(
M>0   :).N0     @ N2(+P!.N0   &!P $_O  Q@  "P* ;GA' @V( O/  !
M  (O!$ZY    ("A *@Q0CV8@( +DB"\ 3KD   !@+SD   '<2'D   '&3KD 
M    8+A![  (*@@J13M&  Y![0 0((PA1  $4(@O""\"3KD   1 3KD     
M*JL"(DJK B90CV<.("L")@" @    "E   0G10(B2H-G#B=J !8 *DZY   #
M_F &*(HG3 (F3KD   !0)T "*DZY    $' !3-\\?$YU<@$B>0    1!Z0!2
M( A!Z0 B8 +26+' ;?HP 4C 1( S0 !2, %(P$YU("\ !'( 8 @@0" 0Y8A2
M@4J 9O0@ 4YU("\ !"!O  A@$B) 68 @@"%I__P !" 1Y8A0B$J 9NI.=0  
M   #[     <    "   #V@   Z8   +T   ",    9P   %6   !-@   !0 
M   #   #?    W8   ,J   #)    P0   +,   "F@   E8   (B   !N@  
M 6@   $B    X@   *X   "6    =@   %    !     "     (    !    
M#0   _(    !    #0   ^@    !    #0   ZP    !    #0   UP    !
M    !    >(    !    #    <H    #    !@   90   &.   !W     , 
M   ,   !2    SP   -P     0    P   $6     0    P   $*    !0  
M  <   !^    G@   +8   *T   ##@    $    -    5@    (         
M&    &H    (    "0    X    Z   "*    EP   *@   "T@   S    ."
M         _(   /J    >'5S86=E.B E<R!;("UK965P(%T@6R M<F5B;V]T
M(%T@/&QO860@9FEL93X*  !D;W,N;&EB<F%R>0 _ "UK965P "UR96)O;W0 
M4F5M;W9I;F<@;VQD(&5N=')I97,@9G)O;2!E8BT^2VEC:TUE;5!T<B!A;F0@
M96(M/DMI8VM486=0='(*   E<SH@0V%N)W0@;&]A9"!S96=M96YT($9I;&4@
M)7,Z(&5R<F]R("5L9 H  "5S.B!S96=L:7-T(#!X)6QX+"!R97,@,'@E;'@*
M "5S.B!R96)O;W1I;F<@<WES=&5M(&EN("4P,FQD('-E8V]N9',N+BX* $9O
M=6YD(')E<VED96YT('1A9R Z('-E9R P>"5L>"P@<F5S(#!X)6QX"@  )7,Z
M($YO(')E<VED96YT('1A9R!F;W5N9"!I;B!S96=L:7-T("5L> H 0VAE8VM2
M97,Z(&-H86EN:6YG('1O(#!X)6QX"@  4F5M;W9I;F<@;V)S;VQE=&4@<F]M
M=&%G(&9O<B E<R\E<P  97AE8RYL:6)R87)Y   E<SH@8V%N;F]T(')E<&QA
M8V4@(F5X96,N;&EB<F%R>2(*   E<SH@;W5T(&]F(&UE;6]R>2XN+@H     
M     _(   /I    #2QX  0M;P $ "YR $'N "(P/  6TEA1R/_\1D$]00!2
M3J[_:B'Y    ,   3O@  $YP3OD   /L     0    0    F         _) 
M  /I         _)   /I    MP   M@     2OP    (   "V   "      D
M    /    &X  &-O;VQC87!T=7)E+F9U;F-T:6]N     &-O;VQC87!T=7)E
M("A*=6QY(#$P+" Q.3@W*0T*    97AP86YS:6]N+FQI8G)A<GD < !.=4CG
M.#@D;@$L* !T 78 (!IG1FX("(  'R1 8/(B0+8I  MNZA I  K  F?B)FD 
M#DGZ_[A*$V<*2A1G!KD+9@Q@\KD+9@9&A&?$8 1*A&:^<@!.KO^:8+9,WQP<
M3G5(YR @< !AFG( (FX!+" )9PPD;@$L(!IG!%*!8/@D 6=&XXE2@>6)+PT@
M#RI D($N0"! (D D;@$L(@IG$B 29PXBP"1 (NH !EB!)$%@[B+\_____TZY
M   !6B)N 2PM0 $L+DTJ7R )9PH@ E* Y8A.KO\N</]A /\H3-\$!"'\    
M    3G5(YQ@X3E7_\B9/)HM8DT*K  0G2P ()$A*DFL**%HH&F$  "9@\DZN
M_9RPK@(J9@QA  $.2H!G!&$  -YA  "D3EU,WQP83G5(YR $-#Q*_" $D(QC
M*.*(4X B $A!8 *T7%?(__Q7R?_X9A)+[/_^N]1F[F$   XH;0 &8-),WR $
M3G4@2R)M  Y.KO[L2H!G)B) (&D #A M  NP*  +;3YN"A M  VP*  -;3(@
M"4ZN_P0B0& 2(CP  0 "<!).KO\Z2H!G&") $VT #0 )(VT #@ *(TT #B!+
M3J[^\DYU< 0H$R)$*!%G!%B 8/8B/  !  ).KO\Z)$ F "@3(D0H$6<,).D 
M#G 23J[_+F#N0I(@ TYU2.< )" N B9G&"1 (!IG$FL(*D!A /]68/((@  ?
M)$!@ZDS?) !.=4CG&" H+@(B2H1G*"1$*!)%Z@ .-AIP 6 ,(EH@&F<&3J[_
M-$J 5\O_\DI#;P130V#H8-1P 4S?!!A.=0           ^P    &    !@  
M 2@    >    &@   !8    .    "@        /R   #Z0    A,[P,   1P
M !(8LAEF!DH!9O9@"&($</]@ G !3G4      _(   /I    %$CG #HH;P 4
M(&\ &")O !Q%^@ Z3^__="9/+'D    $3J[]]G#_2AM7R/_\1H!G$B\ 2&\ 
M!$A43KD     3^\ #$_O (Q,WUP 3G46P$YU   #[     $    ,    .@  
M      /R   #Z0    <@+P $2&\ ""\ +SD    43KD     3^\ #$YU   #
M[     $    (    $@    $    !    #         /R   #Z@        /R
M   #Z0        /R   #Z0   ")(YS "+'D    (3.\ #@ 03J[_T$S?0 Q.
M=0  +PXL>0    A.KO_*+%].=2\.+'D    (3J[_Q"Q?3G4O#BQY    "$ZN
M_WPL7TYU+PXL>0    @B+P (3J[_:BQ?3G4O#BQY    ""(O  A.KO]D+%].
M=2\.+'D    ((B\ "$ZN_SHL7TYU   #[     <    !    !@   "     P
M    0    %    !D    >         /R   #Z0   !@O#BQY    !$ZN_X@L
M7TYU+PXL>0    1.KO^"+%].=2\.+'D    $3.\  P (3J[_.BQ?3G4  "\.
M+'D    $(F\ "" O  Q.KOW8+%].=2\.+'D    $3J[]G"Q?3G4   /L    
M!0    $    $    %    "0    \    5         /R   #Z@        /R
 
end

jdm@pnet02.CTS.COM (John Mesiavech) (08/27/87)

Just wanted to comment in here....
 
Both the KwikStart package and the CMI package for installing Kickstart-in-ROM
for the A1000 have an option to let you load a disk-based Kickstart...CMI does
it with a hardware switch that can be installed when the kit is (ivnvolves
boring a hole in the Amiga case for the switch), and KwikStart has a software
switch that gets invoked depending on how long you hold the Amiga nerve pinch
(Ctrl-Amiga-Amiga).  Any longer than about 3 seconds, and KwikStart will load
a disk-based Kickstart instead of booting itself.  I, personally, would rather
have the CMI hardware switch...the KwikStart one strikes me as a booby-trap.
(Too hairtrigger I mean)..
 
John

UUCP: {ihnp4!crash, hplabs!hp-sdd!crash}!gryphon!pnet02!jdm
INET: jdm@pnet02.CTS.COM

bryce@COGSCI.BERKELEY.EDU (Bryce Nesbitt) (08/29/87)

In article <2253@cbmvax.UUCP> grr@cbmvax.UUCP (George Robbins) writes:
>In article <> bryce@HOSER.BERKELEY.EDU (Bryce Nesbitt) writes:
>>
>> [He wants the best of both worlds... Kickstart in ROM with a disk load
>> option...]
>
> The real question is why bother [having the ability to load a kickstart
> from disk]?  Some ancient and decrepit programs require kickstart 1.1, but
> I'd like to think that future kickstart releases will be sufficiently
> compatible that all you'll need to do is plug in new ROM's.

The real reason for wanting the option of disk-loading Kickstart was given
as wanting to be able to load Kickstart 1.3!  This makes two presumptions,
first that Kickstart 1.3 and _beta_ versions of it will be available on
disk (good assumption), second that Kickstart 1.3 will be 256K long (not so
good).	It seems more reasonable to assume that Kickstart 1.3 beta copies
will hook themselves in with those mysterious "Rom Tags".

It seems a sensible idea if someone would see fit to run an extra address
trace or two to the ROM sockets on the A500/A2000 and twiddle GARY in such
a way that the OS can easily bloat to 512 or more.  Unless someone takes a
sudden liking to assembly over C (besides me), or better yet, rips out that
BCPL kludge that handles the file system, I have a feeling that more than
256K will be needed to do much of anything extra to the ROM part of the OS.

Now if only the schematics in the A500 manual matched the rev of the PC
board... too much to ask for, really.  I had to hack out JP3 (and _EXRAM)
on my own to play with moving the A501 to $080000.  Also had to reverse the
power/drive LED's, but that's another matter.  Anyone have an extra "help"
keycap?  Someone out there must have the complement of my machine... I have
two "del" caps and zero "help" keycaps.  Guess this means I'm "helpless".
:-) :-) :-)

And, with every new release there is _always_ the same problem of
incompatible programs.	Consider the programs that would not work with V1.2
and instead gave a Guru #81000009.XXXXXXXX.  The condition of freeing
memory that was already free was not checked in older Kickstarts.  The
programs had a bug... but it did not show up until the OS was improved.

If you really want to see imcompatibility, add a MMU.  Now Boys and Girls,
are we all using MEMF_PUBLIC for any memory shared between tasks?... I knew
we were.


>Well, [he] could do something if [he] preserved the 2 "bootstrap" ROM's
>when adding the kickstart ROM's but I doubt that he did this.

The current set up this person has uses the two boot ROM's piggybacked, one
switch and some jellybean TTL.	Switch one way, Kickstart in ROM, switch
the other way boots from disk.	It works, but is inelegant.

-----
|\ /|  . Ack! (NAK, EOT, SOH)
{O o} . 
( " )	bryce@hoser.berkeley.EDU -or- ucbvax!hoser!bryce
  U	If "hoser" does not work, try my old address at "cogsci"