Executor FAQ - Section 1
Executor in General


Question 1.1. What is Executor?

Executor is a commercial emulator that allows non-Macintosh hardware to run some applications originally written on a Macintosh. Executor has many limitations [see Q1.12 `What limitations does Executor 2.0 have?'], but surprisingly, speed is not one of them [see Q1.8 `How fast is Executor?'].

If your only experience with emulators is Soft-PC or Soft-Windows making a Mac emulate a PC, please check out a demo of Executor [see Q1.20 `Where can I pick up the Executor demos?'] to see just how quickly we can do the reverse.

Question 1.2. How can I get more information about Executor?

This FAQ contains much information, but it is pale when compared to a demo of Executor [see Q1.20 `Where can I pick up the Executor demos?']. Beyond the demo, almost all the publicly available information on Executor is found either at our official ftp site, ftp.ardi.com (204.134.8.1), or in our unofficial WorldWide Web pages: http://vorlon.mit.edu/arditop.html. We also have an official set of pages at http://www.ardi.com, but as of this writing the unofficial ones still contain more information.

Question 1.3. On which platforms is Executor available?

Executor/DOS (E/D) is an implementation that runs under DOS, Windows 3.x, Windows '95 and OS/2. Executor/NEXTSTEP (E/NS) is an implementation that runs under NEXTSTEP, both on original NeXT hardware and Intel based hardware running NEXTSTEP. Executor/Linux (E/L) is an implementation that runs under Linux, using X-Windows, with an SVGAlib version in the works.

Question 1.4. How much does Executor cost?

Effective July 1, 1995, Here are the Executor 1.99 licensing fees:
who                E/NS         E/D          E/L

1.99 student        $99         $49          $49

1.99 educational    $99         $49          $49

1.99 commercial    $199         $99          $99

Shipping is free within the U.S.
International shipping (USPS Int'l Express) is $20


An Executor/Linux license allows you to use either the X-Windows version or the SVGAlib version, but you can not use one and let a friend use the other at the same time. Eventually we'll merge the two versions, but this may not happen until after 2.0 is released.

Students are full-time students, proof may be required before we accept a student order. Educational users are faculty or staff at educational institutions (grade schools, high schools, colleges, universities) purchasing Executor for use with the educational institution; everybody else requires a commercial license.

A 1.99 Student licenses allows the holder to use both E/D and E/L for the same $49 price (i.e. buy E/D as a student and you get to use E/L for free and vice versa). Educational and Commercial licensees can pay an additional $25 to the E/L fee to receive an E/D license as well and vice versa (i.e. buy a license for E/D and E/L as an educational instution for $74 total). NOTE: these dual use licenses still only allow one user at a time to use Executor. You may not keep the DOS license for yourself and give the Linux license to a friend.

All 1.x owners, even those who bought Executor 1.0 a year and a half ago, are entitled to free upgrades through and including 2.0.x, as long as the upgrades are picked up electronically. 2.0.x releases will fix bugs in 2.0, but will not add new functionality. Beyond 2.0, when new functionality is added, there will be a small upgrade fee if you want the the newer versions with the new functionality.

Once 2.0 is in beta, the 1.99 prices will no longer be valid. 2.0 will be a shrink-wrapped product available from a variety of sources. The manufacturer's suggested retail price for 2.0 is:

who                      E/N             E/D             E/L

2.0 student              N/A             N/A             N/A

2.0 educational         $249            $125            $125

2.0 commercial          $499            $249            $249

It is unknown whether there will be be student pricing for 2.0, but if so, it will be at least as expensive as the 1.99 student pricing.

All prices are subject to change.

Question 1.5. Who makes Executor?

ARDI
Suite 4-101
1650 University Blvd., NE
Albuquerque, NM 87102

+1 505 766 9115 Phone
+1 505 247 1899 FAX

questions@ardi.com e-mail
bugs@ardi.com bug reports
orders@ardi.com information about ordering

Question 1.6. How do I order Executor?

Before you order, please read and understand Executor's current limitations [see Q1.12 `What limitations does Executor 2.0 have?'] and Executor's price [see Q1.4 `How much does Executor cost?']. While Executor is still in development, we specifically make demo versions [see Q1.20 `Where can I pick up the Executor demos?'] available so you'll know exactly what you're getting. If you like what you see, you can mail us a check [see Q1.5 `Who makes Executor?'], FAX us (+1 505 247 1899) credit card information (VISA, MasterCard or EuroCard only) or call us up (+1 505 766 9115) so we can take down your credit card information. We do not currently run PGP, so sending credit card information via e-mail is not recommended.

We accept domestic purchase orders from most universities and most large companies. We no longer accept non-U.S. purchase orders and we reserve the right to refuse U.S. purchase orders as we see fit.

NOTE: All checks and money orders must be payable in U.S. funds and be written from a U.S. bank.

             Order Form Good through September 15, 1995

Name	       ______________________  Name on Card ______________________

Organization   ______________________  Type of Card ______________________

Street Address ______________________  Card Number  ______________________

Street Address ______________________  Expiration Date ___________________

City	       ______________________  E-mail Address ____________________

State	       ______________________  FAX Number  _______________________

Postal Code    ______________________  Phone Number ______________________

				       Educational
Country	       ______________________  Affiliation _______________________

                                    Number of     Cost
Description              Quantity    Machines     Each

*E/D + E/L Student Combo  _____   x   _____   x   US$49  = _____

*E/DOS Educational        _____   x   _____   x   US$49  = _____

**E/DOS Commercial        _____   x   _____   x   US$99  = _____

*E/Linux Educational      _____   x   _____   x   US$49  = _____

*E/Linux Commercial       _____   x   _____   x   US$99  = _____

**E/NEXTSTEP Student      _____   x   _____   x   US$99  = _____

**E/NEXTSTEP Educational  _____   x   _____   x   US$99  = _____

**E/NEXTSTEP Commercial   _____   x   _____   x   US$199 = _____

* = No Manual, ** = Extremely Outdated Manual

International Shipping (US $20 needed only if you are
  ordering a version that has an extremely outdated manual
  *and* you want us to ship you the outdated manual *and*
  the destination address is outside the United States)    _____

Sales Tax (only needed if destination is in New Mexico)    _____

Total                                                      _____


Question 1.7. Pronunciation?

Ig-ZEK-yu-tor

Question 1.8. How fast is Executor?

Executor converts mc680x0 instructions into 80x86 instructions and then runs the new instructions. There is some overhead associated with this process, but for cpu intensive tasks, a 75 MHz 486DX4 will run approximately as quickly as a 25 MHz 68040. NOTE: Lately some people have begun calling 25 MHz 68040s "50 MHz 68040s", but we're not using that trickery in our description. The paper /pub/SynPaper available on ftp.ardi.com describes how we can run mc68040 code so quickly on an 80x86. SynPaper compares a few different systems and shows that a 90 MHz Pentium runs almost as fast as a 50 MHz 68040.

Graphics performance depends on which version of Executor you have, and what type of video card you have. Executor runs fastest when it can grab the frame buffer and write directly to it. We have recently rewritten much of our low-level graphics and do not yet have a rule of thumb for systems in general, although one of our testing machines is a 66 MHz DX2 with a built-in VLB video card and in 256 color mode it displays graphics at about the same speed as our 25 MHz 68040 based Quadra 605 for some common operations and at about half speed for less common operations.

Question 1.9. Does Executor require ROMs or System Files from Apple?

No. Executor reimplements from scratch the Macintosh Operating System and Toolbox.

Question 1.10. How long has Executor been in development?

Work began in September of 1986.

Question 1.11. What techniques were used to rewrite the OS and Toolbox?

Entirely clean-room techniques. That is to say none of the Apple ROMs or Apple System File were ever disassembled. Instead ROMlib (the section of Executor that emulates the OS and Toolbox) was written from the manuals "Inside Macintosh", and Tech. notes. That isn't sufficient to get the degree of compatibility that we need, so tests were written and run on Macs to see what a real Mac would do. In addition, we run applications under Executor and when they deviate from how they would behave on a Mac, we take a look at what is going on and fix Executor accordingly.

Question 1.12. What limitations does Executor 2.0 have?

Because the OS and Toolbox have been rewritten from scratch, Executor 2.0 has many limitations, including no serial port access, no AppleTalk, no sound, minimal System 7 support, no INITs, no CDEVs and no Internationalization.

Due to limitations in PC hardware, Executor can read and write 1.4 MB Mac formatted floppy disks, but can not read or write 800 KB floppy disks.

We hope to support sound and serial port access within six months of releasing Executor 2.0, but currently all our effort is concentrated on preparing 2.0 for release, so that is only speculation.

Question 1.13. If I have 800 KB floppies, what can I do?

Very little. It is not ARDI's fault and there's nothing we can do about it, but the way that Apple squeezed 800 KB onto floppies when PCs were only getting 720 KB on floppies was to write more data on the floppy tracks far from the center than on the tracks near the center. This was clever, but extremely incompatible.

There are ways to squeeze more information onto PC floppy drives than PCs usually use. However, these methods cannot be used to write or even read 800 KB Macintosh formatted floppies.

Luckily, very little is supplied on 800 KB floppies anymore, but if you have some, you're almost definitely going to need the use of a Macintosh somewhere to copy the contents onto "HD" 1.4 MB formatted floppies (PCs and Macs use the same low-level format for 1.4 MB floppies).

One Executor Enthusiast suggested using Kinko's public Macs for this purpose, and this description was given:

1.  Moving 800 KB Mac Files onto 1.44 MB Macdisks.  The easiest thing
that I have found when working on a real Mac is to preformat the
Macdisks to 1.44 MB.  Insert the 1.44 MB disk and eject it with
(Cmd-E).  Then insert the 800 KB mac disk.  Drag the icon of the 800
KB disk over the 1.44 MB disk.  All the files will be transferred as
will the file names.  The Mactools fastcopy program can also copy
beteween densities.

2.  Kinko's Public Machines.  Kinko's public Macs are equipped with a
program known as "Desk Tracy" which is designed to stop people from
pirating Kinko's software from the harddisk.  The problem is that when
you are copying files between your own disks the program will still
trigger if the file has a namesake on the Kinko's machine. What you
will need to do is get a Kinko's employee to shut the program off,
which is obviously a discretionary call with them.  I didn't have a
problem and have done it twice, but we obviously will be using
different Kinko's.


Question 1.14. Does Executor run all applications?

Currently, no. In addition to applications that won't run because they require something that we currently don't support (e.g. most of System 7), due to our rewriting of the OS and Toolbox, there is room for enough incompatibility that many large programs do not work. For this reason, we make demo versions of Executor available for potential customers to run before purchasing Executor [see Q1.20 `Where can I pick up the Executor demos?'].

We are in the process of cataloging what we have tested. A partial list is available on ftp.ardi.com in /pub/AppNotes.

Question 1.15. A particular program doesn't run now; will it under 2.0?

That question is very hard to answer here. If the program relies on a feature that won't be supported in 2.0, the answer is no; it won't run. Programs that require QuickTime, QuickDraw GX, INITs, CDEVs or serial port support are all examples of applications that won't run, even when 2.0 comes out. This includes Newton Toolkit, an application that many of our customers and potential customers have asked about.

In addition, the more esoteric and large an application is, the more likely that if it has problems now, it may continue to have problems when 2.0 finally ships. Large programs often are written by people that have far more knowledge of the insides of Macs than we do, because they have access to confidential information that we don't [see Q1.11 `What techniques were used to rewrite the OS and Toolbox?']. In addition, the larger the program, the greater the chance that the program does something that Executor did not anticipate -- remember, we have coded Executor in accordance with the public specifications, but not all specifications are necessarily public.

For common applications (business applications, home productivity applications, games, etc.) we overcome this problem with huge amounts of debug time. We run the application in question and if it dies, we spend long amounts of time figuring out just how it died. By seeing what the application was doing and what didn't work, we can usually figure out what the application wanted to do, although it's as time consuming as being blindfolded and putting together a large jigsaw puzzle -- when you're drunk.

However, for some applications, such as programming environments, which are very complex, but have comparatively few end-users, we can not yet afford to put in the amount of time that it takes to get these applications to run. After 2.0 is shipping, we'll have greater revenues and be able to hire more engineers. Then we can attack all known bugs simultaneously, but until then we have to prioritize, and as such, it's quite possible that Think C and Think Pascal and other programming environments won't run under Executor.

Question 1.16. Will Newton Toolkit run under 2.0?

See Q1.15 `A particular program doesn't run now; will it under 2.0?'.

Question 1.17. Will Think C or Think Pascal run under 2.0?

See Q1.15 `A particular program doesn't run now; will it under 2.0?'.

Question 1.18. What percentage of applications will run under Executor?

This is another question that is tough to answer. In fact, we wouldn't even volunteer an answer, were it not for an unsolicited contribution from an Executor Enthusiast.
For those interested in a workable programs for your 199m get Wayzata 
Best of Macintosh Shareware for 19.95 from Tiger Software. It has 1500
programs all areas. I've tried about 500 and over 60% work on my 
comp. It is a CD-ROM. Just make sure your CD-Rom drive letter is H or 
lower for Executor to 'see' it.  Most of the programs I've tried are 
1990 or earlier, even though I did get one which required Sys 7.0 to 
work.  

NOTE: this is not an endorsement of that particular shareware disk, but 60% for 1.99m (higher for 1.99o) is in keeping with what we see when we take CD-ROMs filled with software and try the software under Executor. However, when someone tests 500 applications, it's quite possible that the testing is minimal and even an application that seems to work may have trouble when you use a particular function. As ARDI grows, we'll do more and more testing in house, but we are upfront about Executor's current limitations and, as such, encourage people to test the Executor demo themselves.

Question 1.19. What do the various Executor version numbers mean?

Any 1.x release other than 1.99 is a black and white release. Any release that ends in a lower case letter is technically an "experimental" release. In general, experimental releases are pre-beta or beta releases that will eventually be released with a higher version number.

The most recent non-experimental release of Executor/NEXTSTEP is version 1.3. The most recent non-experimental release of Executor/DOS is 1.2. There has not yet been a non-experimental release of Executor/Linux.

Currently, with the recent addition of color support to Executor, Executor is experimental for all platforms. We are trying to release new versions for all platforms in lockstep, so 1.99b has roughly the same feature set and bug set under DOS, Linux and NEXTSTEP. Unfortunately, we haven't released a NEXTSTEP release in a while; see Q4.1 `Why wasn't there an Executor/NEXTSTEP release for so long?' for an explanation.

In addition to complete experimental release of Executor, the BleedingEdge directory within the ARDI ftp site and its mirrors may also contain individual components that are newer still. In general these new components have received next to no testing, but are known to solve specific problems that our customers have reported. This allows us to get immediate feedback when we think we've solved a problem, rather than having to wait for the next experimental release, only to find out that perhaps our bug-fix didn't work or had unexpected unpleasant side-effects.

Question 1.20. Where can I pick up the Executor demos?

The canonical place to find Executor demos is ftp.ardi.com. However, ftp.ardi.com is currently only connected to the Internet via a 28.8kb modem, and as such is really only useful to provide data for mirror sites. When you connect to ftp.ardi.com it will give you a current list of those mirror sites.

We are no longer being mirrored by the University of New Mexico. Here are our main mirror sites:

/call list /call item /ftpon vorlon.mit.edu in /ftpin /pub/ardi /call item /ftpon ftp.tcel.com in /ftpin /pub/mirrors/ardi /call endlist /nl We also make our demos available on the traditional sites for commercial demos of the given platform. See the platform specific answers for a list of these sites.

Compuserve users can find the latest DOS Executor in the PC Utilities (go pcutil) or the PC Applications (go pcapp) forums, in the demos section in both cases. The Linux version is also on Compuserve, in the Linux add-ons section of the Unix forum (go unix).

America OnLine users can find Executor/DOS under the Top Picks button in the software library of the DOS section (keyword: DOS).

We don't mind people making our current experimental versions available on other sites, but please be sure to include all the READMEs and FAQs which will allow users to find more current versions of Executor as they're released.

Question 1.21. Where is the Cmd (Clover) and Option key?

On a PC keyboard, Executor uses the left "Alt" key as a Cmd key and the right "Alt" key as the Option key.

Question 1.22. How do I use my authorization key?

If you've paid the license fee [see Q1.4 `How much does Executor cost?'], you will be issued a serial number and an authorization key. To get to the panel that allows you to enter these, click on the initial "Info" button, and read the information on each of the screens that is presented to you. You will have to click on the "Next" button after you are finished reading each panel.

Question 1.23. Is Executor shareware?

No. Executor is a commercial program available from ARDI. Unregistered demo versions are the only versions that should be found on bulletin boards or FTP sites. If you find a non-limited version of Executor available to download, it was put there illegally.

Question 1.24. How do the demo versions differ from the commercial versions?

Prior to Executor 1.99j, ARDI released two separate versions of each Executor/DOS and Executor/Linux release: a time-limited demo, and a full-fledged commercial version. NEXTSTEP versions could be "unlocked" by entering a serial number and registration key purchased from ARDI.

Starting with 1.99j, all versions of Executor have been released in a "locked" demo form. The locked demos are time limited to ten minutes of use. Once your ten minutes are up, you are thrown out, but you can restart the program again and run for another ten minutes as many times as you want.

See Q1.41 `How do Executor's "license keys" work?' for more information.

Question 1.25. What's next?

Our immediate goal is to get Executor 2.0 out. Back before 1.99 was out, we had a set of goals for what would be in 2.0. We have had enough trouble implementing 32-bit color QuickDraw that we have had to pare some features out of what we had orginally proposed for the 2.0 feature set. Features present in 2.0 are still subject to change, but our current plans are to add:

We also have a set of general and platform specific bugs that we need to have fixed before we can freeze 2.0.

Beyond 2.0, we want to make Executor compatible with Apple's System 7.5, so you'll be able to purchase a copy of System 7.5, install it on top of Executor and get even more compatibility and features.

Question 1.26. When will 2.0 be out?

The answer here is embarrassing. Our original target was summer of 1994. It is now looking like we'll go beta in September of 1995 and have a shrink-wrapped product in November of 1995.

Here's what is planned between now and when 2.0 ships:

1.99p will be released soon; then we'll go back to working on adding new functionality. 1.99q will have all of what's mentioned in Q1.25 `What's next?'. Tentatively, 1.99q is the last of the 1.99<x> experimental releases.

Beyond 1.99q we will fly one of our three core engineers out to Albuquerque (he normally works out of Boston) and have one more two week "hackathon", where without having to worry about getting a new version out the door, and without any of us having to add new functionality or chase DOS extenders, we'll work exclusively on making more applications run.

After the "hackathon" is finished, Executor will go into a six week beta period where we only fix major bugs. We will document minor bugs. During this time we'll also be working on our packaging and documentation, working on our list of how well apps work, lining up our distributors, writing our press releases and placing our ads in popular magazines.

After those six weeks have elapsed, 2.0 will ship. That's the plan, anyway.

Question 1.27. How can I get in ARDI's beta program?

ARDI doesn't have a real beta program. We just make our experimental versions available over the Internet, and interested parties pick them up and keep us informed. If you would like to do this, we would certainly appreciate it.

Question 1.28. Does Executor have networking support?

Currently, no. Nor, will it be available in Executor 2.0. Networking support is planned for release 3.0, but we do not yet have an estimated date of completion for 3.0. The first platform to have networking support built in will probably be Linux.

Question 1.29. How do you install Fonts and Desk Accessories (DAs)?

Starting with 1.99n, you just drag them into the hot-band and our browser will do the right thing. However, even in 2.0, we only support bit-mapped fonts, not Type 1 or TrueType fonts. In addition, in 1.99n, there is a bug which causes the hot-band to forget which desk accessories have been loaded, which then makes it imposible to remove desk accessories.

Question 1.30. Will Desk Accessories work under Executor?

Currently Desk Accessory support is very weak; most will not run. Now that 1.99n has been released, we'll spruce up our DA code and work on insuring that some of the more popular DAs work.

Question 1.31. Does Executor run xxx?

With all the rush to get 2.0 out the door ASAP, we're putting our testing people to work testing new experimental versions, instead of testing 1.2. There is plenty that 1.2 will not run, and as such, we recommend people try out the demo before purchasing Executor.

We will be making a list of what runs and what doesn't available on ftp.ardi.com in /pub/AppNotes. There is another similar list in our unofficial WWW pages [see Q1.2 `How can I get more information about Executor?']. When we provide more elaborate official WWW pages, we'll merge both lists.

Question 1.32. What's the best way to keep informed about Executor?

Join the Executor Interest mailing list. That's where the Executor Enthusiasts are. Send a message to executor-request@nacm.com. Make sure your subject line is blank and your message body says:
subscribe


We try to post important events to the net, and send new release information via U.S. mail to our current customers, but the Executor mailing list is where we post news about our experimental versions and where you can send mail to talk with other people who are using Executor.

If you'd rather get the Executor Interest information in a daily digest form, send the same subscribe message to

executor-digest-request@nacm.com, instead of executor-request@nacm.com.

To remove yourself from either mailing list, send a message to the address that you used to subscribe, saying:

unsubscribe


This will work only if you send the unsubscribe message from the same account that you used to send the subscribe message. You can also send a message of "help" to executor-request and more information about how to use it will be e-mailed to you. If you are still having trouble, you can send e-mail to majordomo-owner@nacm.com and that will be processed by a person, although it may take a few days for the person to get around to to your request.

Even after you have unsubscribed to the list, you will continue to get any messages that were posted to the list before you unsubscribed but were not actually sent immediately, but once you have unsubscribed, any new messages that come in will not be sent to you.

The Executor Interest mailing list is administered by a Executor Enthusiast. We do not directly control the list. Lately there has been a request that we operate a mailing list for announcements only. Although we can't provide that right now, we're hoping the digestification will make such a separate list much less needed.

Question 1.33. What's the Executor Interest mailing list?

See Q1.32 `What's the best way to keep informed about Executor?'.

Question 1.34. Why shouldn't I send e-mail to ctm@ardi.com?

Cliff gets tons of e-mail. E-mail sent to questions@ardi.com is answered much more punctually.

Question 1.35. What is an HFV file?

Executor has the ability to store an entire Macintosh "volume" (i.e. filesystem corresponding to a disk drive or a partition within a disk drive) in a DOS or UNIX file. Under DOS, this feature is very handy because there is no way to have files with long names and upper and lower case characters in their names unless you use an HFV file. See Q1.47 `What is makehfv?'.

In general, HFV files should have filenames that end in ".hfv".

Question 1.36. Can I launch applications directly from the command line?

Yes. If an application resides within a UNIX or DOS filesystem, you can specify the name of the application, and documents that you would like the application to open when it starts up, on the command line. Applications that reside in HFV files are specified using colons to delimit the pathname, e.g. "MyVolume:directory:application".

Question 1.37. What are all the command line switches?

If you run executor "-help" it will list all the command line switches it knows about and give a brief description of what they do.

Here is a list of the most useful switches.

The new switch "system 7" causes Executor to invoke its limited System 7 support. This switch is needed in order to run NIH Image 1.58.

The relatively new switch "nobrowser" prevents Executor from trying to run the file browser upon startup. Sometimes this is a handy to start an appliction a little more quickly and other times it can be useful if the browser save file gets corrupted and the browser refuses to run.

The switches bpp, refresh and shadow all affect how the screen is emulated. The number of bits per pixel that the program running under Executor sees is specified by bpp. If bpp is set to 1, then there are only two "colors" (black and white) available. If it is set to 8, then 256 colors are available. For Executor/DOS, you need a SVGA board with a VESA compatible driver to get 8 bits per pixel and screen sizes larger than 640x480.

When Executor first starts up, a "splash screen" is printed. You can omit this splash screen with the nosplash switch.

One of the hardest things to emulate properly is the internal timing mechanisms of a Macintosh. Sometimes it is desirable to turn off our clock emulation. The noclock switch does this.

When Executor displays a standard "get" or "put" dialog box, there is a button marked "drive" that allows you to cycle through the Macintosh volumes that Executor knows about. You can use the drivecheck switch to have Executor examine your DOS drives each time you click the "drive" button. In general, this is more annoying than it is useful.

The switches applzone, syszone and stack control how much memory is allocated to the application, the system, and the application stack. The memory switch asssigns a certain amount of memory to to Executor and lets Executor choose how it should be divided. In general, if you have more than 4 MB, you should override the default and allow Executor to use more memory. All four of these switches can understand values expressed with m (for MB) or k (for kilobytes).

For X windows users, privatecmap specifies that Executor should use a private colormap. This is the fastest graphics mode and gives you the most accurate colors, but at the expense of radically changed colors in your other windows whenever the cursor is in the Executor window, and radically changed colors in the Executor window whenever the cursor is outside of it. Because this is annoying, this mode is not the default. When not in this mode, the pixels in Executor's internal frame buffer are converted to the nearest X colors before being drawn to the screen.

Executor/Linux has problems drawing the cursor on some X-Windows servers. When this happens, the cursor is drawn in "inverted video". You can start E/L with the "-invertedcursorbug" in such a situation and that will fix the problem.

Executor 1.99<x> uses a new "synthetic CPU" which is much faster than the synthetic CPU in previous releases of Executor. The speed increase is due to our use of native code; Executor now translates the 68k code being emulated into 80x86 code "on the fly" and runs the 80x86 code. However, like anything that is new, there's a chance that our improvement has some hidden drawbacks. You can turn off the use of native code by specifying nativecode 0.

Here is an example of some of those switches:

executor -applzone 4m noclock -nativecode 0

That would allocate 4 MB of memory for the applications use, turn off our clock emulation and revert to a slower type of 68LC040 emulation -- an unlikely combination of switches.

Question 1.38. Are there other parameters I can adjust? [aka "Preferences Panel"]

Yes, When Executor is running, you can hold down Cmd-Shift-5 and get a preferences panel. That panel will let you adjust various settings, similar to, but not as slick, as a Macintosh Control Panel. If you Save a preferences panel configuration, the values are saved for the particular application you are running at the time. This is handy, because some games need to be run in 16 colors mode, so you can have Executor do that automatically.

Question 1.39. Can I have Executor use more than 8 MB for the application zone?

In 1.99n and previous releases, no. Starting with 1.99o, you can use up to 16 MB for the applzone.

Question 1.40. An application I'm trying crashes. What should I do?

Perhaps the most common avoidable cause of crashes is insufficient memory for the emulated application. You can fix this by increasing the "applzone" parameter. For example, many programs which normally die quickly will work with "executor -applzone 4096" (which allocates 4 MB of space for the emulated application; see the list of command line switches and their meanings elsewhere in this document).

DOS NOTE: If you run "executor -info", it will tell you how much DPMI memory is available and how much memory is being used by the applzone, syszone and stack. If there is less DPMI memory available than the sum of the applzone, syszone and stack memory requirements, then Executor will page between DPMI memory and a special "paging" disk file. This paging slows you down and also consumes disk space. It is possible to manually override the applzone, syszone and stack defaults with smaller values, but when you do so, you run the risk of not having enough memory for an application to run. Unfortunately, Macintosh programs are often not polite at all when they do not have enough memory. The Lemmings demo is an example of such a program; if you run that program on a real Mac and only give it 1200k of memory, wierd errors will occur. Doing the same under Executor will also yield wierd errors.

If Executor needs to make a paging file, and there is not enough disk space to create one, you will get an error message during Executor's startup. If you have the environment variable "TEMP" set, then Executor will try to place its paging file there, so if TEMP is set to point to a small RAM disk, or a disk that is nearly filled, Executor may run out of memory too easily.

Some programs are unhappy when they discover that Executor does not provide sound support, and crash. You can turn on the "pretend sound" option before running the application in question and see if this helps. In addition, some programs have menu items, or preference check boxes that can be used to disable sound. It is always recommended that you disable sound from within a program in addition to using the Executor sound preferences.

One example of a program that will have problems with sound is "Ultimate Solitaire". If you do not disable sound from within Ultimate Solitaire, the game will play fine, until you win. At that point it will tell Executor to start playing a sound and request that Executor notify it when the sound is done playing. Even with "pretend sound" enabled, this will result in Ultimate Solitaire hanging after you win a game.

Some programs also save preferences in a file, and if something bad happens to that file, the program can then get confused and will not run properly. Occasionally this happens to Microsoft Word, and you need to use HFS_XFer to delete the file "Word Preferences" from your "System Folder".

Although it should not happen, even our file browser keeps a file around that can cause trouble if it becomes corrupt. That file is "godata.sav". It stores which folders you have open and the contents of your "hot-band". If that file gets corrupt, the file browser may not run. In the rare case that the browser won't run, you can use the "-nobrowser" switch when you start Executor to bypass the browser, then you can run a program and from that program you can bring up HFS_XFer and find and rename "godata.sav" and see if that fixes the problem with the browser.

The "noclock" switch has also been known to help.

Question 1.41. How do Executor's "license keys" work?

We have now added this "unlocking" capability to the DOS and Linux versions. NEXTSTEP versions have always had license keys. Now any Executor owner can pick up the latest Executor release from the Internet, "unlock" it with his serial number and registration key, and take advantage of the latest features and bug fixes. This does not mean that all future upgrades will be available for free in this mode, but we intend to make "minor" upgrades free.

The "unlocking" process actually modifies your copy of Executor, stamping your serial number into it permanently. For this reason, once you have registered a copy of Executor, you may not redistribute it, nor should you leave it on an unprotected machine, where someone may illegally copy it.

Question 1.42. Don't your "license keys" allow people to pirate Executor?

No. If the proper license fee has not been paid to ARDI, then the use of a fully registered copy of Executor is illegal, no matter how it was acquired. It is true that since license serial number, authorization key pairs are small bits of text, it is easier to disseminate unauthorized serial key pairs than it is to disseminate unauthorized Executor binaries, but that's beside the point.

We decided to use serial numbers and authorization keys as a convenience to our customers, especially while we're still pressing toward the release of 2.0 and each new experimental copy is (usually!) much better than the one that preceeded it. We prefer prosecuting the pirates to punishing our patrons.

Our demo mode allows the honest person to evaluate our product before making the decision to purchase it and become a customer. The use of an authorization key allows our customers to automatically participate in our beta and even pre-beta testing. This leads to faster development cycles and a better product.

Question 1.43. I want to bundle Executor on a CD-ROM. Can I do that?

The short answer is "yes".

You are able to freely copy and distribute demo versions of Executor, as long as you follow the restrictions set forth in Executor's license panel:

Complete, unregistered distributions of Executor may be copied and redistributed as long as all copies are unmodified and contain all of the original files in their entirety. Once it is registered, Executor may be copied only for backup purposes. Licensee may not modify or create derivative works based on Executor or any part thereof.

A suggestion: contact us to make sure you have the latest version of Executor. We can tell you if a new release is imminent.

Question 1.44. Why do some applications claim I don't have an FPU?

The problem is probably that the applications you are trying to use try to directly manipulate the FPU unit that some Macintoshes have.

The key words are "directly manipulate". Apple warned software makers to not directly manipulate the FPU, but to instead use their numerics library ("SANE" Standard Apple Numerics Environment). Programs that don't use SANE, but directly manipulate the FPU run faster on macs that have FPUs, but don't run at all on Macs that don't have FPUs. If that is actually the source of your problems, then such programs also wouldn't run on Apple machines like the Quadra 605. This limitation is also present on Apple's PowerPC based Macs.

One workaround for this problem is an "INIT" called "SoftFPU". SoftFPU will make a Mac without a co-processor work as though there is one there, however the floating point computation will be done very slowly. Unfortunately, SoftFPU can't be used with Executor, because, currently, Executor doesn't support INITs.

Question 1.45. Can Executor run Japanese system software?

Not in 2.0, and 3.0 will not be out in 1995.

Question 1.46. Why does Compact Pro have trouble with multi-volume archives?

Executor versions 1.99n and earlier take a short cut that causes trouble for some programs; Compact Pro is one of them. The problem is that a real Macintosh can keep track of volumes that are not physically in the drive. That is why Macintoshes sometimes tell you to put one disk in their floppy drive, then they eject it and ask for another one, then eject it and ask for the first one. Executor currently isn't so clever. When a disk is ejected, Executor forgets about it. Few programs count on the behaviour of a real Mac, but those that do currently won't work with Executor.

In Compact Pro's case you can just copy all of the pieces of the archive to your hard disk, then open the last piece from the hard disk and everything will work properly. This workaround requires more hard disk space than you'd need if you could just read the pieces off a succession of floppies.

This problem probably will be fixed by the time 2.0 is released, although since it affects very few programs, it's not as high priority as some other known bugs.

Question 1.47. What is makehfv?

The program makehfv (formerly called mkvol) allows you to create virtual Macintosh volumes [see Q1.35 `What is an HFV file?']. It is now part of all Executor distributions, although it is more useful under DOS than under Linux or NEXTSTEP.

To use makehfv you need to pick a name for the new HFV file, a name for the Macintosh volume that your new HFV file will represent and the number of kilobytes or megabytes that you want the HFV file to use. Here's an example that creates a file named "bigtest.hfv" that will appear in Executor as "BigTest" and will have 10 MB of space in it.

makehfv bigtest.hfv BigTest 10m


Executor/DOS will automatically see HFV files if they are placed in the same directory as executor.exe, which is usually C:EXECUTOR and their names have the suffix ".hfv".

Executor/Linux will automatically see HFV files if they are placed in the same directory as ExecutorVolume (NOTE: not in ExecutorVolume itself), which is usually /usr/local/lib/executor and their names have the suffix ".hfv".

Question 1.48. How can I create my own HFV files?

See Q1.47 `What is makehfv?'.

Question 1.49. How can I use Mac software from the internet?

Find a site that legitimately has Mac software for use. There is a Macintosh FAQ that lists many sites -- here are some of them:

Before transferring a large application, you might want to see what the requirements of that application are, most sites have a collection of small notes about applications that you can look at first.

Use BINARY mode to transfer the files that you want to use. Files whose names end in ".hqx" are usually the easiest to handle.

Under DOS, you need to make an HFV file [see Q1.47 `What is makehfv?'] that will be large enough to hold the files as you've downloaded them and also hold the files after they've been expanded. Once you've made the HFV file, copy all the files you've downloaded into it, then follow the remaining directions.

Under all operating systems, your next step is to run Stuffit Expander ande use the "Expand..." menu item from the "File" menu to open each of the files you've downloaded. In general, especially when dealing with files whose names end in ".hqx", Stuffit Expander will do the right thing. However, some sites do not store files in ".hqx" format, and Stuffit Expander may fail. Remember, under DOS, you must do the Stuffit Expansion inside an HFV file.

If Stuffit Expander fails, you can try using the Get Info option of Executor's browser to change the creator and type information of the file. If you believe the downloaded file in question is a Stuffit Archive, you can change the type and creator each to "SIT!" and then try Stuffit Expander again. If you believe the downloaded file is a Compact Pro archive, you can change the type to "CPCT" and the type to "PACT" and then try Stuffit Expander again.

Question 1.50. How can I use Mac software from Bulletin Boards?

In general, follow the procedure in Q1.49 `How can I use Mac software from the internet?' -- know the limitations of what Executor can run, transfer in binary mode and use Stuffit Expander to unpack the files you download. Just like with files downloaded from the internet, sometimes you'll need to change the file type and creator, first.

Question 1.51. How can I use Mac software from AOL?

AOL sometimes (about half the time) uses a format that Stuffit Expander under Executor has trouble with. For DOS/Windows users, use this workaround. Get a copy of unstuff.exe (available on AOL compressed as unsitins.exe) and use the -mb tag to convert your downloaded files to MacBinary format before ever moving them into Executor. E.g.:
unstuff -mb somefile.sit

And you'll get somefile with a different extension.

Then start up Executor and use BinHex's Download --> Application function to convert the file to an application and move it into an Executor volume simultaneously.

Note that if the file can be unstuffed in the usual manner, then trying to use this workaround will break it. It's usually best, therefore, to try normal unstuffing first.

Question 1.52. How does your Browser show file size?

As of 1.99o, you can't do this. We will fix this deficiency by the time 2.0 ships.

Question 1.53. How does your Browser show free space?

As of 1.99o, you can't do this. We will fix this deficiency by the time 2.0 ships.

Question 1.54. Why do some installers not work?

Currently there are two major classes of application installers that are known not to work with Executor. Installers based on Apple's Installer break, and installers based on Bill Goodman's "Smaller Installer" also do not work. An example of the former is Microsoft Word 5's installer, an example of the latter is Maelstrom 1.4.

The exact reasons these installers don't work is not known. We have made some progress with "Smaller Installer" based installers and hope to have them running by the time 2.0 ships; we are less sure about Installers based on Apple's installer.

Question 1.55. What is Speedometer?

Speedometer is a shareware application that we have included with Executor for demonstrational purposes. We have done so with permission of Speedometer's author, Scott Berfield. It benchmarks Macintoshes (and PCs running Executor) to find out how quickly their CPU, graphics, floating point and disk subsystems work. The current version of Speedometer is Speedometer 4.x, but that uses a timing mechanism that Executor currently doesn't support. Speedometer 3.23 can give you a rough approximation of how quickly your PC is emulating a Mac. Remember, Speedometer is shareware, and ARDI has not paid the shareware fee for you. If you repeatedly use Speedometer, please register it with Scott.

Speedometer will show you that Executor is a very efficient emulator. Please note, ARDI has not put special hooks into Executor to recognize Speedometer's code and bypass it; Speedometer is treated just like any other application when run under Executor. Yes, it would be possible for us to cheat and make Speedometer return values that are higher than you could expect to see in real life, but we don't do that sort of thing. Speedometer 4.0 produces ridiculously high numbers under Executor, but that is due to our not supporting the higher resolution timing mechanisms that Speedometer 4.0 uses. We are working with Scott to make sure that future versions of Executor and Speedometer do not have this problem -- luckly, the 4.0 numbers are so high that it's obvious they are mistaken.

Question 1.56. How can I get a screen dump of Executor?

Starting with 1.99o, just type Cmd-Shift-3, just like on a Mac. The difference is that the screen shot will be in TIFF format (uncompresed, for now) and will be written in the directory that contains executor.exe under DOS, or in /tmp under Linux and NEXTSTEP.

Question 1.57. On which on-line services does ARDI have a presence?

Currently most of ARDI's electronic tech. support is handled either through questions@ardi.com and bugs@ardi.com, or through the Executor Interest mailing list [see Q1.32 `What's the best way to keep informed about Executor?']. However, we're in the process of making it easier for users of various on-line services to contact us directly. Our On-line Services liason is Melissa Algeo, and she can help users of AOL, CompuServe and Prodigy interact with ARDI.
               On the service         Internet address

AOL:           ARDI rep               ardirep@aol.com
CompuServe:    102155,2123            102155.2123@compuserve.com
Prodigy:       YLST13A (ARDI)         ylst13a@prodigy.com


Next: Executor/DOS.
Return to contents.

- 23 September 1995

Extracted from Executor Frequently Asked Questions with Answers, Copyright ARDI 1995.