Already in the 80's, only few years after the release of the Commodore C64, the legendary [http://en.wikipedia.org/wiki/GEOS_%288- bit_operating_system%29 GEOS] by Berkeley Softworks appeared and set the standard for a windows-based operating system on c64. It was a graphical user-interface (GUI) which was similar to the old desktop of the Apple Macintosh. Powerfull applications were made available for GEOS like GeoWrite (similar to MS-Word) or GeoCalc (similar to MS-Excel). It was incredible, that an 8bit-machine with only 64K was able to realize such an operating system!
On the Amstrad CPC many efforts to build a decent GUI were made as well. In most cases they were just extensions to realize a WIMP (Windows, Icons, Menus and Pointers) environment but weren't true operating systems with their own kernel, memory-management and so on. The CEUS Desktop 2.0 (1990) by Prodatron was just such an extension-system.
Therefore, the CPC's own OS (in combination with AmsDOS) and CP/M were the only two known OSes for the series, but the question remained: since most CPCs have 128K (most C64 only have 64K), a screen-resolution of 320x200 with 4 colours (C64 only has 2 colours for each 8x8 area in 320x200) and some more advantages, why not have something similar? So the SymbOS-Project was born. SymbOS stands for "SYmbiosis Multitasking Based Operating System". SymbOS is a demonstration of what has been achieved on the CPC: real preemptive multitasking, dynamic memory-management for up to 576K and a totaly MS-Windows-like GUI are the three most important features.
SymbOS started being developed by Prodatron in November 2000 (more details on the development needed)
- Micro kernel
- Maximum amount of supported RAM: 576 KB
- Maximum number of processes 32
- Number of different process priorities 9
- Maximum number of timers 32
- Maximum number of open messages 64
- System manager
- Maximum number of applications 16
- Maximum application core size 63 KB
- Desktop manager
- Maximum number of windows 32
- Maximum number of controls per window 1000
- Maximum possible screen resolution 16.000 x 16.000 pixel
- File manager
- Maximum hard disc size 128 GB
- Maximum file size 2 GB
- Maximum number of devices 8
- Maximum number of open files 8
- Source code
- Source code size (OS Release 1) ~ 30.000 lines
- Source code size (Applications) ~ 34.000 lines
- Total size of the Z80 source code ~ 64.000 lines
Note: This is an edited version of the original SYMBOS site.
In autumn 2004 Dr.Zed developed with the support of TFM, Octoate and Tolkin the first CPC SYMBiFACE also known as "CPC-IDE". It was the first hardware solution in history of CPC, which connected IDE-harddrives and CF-cards to the CPC with the maximum possible data transfer speed.
It was fully working, but still had a prototype state, so only 10 pieces have been produced. Some people should write software first, before the final version would be released. So fully IDE-support for FAT16 and FAT32 harddiscs has been implemented in SymbOS until Xmas 2004.
CPC SYMBiFACE II is not only an IDE interface anymore. It merges the CPC with actual PC technology. It provides nearly everything you need to change your CPC into a powerful work station!
CPC SYMBiFACE II contains the optimal solution for connecting a CPC with an IDE harddisc. It provides the maximum - both for the performance and for the simpleness in accessing the harddisc.
- Supports IDE-Harddiscs with up to 128GB
- Bigger HDDs or CD/DVD drives support possible with drivers
- Simultaneous operation of two harddiscs (master and slave):for a total of up to 256GB on your CPC!
- Transfer speed of 162KByte/s: That's as fast as copying memory inside the CPC with LDIR. In practice (loading FAT16/32 files) the speed is still about 130KB/s (SymbOS-FAT-driver).
- External power supply required: no extra load for the CPC's internal PSU
- No timing problems: Interrupts don't need to be disabled during the data transfer with the harddisc. The harddisc can operate while you play sound or doing other things with your CPC (multitasking etc.).
- Traffic activity display via a LED on the board
- 512KB RAM extension, which is fully compatible with the CPC 6128 and the dk'tronics ram extension
- 512KB rewriteable ROM. You can upload up to 32 ROMs, which are persistant. You can also use the ROM space as an additional RAM extension. ROMs can be switched on or off via switches or via software.
- PS/2 mouse connector. This makes it possible to connect wireless and optical mouses to your CPC.
- Realtime clock, which is fully PC compatible and provides additional 128 byte persistant RAM, which can be used to store config data.