Rockbox.org home
release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Rockbox mail archive

Subject: Re: Whats up with plugins and stuff?
From: Björn Stenberg (bjorn_at_haxx.se)
Date: 2003-10-16


Bio Hazard wrote:
> will rockbox ever be "Modular"? I.E.: rockbox = a set of plugins
> (MP3Player.rock, DirBrowser.rock, MP3Recorder,rock, PlaylistControll.rock,
> ect...) all the .ajz would be is just a front to load certain plugins on
> startup and toggle certain ones on and off.

No. Plugins are designed for things that you use exclusively, such as games, calendar, editors, viewers, cookbooks etc.

Your MP3Player.rock has to run at the same time as your DirBrowser.rock. This would require a very complex plugin system, more a complete operating system with things like resource allocation and locking, than what we have today.

> the way "Plugins" work now is they completly take over the Archos hardware

No they don't. They simply "take over" the user interface. For example, mp3 files are still playing while you run a plugin. Plugins currently only have little hardware access, mainly to the disk, keys and the display.

> this makes little things like the multiple resume things impractacle.

Resume has no reason being in a plugin in the first place. Why do you want to write a resume plugin when the core code already handles that? (And with patches to it improving that code further.)

Core features relating to mp3 playback were never intended to be handled by plugins, since they are part of the single reason we all own and use the device: to play mp3s. That core functionality is not worth swapping out, since it's nearly always used.

> I realize that implementing any of this would be a real pain

It's not really painful, just port uClinux or some such.

That *would* be painful is the realization that when you're done, you haven't accomplished anything useful. The size and complexity of the operating system required to do what you describe far outweigh the ram savings from throwing out a few KB of unused code.

When thinking about what could be done, don't forget to ask yourself "why". You have devised a complex technical solution, but you haven't anywhere described the problem that this solution is intended to solve... What is the application you wish to write/run that requires a completely new plugin system?

-- 
Björn



Page was last modified "Jan 10 2012" The Rockbox Crew
aaa