Wine for Amiga is as confusing as Windows Subsystem for Linux. I thought it would be a port of Wine for the Amiga but it's instead something to run Amiga software on PC.
It also makes even less sense than the Wine name. "Wine is not an emulator" - but it is! It's an API emulator, not an instruction set emulator. "Wine for Amiga" is an emulator in both senses.
Amiga Forever is a distribution of software (Amiga ROMs and OS disks) and a full system emulator: CPU, custom chips (graphics/sound/..) etc. It allows you to emulate various Amiga systems completely.
vAmos is just CPU and an embedded ROM/OS replacement that does just enough to run (some) AmigaOS command line programs. The primary use case is for cross-development (running Amiga compilers/tools, testing simple stuff, etc.) without having to boot a full system emulator for each command and better integration with e.g. host-side Makefiles.
With the vAmos=WINE analogy, Amiga Forever=VirtualBox/VMWare.
There is fundamental difference between Windows and AmigaOS is that you usually want to run Linux+wine on a the same hardware you would run Windows. That's why wine is not an emulator. Whereas, in the case of vamos, the AmigaOS hardware is not a PC.
They explicitly states that in the link: "It will run typical console binaries that do not rely on user interface [...] This approach will not run any applications or games using direct hardware register access - for this use case a machine emulator like FS-UAE is the tool you will need..."
There's a lot of Amiga software that doesn't rely on direct hardware access.
Couple that with AROS providing implementations of all the important parts of AmigaOS, it'd be possible create something that supported the GUI as well. It's a decade+ since I did any work on the AROS source, so I don't remember how much work it might be to retarget the window rendering to open and update actual windows of the OS it runs on, instead of compositing to a window representing the full screen.
The caveat is that a lot of AmigaOS apps open their own "screens" (virtual desktops) and expect to be able to open windows on them, in which case you might end up with a bunch of full-screen sized windows anyway. Then you might as well run full AROS.
For that reason I think the limitation of this is probably fine: Use this for command line programs you want to run in your regular terminal, and just spin up AROS or FS-UAE to run programs with a gui. I can spawn AROS with a custom StartupSequence to "boot" right into FrexxEd (an editor co-written by the guy behind Curl) and have it spin up the entire OS and the editor faster than a typical Emacs session...
The comparison with WINE is quite apt, though. Although it is using a 68000 emulator, unlike WINE which is purely native code, it is taking the same approach to implementing AmigaOS as WINE took to implementing Windows: it offers the normal API entrypoints, and as soon as programs call into them, it takes over and does things natively.
VAMOS writes as few 68000 instructions into the emulator's memory as possible; as soon as the program calls an AmigaOS API, the emulator traps it and handles the implementation in Python.
Giving your open source project the name of an indigenous people is fraught with complications, as the ASF (Apache Software Foundation) is now discovering.
Come on, Apache Software Foundation is clearly named after an attack helicopter, and AINU after one of countless immortal spirits in the Middle Earth universe who helped create the world with her beautiful music.
Could this be a the basis of an independent implementation of AmigaOS? At the moment, (I think) you still need a licensed copy of Commodore's OS to run an emulator.
There's the free AROS for that, and the less talked about but arguably cooler nonfree MorphOS. If you have an old PPC mac try a trial of MorphOS on it, it's a very interesting little system
It's about a million miles away from that. It's a 68000 CPU emulator, with no Amiga hardware, and just enough OS structures sprinkled into memory, such that quite a few Amiga CLI utilities work.
What you're looking for is a ROM with a full implementation of AmigaOS, that can manage real Amiga hardware: that is only possible with the official ROMs or projects like AROS
reply