Code Monkey home page Code Monkey logo

asm-space-invaders's Introduction

ASM Space Invaders

This is a very simple clone of the popular arcade game Space Invaders.

The game is written in x86-assembly. The resulting program includes a bootloader and the game itself. It leverages the existing BIOS functionality to receive keyboard input and print ASCII chars to the screen.

Screenshot Screenshot Screenshot

Building the Project

In order to assemble the source of the project you have to install NASM. You can then start the building process by executing

./scripts/create.sh

This should create the file build/image.img.

Execution

As far as I know the programm should be bootable from a floppy disk. I did not test this, though.

Alternatively, it is possible to run the image using QEMU. After the emulator is installed and the image is created, you can start the program using

./scripts/start.sh

Project Structure

The bootloader is located in bootloader.asm. Its single purpose is to load the game's binary file and then jump to its entrypoint. The main file of the game is space-invaders.asm.

Have a look at the Wiki for a more detailed documentation.

Contributors

I want to thank blue-9 for the contributions to this project.

Additional Notes

If you have any questions about this project please feel free to open an issue. I really enjoyed working on it and I am happy to share the little I know.

A Big Thank You to Peter Mikkelsen and his ASM Snake Project as well as to OSDev.org.

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.