| Main > Software Forum |
| CPWizard v0.97 Beta 1 - Public beta release |
| << < (4/6) > >> |
| Howard_Casto:
Well afaik the app has been dead for some time, so there's no wonder it didn't show up. I'm confused about changing project names being a chore though. Most of my apps are saved as "project 1" while the folder itself is the name. Of course I edit the internal project name, but even in .net that should be extremey easy. Regardless, cpwizard it is I guess. :) I wasn't going to say anything, because it's always good to throw in stuff you want, but since youki mentioned it.... It seems to me that irc on a cab, where you'd need to use a on-screen keyboard, is rather useless. The irc channel itself certianly wouldn't be, but having it in the viewer sorta is. It could be harmful as well since adding in all that extra code/graphics/whatever into a resident program is only going to bulk up whatever memeory footprint it already has. Also I'm curious as to your line of thought as to why it would be so slow on lesser machines. I chose to write j5 in gdi (which is even crappier proformance-wise than gdi+) specifically to make the required resources lower! Processing power isn't going to be an issue because mame is paused nor is rendering speed as, save your irc component, It'll be rendering static images. I mean I don't know what's going on inside which is why I'm asking.... Just as an example j5 can display sf2 (which is a "full load" game that uses all labels) with scrolling text and the full resolution control panel pack image shown and it uses ~0% procesing power and roughly 7 megs of ram... 8 megs under "full load" (when it's calling mame multiple times to get various data). The procesing requirements never spike above 1% either. Now unfortunately, you are using .net so we can add 15-20 megs on to that, but that's still fairly slim. Even the direct draw overlay shouldn't be effecting things that much. Dx7 has a fairly small footprint. With that being said, if anything is slowing down your app it's the fact that you are using directx. The reason I did gdi is because when two direct-x apps are open at the same time (in this case one being mame) they fight over the rsources to the video card, even if there are more than enough resources. I can't run 3dsmax and dk at the same time, for example, they both stutter and eventually crash. My point on that is switching to full direct-draw or d3d would probably slow it down, unless you are doing some kind of crazy animations I don't know about or constantly refreshing the screen instead of just doing it once. I'm not trying to be critical on that point, I'm just trying to be helpful. If it's really hogging the resources like you say (even to a much lesser degree than the minimum specs you posted) then there might be something off in the code. |
| headkaze:
--- Quote from: Howard_Casto on September 03, 2007, 11:21:14 am ---Well afaik the app has been dead for some time, so there's no wonder it didn't show up. I'm confused about changing project names being a chore though. Most of my apps are saved as "project 1" while the folder itself is the name. Of course I edit the internal project name, but even in .net that should be extremey easy. Regardless, cpwizard it is I guess. :) --- End quote --- Visual Studio .NET 2005 projects are not easy to rename. In fact I tried to do it manually (search and replace) on all the files but it wouldn't run right after that. I found this utility called vsrename which worked a charm. --- Quote from: Howard_Casto on September 03, 2007, 11:21:14 am ---I wasn't going to say anything, because it's always good to throw in stuff you want, but since youki mentioned it.... It seems to me that irc on a cab, where you'd need to use a on-screen keyboard, is rather useless. The irc channel itself certianly wouldn't be, but having it in the viewer sorta is. It could be harmful as well since adding in all that extra code/graphics/whatever into a resident program is only going to bulk up whatever memeory footprint it already has.[/url] --- End quote --- The IRC code isn't adding much footprint to the code. CPWizard's binary is less than half a meg so how is that going to be a problem? And it's too late anyway I've already added the IRC code and some people like the idea, there is no point in removing it because some people think it's pointless. You can also join the room using mIRC if you wish to use a fully featured IRC client. The idea is people can drop in while they're having a beer and playing a game on their cab to come in and chat with other people doing the same thing. I've also been working on a multiplayer feature in CPWizard for Mame using the kaillera client/server, so it could also be a place to initiate a match over the internet. --- Quote from: Howard_Casto on September 03, 2007, 11:21:14 am ---Also I'm curious as to your line of thought as to why it would be so slow on lesser machines. I chose to write j5 in gdi (which is even crappier proformance-wise than gdi+) specifically to make the required resources lower! Processing power isn't going to be an issue because mame is paused nor is rendering speed as, save your irc component, It'll be rendering static images. I mean I don't know what's going on inside which is why I'm asking.... --- End quote --- I thought J5 used windows forms and labels for it's rendering? For J5 you generate the image and display it. With CPWizard I have menus and text to scroll so every time you take an action by pressing a key the graphics are rendered again. That can be a little slow in GDI+, but I don't have an old PC to test it so I assumed it is because it isn't blistering fast on my P4 whereas a DD or D3D program would be. But it runs great on my cab and dev machine so maybe I'm wrong in recommending specs that high. It's up to people to test it on their PC and let me know, I can change those numbers in a future release if necessary. --- Quote from: Howard_Casto on September 03, 2007, 11:21:14 am ---Just as an example j5 can display sf2 (which is a "full load" game that uses all labels) with scrolling text and the full resolution control panel pack image shown and it uses ~0% procesing power and roughly 7 megs of ram... 8 megs under "full load" (when it's calling mame multiple times to get various data). The procesing requirements never spike above 1% either. Now unfortunately, you are using .net so we can add 15-20 megs on to that, but that's still fairly slim. Even the direct draw overlay shouldn't be effecting things that much. Dx7 has a fairly small footprint. --- End quote --- CPWizard uses 0% CPU when minimized. In fact it uses 0% CPU maximized too. It only takes CPU when you press and key and it renders a new frame while in the menu system or when your manipulating graphics in the CP Editor. The program itself reads a file it generates called MiniInfo.xml which is a combination of GameInfo.xml, controls.xml etc. into one file. That file stays resident. I might change that in the future as the program takes about 100 MB total in RAM thanks to this large file in memory. So with Mame taking an average 100 MB, CPWizard taking about 100 MB and your FE taking up whatever, I recommend 512 MB of RAM to comfortably run it in the background. I may change it to load data dynamically in the future, but it's still in beta anyway. --- Quote from: Howard_Casto on September 03, 2007, 11:21:14 am ---With that being said, if anything is slowing down your app it's the fact that you are using directx. The reason I did gdi is because when two direct-x apps are open at the same time (in this case one being mame) they fight over the rsources to the video card, even if there are more than enough resources. I can't run 3dsmax and dk at the same time, for example, they both stutter and eventually crash. My point on that is switching to full direct-draw or d3d would probably slow it down, unless you are doing some kind of crazy animations I don't know about or constantly refreshing the screen instead of just doing it once. I'm not trying to be critical on that point, I'm just trying to be helpful. If it's really hogging the resources like you say (even to a much lesser degree than the minimum specs you posted) then there might be something off in the code. --- End quote --- No, I appreciate your opinions but I'm not using DirectX. If you turn on DD overlays which by default is turned off, then it uses DD but it only uses one surface for rendering and thats it. There is nothing "off in the code" I would just recommend people with older/slower systems/video cards to try it out and if it runs badly then use a different viewer or wait for some possible optimizations in the future. It would be nice to get a little more feedback on the actual program and bug reports etc. |
| Howard_Casto:
J5 uses both actually. Windows forms and picture boxes are easier to scale, so I use those by default. The png generator can't capture a copy of a windows label though, so I use gdi to render the text and image files manually and then blit everything to a buffer before printing. Ahh ok, that's your problem. You should never keep xml databases in memory for any program ever. Those things can be frikkin huge! The whole point of xml is you can parse it quickly so you can just retrieve data as need. Then again, imho the whole point of xml is to bloat what would otherwise be a very slim text file. ;) I'm going to have to go wildy off-topic for a sec and go on a rant. :soapbox: Ok mame's "improved" listxml prints out roughly a 30mb file. The dragon king takes this file and converts it to a delimeted text file, stripping out all the tags. Wanna know the size of that file? Oh btw this file stores all the data for every emulator on my system, not just mame. Still wanna know... It's less than 2mb! That means just adding the stinking xml tags into the file bloats it by a factor of 10! Sorry man, but I've barely had time to download it. Besides real world stuff, j5's new dde code is acting up and I'm having a hard time tracking the bug down. Worked on it for about an hour today and have yet to be any closer to figuring it out. |
| headkaze:
--- Quote from: Howard_Casto on September 03, 2007, 02:47:16 pm ---J5 uses both actually. Windows forms and picture boxes are easier to scale, so I use those by default. The png generator can't capture a copy of a windows label though, so I use gdi to render the text and image files manually and then blit everything to a buffer before printing. Ahh ok, that's your problem. You should never keep xml databases in memory for any program ever. Those things can be frikkin huge! The whole point of xml is you can parse it quickly so you can just retrieve data as need. Then again, imho the whole point of xml is to bloat what would otherwise be a very slim text file. ;) I'm going to have to go wildy off-topic for a sec and go on a rant. :soapbox: Ok mame's "improved" listxml prints out roughly a 30mb file. The dragon king takes this file and converts it to a delimeted text file, stripping out all the tags. Wanna know the size of that file? Oh btw this file stores all the data for every emulator on my system, not just mame. Still wanna know... It's less than 2mb! That means just adding the stinking xml tags into the file bloats it by a factor of 10! Sorry man, but I've barely had time to download it. Besides real world stuff, j5's new dde code is acting up and I'm having a hard time tracking the bug down. Worked on it for about an hour today and have yet to be any closer to figuring it out. --- End quote --- Again, you assume things about the program that are just plain wrong mate ;) Do you think I keep the entire formatted xml file in memory? That would be stupid. I parse the data into objects. ListInfo.xml generated by Mame is 27.5 MB in size. I generate a file called MiniInfo.xml which contains data from ListInfo.xml, controls.xml, catver.ini, colors.ini, HallOfFame.xml, nplayers.ini etc. all joined into one file, and the size of that file is about 7 MB. Then I parse that file which means all the padding of an xml file is not stored in memory at all. It's the logical way to go as xml and objects fit together extremely well, it's what OOP is all about. Perhaps you didn't mean it that way, but the padding of the xml file is only stored in the file, not in memory. I could have output to a comma delimited text file, but I decided to use xml. It's just the way I do it, and parsing the whole file on my PC takes about two seconds and that includes history.dat, mameinfo.dat and story.dat. And since CPWizard was designed to run resident, on startup it parses the files once, then it never needs to load in that particular set of data again until your PC is started up again. Now I would be appreciate if you would stop scaring people into thinking it's some bohemeth program that will eat away at your precious computer memory like some rouge troll in your PC hehe I'm kidding, but seriously if you want to debate methods of storage with me, why not send me an e-mail instead of posting about it in my beta testing thread with jargon the common person won't understand anyway. Don't get me wrong I always appreciate your feedback, it's just most of your assumptions you've made about the program so far have been wrong and you havn't even tried the program out yet! I've also mentioned a few times that it is beta, and there will most probably be optimizations as far as dynamic data loading in the future. Right now I don't mind it taking up 100 MB of my 1 gig RAM on my cab anyway. And even after having Mame, CPWizard, XP and GameEx all running together there is still plenty of memory free on my system. On the DDE stuff for Mame hooker, I'm quite fond of Mame's method using hidden Windows and custom messages. But I guess your aiming for something that communicates faster or something. I've never looked into DDE, it doesn't seem to be a common method for interprocess communication, not these days anyway. EDIT: Can someone explain to me how the screenshots image can be viewed 5714 times when the thread has only been viewed 326 times?? :dizzy: |
| loadman:
--- Quote from: headkaze on September 03, 2007, 11:36:26 pm ---EDIT: Can someone explain to me how the screenshots image can be viewed 5714 times when the thread has only been viewed 326 times?? :dizzy: --- End quote --- Probably has something to do with the name being the same as another Program of the same name 'CPViewer'. No doubt there is/was a file of that name on this forum and hence those stats are bloated. Just a Theory. |
| Navigation |
| Message Index |
| Next page |
| Previous page |