<?php
	$title = "Fools Guide to getting BBC ROMs";
	include("pre.php3");
?>
(original author James Pritchard - e-mail unavailable)
<HR>
<BLINK>Note!</BLINK>  This section is now obsolete (see <A HREF="faq.php3#roms">the FAQ</A>), but is kept here for nostalgic reasons.
<P>
Acorn's refusal to release copyright on their ancient ROM code
for the BBC makes it difficult to get the ROM images required
for most emulators (OS12.ROM and BASIC2.ROM).  However due to
various helpful souls you can now extract the required
files from a file available at Acorns web site. Sadly the method
has not been made particularly clear for poor sods like me who
just wanted to get nostalgic about 'Frak' on their PC. So here is
a detailed explanation of the process.
<B><P>
Files Required:
</B><P>
<A HREF="mirror/www.acorn.com/ftp/riscos/releases/riscos310/app2.arc">
APP2.ARC
</A>
- ARC Archive File (Acorn's 'RISC OS 3.1 Support Disk 2')
<P>
<A HREF="mirror/www.acorn.com/ftp/riscos/releases/nspark.tar">
NSPARK.TAR
</A> - ARC Extraction Utility.  A version compiled for DOS can be found at <A HREF="ftp://ftp.demon.co.uk/pub/archimedes/developers/nspark/nspk176b.exe">ftp.demon.co.uk</A>.
<P>
<A HREF="util/riproms-p.c">
RIPROMS-P.C
</A> - ROM extraction 'c' program.  A version compiled with DJGPP for DOS can be found <A HREF="util/ripromsexe.zip">here</A> - to run it requires a DPMI driver.

<P><B>
Utilities Indirectly Required (unless you can use the compiled versions above):
</B><P>
C - A C compiler of some nature featuring a 'make' utility<P>
Tar - Archive program for.. erm 'tar' files.  For Windows users, WinZip also handles 'tar' files.<P>

N.B. This process should work on any computer - theoretically (ha) -
with the appropriate files and utilities.  The process below
definitely works on a Unix type computer, ('cos I thats all I had
access to), and then transferring the ROM files to your computer.

<P><B>
Process:
</B><P>

<B>1)</B> Make a convenient temporary directory and copy NSPARK.TAR
to it.  Using the 'tar' utility type:
<P>
<pre>tar -xvf NSPARK.TAR</pre>
<P>
This should dearchive various files/source code of the NSPARK
utility into its own subdirectory 'nspark-1.7.5'.  There are some directories there with binaries for various systems - including one for Windows 95/NT.  If you find a binary that works on your system, you may skip the next step.
<P>
<B>2)</B> Change to the 'nspark-1.7.5' directory and using your C
compilers 'make' utility type:
<P>
<pre>make</pre>
<P>
This should - after a while - leave you with a compiled
executable file 'nspark'
<P>
<B>3)</B> Copy the APP2.ARC file to your nspark directory.  Dearchive
the required !RunImage file using:
<P>
<pre>nspark -x APP2.ARC !65host/!RunImage</pre>
<P>
N.B. The symbol '!' in file names makes UNIX act like grandma on acid
(yes, that's not good), so on UNIX systems you need to 'escape' the exclamation characters with backslashes:
<P>
<pre>nspark -x APP2.ARC \!65host/\!RunImage</pre>
<P>
This should dearchive the file '!RunImage' into the
subdirectory !65host.
<P>
<B>4)</B> Now you need to use the riproms utility on !RunImage.  Using
your C compiler (for example gcc) do:
<P>
<pre>gcc riproms-p.c -o riproms</pre>
<P>
This should leave you with an executable 'riproms'
<P>
N.B.  I was unable to compile it error free with anything
other than 'gcc' and only on one particular Unix system.
Perseverance/Crying may be required.
<P>
<B>5)</B> With the !RunImage file in the same directory as riproms,
extract the ROMs:
<P>
<pre>riproms !65host/!RunImage BASIC2.ROM OS12.ROM</pre>
<P>
(Use "\!" instead of "!" on UNIX systems, as above.)  This should leave you with the 2 ROM files.
<P>
<B>6)</B> Copy the ROM files to your emulator directory (read the emulator's documentation), run emulator, play Strykers Run, become teary eyed,
complain about how much better games were back then, load
up Quake and return to planet Earth.
<P>
<B>Credits</B><P>
Riproms - Original written by Darren Salt, debugged version by Saint someone.
<P>
<A HREF="http://nvg.org/bbc/">
BBC Lives page
</A>
 - Originator of this method and an excellent BBC page

<?php include("post.php3") ?>
