amiga history guide Supporting Amiga and compatibles since 1997
banners disclaimer faq
 
   

recent updates
amiga history
features
amiga models
magazines
technical
interviews
internet links
downloads

 

© 1997-2006
Gareth Knight
All Rights reserved

 

Umilator Feature List

Although this product will almost certainly never see the light of day (given the distinct lack of miracles in the current Amiga market), I have received numerous requests to provide a list of features of The Product Formerly Known As Amithlon2, or "Umilator". So here is that list.

This just lists the differences between Umilator and the original Amithlon --- features already available in Amithlon are only mentioned if there have been improvements (or at least changes :). It should also be noted that a number of the improvements have been made available for the original Amithlon in the form of updates and contrib packs... so if you think "Hey, I already got that!", that might be why...


Drivers/PCI system

One of the big problems in Amithlon was the scarcity of drivers, especially for sound and network cards. Umilator addresses this by facilitating the drivers available for the underlying linux kernel.

  • AmigaOS SANA-2 driver wrapping around linux networking drivers. Please note that this is very different from the bsdsocket way of wrapping that can be found in WinUAE and AmigaXL. The Umilator driver sends and receives ethernet frames just like any other SANA-2 driver. Only the lowest level hardware access is handled by the linux drivers, for everything else, you still run an Amiga side networking stack (e.g. Miami, Genesis, Envoy) or network utilities. Full support for multiple network cards.
  • AmigaOS AHI driver wrapping around linux sound drivers. Special care has been taken to avoid an extra layer of buffering (and thus increased sound latency) being introduced through this wrapping. The linux driver is used only to set up the card and handle the low level hardware interrupts; The AHI driver writes directly into the card's playback buffer, just as it would on, say, a Toccata card on a "real" Amiga. Full support for multiple sound cards, as well as both playback and recording.
  • AmigaOS serial device wrapping around linux serial driver. Linux's UART initialization code has been refined and debugged for years, and can optimally handle a plethora of different chips and multi-port cards, and possibly even USB-to-serial converters (although that is completely untested). Support for up to 8 serial ports.
  • Automatic hardware detection system. At bootup, a small utility is run that scans the system's PCI bus and loads the appropriate linux driver modules for the sound and network cards found. Hardware-to-module mapping is defined in an editable config file, and modules are loaded from the Amiga-side filesystem, so they can easily be upgraded or added to.
  • Hardware accesses to the Amiga's parallel port are transparently translated into accesses to the PC's parallel port. No more need for custom devices, the AmigaOS parallel.device works.
  • IDE/SCSI hard disk driver now uses linux "raw disk" devices for increased throughput, lower CPU load, and increased responsiveness. Also improved support for removable disks (ZIP, LS120).
  • Integrated wheel and multi-button mouse support, with overridable auto-detection for the number of mouse wheels present.
  • Keyboard support more robust in the presence of non-OS programs that directly read CIA registers (e.g. the "Matrix" screen saver, and possibly MCP). Also fixed Caps-Lock and Right-Ctrl handling, and optional support for keyboard LED setting.
  • PuhDerBaer (Paula-to-AHI redirection) now provides stereo sound.
  • Support for outputting sound at arbitrary pitch and length through the PC's internal speaker, and a utility to patch AmigaOS's "DisplayBeep" function to make use of it (DisplayBeep can only flash the display in 8 bit modes, not in 16 or 24 bit modes).


Graphics system

  • Full 2-D accellerated support for additional graphics cards (e.g. GeForce3, GeForce4-MX, Voodoo3/4/5, Matrox G550).
  • Improved 2-D accelleration, massively improving opaque window moves and other off-screen bitmap uses.
  • Support for Matrox multihead cards, and for multiple cards in the same computer. Support for individual configuration of all found cards/heads.
  • Support for changing resolution, bit depth and display timings even on cards only supported through VESA bios.
  • Support for hardware big-endian display modes on Matrox and Voodoo cards at full speed. Support for software-emulated big-endian modes on other cards (at the cost of some performance).
  • Improved calculation of display timings, and improved support for user-supplied timings.
  • Support for limiting amount of gfx memory reported, to avoid bitmap and/or pointer corruption while lots of off-screen bitmaps are in use.
  • More descriptive modenames, based on the type of gfx card.
  • Improved detection of gfx card parameters.


Booting/Installation

  • Graphical boot menu, allowing easy setting of configuration options during CD boot.
  • Included thorough memory tester as boot option.
  • Support for overriding boot priorities from boot menu, orividing "rescue mode" boot (forcing boot from known-good minimal OS3.9 install included on the CD).
  • Default resolution when booting from CD now 1024x768x16bpp. Looks much better than 640x480x8 :)
  • New and improved early bootup screen, with all the functionality implemented within the emulator itself. This overcomes the problem where the SetPatch-caused reboot ignores the boot selection made in the ESM.
  • "mbr.device" pseudo-device, allowing manipulation and creation of MBR (aka "PC standard") partition tables using AmigaOS HD-Toolbox.
  • Support for a new type of "virtual disk" that holds both the files required to boot the PC as well as space to be used as a hard drive by AmigaOS. Thus, a full Umilator install can now fit into a single partition.
  • Ability to install Umilator fully self-booting on a previously empty hard drive completely from within AmigaOS, using only standard AmigaOS tools. Such an install has a graphical boot menu identical to that on the CD.
  • Patch applicator with full checking for patches obsoleted by updated main executable or later patches, allowing for convenient application of in-the-field fixes.


CPU Emulation/JIT Compiler

  • Pentium4 compatible (Intel changed the way the BSF and BSR instructions work in the Pentium4, and thus broke the JIT compiler on P4 equipped machines).
  • Many bugfixes and improvements in the FPU emulation. Imagine version 5 now seems to run correctly.
  • JIT cache size can be specified as a percentage of available memory, and defaults to 12%. Specifying an absolute size in kilobyte is still possible.
  • Improved safety-net fallback mechanism for JIT compiler, making it more tolerant towards software using the same instructions both to access real memory as well as custom chip registers (e.g. PGP).
  • Much improved statistics are gathered and can be viewed regarding many aspects of JIT compiler.


Distribution

  • Distribution as freely downloadable and redistributable ISO image.
  • By default, CD boots in "Demo mode", which has the following restrictions:
    • No support for writing to hard disks, floppies or CD-R/RW. Writing to ram disks (and the minimal OS 3.9 installation kept inside a linux ramdisk) is not restricted.
    • After a timeout period of 20 minutes, emulation speed will be gradually reduced.
    • Screen refresh limited to 65Hz or less.
  • Through the purchase of an individualized registration key, the demo version can be upgraded to full functionality.
  • Registration keys can easily and transparently stored on the hard drive, making entering them a one-time-only hassle.
  • Systems for both online and dealer distribution of registration keys have been designed and implemented.
  • Kickstart Image has been modified in various ways, preventing abuse of Umilator-included IP outside it.
  • Except for P96, Kickstart and partial OS 3.9 (which are required to get anything running), no force-bundled commercial software, allowing for low retail price.
  • Attractive default OS 3.9 install that has been enhanced through numerous free add-ons, providing a modern look and functionality to WB 3.9.
  • Various freeware and demo versions included on CD ready to run, to allow for convenient testing/demoing of emulated Amiga.


Miscalleneous

  • Workaround for OS3.9BB2 resident tag memory corruption bug.
  • Massive rework of internal ELF loader for x86, dramatically improving load speed for large modules.
  • Support for an additional 68k->x86 call mechanism designed by Martin Blom to allow for faster library calling in code generated by his big-endian x86 compiler.
  • Improved "setconfig" mechanism, generally avoiding the need for a setconfig-caused reboot.
  • Improved support for directly user-accessible high-resolution timers (as opposed to only providing the same functionality through cumbersome CIA emulation).
  • Added OS3.9BB2 stacksize cookies to all included tools that require increased stack.
  • GPL'ed debugger running "beside" the emulation, with support for viewing/watching/protecting arbitrary areas of memory (including segtracker support), disassembling as either 68k or x86 code and watching the emulation-internal log file. Debugger is used through a telnet interface from a second PC --- thus it can be used for post-mortem work after an AmigaOS crash. Extremely handy for AmigaOS as well as x86 code development.


Linux kernel

  • Reworked PCI remapping strategy overcoming boot failures common on DELL machines (their BIOS initializes the PCI bus in a bizarre way!).
  • Mechanism to boost emulation thread's priority over other I/O related threads during times when rapid emulation response is required.
  • Support for powering off machine under software control (requires cooperation of motherboard's APM BIOS).
  • Timing and speed improvements for gfx accelleration.
  • Support for gathering and retreiving emulation performance statistics.
  • Kernel updated to version 2.4.20pre4.
  • No more green square around boing ball when booting in 16 or 24 bpp VESA modes :)


Last Updated: Tuesday 14 January 2003 13:19:50
© Bernd Meyer 2002-2003
Design © Kymberly Fergusson
Logo © Lasse Bodilsen

BACK

Last Update: 22/02/2003


Latest updates to the Amiga History Guide. (more)


· Amigart
· Amiga Hardware
· Amiga History.de
· Amiga-news(en)(de)
· Amiga.org
· Amiga University
· Czech Amiga News
· Commodore Retrobits
· Dave Haynie archive
· morphos-news.de


Other interesting items in the archive!


 

home · changes · amiga history · features · amiga models
magazines · technical · interviews · internet links · downloads