What's new

Aristotle's Mudlord & Rice Video

Status
Not open for further replies.

Cyberman

Moderator
Moderator
It's likely a memory leak where memory is allocated but not freed.
Making a 'save state' creates an image of the N64 and reloading RESETS the GPU (IE forces it to close and then reallocate memory). Probably something to do with the textures.

Erstwhile, I doxygen'd the source, I think graphviz needs a bit more configuration so that the call graphs can be seen and not throw errors (woops). I browsed the output and for something not commented for doxygen the output isn't too bad. It came out to be about 17megs from the source in size I would stick it here but well things are broken. So that is that for now.

Stephen

PS
I fixed graphviz and made a few more changes. It seems the output is about 92M (uncompressed) 63M compressed. I got a headache browsing it there is just a lot of information. It does a nice job of showing structure however interfaces etc. used in the code. Suggestions where to put such a big pile of data? Also it takes about 6 minutes to generate the output and my machine isn't super slow or anything.

Anyhow ... what is is, I can't put it on a geocities account because it's 7 times too large for that. :D
 
Last edited:
P

Pokemaniacs

Guest
Thanks for the quick analysis. I think you are right, the memory usage goes up very fast in the battle scene.
 

microdev

Member
Thanks for the quick analysis. I think you are right, the memory usage goes up very fast in the battle scene.

Could you please post a save state? Than somebody could have a look at that as soon as he has time. Does this problem occur with all versions of Aristotle's plugin? Do you use a hires pack for this game?
 
P

Pokemaniacs

Guest
I tried uploading a before and after screenshot in rar and jpeg but always upload failed. I am using the latest Aristotle's plugin 6.18 version.

I do not use hires pack.

Tried to upload savestate - not successful.
 
Last edited:
OP
A

Aristotle900

New member
This must be why pre-loading doesn't work, because overall, the thing keeps causing memory related crashes. I played CLOD with Gitech's pack, and it crashed about the middle of the game (Playing from start to end) and again towards the end. In fact, once it loads the textures into memory, it then like, resets the memory usage, and then starts reloading all textures again throughout the game, till it's ether restarted or crashes. >.<

So ether this plugin just always has memory problems, or it does when used with an emulator, or maybe there is a better method to make it allocate memory, without it causing memory access violations. Also, I don't know why it doesn't use some of the Swap file even..It seems to eat at only the actual RAM in the PC, which doesn't make since to me. Perhaps it's what I last said, about it's way of using memory. Ether way, it currently has problems when playing a very big texture pack, but it's awesome with lets say, a 50-150MB pack. (For me, because I have 256MBs of RAM in this laptop.. Yes, I need more. lol)

Edit: Forgot to respond..

Pokemaniacs: Yes, that's normal for it to shoot up on the memory usage, to prevent slow downs, as it reloads needed graphics from memory. What's not normal is, these goofy memory allocation errors, and memory access violations, which I'm now reading up on, about windows programming.
 
Last edited:
P

Pokemaniacs

Guest
Aristotle,

Thanks for the reply.

On my vista notebook, it uses all available memory (1.2 GB) and crash the emulator. (Just a note - I had no such memory issue using previous Rice plugin running this game)

Also, the sound starts to crack and the game emulation starts to slowdown and lag during the battle scene when memory usage is high (CPU would be around the 50% region).
 

Cyberman

Moderator
Moderator
Aristotle a suggestion then, you should create a log file that adds something each time data is created and destroyed by the program, if possible include size and class information (if an object). Send this information to a stream buffer that you empty each N64 frame update to the aforementioned log file. Perhaps you can frame stamp each allocation too so you have an idea when and where stuff is happening.

The idea is to see if your data in equal your data out in terms of allocation.

Stephen
 

gitech

N64 Artist
Hi guys,

I've got some great news from KoolSmoky! He has given us the permission/given us the suggestion to use his library he wrote for Glide64 HQ/Napalm for Aristotle Video...

Here is his message:

Perhaps it would be easier if Aristotle and Microdev integrated GlideHQ into RiceVideo.

I wrote GlideHQ as a library for Glide64 Napalm, but it can also be used as a generic library for N64 video plugins. It includes options for texture filtering, caching, hires texture, automatic texture compression to FXT1 or S3TC (DXT) format, etc. Textures are outputted in raw image format that could be loaded in D3D or OpenGL with little or no modification. One of the neat features is the ability to enable use of hires textures on low end gpu, such as the 10 year old 3dfx Voodoo2 with 8Mb VRAM. The source code is posted at the Glide64 message boards. It is platform portable and currently supports Windows and Linux.

-KoolSmoky


So, it look like his library could give us all the functionality we are looking for like texture cashing and many more fun things to play around with!

He (might) be posting here soon...yeay...I am very excited!

I am also glad to hear of your continued work on the project and I hope I can help assemble a team that can get all the little bugs worked out like the DRAM CRC bug with us! I am contacting many people that may be able to contribute. So far Rice and Gonetz have said they will stop by sometime, among a few others we will see about soon! ;) :D I am networking in the background for you guys and I couldn't be happier about what's going on.

@Cyberman, It's cool to see you here and rcgroups as well! :) Thank you so much for your contributions with this project so far! I have a special request for you. I will send you a PM in a moment.

Thanks again and TTYL,
Jay

PS: I have also found someone to start work on cheat codes for CLOD to change the targeting reticle and look into being able to retexture the in game text! :D
 
Last edited:

Cyberman

Moderator
Moderator
KoolSmokey was maintaining the OGL and DirectX builds for 3dfx for a bit if it's the same person. Well he's welcome to stomp around here if he wants (just avoid crushing the newbies).

Cyb
 

microdev

Member
Erstwhile, I doxygen'd the source, I think graphviz needs a bit more configuration so that the call graphs can be seen and not throw errors (woops). I browsed the output and for something not commented for doxygen the output isn't too bad. It came out to be about 17megs from the source in size I would stick it here but well things are broken. So that is that for now.

Suggestions where to put such a big pile of data?

Nice, sounds interesting.

Upload it to MegaUpload. I don't exactly remember the max filesize allowed but it's at least 50mb.
If it's less then your file, put it in a RAR or ZIP archive and create 2 volumes w/ half the size of the file.

thx
 

death--droid

Active member
Moderator
I don't think texture dumping is working.
Just double checking at the moment.

EDIT:

Never mind i didn't set stuff properly.

EDIT2:

When playing games it seems to take a few seconds to change scenes.
 
Last edited:

death--droid

Active member
Moderator
Loading hi res textures does not work for me.
It instantly crashes.

EDIT:

Can you release a version with the texture loading modifications reversed please.
Oh yeah as a feature request can you add support for wide screens please.

Cheeers
 
Last edited:
OP
A

Aristotle900

New member
Loading hi res textures does not work for me.
It instantly crashes.

EDIT:

Can you release a version with the texture loading modifications reversed please.
Oh yeah as a feature request can you add support for wide screens please.

Cheeers

What is the information it gives you when it crashes? Which emulator also? And I've never programed anything for widescreens. o_O Also, I don't own one..
 

Cyberman

Moderator
Moderator
death--droid:
Wide screen? Well I think Jabo's plugin supports it however the issue is if it's crashing on your machine, distorting all the objects et al so they look right on a wide screen display is probably not a good feature to implement yet.

Aristotle900
I suppose you could just locate the display in the center of the wide screen area instead that should leave the view normal but look right on a wide screen display.

You can simulate a wide screen by keeping the aspect ratio correct for what is displayed (IE 1067x600/1368x768 with the game at 800x600/1024x768 in the center) and adding 16:9 ratios for windowed display.

Cyb
 
P

Pokemaniacs

Guest
The high memory usage does not happen for Paper Mario or Zelda - Ocarina of Time. It seems to affect OB64 greatly and entering stronghold at high memory usage, say 500 MB+, will crash the emulator although other type of gameplay including battle still works if there is still available memory.

Also, emulator will sometimes crash when you do F12 or "end emulation" in PJ64. It doesn't happen for Jabo plugin.

Is it due to the texture in OB64 that is causing this problem ?

Vista SP1 2.53Ghz
PJ64 1.6
Nvidia GeForce 9200M GS 256 MB

EDIT:
Test with 6.1.8 beta and had the same issues mentioned earlier about OB64.
 
Last edited:

death--droid

Active member
Moderator
What is the information it gives you when it crashes? Which emulator also? And I've never programed anything for widescreens. o_O Also, I don't own one..

It doesn't give any info the whole emulator just dies.
I'm using project 64.
It also only happens when textures are drawn on screen.

EDIT: It works perfectly in Mudlords latest one.

Edit2:Are you able to upload a version without the changes to the teture loading/caching.


Cheers
 
Last edited:

death--droid

Active member
Moderator
Thank you.
I'll edit my post if it still doesn't work.

EDIT:
Odd it still crashes.
I even compiled it myself just to check and it crashes.
EDIT2:Everything works but texture loading and i have no idea why.
 
Last edited:
P

Pokemaniacs

Guest
I encountered a popup box from PJ64 "Cache: Failed to translate: 0" while playing Paper Mario. Hit <enter> and the number changes from 20, 40, 60 etc and I have to end task to get rid of the popup msg before the emulator crash. This happens when I was hitting the huge boulder continuously at Koopa Bros Fortress.

In the game, press start takes a long time before the next screen appears. During the battle scene, screen will flicker during selection of battle option only. All other scenes are ok. Is it an emulator or plugin issue ?

Memory usage is stable at 100+ MB and cpu usage is low. Unable to attach screenshot - upload not successful.

Vista SP1 2.53Ghz
PJ64 1.6
Nvidia GeForce 9200M GS 256 MB
 
Status
Not open for further replies.

Top