Last week on the Fujiama (Atari8bit meeting in Lengenfeld/Saxony/Germany) I was working with Insane/Rabenauge on finishing the first version of the SymbOSVM port.
SymbOSVM is a virtual machine with the goal to run SymbOS nearly directly on modern 32/64bit hardware. It's SDL2 based. The access to the hardware of the host system is using a very thin layer, and the blitter is a real powerful beast. Currently it is using a C-based Z80 emulator, which could be later replaced with an assembler version at least for ARM-based systems.
The current supported platforms are Windows, Linux, InsaneOS (Raspberry PI), Genode (an open source microkernel-based high-security OS for actual hardware) and maybe even FreeBSD soon.
symvm-shot1.png
SymbOSVM finally broke the 256pixel barrier for the Y-resolution in SymbOS, so all resolutions you can think about are possible. Currently the maximum is 3440 x 1440 with 16 colours, which results in 2,5MB of VRAM, but that is not an issue at all. SymShell now can be expanded to a 120x50 char display.
SymbOSVM is an extreme demonstration, that SymbOS apps can have dynamic form sizes and are not fixed to static screen resolutions. SymCommander, Notepad or the Help/eBook browser have no problems to display their windows at FullHD or even more.
On modern machines SymbOSVM runs like a 1-2GHZ Z80 CPU. A few bugs have to be fixed, but I guess we can release a version end of this week.
https://www.youtube.com/watch?v=80MkCWqsExk
Nice!
If it runs on Linux, and uses SDL2 it will probably run unmodified on MacOS.
I'm willing to try 8)
Holy crap that's awesome!
The real NextCPC. 1-2GHz ;D
Looking forward to. Nice 👍
Nice for development of SymbOS applications
Great to run directly on RaspberryPi/MSXVR. :)
[On MSXturboR and CPC VR's "virtual machines" , SymbOS works perfect since first day] 8) V9990 vdp Power!!!
I am a little bit late here, but
SymbOSVM 1.0 has been released by Insane/Rabenauge:
https://www.symbos.org/symbosvm.htm
https://github.com/insane-rabenauge/symbosvm/releases
(https://www.symbos.org/gfx/platform/svm.jpg)
Currently for Windows and Linux.
An HD image is included, which contains a complete SymbOS installation, so you only need to unzip two files into the same directory and start SVM directly (in Windows).
Some facts about the SymbOS port for SymbOSVM:
- first SymbOS version, which provides true ENERGY SAVING; the idle task is switching the CPU to sleep mode, which saves power even on the host CPU side
- first SymbOS version with Y-resolutions higher than 256 pixels
- seventh (7.) supported platform
- fastest SymbOS platform ever (~2GHz Z80 + powerful blitter)
- shutting down SymbOS will shut down your whole PC (if you like :D )
At least on my machines you can feel the energy saving directly: If running an app in SymbOS which is working non-stop (not easy to find one, but e.g. Conways Game of Life can do this) the cooler of my notebook starts running.
Supported resolutions:
- 320x200 (legacy)
- 512x256 (2:1)
- 640x360 (16:9)
- 640x480 (VGA)
- 640x512 (Amiga)
- 800x480 (WVGA)
- 860x360 (43:18)
- 960x540 (qHD)
- 1280x720 (HD ready)
- 1280x1024 (Insane)
- 1720x720 (qUWQHD)
- 1920x1080 (FullHD)
- 3440x1440 (UltrawideQHD)
- 3840x1600 (QuadHD+)
SymbOSVM itself offers the following features:
- 4 MB RAM addressable CPU memory (4 x 16K banked from a total of 256 x 16K)
- 16 MB RAM accessible via DMA, video and blitter (24bit addressing)
- 4-bit (16 colors) and 8-bit (256 colors) video display
- bitmap mode with all possible resolutions
- text mode with 8 x 8 and 8 x 16 pixel characters and a maximum of 256 characters per line
- ultra-fast and -flexible video blitter for all kinds of operations, including bitmap handling, on-the-fly color depth conversion and support for proportional text output
- "Hardware" mouse pointer
- fast and easy access to the host system's keyboard, mouse and real-time clock
- text console support for information and debugging
- CPU idle mode; this allows the Z80 to sleep when no SymbOS apps are active, saving CPU time on the host side as well.
- on an average 2020 computer, the virtual Z80 CPU runs at around 2GHz.
- platform independant, using SDL2
SymbOSVM is open source and can be used for any Z80 stuff. Everyone can execute his own Z80 projects inside SVM.
Thanks!!! Checking ...
Pre-release bootable SymbosVM / insaneOS
Test in: * MSXVR / RaspberryPi 3/3+ ----- not boot SymbosVM yet
* RaspberryPi 2 ------------------- not boot SymbosVM yet
* RaspberryPi 1 ----- BOOT symbosVM 8) incredible quick boot , several usb mice tested and working
<< Insane is planning to add dual AY-3-8910, OPL3 (FM) and OPL4 (Wavetable) support >> GREAT !!! :D
<< "InsaneOS" which runs directly on 32-bit RaspberryPi systems. One of its main purposes is to run emulators of vintage computers....>>
Would we use shorcut for exit from symbosVM and to runnig quickly a CPC emu for RPi ? Or I need to exit to insaneOS and to start there the emulator ? Any linux-rpi emulator can be launched from insaneOS ?
Could work the accessing to external USB pendrive or usbFDD or main SD for load/save files instead of *.img virtual HDD???
Thanks Prodatron , Thanks Rabenauge
Which forum will be appropriate to talk about symbosVM and to give feed-back? here?
Quote from: RockRiver on 05:08, 16 August 24Test in: * MSXVR / RaspberryPi 3/3+ ----- not boot SymbosVM yet
* RaspberryPi 2 ------------------- not boot SymbosVM yet
Hi RockRiver, does this mean
- you did not test it yet?
- or it does not work?
Quote from: RockRiver on 05:08, 16 August 24Which forum will be appropriate to talk about symbosVM and to give feed-back? here?
Insane is active in our Discord group here:
https://discord.gg/7BQf5Aw2
So you could join and ask him there! :)
Quote from: RockRiver on 05:08, 16 August 24Would we use shorcut for exit from symbosVM and to runnig quickly a CPC emu for RPi ? Or I need to exit to insaneOS and to start there the emulator ? Any linux-rpi emulator can be launched from insaneOS ?
Could work the accessing to external USB pendrive or usbFDD or main SD for load/save files instead of *.img virtual HDD???
For the first questions this should be answered by Insane. Just a note, insaneOS has nothing to do with Linux, it is a real bare metal OS developed from scratch, which runs directly on the Pi/ARM CPU.
Regarding the last question, at least in Windows you can add a real drive as a device:
- in the symbosvm.INI (same dir like symbosvm.app; if there is no, just add an empty one) you can add a real drive, which has to be FAT32 (has to be readable with SymbOS) like system.hdd.1="\.\F:" this adds your windows drive F as device 1 (device 0 is usually the image). now you can add in the control panel -> mass storage a new drive (e.g. drive letter B) and choose "device 1" (usually they have an MBR, so choose primary partition 1). I am using this with a connected USB stick.
But for the next release we are planning to support direct hostFS access, so SymbOS will use the file system of the host directly.
Quote from: Prodatron on 09:51, 16 August 24Quote from: RockRiver on 05:08, 16 August 24Test in: * MSXVR / RaspberryPi 3/3+ ----- not boot SymbosVM yet
* RaspberryPi 2 ------------------- not boot SymbosVM yet
Hi RockRiver, does this mean
- you did not test it yet?
- or it does not work?
* Yes, I tested first in MSXVR (has RPi 3+ inside) no booted. Then in alone RPi 3+ and RPi 3 and not boot.
Thought that config.txt could not be that these RPis whants ... changed it but no way
* So checked in RPi 2 with old config.txt and not boot too
* Finally put the symbosVM SD in my veeery old RasberryPi 1 and works!!! 8)
I cannot found that old *.DOX files for SymZilla ... can I download in some place/link at symbos webpage ????
Quote from: RockRiver on 12:04, 16 August 24* Yes, I tested first in MSXVR (has RPi 3+ inside) no booted. Then in alone RPi 3+ and RPi 3 and not boot.
Thought that config.txt could not be that these RPis whants ... changed it but no way
* So checked in RPi 2 with old config.txt and not boot too
* Finally put the symbosVM SD in my veeery old RasberryPi 1 and works!!! 8)
So did you insert exactly the same SD card in all three Pis (1,2,3)?
Not a modified one in the 2 and 3, but the same which you used for the 1 as well, where it is working?
Quote from: RockRiver on 12:04, 16 August 24I cannot found that old *.DOX files for SymZilla ... can I download in some place/link at symbos webpage ????
Oh let me check, that is 17 years ago, I have to find the original ones with the example table, which I had, when we met last time in Bilbao :D
It's time for a SymZilla update anyway.
Wow, finally we can have SymbOS as a replacement OS for crappy old Windows?!
Thanks to Insane and Dr.Zed SymbOS is now running "directly" on a Jurassic Park computer :o
svm-mips64-01.jpg
svm-mips64-02.jpg
Dr.Zed was able to get it running on a Silicon Graphics Indigo MIPS64.
So finally this came true:
sym-jurpark.png
Turns out it also works on MacOS :D
The shortcut for toggling fullscreen on and off does not work for me, and it would be nice to have another for detaching the mouse cursor from the SymbOS VM window.
Other than that, works like a charm!
That is very nice to see! Did it just worked out of the box?
Wow, sooo many Task Managers! ;D
Yes, it worked out of the box!
I only changed the config.c file in order to not have it fullscreen, and the bunch of task managers is because I was trying the fullscreen switching. :D
hmmm, interesting - I wonder if it will be possible to work on a real CPC with CPC-CPLINK (eventually)?