home *** CD-ROM | disk | FTP | other *** search
Wrap
Received: from gsfc.nasa.gov (gsfc.nasa.gov [128.183.115.38]) by nacm.com (8.6.10/8.6.9) with SMTP id NAA02291 for <executor@nacm.com>; Mon, 5 Jun 1995 13:43:58 -0700 Received: from leidecker.gsfc.nasa.gov by gsfc.nasa.gov (5.65/Ultrix3.0-C) id AA16659; Mon, 5 Jun 95 16:43:55 -0400 Received: by leidecker.gsfc.nasa.gov (NX5.67d/NX3.0S)id AA02863; Mon, 5 Jun 95 16:43:51 -0400 Date: Mon, 5 Jun 95 16:43:51 -0400 From: My Account <me@leidecker.gsfc.nasa.gov> Message-Id: <9506052043.AA02863@leidecker.gsfc.nasa.gov> Received: by NeXT.Mailer (1.100) Received: by NeXT Mailer (1.100) To: executor@nacm.com Subject: Re: to announce emulation or to not announce... (Hamlet had it easy) Sender: owner-paper@nacm.com Precedence: bulk Re the pros & cons of having an emulator "stand up when called"... One traditional strategy applications have used to tell whether they are running on a machine with Mac roms or not, has been to address memory locations used by the roms, and attempt to change a value contained there. If the change is made, then there is ram at these addresses and not rom. For example, Dave Small uses this method to recognize when his emulator is running within real Mac roms, or within a ram-image of the Mac roms. Also, the software can query each of the rom-addresses in which the Mac roms store Mac-specific data, not used by standard OS calls. What it finds in these sorts of addresses will tell the software whether it is running on a machine with Mac-roms or not. Ditto some of the io devices. You can pin down the precise sort of Mac you are running on this way, with enough patience, if it is indeed a Mac at all. Granted, this gets more complicated with memory re-mapping schemes, and it will eventually get impossible, but there is still some mileage yet left in these traditional schemes. So it seems to me that any programmer who really wants his/her software to be able to learn if it is being run by "real Mac roms" or an emulator can already do so using these well-known methods. But it is harder to use these methods to tell just which emulator is used, or which version of an emulator, and thus it seems thoughtful to have the emulator itself give its rank and serial number when asked --- thoughtful, and unlikely to create a new problem. Henning Leidecker