Plugin modules
It is very difficult to implement a lot of functions in one small program.
Size is very important parameter because SyMon must fit into only one
track ie about 30 kilobytes. So the problem is to enable SyMon to gain
functionality and be small at the same time.
SyMon provides you with an excellent solution of this problem.
It supports plugins.
Plugins are located somewhere on your disk and can be hot plugged
into SyMon on the fly. SyMon supports the following containers of
plugins for now:
- NTFS partition root directory (since Release R3.17)
- FAT32 partition root directory
- FAT16 partition root directory
- FAT12 partition root directory
- SyMon plugin partition (before Release R3.17)
To install plugin you need just to copy plugin file into container
and then create plugin descriptor for it. Plugins are dynamically
linked to SyMon kernel. SyMon looks for new plugins every time you
change your settings in setup dialog so you have practically
unlimited capabilities of plugin usage. Plugins are remounted on
the fly!
SyMon supports three kinds of plugin extensions:
- OS plugin extension.
This kind of extension enables you to create a new method
of booting your OS. For example, plugins of this kind can be used
to start several OSes located in one file system. They are rendered
in standard frame of main menu.
- Boot plugin extension.
This kind of extension enables you to start OS from external
media, such as CD-ROM, ZIP etc. They are rendered in control
frame of main menu.
- Tool plugin extension.
This kind of extension enables you to add new tools to SyMon.
For example, you can add tools for working with FAT partitions.
All these are selected by the plugin developer and don't need to be
changed by the end user. Every plugin module supports up to 15 plugin
extensions. You can mix different kinds of extensions in one plugin
module. For example, you may have three OS plugins and one tool
plugin to setup those OSes in one plugin module.
Plugins are free for developers. We plan to publish the documentation
on plugin development techniques. You can write plugins both in assembler
and C (using Borland C or any other compiler which supports tiny memory
model). We provide you with Symon stdlib and startup module to link
your code into ready-to-use plugin module.
We suggest you to join us and write plugins for SyMon.
Here are the main directions of plugin development for SyMon:
| bin |
src |
Revision |
Description of plugin module |
|
Already done
|
| STDPLUG.PLG |
available |
  |
Standard plugin (SyMon color editor and features editor) |
| CDDRV.PLG |
available |
  |
CD-ROM boot extension |
| download |
download |
1.1 |
Demonstration plugin |
|
To do
|
|
planned |
- |
EXTENDED partition editor, format utility for FAT etc |
|
planned |
- |
OS plugins for emulation of System Commander when starting several
Microsoft OSes located in one FAT; and emulation of NTloader menu.
|
|
planned |
- |
ZIP boot extension |
|
Any other suggestions for SyMon extensions are welcome!