Giter Site home page Giter Site logo

z80e's Introduction

z80e

A z80 emulator designed for debugging the KnightOS kernel. It emulates Texas Instruments calculators and is not recommended for general-purpose z80 debugging. It's not done yet.

A list of keybindings can be found in KEYBINDINGS.md

Why z80e?

Most TI emulators have some of a shared set of problems, which z80e hopes to avoid. z80e is...

Portable. z80e has been described as "portable as fuck". The actual emulation code uses maybe a half dozen external functions and it's been known to run on Linux, BSD, OSX, Windows, TI-Nspires, TI-Nspires running Linux, Rockbox, and two hobby operating systems for i686. It also was forked to form the basis of CEmu.

Flexible. You can run z80e with a simple terminal interface, a curses debugger, a gtk application (planned), in a web browser (in-progress), etc

Powerful. We've built a powerful GDB-like debugger, a curses-based debugger, a web debugger, and a gtk debugger (planned).

Clean. If you know C (z80 assembly would help, too), you can understand and help improve the codebase.

Permissive. MIT licensed and easy to distribute, modify, or do whatever with.

Compiling

First make sure you have scas installed.

Native (Linux):

$ cmake .
$ make

Change cmake . to cmake -Denable-sdl=YES . to build the SDL (graphical) frontend.

Compiling on Windows with cygwin requires ncurses and GNU readline.

Browser:

$ emconfigure cmake .
$ make

The tests and z80e files will be compiled to bytecode and then to javascript, exporting all external-use methods into bin/z80e.js and bin/tests.js. These can be used as you would with any other emscripten module, so you can run tests.js in node to run the tests, or add it to an HTML file. To build on Windows or Mac, read the cmake docs and submit a pull request fixing this sentence once you figure it out.

Help, Bugs, Feedback

If you need help with KnightOS, want to keep up with progress, chat with developers, or ask any other questions about KnightOS, you can hang out in the IRC channel: #knightos on irc.freenode.net.

To report bugs, please create a GitHub issue or contact us on IRC.

If you'd like to contribute to the project, please see the contribution guidelines.

z80e's People

Watchers

 avatar  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.