Joined: 4/15/2004
Posts: 81
Location: Swe- Krstd
the 240 lines worked.. the 60fps works (even though i want one to encode with too so you won't have to go down to 20 again)
// ZtanZ
Editor, Active player (296)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
blip wrote:
I noticed that you can change the frameskip from the "Speed Configuration" dialog box, just by typing a number next to the "Refresh" option, so you don't have to hand-edit the .ini file after all.
That's what I've been using since the first 60 fps version was made. And if you uncheck the "auto" checkbox, it won't reset the value either.
blip wrote:
Bisqwit, please test this new version on your machine. I think I fixed the problem you were experiencing.
I'll test it. If it allows me to encode Mega Man 4 properly now as 30 fps (60 fps as image capture speed is too much for this system), you're a hero :)
Joined: 4/15/2004
Posts: 81
Location: Swe- Krstd
a big applause for blip.. speedruns own leet haxx0r =)
// ZtanZ
Editor, Active player (296)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
Blip: No $C3 at $30010 this time?
Joined: 4/25/2004
Posts: 498
Oddly enough, the original, unpatched Famtasia runs at 60fps on my old, slower, Win98 computer, but the very same famtasia.exe runs at only 20-30 fps on my new 2.66 GHz 512MB RAM WinXP box... o_O I suspect this may really be an issue between Windows versions, rather than Famtasia's internal timers...Microsoft seems as good a reason as any for a program to run at full speed on a less powerful machine but not on a new one... :P
Joined: 4/15/2004
Posts: 81
Location: Swe- Krstd
you said it youself "...Windows..." <- it can destroy everything!!
// ZtanZ
Joined: 4/11/2004
Posts: 155
Location: Fairfax, VA, USA
Bisqwit wrote:
Blip: No $C3 at $30010 this time?
No. The newest patch should fix the problem that this was trying to fix.
Editor, Active player (296)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
Bisqwit wrote:
If it allows me to encode Mega Man 4 properly now as 30 fps (60 fps as image capture speed is too much for this system), you're a hero :)
Seems like you are a hero now!! :) The upcoming Mega Man 4 movie will be having _real_ 30 fps animation instead of the "copy 2 frames, copy 1 frames, copy 2 frames, copy 1 frames" pseudo-30fps we've got used to. I'll see if I can increase the bandwidth between parts to create even higher fps animations. But for a while I'm going for "stable" instead. Ps: In this patch, it seems to be no longer possible to disable audio by putting "0" as buffer size in ini file.
Joined: 4/11/2004
Posts: 155
Location: Fairfax, VA, USA
Bisqwit wrote:
Ps: In this patch, it seems to be no longer possible to disable audio by putting "0" as buffer size in ini file.
Ah, thanks for pointing that out. It'll probably be easy to fix. Glad to have some good news :) Edit: lol. I just noticed my forum title.
Active player (410)
Joined: 3/16/2004
Posts: 2623
Location: America, Québec
Well it seems problem is resolved.You're a lot talented Blip.
Joined: 4/11/2004
Posts: 155
Location: Fairfax, VA, USA
New patch. Setting buffer size to 0 will now disable sound. I found out while testing this that this patch will only run at frameskip 1. Running at any other frameskip screws up the sound, so this version is hardcoded to run at 1 (60fps). I found another minor error in the C code for the patch so I'll just re-post the whole thing.
		/* 60 fps patch B (fixed) */
		{ 0x00200,    1, "\x44" },
		{ 0x27c59,    5, "\xe9\x63\x03\x00\x00" },
		{ 0x1975a,    1, "\x00" },
		{ 0x196ff,    8, "\x82\x06\x00\x00\xf7\xea\xeb\x15" },
		{ 0x27d44,    2, "\xeb\x03" },
		{ 0x27fb1,    2, "\xeb\x04" },
		{ 0x27fbc, 0xfc, "\
\xe9\xcb\x01\x00\x00\xa0\x84\xe5\x46\x00\x84\xc0\x74\x08\x31\xdb\
\x89\x1d\x78\x7a\x46\x00\x8a\x25\xd0\x89\x44\x00\x84\xe4\x0f\x85\
\xd5\x01\x00\x00\x84\xc0\x0f\x84\x7e\xfc\xff\xff\x52\xa1\xd4\xdc\
\x46\x00\x3b\x05\x38\x3b\x47\x00\x74\x1a\x31\xd2\x89\x15\x34\x3b\
\x47\x00\x89\x15\x40\x3b\x47\x00\xa3\x38\x3b\x47\x00\xff\xd6\xa3\
\x3c\x3b\x47\x00\x8b\x1d\xd4\xdc\x46\x00\xb8\x83\x06\x00\x00\x99\
\xf7\xf3\x85\xd2\x74\x13\x03\x15\x34\x3b\x47\x00\x39\xda\x7c\x03\
\x40\x29\xda\x89\x15\x34\x3b\x47\x00\xa3\x98\xda\x46\x00\xa3\x14\
\x7c\x46\x00\x50\x03\x05\x3c\x3b\x47\x00\xa3\x3c\x3b\x47\x00\x50\
\xff\xd6\x89\xc2\x58\x29\xd0\x7f\x05\xb8\x01\x00\x00\x00\x6a\x00\
\x6a\x00\x68\x20\x88\x42\x00\x6a\x00\x50\xff\x15\xbc\x12\x44\x00\
\xa3\x78\x7a\x46\x00\x58\xf7\x2d\x50\x23\x47\x00\xbb\xd0\x07\x00\
\x00\xf7\xf3\x85\xd2\x74\x13\x03\x15\x40\x3b\x47\x00\x39\xda\x7c\
\x03\x40\x29\xda\x89\x15\x40\x3b\x47\x00\x01\xc0\x8b\x15\xc0\x22\
\x47\x00\x39\xd0\x7e\x02\x89\xd0\xa3\xb8\x0e\x47\x00\x66\xc7\x05\
\x40\x23\x47\x00\x00\x00\x5a\xe9\xae\xfb\xff\xff" },
Editor, Active player (296)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
blip wrote:
this version is hardcoded to run at 1 (60fps).
Oh. That's too bad - the frame skip feature is useful when you want to conserve cpu power (on a slow laptop or when sampling at 30 fps) or when going fast-forward (I use skip=50, speed=500% often when verifying my own movies)
Joined: 4/11/2004
Posts: 155
Location: Fairfax, VA, USA
Bisqwit wrote:
blip wrote:
this version is hardcoded to run at 1 (60fps).
Oh. That's too bad - the frame skip feature is useful when you want to conserve cpu power (on a slow laptop or when sampling at 30 fps).
Well, I *could* argue that you can just run the un-patched Famtasia when you want 20 fps. But I think I'd rather fix it. I'll have a look...
Joined: 4/11/2004
Posts: 155
Location: Fairfax, VA, USA
blip wrote:
Bisqwit wrote:
blip wrote:
this version is hardcoded to run at 1 (60fps).
Oh. That's too bad - the frame skip feature is useful when you want to conserve cpu power (on a slow laptop or when sampling at 30 fps).
Well, I *could* argue that you can just run the un-patched Famtasia when you want 20 fps. But I think I'd rather fix it. I'll have a look...
Much to my amazement, this appears to work:
		{ 0x00200,    1, "\x48" },
		{ 0x27c59,    5, "\xe9\x63\x03\x00\x00" },
		{ 0x1975a,    1, "\x00" },
		{ 0x196ff,    8, "\x82\x06\x00\x00\xf7\xea\xeb\x15" },
		{ 0x27d44,    2, "\xeb\x03" },
		{ 0x27fbc,0x11a, "\
\xe9\xcb\x01\x00\x00\xa0\x84\xe5\x46\x00\x84\xc0\x74\x08\x31\xdb\
\x89\x1d\x78\x7a\x46\x00\x8a\x25\xd0\x89\x44\x00\x84\xe4\x0f\x85\
\xd5\x01\x00\x00\x84\xc0\x0f\x84\x7e\xfc\xff\xff\x52\xa1\xd4\xdc\
\x46\x00\x3b\x05\x38\x3b\x47\x00\x74\x20\x31\xd2\x89\x15\x34\x3b\
\x47\x00\x89\x15\x40\x3b\x47\x00\x89\x15\x44\x3b\x47\x00\xa3\x38\
\x3b\x47\x00\xff\xd6\xa3\x3c\x3b\x47\x00\x8b\x1d\xd4\xdc\x46\x00\
\xb8\x83\x06\x00\x00\xf7\x2d\xd8\xdc\x46\x00\xf7\xf3\x85\xd2\x74\
\x13\x03\x15\x34\x3b\x47\x00\x39\xda\x7c\x03\x40\x29\xda\x89\x15\
\x34\x3b\x47\x00\xa3\x98\xda\x46\x00\xa3\x14\x7c\x46\x00\x50\x03\
\x05\x3c\x3b\x47\x00\xa3\x3c\x3b\x47\x00\x50\xff\xd6\x89\xc2\x58\
\x29\xd0\x7f\x05\xb8\x01\x00\x00\x00\x6a\x00\x6a\x00\x68\x20\x88\
\x42\x00\x6a\x00\x50\xff\x15\xbc\x12\x44\x00\xa3\x78\x7a\x46\x00\
\x58\xf7\x2d\x50\x23\x47\x00\xbb\xd0\x07\x00\x00\xf7\xf3\x85\xd2\
\x74\x13\x03\x15\x40\x3b\x47\x00\x39\xda\x7c\x03\x40\x29\xda\x89\
\x15\x40\x3b\x47\x00\x03\x05\x44\x3b\x47\x00\x99\xf7\x35\xd8\xdc\
\x46\x00\x89\x15\x44\x3b\x47\x00\x01\xc0\x8b\x15\xc0\x22\x47\x00\
\x39\xd0\x7e\x02\x89\xd0\xa3\xb8\x0e\x47\x00\x66\xc7\x05\x40\x23\
\x47\x00\x00\x00\x5a\xe9\x90\xfb\xff\xff" },
Editor, Active player (296)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
Which features does it now have? - 60 fps? - Mutable sound? - Selectable frameskip? - Sound in sync, despite the audio sampling rate or frameskip? Is the frameskip now to be controlled using the "frame skip" input or the "occupation" control? What is the difference?
Joined: 4/11/2004
Posts: 155
Location: Fairfax, VA, USA
Features: - 60 fps - Accurate playback speed - Mutable sound (set BufferSize to 0 in the .ini) - Selectable frameskip - Sound in sync, despite the audio sampling rate or frameskip - No CPU spike/lockup - 240 scanlines Misfeatures: - Auto-frameskip disabled
Bisqwit wrote:
Is the frameskip now to be controlled using the "frame skip" input or the "occupation" control? What is the difference?
"Occupation" is just the term Famtasia uses when it writes the frameskip value to its .ini file. They're interchangeable. If you think this version is working well, maybe you could post an updated .zip file and let people have a crack at it.
Editor, Active player (296)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
blip wrote:
"Occupation" is just the term Famtasia uses when it writes the frameskip value to its .ini file. They're interchangeable.
[Speed] DrawFrame=2 ExecSpeed=100 Occupation=1 Benchmark=0 AutoFrame=0 FullSpeed=0 So what is this DrawFrame then?
Joined: 4/11/2004
Posts: 155
Location: Fairfax, VA, USA
Bisqwit wrote:
blip wrote:
"Occupation" is just the term Famtasia uses when it writes the frameskip value to its .ini file. They're interchangeable.
[Speed] DrawFrame=2 ExecSpeed=100 Occupation=1 Benchmark=0 AutoFrame=0 FullSpeed=0 So what is this DrawFrame then?
Oops. You're right. "DrawFrame" is the value that's put in the "Refresh" box when you open up the "Speed Configuration" dialog box. "Occupation" governs how often the timers fire, so it needs to be set to 1 to get 60fps. Which reminds me, did you try finalfighter's fix to the Occupation slider? Did it work for you? You can get 30 fps by either setting DrawFrame to 2, or Occupation to 2.
Editor, Active player (296)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
What is the difference between setting DrawFrame=2,Occupation=1 and setting DrawFrame=1,Occupation=2 ?
blip wrote:
Which reminds me, did you try finalfighter's fix to the Occupation slider? Did it work for you?
Nope, didn't try. I don't need the feature anyway :) Ps: Don't do fullquotes. Please quote only relevant parts.
Joined: 4/11/2004
Posts: 155
Location: Fairfax, VA, USA
Bisqwit wrote:
What is the difference between setting DrawFrame=2,Occupation=1 and setting DrawFrame=1,Occupation=2 ?
With DrawFrame=2, Occupation=1, the emulation will run 60 times per second, but it'll only display half of the frames. With DrawFrame=1, Occupation=2, it'll run the emulation 30 times per second, but draw all (30) of the frames. Edit: I've noticed that to get this version running at high speeds (>400%), I had to increase the Occupation number; increasing DrawFrame didn't help. It seems obvious, but I just thought I'd point it out. Edit 2: Re-introducing the following hack will allow Famtasia to run at 999% execution speed at Occupation 1: $30010:c3
Editor, Active player (296)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
So they look exactly the same, but the latter is better for CPU. Good.
Editor, Active player (296)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
I just noticed that in some new versions setting Occupation=2 means that the game will run slowly. What is the difference between setting Occupation=2,ExecSpeed=100 and setting Occupation=1,ExecSpeed=50 ?
Editor, Active player (296)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
Nevermind, the newest version seems to not do that. You'll keep me always confused.
Editor, Active player (296)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
I updated the zip file at https://files.tasvideos.org/bisqwit/famtasia24060.zip - it contains the latest patch now. It appears to be stable and I see no problems in it. It doesn't include the RET (C3) instruction at $C0010 or Finalfighter's the slider patch.
Editor, Active player (296)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
Bisqwit wrote:
I updated the zip file at https://files.tasvideos.org/bisqwit/famtasia24060.zip - it contains the latest patch now. It appears to be stable and I see no problems in it. It doesn't include the RET (C3) instruction at $C0010 or Finalfighter's the slider patch.
The same file was updated again. It does include the $C3 now and it also includes my patch which should remove the heaviness-problem of 240 scanlines.