Giter VIP home page Giter VIP logo

dosee's Introduction

DOSee

GitHub   GitHub package.json version GitHub last commit   GitHub repo size

If you enjoy DOSee, consider buying me a cup of coffee?

An MS-DOS emulator for the web.

DOSee is a front-end for an MS-DOS emulation ecosystem to use on the web. The text-based MS-DOS was the dominant personal computer platform for much of the 1980s. Up until the mid-1990s before being superseded by Microsoft Windows. Emulating this platform allows tens of thousands of games, demos and applications from this era to run on a web browser both online or offline as a desktop web-app!

DOSee is only a user interface and installation process for an incredible emulation ecosystem. Many remarkable people created it over many years. DOSee itself is a fork of The Emularity project started by the Internet Archive. EM-DOSBox, the core of this emulation, is a JavaScript port of DOSBox, the world's most popular MS-DOS emulator.

DOSee preview

What's new

Updates are in CHANGES

Requirements

  • A web browser that supports JavaScript ES6 (ECMAScript 2015).
    Current Firefox, Chrome, Edge, Brave or Safari will work fine.
  • A physical keyboard, as MS-DOS is a text-based operating system.
  • Node.js plus yarn/npm or Docker

DOSee runs over an HTTP server, and it can not function over the file:/// browser protocol.

Instructions, download, build and serve

DOSee requires a build before it can serve to a web browser.

# clone DOSee
git clone https://github.com/bengarrett/DOSee.git
cd DOSee

 # install dependencies & build
yarn # npm install

# serve DOSee over port 8086
yarn run serve # npm run serve

Point a web browser to http://localhost:8086

Docker instructions

There is a DOSee repository at Docker Hub, or you can build locally using these instructions.

# clone DOSee
git clone https://github.com/bengarrett/DOSee.git
cd DOSee

# run the container (tap Ctrl-C to exit)
docker compose up

Point a web browser to http://localhost:8086

# alternative manual build and run
docker build -t dosee .
docker run --name dosee_app -i -p 8086:80 dosee

# clean up and remove
docker container rm dosee_app
docker image rm dosee

Usage & customisations

Are in the USAGE document

Editing the source JS or HTML

If you edit the source files in src/ you will need to rebuild the application.

# change to the repo directory
cd DOSee

# re-build DOSee using your edits
yarn run install # npm run install

# serve the modified DOSee over port 8086
yarn run serve # npm run serve

Point a web browser to http://localhost:8086

Due to the PWA offline feature, web browsers need to unregister the service workers to reflect any changes to the application code. There is a red Update DOSee and the service worker button on the index.html example that will do this and then reload the browser window. The eventListener code for this button can be found in the src/js/dosee-sw.js file.

License

  1. DOSee is under a GPL-3.0 license.
  2. Em-DOSBox located in src/emulator is under GPL-2.0 license.
  3. src/disk_drives and src/dos_programs contain non-free software binaries for your convenience.

Similar projects

  • js-dos The best API for running dos programs in a browser

dosee's People

Contributors

bengarrett avatar dependabot[bot] avatar

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.