Feature request about "novideo" option

By DrWh0

Paladin (676)

DrWh0's picture

31-08-2018, 18:35

Hi,

I would like to know if there is any plan to add a "novideo" option for openmsx (headless mode)

I would needed it in order to make tests with a multiplayer game project and for improving my "Screenshotter & TCL Tool" program

Thanks in advance Smile

P.D.:
You can download my program to see yourselves what i am triying to do:

https://mega.nz/#F!ldkxSZpY!wwLxfwoygdNBnKwDTzWr9g

Login or register to post comments

By Manuel

Ascended (14562)

Manuel's picture

31-08-2018, 21:47

There already is a headless mode. If you set the 'renderer' variable to 'none', there will be no output window. This is the default when you connect to openMSX via the socket interface as described here: http://openmsx.org/manual/openmsx-control.html
You can of course always set this setting yourself in other scenarios.

By DrWh0

Paladin (676)

DrWh0's picture

02-09-2018, 14:48

I already read it and tried without luck, openmsx shows an error executing the tcl script and breaks the whole script

But if I try to run the comands manually in tcl console seems to run fine...

i use the same technique of other commands for example, if i execute an autoscr.tcl in the following way:

openmsx "gamerom.rom" -script autoscr.tcl

With default commands run flawessly:

set throttle off
set mute on
after time 15 {screenshot -raw -guess-name; exit}

But if I add a line with

"set renderer none" (without "")

Drops a set error and refuses to execute the command, i tried to edit the file with notepad++ editplus and notepad in ansi
and utf8 character set, i still have to edit the file under linux to check if is somekind of eol error but the remaining commands seems not having errors........

I am using 0.14.0-31-ge15dcf8cc 64bit compilation from git repository

By DrWh0

Paladin (676)

DrWh0's picture

02-09-2018, 16:56

Hi Manuel

As I thought [EndOfLine] in TCL files only works in a proper linux format not native windows one (at least with certain parameters)

Openmsx now parses the commands but it does not support making screenshots of the generated machines with renderer mode set to "none" so no real headless useful here, in other words:

Openmsx does not capture real MSX screens in spite of choosing "raw" screenshots ("raw" because it does not take real resolution ,for example does not capture 256x192 and shows a 320x200 screenshot).

Openmsx it does not capture real msx screenshot only the current screen of emulated msx machines showed on screen so i cannot make screenshots of non showed msx machines running in background

Is possible to add support for it?

By wouter_

Champion (390)

wouter_'s picture

02-09-2018, 19:42

DrWh0 wrote:

Is possible to add support for it?

That's indeed unexpected. I'll try to make time to implement it this week. (No promises though).

BTW you need more than 256x212 if you want to include border effects and/or vertical overscan tricks. That's why even for raw screenshots we kept the 320x240 resolution.

By DrWh0

Paladin (676)

DrWh0's picture

02-09-2018, 21:29

Thank you very much wouter_!!

The reason of exact resolution was only to have an exact copy of the screen on real resolution when using raw option, please consider adding it using that option or a new switch to implement it.

Thank you a lot again Smile

By Manuel

Ascended (14562)

Manuel's picture

02-09-2018, 23:30

Just wondering: what is the meaning of 'an exact copy of the screen on real resolution' if the running program is doing all kinds of border effects or overscan?

By DrWh0

Paladin (676)

DrWh0's picture

03-09-2018, 13:27

Hi Manuel

I will try to explain myself:

I want to file with real msx video output without graphical effects.

By default without using -raw option is logical to use graphics and special effects selected by user, but using raw mode (for making a screenshot or play) is reasonable to have a real and untouched frame of the screen in that moment, (maybe adding an additional switch like raw2 or rawmsx could be less confusing for that purpose).

Also it would be very interesting to have that mode in openmsx (but i know the kind of troubles you can have with the sdl version you are using) for use on tv, crt monitors, or monitors with good hardware scaling in order to mimic MSX in the most accurate way possible

I always miss two things I had in my previous emulators:

Real resolution for use in monitors capable of scaling it

Real floppy support (I understand that currently the 90% of users does not need that feature).

With those 2 missing features i don't have to near 100% msx feeling, for example, with fMSX-DOS port of Marcel de Kogel I had a real experience tweaking the options with a crt monitor, at least in MSX1 front comparing with my real computer side by side (Under Linux at least I can make the trick with conventional FAT formatted disks using / dev / fd0 but obviously can not do it with booters or special format games)

For that reason I still have paramsx for certain things (development, floppy test, etc) without having to wear out my MSX floppies

That´s all, I hope to have explained myself properly Smile

By Manuel

Ascended (14562)

Manuel's picture

03-09-2018, 20:54

Yes, -raw is without any graphical effects. You can achieve the same thing for video by using the 'simple' renderer and setting scanlines to 0, blur to 0, noise to 0, etc. Then you get the raw pixels for play. If you then use full screen on a CRT, you get very close to real MSX, I think.

So, I think that the stuff you requested already exists...

The border effects and overscan should of course be part of the image, you would also see them on your real MSX. That's why the output can't be just 256x212 (or 192), that would leave out actual content you would also see on a real MSX.

Are we in sync?

My MSX profile