Go Back   Project64 Forums > General Discussion > Site News

Thread Tools Display Modes
Prev Previous Post   Next Post Next
Old 3rd April 2007, 05:57 AM
zilmar zilmar is offline
Core Team
Alpha Tester
Project Supporter
Join Date: Jun 2005
Posts: 989
Default Castlevania 2 ?Legacy of Darkness

I re-wrote a lot of the internal handling of compiled code a few builds ago. This is one of the few games that came off worse for wear for it. I was debugging in to it today to see if I could understand what was going on with the game and why it behaved worse.
I have worked out why the game is worse off. Where in 1.6 I could use protected memory and the game worked great. I currently have to turn on other self modification methods that slow the game down significantly. What the game is doing is it has 3 buffers with code in memory and one virtual address pointing to these code blocks. It constantly is changing the buffer that it points to, so turning on self mod methods detects this change and constantly recompiles these buffers.
What broke it in latter beta builds is that I found the virtual address and said this code already existed and replaced it with the old one. So it had both virtual locations pointing to the same physical location. I had built the original solution on how games like golden eye and conkers bad fur day used the TLB. I am going to re-write some of the function lookup to make use of Physical address as well as virtual address. I hope I should be able to fix this problem in the next beta build.
Read here to get access to the beta development of pj64
Reply With Quote

developer diaries
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

All times are GMT. The time now is 09:12 PM.

Powered by vBulletin® Version 3.7.3
Copyright ©2000 - 2023, Jelsoft Enterprises Ltd.