Detecting OpenMSX or RealMSX?

Page 1/10
| 2 | 3 | 4 | 5 | 6

By Wlcracks

Hero (572)

Wlcracks's picture

25-03-2019, 17:06

Is it possible to detect in a program if its running on a real msx or OpenMSX.
Reading back from the debug out port always gives an 255 in OpenMSX but on my VG8000 is acting wierd and sometimes gives and 120. Not really a trusted methode i guess.

Login or register to post comments

By mars2000you

Enlighted (6557)

mars2000you's picture

25-03-2019, 18:02

For 99.99% of programs, it's not possible. The only way to detect if the program is running on an emulator is to include a feature that is not yet emulated or is buggy emulated, what becomes still more difficult with an always improved and more accurate emulator such as openMSX.

Of course, the emulator will be updated afer release of your 'test' program, so it's just a race between emulator's developers and MSX coders.

By Wlcracks

Hero (572)

Wlcracks's picture

25-03-2019, 18:10

ok, but this could be a feature? Reading back from the openmsx debug port? Is this hard to implement?
Maybe more developers like this feature?

By Manuel

Ascended (19678)

Manuel's picture

25-03-2019, 18:51

Why do you want this? The goal of the emulation is exactly that you can't detect by software that it is an emulator, as mars also pointed out.

By Louthrax

Prophet (2496)

Louthrax's picture

25-03-2019, 19:01

Maybe you could use a TCL script that writes a tag in RAM 1s after boot ("openMSX" at 0x9000) or something like that (well, if you have control over the openMSX launcher...). But if you need that to circumvent a bug or problem in openMSX, the best option is still to report that to the team.

By ren

Paragon (1947)

ren's picture

25-03-2019, 19:33

Overflow has written detection routines for his IO demo (to compensate for timing & some other issues): Patching IO demo

(Though it's a timing/'feature' check, not a specific openMSX check.)

By Wlcracks

Hero (572)

Wlcracks's picture

26-03-2019, 16:49

Thanks all for the info.

By Manuel

Ascended (19678)

Manuel's picture

26-03-2019, 22:01

Wlcracks: but can you still explain why you want to detect that you're on openMSX with your MSX program?

By Wlcracks

Hero (572)

Wlcracks's picture

27-03-2019, 08:22

"N.O.P. is busy with an new project, that is not working on any MSX emulator yet. We need to detect the emulator though, to skip this technique for now and switching to an alternative method, to be able to continue developing the product. Waiting for any emulator to be adopted to this techniques could slow down the target release date.
For example, the OpenMSX debugger simulated hardware can output to "hardware", but it would be awesome to get feedback or a detection methode from it when it has been installed. "

By Manuel

Ascended (19678)

Manuel's picture

27-03-2019, 08:42

I suggest you contact us to fix the emulator instead...! So far we have heard nothing yet, so we cannot even work on improving it... that means it will take even longer!

By turbor

Hero (529)

turbor's picture

27-03-2019, 15:33

There are some things you can do on a real machine that not one current msx emulator emulates correctly...
https://www.youtube.com/watch?v=rGA_fVegAb4

If you would do something like that, that would
a) be way cool!
b) something that the enduser will notice but you can not detect in your program :-)

Page 1/10
| 2 | 3 | 4 | 5 | 6