Post subject: Gens.register( ) versus FCEU.register( )
Skilled player (1652)
Joined: 11/15/2004
Posts: 2202
Location: Killjoy
In short: FCEU.register( ) allows you to have input.get( ) to allow input between frames, i.e. somewhat 'embeds' input.get( ) into the GUI. Gens, does not. In fact, there is no way I know of to get Gens to receive key input between frames. This makes things such as FatRatKnight's multi-input and rewind script fail in conversion to gens, and additionally, far more difficult to implement. Any Emulator devs have any idea why this happens?
Sage advice from a friend of Jim: So put your tinfoil hat back in the closet, open your eyes to the truth, and realize that the government is in fact causing austismal cancer with it's 9/11 fluoride vaccinations of your water supply.
Editor, Skilled player (1202)
Joined: 9/27/2008
Posts: 1085
I'm not really much of a developer, but I think gui.register calls the function each time the emulator updates its display. For some reason, FCEUX was given a reason to update its display even when paused, perhaps so it can fade out its own emulator-related messages. Side effect being that it ends up repeatedly calling lua's gui.register function, because after all, it is updating its display. I have a feeling the fact it even works is unintended, especially since any documentation states that it's meant to be "Used when that 1 frame delay for rendering is not acceptable." But this is one of those cases where an unintended feature, the fact it's called repeatedly while paused and not just once, works very strongly in our favor. But that's what I think. That the fact my multitrack script even works is due to a glitch. One which we should cause other emulators to break in exactly the same fashion, quick. Another thing I'm thinking about is the drawing routines of other emulators. When lua pastes things into the screen, does it blow away the graphics of the game to do so? By that I mean, if I were to save-state with lua, then get rid of lua, play a few frames then load-state, will I see the lua junk in the freshly loaded state? That's one more thing to check.
mz
Emulator Coder, Player (79)
Joined: 10/26/2007
Posts: 693
I think everything FatRatKnight said is correct.
FatRatKnight wrote:
That the fact my multitrack script even works is due to a glitch. One which we should cause other emulators to break in exactly the same fashion, quick.
But then you probably get minor bugs like this one: http://tasvideos.org/forum/p/209639#209639. Still, I rather have that bug instead of having the screen filled by old emulator-related messages, as in Gens. :P
FatRatKnight wrote:
if I were to save-state with lua, then get rid of lua, play a few frames then load-state, will I see the lua junk in the freshly loaded state?
I just checked in Gens and you don't see the Lua junk after loading a savestate. I'm sure it's the same in PCSX-RR too, so probably it's the same in all emulators.
You're just fucking stupid, everyone hates you, sorry to tell you the truth. no one likes you, you're someone pretentious and TASes only to be on speed game, but don't have any hope, you won't get there.