Git Product home page Git Product logo

dcpu16-py's Introduction

A Python implementation of Notch's DCPU-16.

See http://0x10c.com/doc/dcpu-16.txt for specification.

Notch apparently started doing a 6502 emulator first. Given I did one in
Python <https://github.com/jtauber/applepy> it only seems fitting I now
do a DCPU-16 implementation in Python too :-)


STATUS

Runs the example program successfully. Cycle times are not yet taken
into account but it otherwise should be feature-complete.

A dissassembler and assembler are also included.

./asm.py example.asm example.obj will assemble Notch's example to object code
./dcpu16.py example.obj will execute it (currently hard-coded to debug mode)
./disasm.py example.obj will disassemble the given object code

Note that the disassembler doesn't quite output in a format that can be
round-tripped back into the assembler as it annotates each line with a
memory offset.

I plan to work on a Forth implementation soon.

I'm also keen to find out how Notch plans I/O to work.


EXAMPLES

Now see https://github.com/jtauber/DCPU-16-Examples (almost my assembler and
emulator don't necessarily support everything there yet)

dcpu16-py's People

Contributors

jtauber avatar eagleflo avatar jstepien avatar leetrout avatar

Stargazers

 avatar Thao le avatar  avatar  avatar Chester Liu avatar  avatar Bobby Burden III avatar  avatar Nathan LeClaire avatar Matthias Seidel avatar Edwin Guzman avatar Michał Walczak avatar Trenton H avatar MiloZ avatar John Luk avatar Brian Gyss avatar Nick GIlbert avatar Egor Ryabkov avatar Sergei Myts avatar  avatar Matti Eiden avatar Ron Klose avatar Will Wheatley avatar Jeff Mincey avatar Ryan Christensen avatar aha hah avatar Rohit Yadav avatar Kevin Kelley avatar Stefan Eletzhofer avatar  avatar Andre Tampubolon avatar Steve Gibson avatar

Watchers

James Cloos 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.