Bugs:
- In window mode, if the framerate is low (e.g. if you leave it at the
default of 10fps), really fast mouse clicks are sometimes not picked up
by the Emulator. For now, click more slowly
- In full screen mode, sometimes the program hangs just after minimising the
window (i.e. full screen mode is never entered). If this happens, do a
force quit (Apple-Option-Escape) and start the program again, as it
usually works just fine then
Untested:
- Mac Classic emulation. I don't have a ROM, but I suspect it will crash
- CD-ROM stuff. Should be the same as BSD, but who knows how Apple's stuff affects this
- Floppy stuff. See above
- Serial port code. See above
Unimplemented:
- Ethernet
- Reset and Interrupt functions for emulator
- Sound
- Window depth. It is currently stuck at 32bits, which Quartz dithers down
to whatever the user's display is set to. This is mainly due to the fact
that NSBitmapImageRep does not support any 16bit modes. The Core Graphics
primitives may allow a workaround, though
Possible Enhancements:
- Use NSFileManager's movePath:toPath:handler to rename all a file's forks in extfs_macosx.mm
- Emulator snapshot - save the current emulator state
(memory + registers) to a file for fast startup next time
- Multiple emulators. The window stuff is mostly there,
but the uae_cpu code has lots of globals, and is not re-entrant
- Real addressing mode for the emulator.
At the moment, OS X's mmap() call does not support anything useful
- Get VOSF (Video on Seg Fault) working, to speed up screen redrawing
- Implement OpenGL windowing mode (to speed up emulator screen redrawing)
- Improve Objective-C object allocation. e.g. here.