ttalvitie / browservice

Browservice: Browse the modern web on historical browsers
MIT License
1.08k stars 32 forks source link

Mac OS 9 - No Image, Even Address Bar #96

Open qrani opened 1 year ago

qrani commented 1 year ago

Been trying to figure this out for a while now. I'm running Mac OS 9.2.2 on my iBook G3, trying to get Browservice (running on Windows) to work. However, when I connect to the server through a browser, it connects, but displays nothing, not even the address bar. It does this with Classilla 9.3.3, Internet Explorer 4.5 (I've also tried 5.0 and 5.5, but those have that issue of looping between pages), Netscape 6.2.1, Netscape 7.0.2, and Opera 6.03. I've tried these arguments:

--chromium-args=use-gl=disabled
--chromium-args=use-gl=egl
--chromium-args=use-gl=angle
--chromium-args=use-gl=swiftshader

As well as some others. I've also tried it on my PowerMac G4, which gives the same issues I've tried running the 32-bit version, which didn't help. I've also tried using directories, connecting to something like:

http://xxx.xxx.xxx.xxx:8080/goto/google.com

Doing this, it still does not display anything. I've also tried doing it on the host (connecting to the server from my Windows computer), which does work. Hell I've even tried connecting them with a different ethernet cable. So based on all of this information:

So, why does it not work then? What am I missing? I don't think it's the connection between the machines, as every web browser says it connects, and I've replaced the cable, but still it seems to me like the most likely option.

lampiaio commented 1 year ago

It seems we are together (#55) in this. Just to rule out any possible connection issues, have you tried running the server with --vice-opt-http-listen-addr=0.0.0.0:8080?

qrani commented 1 year ago

I just tried using a listening address of 0.0.0.0:8080, and it gave a "connection was refused" error

luquillito commented 1 year ago

classilla has noscript, did you try enabling scripts globally? that's what fixed this for me

luquillito commented 1 year ago

however, even then, there are some remaining issues. see #32 and #33

lampiaio commented 1 year ago

classilla has noscript, did you try enabling scripts globally? that's what fixed this for me

That does the trick, yes. It's strange that whitelisting the host IP does not work, scripts really must be enabled globally. Thanks for the tip.

luquillito commented 1 year ago

yep, i found it strange as well! no problem. now that it seems to work, are you getting an issue with resizing? this is where i'm stuck. was trying to recompile browservice based on what was discussed in #33 but was having trouble

lampiaio commented 1 year ago

There is indeed this strange issue where the Classilla window can't decide whether or not to include scroll bars, and keeps switching back and forth between both states unpredictably.

luquillito commented 1 year ago

ok same here, i'm going to try to test this commit today which apparently should fix the issue, cc @ttalvitie

qrani commented 1 year ago

Tried enabling scripts globally in Classilla, and it does work, but yea, has the resizing issue.

luquillito commented 1 year ago

is anyone able to build browservice with the code change i highlighted above and test that it works? i still can't get it working

ttalvitie commented 1 year ago

@luquillito In this case, you only need to rebuild retrojsvice.so/retrojsvice.dll (replacing the library in the binary release package), as it is the only part that the change affects. This should be a bit easier than rebuilding the complete Browservice package as it does not require CEF.

However, for this change, a binary patch may be the easiest solution: just replace var bodyOverflowHiddenNotSupported = false; by var bodyOverflowHiddenNotSupported = true ; (It is important to keep the length same to avoid breaking the binary; that's why we add an extra space after true.)

Instructions on how to patch:

Let me know whether this fixes things; if it does, then we could add the fix to the next mainline release.

(And it seems I should really try to improve the instructions and tools for building Browservice so that we wouldn't have to resort to binary patches 😅)

luquillito commented 1 year ago

@ttalvitie i can confirm this fixed the issue for me

ttalvitie commented 1 year ago

The resize issue should be fixed in v0.9.6.5.