pkimpel / retro-b5500

Web-based emulator and operating environment for the Burroughs B5500 computer system.
http://www.phkimpel.us/B5500/
MIT License
77 stars 7 forks source link

retro B5500 v1.04 does not work local with Google Chrome - IndexedDB related #52

Closed rsanchov closed 7 years ago

rsanchov commented 7 years ago

Hi the emulator works fine with google chrome when using the web hosted. It created the IndexedBD fine at ...\AppData\Local\Google\Chrome\User Data\Default\IndexedDB using as name http_www.phkimpel.us_0.indexeddb.leveldb

But when lauching the console using local installed emulator, no Database is created, and the emulator does not work.

Can this be related to the fact that in local there is no http url site to provide as database filename? In local the url is a weird file://xxx string.

Using emulator 1.04, Chrome 56.0.2924.87 (last version) Best Regards Roberto

pkimpel commented 7 years ago

When I started the project, I believed the emulator had to be loaded into the browser over HTTP. I normally use Firefox for development and testing, and about a year ago I discovered that the emulator worked fine when loading from the local file system. I concluded that I was wrong about requiring HTTP, and updated the wiki to reflect that. Apparently I was half wrong, and the HTTP requirement is browser dependent -- it works in Firefox but not in Chrome, and I suspect it will not work in Safari or Opera, either, since they are also based on webkit.

I will update the wiki to reflect this new understanding. If you want to run the emulator locally, there are a variety of lightweight, free, open-source HTTP servers available. I have had good luck with mongoose under Windows (https://github.com/cesanta/mongoose). It can run either on demand or be installed as a Windows Service. It also runs under Mac OS. You can download a compiled binary here. The free version is all you need.

Another option that is that the emulator presently installs itself in your browser's Application Cache. Once you download it from a host over HTTP, everything needed to run the emulator is in your browser (it doesn't need network access once it's loaded), and you can run it without any network connectivity at all. Just use the same URL that you originally used to load the emulator -- the browser will recognize that it refers to a cached App and use the local copy. If you have network connectivity, it will automatically check the cached URL for updates. Checking and loading the App Cache is what drives those blue messages that appear at the top of the home page for about 15 seconds after you load that page.

I recently learned that the Application Cache has become a deprecated feature and will be removed from browsers at some point in the future, so eventually I'll need to take this out of the emulator, and we will lose this method of running it off line.

Thanks for reporting the issue. I am going to close this ticket, but feel free either to open a new one if you continue to have problems getting the emulator to run off line, or post a message to the news group, https:groups.google.com/group/retro-b5500.