Giter Club home page Giter Club logo

retrokern's Introduction

Retrokern

Retrokern is a 16-bit x86 assembly-based "operating system" that aims to accomplish the following goals:

  • Provide a teaching platform for x86 assembly
  • Provide a simple non-DOS, completely free operating system for retro projects

This system requires absolutely no operating system and will boot (in theory) in any 8086 or later CPU, including modern x86_64 systems.

Learn more at Retorkern - A Modern Thin Retro Assembly Platform

Reference "Game"

In game.asm a reference "game" is included. This isn't really a game, rather just code to display a character avatar and loop. Depending on key input, the character moves and player_x and player_y are updated.

The point of this code is to demonstrate the functionality available to a game or program using Retrokern.

Copyright

Written by Robert W. Oliver II [email protected] Copyright (C) 2018 Sourcerer, All Rights Reserved.

License

Licensed under the GPLv3.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

Thanks

Retrokern was inspired and borrows some code from Mihail Szabolcs's FloppyBird DOS/Assembly game. https://github.com/icebreaker/floppybird/

The author would like to thank Sourcerer for inspiration, support, and promotion.

retrokern's People

Contributors

rwoliver2 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

retrokern's Issues

Source cannot run on 8086

The readme for this project states "will boot (in theory) in any 8086 or later CPU" but the very first instruction of console.asm is PUSHA. PUSHA/POPA are 80286 instructions and are invalid on an 8086 CPU.

pusha/popa are also found in timer.asm, game.asm, and video.asm.

(Could be fixed as a pull request, but your article seemed very much focused on self-discovery, so I am leaving it to you to determine exactly which registers should be pushed and popped, or whether you want to create a "_pusha"/"_popa" macro. I don't recommend the macro.)

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.