• entries
    222
  • comments
    608
  • views
    588368

/INTerminable Interrupt Problems

Sign in to follow this  

823 views


World Class Leaderboard Golf


Well, I've just about got it the way it was before with the new interrupt code; most games work again, but the few that have always given problems (such as Desert Speedtrap) still don't work properly. [sad] I think this is the stage where I have to start trawling through disassemblies to try and work out why they're not working.


Cosmic Spacehead - one of the few games to use the 256x224 mode.


One problem I still haven't got to the bottom of is with the Dizzy games. They either reset when starting a new game or lock up. I'm hoping this is a problem with my implementation of the Codemasters mapper. I guess that The Excellent Dizzy Collection has a simple front-end game selection screen that switches to the requisite ROM page for the selected game, then jumps to the start of that page - in my case this jumps back to the initial Codemasters screen.


Fantastic Dizzy


I'm not sure where Fantastic Dizzy's problems originate. It looks like an interrupt problem (maybe the palette should be switched when the VDP has finished with the status bar at the top?), but could also be related to the other Codemasters problems.

Interestingly, Micro Machines (1 and 2) and Cosmic Spacehead - both using the Codemasters ROM mapper - seem to work fine.
Sign in to follow this  


2 Comments


Recommended Comments

Fantastic Dizzy will lock up like that if you have not implemented the "sprite collision" flag in the VDP.

You can prove this by simply returning a random 0/1 value for the flag when it is read - although this is not sufficient to allow the game to run properly, it will (or should!) prevent it locking up.

Share this comment


Link to comment
Quote:
Original post by bakery2k1
Fantastic Dizzy will lock up like that if you have not implemented the "sprite collision" flag in the VDP.
Thank you very much for this, as this was indeed the problem. [grin]

I had implemented the sprite collision checking code, but it was skipped if the sprite was hidden behind a background tile that was set to display in front of the sprites. The game is now playable!

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now