[comp.sys.atari.st] The 'Amiga' Emulator

cmcmanis@sun.UUCP (04/04/87)

In article <954@ark.cs.vu.nl>, kleef@ark.cs.vu.nl (Patrick van Kleef) writes:
> In article <163@osupyr.UUCP> akw@osupyr.UUCP (FarOff MicroDesigns) writes:
> >>I have i have in my possession something that is called an Amiga Emulator.
> >>It was produced by Metacomco (at least, that's what it says) and we all
> >>know Metacomco had a *lot* to with the Amiga operating system.
> >>
> >>But then again, if it's true, it would make a nice gadget :)
> >
> >Is this one of those April Fool's jokes that we have heard about???
> >
> >
> 
> It couldn't be an April Foolsday joke, as the program came to me
> a couple of *months* ago. I could post it to mod.binaries.* for
> hackers to take a peek into it, but I doubt the usefulness of such
> a posting. I certainly don't have the means (read: knowledge :)
> to check it out. Guess we will know when (sigh) the blitters
> arrive.
> 

Paul, I think someone is pulling your leg, so to speak. The MetaComCo
folks did the TriPOS port to the Amiga and it was called AmigaDOS. That
is less than 1/3 of the software that makes up the system. The multitasking
kernel is called 'Exec' which was written by Amiga/Los Gatos, and the 
window system called 'Intuition' which was also written by Amiga. 

What is possible is that MetaComCo has ported TriPOS to the Atari. If
so then you would have a multitasking O/S available. But the reasons
they couldn't emulate the Amiga are as follows :
  What do they do when an application opens a 640 X 400 16 color screen?
  What do they do when an application wants to use sound channels 2, 3, and 4.
  Or is expecting input from 'JoyStick/Mouse port 2?'
  Or opens a 32 color 320 X 200 screen? Or a 320 X 200 4096 color screen?
  Or opens a different 'kind' of screen halfway down on the physical screen?
  Or uses sprites 2-8 to do animation ? It goes on but you get the picture.

In response to someone elses posting that it would not be possible to do 
a 'realtime' ST emulator this is true because the Amiga would have to 
catch writes to things like the disk controller etc, but it would be possible 
to port GEM, and TOS to the Amiga as the physical hardware capabilities are 
a superset of the ST's capabiliiies.

> As for the MS-Doz emulator Robtek sells: a friend of mine dug deep
> into the code of the program and found out (as he says) something
> like 50 percent of the code consists of nulls (0's, zero's, noughts).
> Guess the program would seem too small in it's original size :)
> 
> Paul 'Red' Molenaar

If the emulator is at all like some of the table driven ones I have
seen for Z80's or what have you, there is often quite a bit of 
'data' space required to cache things like exceptions etc. The Z80
emulator I mention would store every address in the original program
that affected the stack and do special stack fixup's when one was
reached. This was to counteract people doing things like pushing a
16 bit register and then executing a 'return' instruction. Basically
a cheap way to do a register indirect jump. (Oh and before you ask this
emulator ran on an 80188 not a 68000).

-- 
--Chuck McManis
uucp: {anywhere}!sun!cmcmanis   BIX: cmcmanis  ARPAnet: cmcmanis@sun.com
These opinions are my own and no one elses, but you knew that didn't you.