OpenMSX Launcher for Windows

Page 1/2
| 2

By BiFi

Enlighted (4348)

BiFi's picture

03-02-2003, 22:01

Since OpenMSX has been ported to the Windows platform the plan arose to write a decent launcher for it. Features currently planned:

  • predefined configs (complete systems)
  • configurator
  • toggles to put in a temporary XML file
    - VRAM size (16, 64, 128, 192)
    - Memory size (16, 32, 64)
    - Memory mappers (64, 128, 256, 512, 1024, 2048, 4096)
    - Pixel accuracy toggle
    - Fullscreen toggle
  • external cartridges
    - Memory mappers (64, 128, 256, 512, 1024, 2048, 4096)
    - Music Module (optional 256 sample-ram)
    - MSX-AUDIO
    - FM-PAC (slot select)
    - SCC (slot select)
    - SCC+ (slot select)
    - Slot Expander
    - OPL4 (optional 128, 256, 512, 640, 1024 sample-ram)
    - V9990
  • Future: skins
    - MSX stylish (including fonts and stuff)

This list is very preliminary and is subject to changes in structure and features. If you have ideas and/or wishes for this launcher, please post them in here.

Login or register to post comments

By snout

Ascended (15184)

snout's picture

03-02-2003, 22:31

Wow, this sounds like heaven, BiFi.

By BiFi

Enlighted (4348)

BiFi's picture

04-02-2003, 07:24

Thanks, snout...

Since OpenMSX has emulation closest to the real thing and is not just for games like the first MSX emulators were supposedly made for, my idea was to make a launcher for it with features and expansions like a real MSX.

By BiFi

Enlighted (4348)

BiFi's picture

22-02-2003, 12:27

To make a small link with the openMSX default config.xml thread the launcher will have support for that format. As both GuyveR800 and Manuel stated in their posts there the whole .xml config is redone for the better. Since many things I've planned for the Launcher will be prepared with the config then making both the editor and the launcher should be much easier.

It's incredible though many people think the list of planned features is quite complete already. If you think it's not, or there are features that sound quite obsolete to you, it's worth a discussion.

By mars2000you

Enlighted (5782)

mars2000you's picture

22-02-2003, 12:56

Some features are missing, but I don't think that they are included in the openMSX emulator :
- screenshots
- saving / loading of emulation states
- saving of musics
- choice of the music channels that are enabled / disabled (for all kinds of music chips : PSG -SCC - SCC+ - MSX-MUSIC - MSX-AUDIO - OPL4 - ...)
- visualisation of the music channels (like in ParaMSX)
- extended debugger (see the features of M88, a PC88 emulator for example)

Probably some features can be part of the launchpad, but others may be first implemented in the emulator himself

By Manuel

Ascended (17501)

Manuel's picture

22-02-2003, 16:26

I don't know exactly what kind of features you'd expect.

What I expect is just a GUI to setup an MSX Machine Configuration (your fantasy MSX), a way of selecting an existing MSX (and a way to inspect what the specs of it are, and a method to modify them and then save it as a 'custom' MSX), a way of inserting external MSX hardware in the MSX (note that OPL4 and GFX9000 emulation doesn't exist yet), and a way of changing the openMSX settings (renderer, full screen, autocommands, Console background/font, etc.)
Also, sometimes these external hardware things should be set up, e.g. the amount of sampleRAM in the Music Module. Of course it would be nice that all openMSX features can be set up with the launcher.

An official GUI will have something similar, I think, at least for the configuration part.

Another idea for an official GUI i have is something similar to the one of MPlayer or Windows Media Player, e.g., so that also during fullscreen you can call a separate window with which you can control the emulated MSX. This window would then be very skinnable. So, if you're running a TurboR, it will look like a TurboR and you can switch the internal software knob on it, view the LEDs, insert a cart, etc. via this GUI. Just a thought though, but I like it. This is mostly for run time settings of course, it is nothing like a launcher, which only sets the initial values and can boot the emulator.

Some other notes:
- At the moment only 16, 64 and 128kB VRAM are supported, AFAIK
- I know no way to insert an external slot expander. In the machine configuration you can say what slots are expanded (in the MotherBoard section) and use those slots, though.
- OPL4 and V9990 are not yet supported as I said above
- skins: of course we want things skinnable. At the moment only the console font and console bacground can be changed (also at run time)
- screenshots aren't supported yet. Just use an external program to make them, when the emulation is paused. Easy enough
- save states: not supported yet. They will be in the future, of course
- saving/loading musics: how about a capturing program? Wink
- Enable certain audio chips: can you do that with your real MSX? Wink This is something that could be built in some time, but I think it is not of high priority
- Visualisation of music channels: actually, I like this a lot. It could be implemented if openMSX has a GUI or an OSD or something. I think this feature is already in the feature request tracker on openmsx.sf.net.

If you want something supported that is not in openMSX yet, please add an item in the feature request tracker on openmsx.sf.net -> project summary -> RFE
Make sure the feature isn't already in the tracker.

Thanks!

By BiFi

Enlighted (4348)

BiFi's picture

22-02-2003, 16:55

About the external slot expander feature: it might be an idea to make a setting to explain a slot is a cartridge slot, which means you can set up a seperate .xml file with these cartridge settings, like the external slot expander or any other cartridge. That way you don't need to implement things like SCC, MSX-MUSIC rom, MSX-AUDIO rom, IDE interface and other external devices that require a slot select signal to work properly...

I think the ideal would be a list of the following .xml files:

  • a machine .xml file (like nms8250.xml) which includes everything the NMS8250 machine has internally, that means including the diskdrive and internal slot assignments. in this file cartridge slots are assigned to seperate .xml files
  • cartridge slot .xml files which includes the configuration per slot, which may include an external slot expander
  • a I/O devices .xml file which contains things like MSX-AUDIO, MSX-MUSIC, RS232 interface, OPL4, V9990 and other devices that are controled through the I/O system only

Realtime things like channel mute, LEDs and channel visualisation should be done within the emulator indeed. A launcher has nothing to do with that. Same goes for the internal software switch some Panasonic machines have, though its initial state could be implemented in the launcher. Loading save states may be useful to add in the launcher when the emulator supports them.

Features like OPL4 and V9990 emulation are just to note it could be implemented. Of course existing features are going to be implemented first.

Anyway, once features are included in the emulator, they may be possible to implement in the launcher as well.

By Manuel

Ascended (17501)

Manuel's picture

22-02-2003, 17:09

About the external slot expander feature: it might be an idea to make a setting to explain a slot is a cartridge slot, which means you can set up a seperate .xml file with these cartridge settings, like the external slot expander or any other cartridge. That way you don't need to implement things like SCC, MSX-MUSIC rom, MSX-AUDIO rom, IDE interface and other external devices that require a slot select signal to work properly...

In a machine config file you can already say what slot is an external cartridge slot. These slots are used when you specify a ROM file on the command line, e.g.
I'll post a message on openmsx-devel about it.


I think the ideal would be a list of the following .xml files:

  • a machine .xml file (like nms8250.xml) which includes everything the NMS8250 machine has internally, that means including the diskdrive and internal slot assignments. in this file cartridge slots are assigned to seperate .xml files


This is already the case. An openMSX hardware description file (machine config xml) describes the complete device. Check one!

  • cartridge slot .xml files which includes the configuration per slot, which may include an external slot expander
  • a I/O devices .xml file which contains things like MSX-AUDIO, MSX-MUSIC, RS232 interface, OPL4, V9990 and other devices that are controled through the I/O system only


I'll ask the other developers about this.


Realtime things like channel mute, LEDs and channel visualisation should be done within the emulator indeed. A launcher has nothing to do with that. Same goes for the internal software switch some Panasonic machines have, though its initial state could be implemented in the launcher. Loading save states may be useful to add in the launcher when the emulator supports them.

Features like OPL4 and V9990 emulation are just to note it could be implemented. Of course existing features are going to be implemented first.

Well of course, there's no point in implementing non existing features. Smile (Normally this makes sense of course, but I mean: there's no point in implementing features in a launcher that don't exist in the emlator to be launched...)


Anyway, once features are included in the emulator, they may be possible to implement in the launcher as well.

They should be, of course! Otherwise the launcher is getting less useful.

By mars2000you

Enlighted (5782)

mars2000you's picture

22-02-2003, 17:49


screenshots aren't supported yet. Just use an external program to make them, when the emulation is paused. Easy enough

No ! Of course, you can use the PrtScrn touch and "rediscover" your picture in a graphic tool, but you must everytime quit temporarily the emulator to give a name to your BMP file. See how it works in NLMSX : you can have multiple screenshots with automatic different names without leaving the emulator ! That's one of the reasons why NLMSX is very well appreciated by the users .


- saving/loading musics: how about a capturing program? Wink

It's the same problem and if you use an emulator with a separate capturing program, you'll need a vey powerful PC ! So, the best is to implement this option in the emulator, like it's the case in fMSXFAN, fMSXSO and ParaMSX (with discutable results). Of course, it's not a priority, but when it'll come, the launchpad should be adapted


- Enable certain audio chips: can you do that with your real MSX? Wink This is something that could be built in some time, but I think it is not of high priority

For my part, I consider that an emulator must not only do all the things that a real MSX can do, but also must have interesting additionnal features for the end-user. The possibility of choice of the enabled music canals, for every music chip, combined with an integrated music saving option is a must for a music fan.

And for a expert fan, an extended debugger is also a real pleasure. I take for exemple the M88 emulator (it's a PC88 emulator). The debugger includes the following features :

- Show FDC Status
- Show Register
- Show OPN Register
- Show Memory
- Show code
- Show Basic code
- Show Outport
- Load Monitor

An example in the MSX emulation world ? BRMSX !

If openMSX wants really to be the best MSX emulator, it's necessary to include all the best additionnal features that are in some other emulators.

By Manuel

Ascended (17501)

Manuel's picture

22-02-2003, 18:28

>>
screenshots aren't supported yet. Just use an external program to make them, when the emulation is paused. Easy enough<<

No ! Of course, you can use the PrtScrn touch and "rediscover" your picture in a graphic tool, but you must everytime quit temporarily the emulator to give a name to your BMP file. See how it works in NLMSX : you can have multiple screenshots with automatic different names without leaving the emulator ! That's one of the reasons why NLMSX is very well appreciated by the users .

Why do you have to leave the emulator?? Just pause emulation, capture the window and you're done. You can save the file while the emulator is running and then unpause it.


For my part, I consider that an emulator must not only do all the things that a real MSX can do, but also must have interesting additionnal features for the end-user. The possibility of choice of the enabled music canals, for every music chip, combined with an integrated music saving option is a must for a music fan.

You're right, extra stuff is nice. Well, feel free to add a feature request item. Smile


And for a expert fan, an extended debugger is also a real pleasure. I take for exemple the M88 emulator (it's a PC88 emulator). The debugger includes the following features :

Yes, a debugger is already in the feature request tracker. Everyone wants it, but someone needs to write it...

By mars2000you

Enlighted (5782)

mars2000you's picture

22-02-2003, 19:26

You're right, extra stuff is nice. Well, feel free to add a feature request item. Smile

THanks for the advice ! It's now done : I've added two feature requests ! Smile

Page 1/2
| 2