GithubHelp home page GithubHelp logo

vbns-ao2's People

Contributors

jmdaweb avatar sukiletxe avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

vbns-ao2's Issues

VBNS keeps dying when booted into Windows 95

I have a Windows 95 VM with Window-Eyes installed, using the Braille Mate synthesizer. The problem is that the VBNS emulator will keep dying randomly when Windows 95 is running. No errors or anything, it just... dies. When I boot Windows 95 into MS-DOS mode, however, ASAP fires up and VBNS works just fine. This happens regardless of whether I use SAPI, eSpeak or an auto-detected screen reader; even changing com ports doesn't help. VBNS also works perfectly fine with Windows 98 with the exact same configuration as Windows 95. The same version of Window-Eyes (5.5), the same synthesizer and com port configuration etc.

Configure the emulator via a config file

This emulator might be opened by double-clicking directly on the executable file without passing any parameters. To achieve this, a configuration file may be required. The configobj module is a good choice for this task. The command line arguments should override the parameters specified in the config file. For example, if port com5 is specified in the file and I pass com8 as a parameter, the program should use com8. Some suggestions for that:

  • When the emulator starts, it should open the configuration file and read the values included there. If there is no configuration file, a confspec may be used instead and a file should be created.
  • The values read from the configuration file may be stored in global variables.
  • Next, the command line arguments should be parsed. Caution, all of them should be optional!
  • After parsing, for each argument which is specified, the corresponding global variable should be replaced with the new value.

If you implement these changes, this emulator will be almost ready for my next issue (not created yet): running as a Windows service without unneeded console windows.

Getting this working with Python 3

Pretty simple, I notice that this code was written for, and only seems to work with python2. Have you thought about updating it to work with python 3? I've been doing some tweaking of the code, and think I'd be able to get this working. However, I'm unsure of a couple of points.

  • In tts.py you have o.speak(text.decode("cp437"). Why cp437 here? There's something similar in espeak.py, too.
  • Related, to get the code working with python 3, looks like some fiddling with bytes vs strings needs to be done.
  • One more thing, instead of including things like AccessibleOutput, platform-utils, etc, all of these are available on PyPy. The only things that aren't available is the eSpeak interface code from NVDA, and the fix_win32com.py files.

Other than those points, I'd be glad to help out and get this code working on a more modern python.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.