Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!ucbvax!pro-sol.cts.com!mdavis From: mdavis@pro-sol.cts.com (Morgan Davis) Newsgroups: comp.sys.apple Subject: Re: Booting Ram5 from Assembly Message-ID: <8909282157.AA10438@trout.nosc.mil> Date: 28 Sep 89 21:07:20 GMT Sender: daemon@ucbvax.BERKELEY.EDU Organization: The Internet Lines: 29 Network Comment: to #11532 by L77%TAUNOS.BITNET@cunyvm.cuny.edu > So in short where do you JMP/JSR in order to boot /RAM5 ????????? You don't. And you can't. Slot booting requires bootable media being mapped to drive #1 of a slot. Since the RAM disk on the IIGS is mapped to a second drive (usually slot 5, drive 2), you can't jump into peripheral RAM space (via JMP or a higher call like PR#n or n-Control-P in the monitor). An elegant way to do it is to change the battery RAM settings to make the RAMdisk the boot disk. Then munge the power-up compliment at $3F4 (increment or decrement it), and do a JMP to $FA62, the reset handler. The handler, upon seeing $3F4 munged will cause the computer to reboot as if Control-Command-Reset were pressed. The only drawback to this is that it makes a change to battery RAM which you might not always want. My instincts tell me that if the IIGS firmware can cause the RAMdisk to boot, then you should be able to do it yourself. I suspect you would have to write your own bootstrap routine to set up zero page locations (MSLOT and all that), read in block #0 of the RAMdisk, set up registers and flags appropriately, and call the boot block code you loaded into memory. UUCP: crash!pnet01!pro-sol!mdavis ProLine: mdavis@pro-sol ARPA: crash!pnet01!pro-sol!mdavis@nosc.mil MCI Mail: 137-6036 INET: mdavis@pro-sol.cts.com ALPE|BIX: mdavis