{"id":22887018,"url":"https://github.com/nihas101/java-chip-8-emulator","last_synced_at":"2025-03-31T19:12:59.267Z","repository":{"id":210011272,"uuid":"102362612","full_name":"nihas101/java-chip-8-emulator","owner":"nihas101","description":"A simple emulator for the CHIP-8 written in Java","archived":false,"fork":false,"pushed_at":"2018-07-27T05:31:49.000Z","size":320,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-06T23:30:11.798Z","etag":null,"topics":["chip-8","emulation","java"],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nihas101.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2017-09-04T13:08:56.000Z","updated_at":"2020-06-13T14:33:01.000Z","dependencies_parsed_at":"2023-11-30T10:01:54.293Z","dependency_job_id":null,"html_url":"https://github.com/nihas101/java-chip-8-emulator","commit_stats":null,"previous_names":["nihas101/java-chip-8-emulator"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nihas101%2Fjava-chip-8-emulator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nihas101%2Fjava-chip-8-emulator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nihas101%2Fjava-chip-8-emulator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nihas101%2Fjava-chip-8-emulator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nihas101","download_url":"https://codeload.github.com/nihas101/java-chip-8-emulator/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246523874,"owners_count":20791444,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chip-8","emulation","java"],"created_at":"2024-12-13T20:29:12.633Z","updated_at":"2025-03-31T19:12:59.243Z","avatar_url":"https://github.com/nihas101.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Chip-8 Emulator [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Build Status](https://travis-ci.org/nihas101/java-chip-8-emulator.svg?branch=master)](https://travis-ci.org/nihas101/java-chip-8-emulator) [![Maintainability](https://api.codeclimate.com/v1/badges/aa53a727391e465e281a/maintainability)](https://codeclimate.com/github/nihas101/java-chip-8-emulator/maintainability) [![codecov](https://codecov.io/gh/nihas101/java-chip-8-emulator/branch/master/graph/badge.svg)](https://codecov.io/gh/nihas101/java-chip-8-emulator)\n\n\n\nThis is an emulator for the interpreted programming language Chip-8 written in Java.\n\n[![Click here]()](https://github.com/nihas101/java-chip-8-emulator/releases/latest)  for the latest release\n\n## Requirements\n**Java 1.8** is required to run this program.\n\n## Features\n\n- Load and play ROMs\n- Reconfigure the controls\n- Change the background and sprite color\n- Adjust the speed of emulation\n- Save and load states\n\n## Build Standalone Distribution\n\nTo create a standalone distribution as a zip or tar file, run:\n\n```sh\n./gradlew distZip\n```\nor\n```sh\n./gradlew distTar\n```\n\nThe distribution is placed under `build/distributions`.\n\n## How to run the emulator\n\nTo run the program from the distribution, extract the zip or tar file, and run the launch script for your system in the bin folder by typing:\n```sh\n./chip8\n```\nin the command-line interface.\n\n## Manual\n\n### Input\n\nThe emulator expects a **US keyboard layout** and has the following standard key assignments:\n\n| Chip-8 keys   | Keyboard keys   |\n| ------------- | --------------  |\n| 1 2 3 C       | 1 2 3 4         |\n| 4 5 6 D       | Q W E R         |\n| 7 8 9 E       | A S D F         |\n| A 0 B F       | Z X C V         |\n\n#### Reconfiguring keys\n\nTo reconfigure the key assignments, click on the ``config`` button in the interface to\nopen the configuration window, change the configuration to your liking and close the window again.\n\nThe configuration will be saved under ``../config/controls.dat`` upon closing the window.\n\nTo reset the configuration simply, click the reset button in the configuration window.\n\n### Loading and saving states\n\nThis emulator allows to load and save the states, by clicking on the corresponding buttons in the interface\nor using the following buttons:\n\n| Key           | Action                                     |\n| ------------- | -----------------------------------------  |\n| F5            | Save state                                 |\n| F6            | Load state                                 |\n\n\n### Debug\nThis Emulator features a simple debug-mode and can be controlled with the following keys:\n\n| Debug key      | Action                                     |\n| -------------  | -----------------------------------------  |\n| F1             | Opens/Closes the debug-window              |\n| F2             | Activates/Deactivates step-by-step-mode    |\n| F3             | Executes the next step (one CPU-cycle)     |\n| F4             | Resets the CPU                             |\n\n## Sources\n\nThe sources used to create this emulator:\n* [www.codeslinger.co.uk/pages/projects/chip8.html](http://www.codeslinger.co.uk/pages/projects/chip8.html)\n* [devernay.free.fr/hacks/chip8/C8TECH10.HTM](http://devernay.free.fr/hacks/chip8/C8TECH10.HTM)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnihas101%2Fjava-chip-8-emulator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnihas101%2Fjava-chip-8-emulator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnihas101%2Fjava-chip-8-emulator/lists"}