Posts for zeromus


Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
daayuumm you must have gone to tact academy. My folks sent me to pecker prep :/
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
Samsara wrote:
What gives anyone the right to do this? At all? Ever?
I don't think anyone really has the right to anything, but nothing's quite as simple as ever and never, and I'll humor your question with some possibilities. If you come onto programmer's turf and talk about programming, you better expect to speak programmer's language. Programmer's language uses rudeness as a mechanism of emphasis. If programmer spends words writing very detailed rude things, it's because he wants you to take them very seriously. Programmer's language is exact. If the reality is harsh, then the words are necessarily harsh. Programmer's time is limited and programmer's social skills are retarded. Sugar-coating aforementioned harsh language is both costly in terms of time and energy. Programmer's instincts for communication balk at adding semantic gauze. Programmer's life is spent busting balls for users. Some programmers expect respect. Some other programmers just expect the common courtesy of having what they've bothered to write be actually read. As a practical matter, it doesn't pay to be rude to people who are busting their balls for you. Programmer wonders why he's talking about being mean instead of programming. He would be in a support group talking about his feelings if the former's what he wanted. As catb.org explains, a reply from a programmer is a compliment. It's already being nice. But a programmer's power comes at a terrible price, and it's that each word he says makes him into a bigger asshole. Sometimes it's hard to even try fighting it. If he fights it, he probably sounds like a sarcastic smartass due to some law of verbal alchemy where rudeness can neither be created nor destroyed but only change form. So what's the use? If someone can't help but be rude, maybe that gives them the right. Maybe you want them to have the obligation to try not to be rude, but perhaps they'll get more code done if you don't tell them that. I am literally writing these words during time I had booked for working on disc loading.
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
catb.org says why devs are rude and why it isn't unfair. Did you read it yet? I answered your rephrased question and all I got back was ellipses. I think you didn't understand it. Did you reread it yet?
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
OK then you were already answered. There are no links. Pick your open source emulator and play around with it for a year while you learn programming. Do the things we said, or do other things, or do whatever makes you happy. Just do anything. Change all the blue in the emulator to purple. Change all the bleeps to bloops. Then make it print 'bloop' instead of blooping. Then make it write bloops.wav. Fix some things that annoy you. Repeat until you're an expert.
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
We fixed memory leaks in lua at some point. Probably after 1.9.4
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
I had to be mean to stop you from wasting someone's time. And your own. You posed a question as if you were going to consider doing the work. Now you've said, as I suspected, you would never do anything like that. So the entire explanation would have been aimed at something which will never be. We can leave this thread here for when you or someone else is actually seriously considering doing the work, and then fill it with fresh information. Finally, me and solarplex both actually answered your vague question about as well as could be done, and you didn't acknowledge or probably even recognize it. Again, as I expected.
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
the original pastebin was written with a 'please do not redistribute' license which even if its details were clear or made sense would explicitly not be binding. It has since then been distributed in dozens of pastebins and gists and copied onto this website. The ship has sailed. I am going to go out on a limb and hypothesize that sethbling hasn't responded to your request to do X with his code on reddit because he's buried under 100,000 requests to do X with his source code on reddit, a consequence of making the mistake of seeming a little cagey about what people did with his script and folks wanting to do him the courtesy of asking him about tiny unimportant things. Trust me, if you want to do him a courtesy, go immediately kick his script's ass with your own script and write 'based on sethbling's cool work' at the top of it
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
There's no sense writing the procedure down for you until you're an expert. You won't understand any of it. And, in fact, being an expert means you can look at the code and immediately understand what to do, which is why we haven't needed to write it down. Furthermore, anything we did write down here would be out of date by the time you became an expert. Finally, any response you could possibly have to such information would be in the form of questions based on confused miscomprehension of information only an expert can understand. So there's no sense in continuing this thread. If you want to feel some kind of hope, begin by taking the emulator you're interested in, getting it to build, ripping out the user interface, and abstracting out its use of the filesystem. Address questions to a c++ programming forum while you're busy learning c++.
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
why are you still using pastebin anyway, someone make a github already
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
Besides not knowing the difference between CPU emulating and letting the CPU take a nap while a GPU renders millions of polygons, if the framerate isnt impacted by running the AI, then it's because the game's computation is dominating the process. That's the opposite of the conclusion you drew. The article you linked is pretty pathetic. LuaThread is dismissed because he doesn't like it. But you say theres no real facility. I assure you, if someone wants to do this in parallel, they can.
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
Oops, I didnt mean replacement. I meant alternative.
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
Well then it'd necessarily be a DLL anyway because you'd want to do it in c++ to be able to use it in other emulators. Good luck!
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
lua's the only point of extensibility besides the one I mentioned we're planning which would if built make what you proposed redundant. why do you need a dll? just make a custom build.
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
I'm presently engaged in a long-running process to evaluate squirrel as a possible replacement. Doesn't help you any directly, but reading about a language designed by people who hated the same things about lua as you do might help you feel better while venting.
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
nope. hack the source code or use lua. I don't know what a "buffer watcher" is but there's already rich memory watching capabilities in bizhawk. Whatever parallel image processing logic you have in mind sounds particular to your project. Currently there's some deliberation on a new interface for kind-of scripting bizhawk with c# code, so that lua isn't necessary. Whether that eventually supports a DLL is a minor detail, but it will be a .net dll and not an OSX dylib. There's virtually no way you'll control bizhawk from a native dylib.
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
Was something relating to timing in the mGBA core in 1.10.0 affecting your ability to run "this in your emulator properly"?
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
1. config > cores > NES with QuickNES 2. so, give it the GBA firmware file. 3. Sounds unlikely. And at any rate, so what? Go check the input bindings
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
I got tricked into thinking about this. I'll share my thoughts so I can then delete them. I haven't studied mari/o or any AI topics deeply, but it seems to me it's essentially a lab rat which can perceive its maze and perceive the smell of cheese at the end. This approach will be ultimately limited to what you'd expect from a well-trained rat. Higher organisms and humans perceive other things. Most importantly I think, they perceive their levels of frustration and whimsy, and they are able to perceive other attempts at runs through levels--from others, or more useful for us, the entire history of their attempted runs (reflecting on past experiences). Most importantly, they perceive their satisfaction with what they're doing, not just whether they succeeded. So what I would do next if I was working on this would be to put the operations of the mari/o script under the control of a higher order process. It can perceive the structure and outcome of previous runs, and it can control parameters for the mari/o process to perceive, essentially as guidance from the higher order: how creative it's feeling (fitness function governed by exploration of possibilities, not progress towards goal); how many trials to run, etc. Whether this higher order process is a neural net or not is hard to say. Evolving it as well would turn into an exponentially harder problem since you would be trying to evolve a mind and not just a route. It might be better just to use a traditional AI approach instead of brute force trials. The output of the this executive module is parameters for mari/o (or for the fitness evaluator) so that it can guide its evolution. That kind of brute force _practicing_ is something the sole human mind each of us has is good at. This kind of division of responsibilities should be easier than trying to jam everything into what is effectively just one bigger, better-trained largely-instinctual rat-brain (the one mari/o neural net). And I think it models a human being better, who is kind of an executive controlling a mammal brain.
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
if you dont want the throttle then hit the config menu and find the throttle options
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
omg use pastebin or something
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
file > savestate > save named state > c:\mario-evolve\dpi.state where c:\mario-evolve contains evolve.lua how much experience do you have with emulators? The .state is a savestate file. You make it the same way you make any savestate, and the evolve script starts from there.
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
System bus is 32 bits. It could not be searched usefully, it's too much data. That's probably why. You need to search individual ram banks and then read a GBA memory map document to see where in the system bus they are mounted. For example if you find a value at 0x000C of IWRAM then since IWRAM is mounted at 0x03000000, your system bus address would be 0x0300000C
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
This zip is 100% ready-to-go http://fceux.com/mario-evolve.zip
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
I think our lua is horrifically broken and after some stress, the module that translates lua tables to .net objects either breaks (in this case) (possibly related to GC) or leaks memory or both. I don't think there's any way for someone to fix this without ripping out the lua entirely and binding in a new one. It's almost positively a waste of time to debug this.
Editor, Emulator Coder, Experienced Forum User
Joined: 8/7/2008
Posts: 1156
We need a total documentation page for this, it's probably been answered for every platform in half a dozen pieces sprinkled around various threads