Jump to content

Why do some versions of Flash Player 9 work on YouTube while other ver


larryb123456

Recommended Posts

Well, there's one way to find out if other instructions are required, and that's to try it (the patch). From what I've read, CMOV seems to be the main enhancement to the instruction set from P1-MMX to P2, although Linus says the CMOV instructions actually reduce performance in newer CPU's (so don't use them folks!).

Joe.

I have attached my P6CPU.VXD. This is an emulator, not a Patch. It only handles CMOV Instructions, and a single PREFETCH code, and can be considered Alpha code. Use at your own risk. The Logger will crash if more than 16384 distinct addresses are emulated.

Place P6CPU.VXD in your WINDOWS\SYSTEM Folder and add the following line to the [386Enh] Section of your SYSTEM.INI File:

DEVICE=P6CPU.VXD

P6CPU.ZIP

Edited by rloew
Link to comment
Share on other sites


I have attached my P6CPU.VXD. This is an emulator, not a Patch. It only handles CMOV Instructions, and a single PREFETCH code, and can be considered Alpha code. Use at your own risk. The Logger will crash if more than 16384 distinct addresses are emulated.

Place P6CPU.VXD in your WINDOWS\SYSTEM Folder and add the following line to the [386Enh] Section of your SYSTEM.INI File:

DEVICE=P6CPU.VXD

Thank you Mr Loew, I will try it tonight!

Joe.

Link to comment
Share on other sites

Somewhere around here I have an AMD K6-2 570MHz chip, AFAIK it was the highest rated one, and very rare. I never actually used it on a daily basis, only experimented with it a couple of times. It POSTed properly on a Shuttle HOT 591P motherboard, I remember there was an odd setting that I had to figure out, as it required a different frequency than a 550MHz chip.

Wow! That'd be an AMD K6-2+ 570 MHz, actually (according to the good old late BALUSC server), and it's really rare.

Link to comment
Share on other sites

Wow! That'd be an AMD K6-2+ 570 MHz, actually (according to the good old late BALUSC server), and it's really rare.

Ah yes, you are correct. I remember now, and also from your link I recall the different setting that was required, this particular chip ran at 95MHz FSB, so the clock multiplier had to be set at 6x instead of the usual 5.5x for the 550MHz chips. It was a real puzzle until I realized that the 2x multiplier was actually "rewired" to be 6x on some Super Socket 7 boards.

Dug up one of my old Favorites on the subject Here.

Link to comment
Share on other sites

The 2x multiplier was rewired to 6x in the processors, actually, not in the motherboards, see: The Strange Case of the K6-2/400.

And since we're exchanging old bookmars about them, here's a very useful one: Getting the AMD K6-x+ to work on your Super Socket 7 board.

In their time, the K6-x ruled! Those were good times, indeed! :yes:

Link to comment
Share on other sites

# 3) You say, "Since 9.0.115.0, Flash Player 9 requires SSE."

But my experience proves this statement to be false.

As I mentioned in my post # 1, Flash Player 9.0.115.0 (and all later versions) works perfectly well on many sites with Flash content. If Flash Player 9.0.115.0 required SSE -- as you say -- it would not work at all on these sites.

But, on YouTube, Flash Player 9.0.115.0 (and all later versions) always gives a browser crash -- with the NPSWF32.dll (i.e, Flash plugin) error -- or a computer hang or crash.

This is the real mystery that I'd like to solve. What is it about YouTube and these Flash Player versions that always leads to problems ?

I know the point is moot now, but I noticed the above question hadn't been directly addressed yet. Here's the thing: just because Flash Player 9.0.115.0 has SSE instructions, that doesn't mean it will always use them. Whether or not it uses SSE instructions probably depends on how the video being played was created - from the above, it appears YouTube videos always trigger their use, but many Flash videos from other sites do not. Flash Player will only crash when it tries to use an SSE instruction, causing a Pentium II to say "huh?"

This has me curious: has anyone tried YouTube + Flash Player 10 on a Pentium II machine to confirm this? (If you're running Win98 you'll have to install KernelEx to test it, but the latest version is easy for even a novice to install - and to uninstall in case of problems.)

Link to comment
Share on other sites

This has me curious: has anyone tried YouTube + Flash Player 10 on a Pentium II machine to confirm this? (If you're running Win98 you'll have to install KernelEx to test it, but the latest version is easy for even a novice to install - and to uninstall in case of problems.)

Yep, I've tried 10.0.something (with KernelEx 4.5RC1) and the problem ISN'T fixed.

Joe.

Link to comment
Share on other sites

I have attached my P6CPU.VXD. This is an emulator, not a Patch. It only handles CMOV Instructions, and a single PREFETCH code, and can be considered Alpha code. Use at your own risk. The Logger will crash if more than 16384 distinct addresses are emulated.

Place P6CPU.VXD in your WINDOWS\SYSTEM Folder and add the following line to the [386Enh] Section of your SYSTEM.INI File:

DEVICE=P6CPU.VXD

Hi again, Mr Loew,

Well I tried the above last night.

The good news is that the CMOV crash is fixed. The bad news is that now it's some obscure instruction(s) called FUCOMI(P) that are new to P6 and are apparently also used in the mjpeg tools. Dumps are as follows :

JPEG2YUV executed an invalid instruction in

module JPEG2YUV.EXE at 0177:004026b7.

Registers:

EAX=008cf8a0 CS=0177 EIP=004026b7 EFLGS=00010202

EBX=009f05a0 SS=017f ESP=008cf880 EBP=008cf8b8

ECX=00000002 DS=017f ESI=00000007 FS=0cb7

EDX=00000000 ES=017f EDI=008cfd8c GS=0000

Bytes at CS:EIP:

db e9 dd d9 76 13 dd 05 88 05 43 00 df e9 df c0

Stack dump:

008cf8b8 78015a5e 008cf8a0 009f051b 00000002 00000000 00000000 00000007 00000000 00000002 009f05a0 0042f068 00000000 40390000 008cfdd8 00401608

MPEG2ENC executed an invalid instruction in

module MPEG2ENC.EXE at 0177:0040fbb9.

Registers:

EAX=00000002 CS=0177 EIP=0040fbb9 EFLGS=00210293

EBX=007afc18 SS=017f ESP=007af890 EBP=007af8b8

ECX=00000001 DS=017f ESI=007afa18 FS=0cdf

EDX=000002ff ES=017f EDI=00000001 GS=0000

Bytes at CS:EIP:

df e9 0f 83 4f 03 00 00 dd 05 28 91 46 00 d9 c9

Stack dump:

008d00f8 007aff68 7800ef03 7802e248 ffffffff 007af978 780012d9 007afc18 007afa18 00000001 007af978 0040afdb 007afc18 00000001 0000000f 00467afd

JPEG2YUV executed an invalid instruction in

module JPEG2YUV.EXE at 016f:00402767.

Registers:

EAX=000003e9 CS=016f EIP=00402767 EFLGS=00010216

EBX=009e05c0 SS=0177 ESP=008bf8c0 EBP=008bf8e8

ECX=00000002 DS=0177 ESI=00000007 FS=4317

EDX=00005dc0 ES=0177 EDI=008bfda4 GS=0000

Bytes at CS:EIP:

db ea 0f 86 ae 01 00 00 dd 05 20 95 42 00 df e9

Stack dump:

00000002 00000000 00000000 00000007 00000000 00000002 008bfde8 00425d5a 009e05c0 00000007 008bfde8 0040168c 00000000 40390000 0042804e 9fdedddc

Joe.

Link to comment
Share on other sites

  • 4 weeks later...

Were did everybody go? :unsure:

Anyway,

1. I wonder what happened to Larry and his P3 transplant?

2. I've managed to re-build (re-compile) a couple of those mjpegtools utilities to avoid the P6 instructions, although this package is horrendous/impossible! So many errors trying to build the release sources, and even after dealing with them, some of the utilities, such as 'png2yuv' just don't work properly (at least, if you disable the P6 optimizations)! Arghhh! Anyway, it's a partial success here. It would be nice if P6CPU.VXD included those extra few instructions, but it's probably not worth Mr Leow's efforts.

3. If we've lost our guinea-pig, I'm willing to test P3CPU.VXD for the original Flash Player problem that started this thread.

Joe.

Link to comment
Share on other sites

Were did everybody go? :unsure:

Anyway,

1. I wonder what happened to Larry and his P3 transplant?

2. I've managed to re-build (re-compile) a couple of those mjpegtools utilities to avoid the P6 instructions, although this package is horrendous/impossible! So many errors trying to build the release sources, and even after dealing with them, some of the utilities, such as 'png2yuv' just don't work properly (at least, if you disable the P6 optimizations)! Arghhh! Anyway, it's a partial success here. It would be nice if P6CPU.VXD included those extra few instructions, but it's probably not worth Mr Leow's efforts.

3. If we've lost our guinea-pig, I'm willing to test P3CPU.VXD for the original Flash Player problem that started this thread.

Joe.

Emulating the instructions you identified can be done although a simple emulation is only approximate. I assumed that patching them would probably lead to a succession of additional problem instructions.

Have you been able to determine precisely all of the P6 instructions used by mjpegtools?

Link to comment
Share on other sites

Emulating the instructions you identified can be done although a simple emulation is only approximate. I assumed that patching them would probably lead to a succession of additional problem instructions.

Have you been able to determine precisely all of the P6 instructions used by mjpegtools?

Well, the only way I know which P6 (aka 686) instructions are used by the mjpegtools, is from the crash dumps, so I can't know if there are more unsupported instructions beyond FUCOMI/FUCOMIP.

CMOV was the first such instruction to be encountered, so as your P6CPU.VXD already addressed this, it was certainly worth while testing this with the mjpegtools, with the hope that this would be sufficient.

I understand there are only a small number of P6-specific instructions anyway. The web page http://www.rcollins.org/p6/opcodes/P6OpCodes.html is instructive, with links at the bottom of the page for detailed information on individual P6 instructions. I'm sure the "undocumented" instructions which are included there are not relevant to the mjpegtools or any other applications that we are likely to encounter.

So, if you'd like to add further "documented" P6 instructions to P6CPU.VXD for completeness, I can test this against the mjpegtools (this would at least exercise FUCOMI/FUCOMIP to some extent). However, you need to consider if it's worth the effort, as this is an application that I rarely use, and also as I've partially managed to re-build this to avoid the P6 instructions.

As a separate exercise, I'd also be interested to test P3CPU.VXD against the Adobe Flash Player, of course.

Joe.

Link to comment
Share on other sites

  • 1 month later...

What kind of CPU do you use?

Since 9.0.115.0, Flash Player 9 requires SSE.

I have been informed that this is the reason why I am unable to install version 11 of Shockwave, but if this is indeed the case then how was I able to successfully install later versions of Flash player 9? and then 10?

According to loblo,

Link to comment
Share on other sites

What kind of CPU do you use?

Since 9.0.115.0, Flash Player 9 requires SSE.

I have been informed that this is the reason why I am unable to install version 11 of Shockwave, but if this is indeed the case then how was I able to successfully install later versions of Flash player 9? and then 10?

According to loblo,

Well, you, me and Larry all can install later versions of Flash than above, and for some Flash content, it works fine, however for some Flash content, the result may be a crash, because our CPU's don't support SSE.

Joe.

Edited by jds
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...