[comp.sys.acorn] Emulation + would have posted

as@castle.ed.ac.uk (A Stevens) (12/18/90)

I cannot imagine that ROM images would be a big problem for people
wanting to build a superior BBC-B emulation. Surely you could just
release the emulator as a ``patch'' sitting on top of the existing one
distributed by Acorn which - they claim at least - contains pretty much
unchanged MOS1.2 along with ARFS and the Utils ``ROMS''.

What would be legally tricky would be handing out the necessary
software for Cracking the copy protection on the Elite floppy.
Even for Elite I doubt I would get a 5.25" disk drive.

Does anyone (called Graham :-)) know if said emulator does ``Planetoid''
too?  My Defender reflexes are getting distinctly dull ever since I gave my
B away in a fit of lunacy...

** As a reply to a previous poster asking what binaries might have been
** posted ...

(1) The latest version of sml that tries to disable the crash-o-matic
FPE signal by turning off its handler.  I say tries because in some
programs it seems an FPE will crash even if SIG_IGN is set as the handler.
Seems to work on SML on my Arch though - 
does anyone know where I can obtain / buy a decent Clib with
working signals.  I recall someone mentioning a very nice sounding UNIX
compat lib they wanted to sell...

(2) The latest version of HUProlog that allows you to set memory allocation
at run time, runs a bit faster, fixes the odd bug or niggle, and is
a touch better documented.  This time full source code is also available.

Both may be found on the newcastle info-server: info-server@uk.ac.newcastle
in the U.K.

I am happy to mail folk disk copies if they promise to post back the
disks.  

	Andrew

PS
Mails to as@uk.ac.ed.aipna not uk.ac.ed.castle as I rarely
read mail on this machine.  Aipna alas hasn't spotted comp.sys.acorn
exists.


PPS
Come on you sluggards... there must surely be people out there with
experience of some of the Pd/Shareware available, and/or which model B
stuff runs under the emulator.  Mail or Post the results so others
don't have to make the same mistakes... its what the net is for.

kvj@rhi.hi.is (Kristjan Valur Jonsson) (12/27/90)

In <7619@castle.ed.ac.uk> as@castle.ed.ac.uk (A Stevens) writes:

>I cannot imagine that ROM images would be a big problem for people
>wanting to build a superior BBC-B emulation. Surely you could just
>release the emulator as a ``patch'' sitting on top of the existing one
>distributed by Acorn which - they claim at least - contains pretty much
>unchanged MOS1.2 along with ARFS and the Utils ``ROMS''.

Perhaps the problem is that the emulator guys want to reprogram the
BBC OS ROMS in ARM code, and they surely would need Acorn's permission
to do that. That would mean a rather nice speed increase. (Imagine calling
the 6502 routines every time a char is written on the screen)

I understand that when buying emulators for other computers (eg. Mac emulators
for the Commodore Amiga) , that often are hardware based,  one has to obtain
the necessary roms himself.  That wouldn't be too hard with a Spectrum
emulator, would it?

Kristjan Valur Jonsson.

daveh@cbmvax.commodore.com (Dave Haynie) (01/08/91)

In article <2574@krafla.rhi.hi.is> kvj@rhi.hi.is (Kristjan Valur Jonsson) writes:
>In <7619@castle.ed.ac.uk> as@castle.ed.ac.uk (A Stevens) writes:

>Perhaps the problem is that the emulator guys want to reprogram the
>BBC OS ROMS in ARM code, and they surely would need Acorn's permission
>to do that. That would mean a rather nice speed increase. (Imagine calling
>the 6502 routines every time a char is written on the screen)

That's not likely the problem.  If all you're doing is re-implementing a 
set of BIOS function calls, especially on a totally different CPU, there
should be no legal problems.  A number of the alternate CPU based emulators
for the Amiga work this way.  For instance, much of "The C64 Emulator" from
ReadySoft uses real 680x0 code for ROM calls and the like.  You have the
option of loading a real C64 ROM from your C64 to support the programs that
jump into ROM at arbitrary points, rather than via the defined entry points.
Having the ROM calls run by the native CPU, rather then by emulating 6510 
code, make some difference.  In reality, though, most of the time such
emulators spend is in emulating the I/O chips.  While a 6510 or 6502 at
1MHz isn't all that difficult for a reasonably fast 16 or 32 bit chip to
emulate, the registers in something like a VIC chip, and the associated ugly
tricks, like raster interrupts coupled with software timing loops for doubling
up on sprites or switching video modes in mid-screen, that kind of thing, is
what makes doing a real emulator more difficult. 

>I understand that when buying emulators for other computers (eg. Mac emulators
>for the Commodore Amiga) , that often are hardware based,  one has to obtain
>the necessary roms himself.  That wouldn't be too hard with a Spectrum
>emulator, would it?

The Mac "emulators" really aren't emulators.  The Amiga and the Mac both use
680x0 CPUs, so all that needs to be "emulated" is any I/O registers that can't
be replaced functionally in the Mac OS, if any.  These things are more along
the lines of what I call a "hostile port" of the Mac OS to the Amiga.  But
since the Mac OS is so complicated, it's not the kind of thing a company can
hack up a BIOS replacement for in a short time.  So you need the real thing,
which can be made arbitrarily hard to get by the vendor if desired.  That, of
course, depends on the vendor's motive.  There may be little need to prevent
Spectrum code from running on an Arc system.

>Kristjan Valur Jonsson.


-- 
Dave Haynie Commodore-Amiga (Amiga 3000) "The Crew That Never Rests"
   {uunet|pyramid|rutgers}!cbmvax!daveh      PLINK: hazy     BIX: hazy
	"Don't worry, 'bout a thing. 'Cause every little thing, 
	 gonna be alright"		-Bob Marley