Virtu is an Apple IIe emulator for the .NET Framework using C# with Silverlight, WPF, and XNA.
The Apple IIe
left an indelible mark on my teenage psyche. Virtu was born out of an interest in emulators and wanting to wallow in nostalgia. Over time it has also become a vehicle to explore developer environments.
Originally developed for RISC OS
3.11 on the
in 1995 using some
assembly language. Published on the
of the October 1997 issue of
. Later that year we started porting Virtu to
95 on the
. A port to
Microsoft Windows CE
2.11 soon followed. These were tweaked over the next couple of years but never published. Fast forward to the present and the latest incarnation of Virtu, this time ported to the
Microsoft .NET Framework
Mac OS X
Windows Phone 7
(on Windows only); and
(on Windows, Xbox 360
, and Windows Phone 7).
The target platform has been abstracted to a software framework which can take advantage of the various implementations and subsets of the framework to get more portability. I'm currently interested in all of the above for various reasons and couldn't
choose which to target, so I thought it would be interesting to target them all, and thereby compare and contrast them to learn the pros and cons of each. Check out the Virtu
wiki pages for platform specific details.
After a successful build, you should be able to run the emulator and perform a self test by pressing the key combination Control+OpenApple+CloseApple+Reset. Boot to the monitor (after Reset) where you can program interactively using
or CALL-151 to use
assembly language. Of course disk images can also be booted to complete the nostalgia experience.
The current release is an early work in progress and has many rough edges. Most notably, there is no user interface for configuring the emulator, but this can be worked around by editing the default machine settings source at build time, or in some cases pressing
a hotkey at runtime. Any platform specific issues will be listed on their wiki page.
Xbox 360 Controller
for Windows, or
Xbox 360 Console
Xbox 360 Chatpad
See the Virtu
wiki page for key bindings. For the best image, set the browser zoom to 100%, 200% etc, or install and run out of browser, which can also run fullscreen.