About The Shell
About The Shell
About
The enclosed emulator uses the Macintosh Emulator Port Shell by Richard Bannister.
This has a common feature set between all supported emulators, which this document
attempts to cover briefly.
System Requirements
Emulators using this shell are only supported on Mac OS X 10.11 or later.
ROMs/Games/etc
All these emulators require ROM images or games in order to do anything useful.
Transferring software from old platforms typically requires special hardware to
accomplish. Documentation on how this is done is widely available on the Internet.
Distribution of such software on the Internet counts as software piracy unless the
copyright owners have given their express permission for this to take place. Amstrad, for
example, has given permission for their entire back catalog to be used in emulation, and
they deserve praise for their enlightened attitude. Once again, an Internet search will
point you to what you need.
Do not under any circumstances ask me to send you game files, and do not ask
me for further information beyond the above. The act of requesting such
information officially revokes any license you have to use my software.
Additional Options
Main Window
The main window of each supported emulator can be resized to any size you like. The
zoom box will alternate between the last selected size and full screen. If you want to
play in another size, simply drag the grow box in the bottom right hand corner of the
window. (It's not visible - but it is there).
Preferences
General Tab
- Video allows you to choose between a variety of different transformations which are
applied to the emulated display before it is drawn to the screen. The size indicates the
size of the source image before the final video copy is done. If this is bigger than the
window size, the image will be scaled down; if it is smaller, then it will be scaled up.
Some effects may not be capable of full speed on older hardware.
- Show frame rate shows the current frame rate on the top right hand corner of the
emulated display.
- Show information placards shows the current frame rate on the top right hand corner
of the emulated display.
- Pause emulation when in background (on by default) stops the emulated hardware
when the emulator is switched into the background.
- Speed Limit restricts the emulator to 100% of the original hardware speed.
- Enable Sound (most emulators) does exactly what the name suggests!
Input Tab
The input tab allows you to map emulated joysticks to specific keys on the keyboard.
Simply click on the item of your choice and press the appropriate key on the keyboard.
Emulator Tab
If the specific emulator you are using has any special options, they can be found here.
More Tab
Thanks
Special thanks to all those who have tested this software during its development cycle,
and to all those who create emulation technology for our enjoyment.
Version History
- Complete rewrite for modern operating systems using 64-bit Cocoa APIs. The shell
now requires OS X 10.11 or later.
- Fixed an obscure endian bug that resulted in odd window sizes when an emulator
preferences file was moved between PowerPC and Intel.
- Modified the behaviour of the Quick Freeze function, so that the last ten quick freezes
for each game are kept in ~/Library/Application Support/Bannister/(emulator
name)/Saved States. You can restore these at any time using the Defrost menu
command. Added code to stop the quick freeze and quick defrost keys from being
repeated. Thanks to David McCabe for the suggestion.
- Replaced custom about box with standard HIAboutBox. Removed option to pause
execution when about box is open.
- Brushed metal mode is now off by default on new installs, as well as existing installs
where users press the Default button.
- Corrected a bug where pressing certain keys while the Emulator Settings window was
open could cause a Fatal Assertion Failure on line 1772 of ce_prefs.c.
- Worked around a bug in OS X 10.5 or higher that sometimes resulted in menu items
being greyed out incorrectly.
- Made some slight adjustments to the behaviour of the "Prioritise speed over
smoothness" option.
- Changed the default preferences to turn brushed metal off by default, since it looks
pretty hideous under 10.5 or later.
- Fixed a nasty crash that could occur when using high requirement blitters (HQ4x/etc)
on slower multiprocessor machines.
- Added proper code interface for getting the mouse position on display. Nestopia uses
this for Zapper support, and TEO/Thom use it replacing a horrible hack used previously.
- Resolved assertion failure, ce_file.c, line 379, when saving a saved state with the
same name as an existing file. Thanks to about two hundred people for reporting this
one :-)
- Major rewrite to internal file handling code. This brings support for long file names and
non-ASCII character sets. The most visible aspect of this change is that Japanese file
names now appear correctly in the emulator. (You may need to rename some existing
battery RAM files/saved states so that this update can see them correctly.)
- Fixed several endian bugs; of particular note, screenshots and audio recordings now
work correctly on Intel Macs.
- File extensions are now included by default when saving screenshots or audio
recordings.
- Worked around issue preventing keyboard from working in full screen mode in Arnold
and Frodo.
- Fixed an issue where keyboard configuration could occasionally get confused during
an emulator upgrade. In this situation, the keys are now reset to their defaults.
- Fixed an issue where Close menu item was not disabled when no ROM was open in
some emulators.
- Removed some obsolete code that was slowing down overall performance.
- Addressed an issue with the sound buffering code that had caused poor quality sound
output in BSNES. This may have a positive effect on other emulators too.
- Addressed an issue where the menu bar would not appear properly on program
launch in certain situations.
- Configure Keyboard button is no longer present in emulators that do not support it.
- Added statistics gathering (Time Played, Files Opened) to the code. There is no way
to view these yet, but this will come in future.
- Fixed bug causing unreasonably high CPU usage when in background when the "Run
as fast as possible" option was set. Thanks to Ty Wangsness for the report.
- Fixed assertion failure, ce_file.c line 202, when using the "Open With" contextual
menu in the Finder on Horizon. Thanks to Eric Crouch for the report.
- Fixed issue where Turbo key in console emulators did not work correctly when "Sync
to Monitor Refresh" was on. Thanks to Revned for the report.
- Removed "Cancel" button from Preferences. It hasn't worked for several releases
anyway.
- Quick Screenshot now adds a three digit number to file names. Useful if you want to
take multiple shots of one game.
- Added the ability to record audio. Note that this option requires emulator updates.
- Added the ability to pause emulation when the active user is switched.
- Separated Blitter module (see "Developer" above) and added some new Altivec blitter
code for the most common effects. In most cases this is significantly faster on G4/G5
machines. (The old code is still available too for G3 users).
- Revised Preferences handling to use official Apple API and .plist file.
- Implemented major optimization to the OpenGL code. People with supported video
cards may see as much as a 100% performance improvement.
- Fixed bug in HQX blitters introduced in v1.3.1, which caused the bottom row of video
to be corrupted in certain situations.
- Fixed issue preventing saved states getting the correct file type.
- Updated to ZLIB v1.2.1. (Previous shell did not include ZLIB, and emulators were
using assorted versions).
- Fixed possible memory corruption with emulators that change their video size during
execution. (Genesis Plus, TGEmu, ...)
- More optimizations to the hqx blitters, improving the worst case performance
significantly.
- Addressed an issue where keys would continue to work when certain emulators were
in the background.
- About box now observes brushed metal preference (which is now on by default).
- Some optimizations to the main program loop for improved performance. There is still
more to do, though.
- Major bug fixed in the frameskipping code; people on slower Macs should see a
substantial improvement in frame rate. (Be sure to leave the frame skipper in Automatic
mode for best results).
- Did some serious optimization to hq2x, hq3x, and hq4x, leaving them up to 300%
faster than previous versions. (The source code to my optimized version has been sent
back to Maxim Stepin, the hq2x/hq3x/hq4x developer).
- Fixed a situation where placard displays ("Emulation Reset", etc) failed to disappear
correctly.
- Added support for frame rate changing at run time (required by Generator and
Rainbow).
- Moved default Quick Freeze/Defrost keys to F7/F8 to avoid conflict with Expose.
- Placard displays now work again ("Emulation Reset", "Quick Freeze", etc).
- Added hq2x and hq4x Blitter modes (the latter of which *does* need a dual 2.0 G5 for
full speed).
- Added 3x Simple Smoothing mode (pretty fast).
- Fixed a bug in Preferences handling that could make options not work when the
Default button was pressed.
- Added support for non-power-of-two textures. The cards that need this the most
(RAGE 128 and earlier) do not support this extension. However, everyone else should
see a performance improvement.
- Increased number of items in Open Recent menu to ten, and added "Clear Menu"
option.
- Fixed issue where battery RAM and freeze states did not work correctly when
Emulator Enhancer was installed.
- Added support for overriding the generic keyboard handling (needed for computer
emulators such as MO5 and Oric).
- Initial Release