Page 2 of 50

Re: New Updated Openbor engine Game's posted

Posted: Sat Jun 22, 2019 12:22 pm
by Ivan Guber
Thanks. If you can fix RAM leak, it's very help to optimise modern openbor games to Dreamcast.

P.S. I edited my post (first time i post wrong link on video) and added correct link to video.

Re: New Updated Openbor engine Game's posted

Posted: Sat Jun 22, 2019 12:25 pm
by Ian Micheal
I will try to do this.. it was the main thing why i wanted to be able to compile it.

Re: New Updated Openbor engine Game's posted

Posted: Sat Jun 22, 2019 1:38 pm
by Ian Micheal
I have in the past had a lot of problem's with my homebrew with kos, with memory leak's ,and this use's SDL.. Did the first beat of rage engine which did not use SDL have a memory leak ?. The main memory leak with SDL was allways ogg and media file loading.. I might have to change a lot. ive started with

- changing memcpy to sq_cpy
This function is similar to memcpy(), but uses the store queues to do its work.
-Seting clear video, system memory between level's

Here is work in progress Bin https://drive.google.com/open?id=1pWXt6 ... 7KDL862_Cq
edge of screen me be messed up . Still working on it

Re: New Updated Openbor engine Game's posted

Posted: Sat Jun 22, 2019 2:23 pm
by Ivan Guber
Ian Micheal wrote:I have in the past had a lot of problem's with my homebrew with kos, with memory leak's ,and this use's SDL.. Did the first beat of rage engine which did not use SDL have a memory leak ?. The main memory leak with SDL was allways ogg and media file loading.. I might have to change a lot. ive started with

- changing memcpy to sq_cpy
This function is similar to memcpy(), but uses the store queues to do its work.
-Seting clear video, system memory between level's

Here is work in progress Bin https://drive.google.com/open?id=1pWXt6 ... 7KDL862_Cq
edge of screen me be messed up . Still working on it
I test it tomorrow. I have bba, and i try tomorrow config bba to test openbor in dc-load ip, to figure out what leak RAM.

I dont know has or not it leak's memory first beat of rage engine, i use openbor 4111.

Re: New Updated Openbor engine Game's posted

Posted: Sun Jun 23, 2019 12:13 am
by Dakangel
I hope these Topics talking about updating the port on dcemulation Will help, specialy the second link about the kos ram issue solved.

openbor Dreamcast port

This Was Made by samurai x the original port maintainer

kos reserve memory?
...written by blackaura in 2009...

Thinking about it, you might have malloc debugging turned on.

Check kos/kernel/libc/koslib/malloc.c - if you can see that DEBUG and KM_DBG are defined, that means you have malloc debugging turned on. It seems to be enabled by default at the moment.

DEBUG adds some additional checks and assertions. I don't think it uses any extra memory, but apparently it slows down memory allocation a lot. KM_DBG does use more memory. It rounds all memory allocations up to a multiple of 32 bytes, and then adds an additional 512 bytes to each allocation. It fills this extra space with magic numbers, which are used to check if you've written outside the allocated buffer, and some accounting information.

If you're only allocating large chunks of memory, you probably wouldn't notice it. If you're allocating lots of small chunks of memory (say, less than a few KB each), you'd notice it very quickly. Probably the pathological worst case is something like a Lua interpreter, which typically allocates less than 32 bytes at a time - the extra overhead would increase your memory usage around 16 times.

Re: New Updated Openbor engine Game's posted

Posted: Sun Jun 23, 2019 3:07 am
by Ian Micheal
Dakangel wrote:I hope these Topics talking about updating the port on dcemulation Will help, specialy the second link about the kos ram issue solved.

openbor Dreamcast port

This Was Made by samurai x the original port maintainer

kos reserve memory?
...written by blackaura in 2009...

Thinking about it, you might have malloc debugging turned on.

Check kos/kernel/libc/koslib/malloc.c - if you can see that DEBUG and KM_DBG are defined, that means you have malloc debugging turned on. It seems to be enabled by default at the moment.

DEBUG adds some additional checks and assertions. I don't think it uses any extra memory, but apparently it slows down memory allocation a lot. KM_DBG does use more memory. It rounds all memory allocations up to a multiple of 32 bytes, and then adds an additional 512 bytes to each allocation. It fills this extra space with magic numbers, which are used to check if you've written outside the allocated buffer, and some accounting information.

If you're only allocating large chunks of memory, you probably wouldn't notice it. If you're allocating lots of small chunks of memory (say, less than a few KB each), you'd notice it very quickly. Probably the pathological worst case is something like a Lua interpreter, which typically allocates less than 32 bytes at a time - the extra overhead would increase your memory usage around 16 times.
Thank you dakangel :) I have removed those define's, malloc debugging turned off, I'm now recompiling Kos. ive also changed the render to Use hwsurface's video ram that should help as well ,ive ported that from the psp version.. It will force surface's to rending to video ram not system.. It was rending surface's to system ram. .. Also when i recompiled kos i change the compiler flag for space that should give us the smallest bin file. Freeing up more space..

I followed the topic and apply it.. If this work's i dont know.. It run's fine on Demul . im not sure if the ram size reporting is even correct. When i tryed it Double dragon extreme the game it kept working even thou, the ram was full... Seem's to work ?

anyway's a new build with the update's Link coming try this one first As you will see the bin size is a lot smaller

Re: New Updated Openbor engine Game's posted

Posted: Sun Jun 23, 2019 3:57 am
by Ian Micheal
Here is the link Malloc debugg turned off Hw lock and unlock SDL surface rending. Kos Compiled with -0s unroll-loops
https://drive.google.com/open?id=1bh4Kb ... fs9m7d-Bvp It should fix crashing problem's and slow loading, should be more FPS..

Re: New Updated Openbor engine Game's posted

Posted: Sun Jun 23, 2019 4:34 am
by Ivan Guber
Can't download. Link is broken.

Re: New Updated Openbor engine Game's posted

Posted: Sun Jun 23, 2019 4:40 am
by Ian Micheal
https://drive.google.com/file/d/1bh4KbA ... d-Bvp/view This is optmized for space small bin slower but about 500k more memory


https://drive.google.com/open?id=1dvh62 ... cmj-zbP_QK This is super fast up to 10fps faster all optimizing are on no debug



This should work now :) the link.

I have been working on it more since this build. I will update later.. Now i think the FPS is faster but still not clearing memory .. The smaller bin does give you about 500k more memory not a lot but it's something/.
OfficalBUILD.png
Current official build Same game at same point

IMRBUILD.png
IMR build same game at same point , It seem's to be using less ram ? It's still not unloading it when it get's to 16meg Down more rabbit hole's i go:)
As you can see up to 10fps faster at time's So it was worth something for all these hour's lol
https://drive.google.com/file/d/1dvh62p ... mj-zbP_QK/
view Fast HW screen locking and unlocking and fast screen clearning

Re: New Updated Openbor engine Game's posted

Posted: Sun Jun 23, 2019 12:12 pm
by Ivan Guber
Thank you.