[uae] Re: uae/winuae/whateveruae (was Re: No mouse in fullscreen)

  • From: Fabien Meghazi <agr@xxxxxxxxxxxx>
  • To: uae@xxxxxxxxxxxxx
  • Date: Thu, 25 Jun 2009 19:39:33 +0200

> I really don't know where this "UAE isn't modular" meme is coming frmo.

I realize that I never tried to explain what I had in mind. Do you
think such a model would be possible for uae ? :

- There would be a core for UAE. Everything in the core is
crossplatform. This is the playground of amiga hardware gurus.
  Some plugins are registered to the core, and the core sends and/or
receive I/O through the plugins.

- There are plugins for all host/guest I/O that could register to the
core. (like winamp in_ out_ plugins) Ex:
  sound_output : out_sound_directsound, out_sound_oss, out_sound_alsa,
out_sound_mac, ...
  gfx_output : out_gfx_directx, out_gfx_opengl, out_gfx_sdl, ...
  port0_input : in_port_joystick, in_port_mouse, in_port_wheel, ...
  port1_input : in_port_joystick, in_port_mouse, in_port_wheel, ...
  storage_input: in_storage_adf, in_storage_hdfile, in_storage_scsi,
in_storage_cdrom, in_storage_hddevice, ...

- Every interaction that could be made with the core ( changing
settings cpu, mem, disks, reset,  ... ) or with the registered plugins
(that has their own settings eg: swap disk for in_storage_adf) could
be made using a "command pipe". I don't know how this is called. I
mean a cross platform, and if possible, technology agnostic way to
talk to the core (like mplayer stdin/out) or a simple api, but it
should be able to use by a scripting language or compiled language
without being statically linked. There could be seperated GUI for
win32, linux, mac, or a cross platform GUI, ... it does not care
anymore. It's even possible for people to make third party front-ends.

I really don't know if all this is possible.
By example, I don't know if you use blits inside sdl/directx or if you
just generate each screen frame in a gfx library dependency free way
then just flip and update the screen using the gfx lib, or if the way
to generate a screen frame is dependant to the gfx lib. This could be
a stopper.

For the sound, I guess it's already abstracted, It's just mixing so I
guess it's not a stopper. In this case it should just use the
sound_output's plugin mixer facilities instead of the current
abstraction.

Anyway, if what I say is stupid, non-sense, impossible, science
fiction or if it's just too much work, please say it to me and I'll
never speak about this again.

-- 
Fabien Meghazi

Website: http://www.amigrave.com
Email: agr@xxxxxxxxxxxx
IM: amigrave@xxxxxxxxx

Other related posts: