All of that is good info, that I'll have to take time to ponder through and try to understand, along with reading through your source code references.
What does OSD (or OSD layer) stand for (top of src/emu/inptport.c)?
Hmmm, after reading through your post about 3 times, I think I will remain confused by any further testing or experimentation unless I have playback and record working in the Food Fight driver. Once I can replay the game with repeatable joystick and keyboard inputs, I could combine that with slowing the emulation down (I believe there is a command line option to do that). Once that is working, I could then inject printfs or other forms of instrumentation at appropriate spots to monitor how mame is processing the various states and settings, and figure out how they are interacting for this specific driver.
What games implement the playback/record interface that I could use an example of the changes I need to make for the foodf driver?
Additional questions:
What is a "BTNAB"?
What does "over-equal weight calibrate" mean?
(Ummm, introducing testing of a different game (Star Wars) I think will just confuse me even more by opening up a bigger can of worms.)
What does '"720"ing a whole lot' mean?
I'm not going to do this quite yet:
> How about if you compile your own mame, with the default value 0x80 instead of 0x7f?
Because that will start changing values before I understand them, but getting playback/record working for Food Fight will allow me to come back and experiment with those values after I fully understand what they do.
> If autocenter is not explicitly set, then it's the same as the > digitalspeed by default. It's done in the core part of mame, > src/emu/inptport.c, lines 2714 - 2737. Notice how keydelta (aka > digitalspeed) also sets the centerspeed ()line 2724)?
Are you refering to these lines:
Code:
2714: /* analog keyboard delta */ 2715: case INPUT_TOKEN_KEYDELTA: 2716: TOKEN_UNGET_UINT32(ipt); 2717: if (curfield == NULL) 2718: { 2719: error_buf_append(errorbuf, errorbuflen, "INPUT_TOKEN_KEYDELTA encountered with no active field\n"); 2720: TOKEN_SKIP_UINT32(ipt); 2721: break; 2722: } 2723: TOKEN_GET_UINT32_UNPACK2(ipt, entrytype, 8, curfield->delta, -24); 2724: curfield->centerdelta = curfield->delta; 2725: break; 2726: 2727: /* analog autocenter delta */ 2728: case INPUT_TOKEN_CENTERDELTA: 2729: TOKEN_UNGET_UINT32(ipt); 2730: if (curfield == NULL) 2731: { 2732: error_buf_append(errorbuf, errorbuflen, "INPUT_TOKEN_CENTERDELTA encountered with no active field\n"); 2733: TOKEN_SKIP_UINT32(ipt); 2734: break; 2735: } 2736: TOKEN_GET_UINT32_UNPACK2(ipt, entrytype, 8, curfield->centerdelta, -24); 2737: break; 2738:
If so, then why "analog keyboard delta" in the comment at line 2714? I have a digital joystick, so why is analog keyboard involved?
Perhaps I'm not viewing the same copy of the code you are viewing? If so, then perhaps I'm not using the latest code, and you are? How do we arrange to view the same code? I'd be willing to check out differently from CVS or whatever is being used, but all I could find for SDLMAME was a tarball.
Thanks!
My name is ${SLICK_TALKING_POLITICIAN}, and I endorsed this message.
|