OpenMSX crashes / feature to detect OpenMSX

By Accumulator

Expert (114)

Accumulator's picture

20-01-2023, 21:44

I was looking a way to detect running software in emulator, for my own sake, to be sure I have to test routines on bare hardware and not in emulator.. After trying 1001 things and crawling the forum, I had to give up..
However, coding on pc and trying some routines I was able to crash OpenMSX.

2 options:

1) inform and can be fixed
2) Keep it for my own sake and when crashes I know I am in a emulator.

I decided to inform, I will find another way, I am sure of it.....

The error:

openmsx: src/video/VDPVRAM.hh:242: void openmsx::VRAMWindow::getReadAreaPlanar(unsigned int, unsigned int, const byte*&, const byte*&) const: Assertion `(areaBits & effectiveBaseMask) == areaBits' failed.
Aborted (core dumped)

This happens when you selecting:
Register #0 bits M5 and M3
Register #8 bit VRS

In basic the same result:
10 SCREEN 7
20 VDP(9)=VDP(9) AND &B11110011
30 VDP(9)=VDP(9) OR 8

run and crash!

This could be a feature to deny some software running in OpenMSX..

Login or register to post comments

By wouter_

Champion (499)

wouter_'s picture

20-01-2023, 21:49

Thanks a lot for reporting!

I can reproduce the crash. I'll try to fix it soon (hopefully in a few days, I'm a bit busy now).

By Accumulator

Expert (114)

Accumulator's picture

20-01-2023, 22:00

You are welcome,

This happens also using SCREEN 8.

By wouter_

Champion (499)

wouter_'s picture

22-01-2023, 20:00

Should be fixed now. Thanks again for reporting.

BTW: what kind of emulator-detection-check are you looking for? MSX1, MSX2, Turbo-R? Should the check also flag machines like OCM as an emulator? Feel free to join our IRC/discord to bounce some ideas.