gilmo
Posts: 2
Joined: Sun Sep 28, 2025 4:05 pm

Bug in MESS emulating MEMOTECH MTX512 - game emulation

found a bug in emulating only 2 games .. "Jet set willy" and "Pothole Pete"

the same audio files load and run fine on the real hardware , but loading the cassette from mess gets a frozen state at the end..

after looking as the assembly sources for those 2 games , it seems to be related to the following interrupt:

INTFFF

Poke 64862,8 -- enable a system register for Sprite movement + cursor flash is enabled.

64862 decimal = FD5E (hex)

So 64862 is actually the same register mentioned (INTFFF), but expressed in decimal.

What happens with POKE 64862,8

8 in binary = 00001000

That sets Bit 3 = 1, all others = 0.

Looking at the bit map:

Bit 0 → Sound (off)

Bit 1 → Break key (off)

Bit 2 → Keyboard auto repeat (off)

Bit 3 → Sprite movement and cursor flash (ON)

Bits 4–6 → USER (off)

So this command:

✅ Enables sprite movement and cursor flash to be handled automatically by the interrupt system
❌ Disables all other interrupt routines (sound, key repeat, user code, etc.).
User avatar
Pernod
Posts: 8
Joined: Thu Mar 31, 2016 1:29 am
Location: UK

Re: Bug in MESS emulating MEMOTECH MTX512 - game emulation

You claim to be using MESS, which no longer exists, so which version of MAME/MESS are you using?

The copy of Jet Set Willy in the software list appears to run correctly on current MAME 0.281 release, are you trying to run another version of JSW and where can I find it to test with? I also don't have Pothole Pete so a link to that would be useful too.

The INTFF register is in RAM, do you know what generates the interrupt that reads this register?

Return to “MAME Discussion”