Final Project Alternative - Emulation Machine with Batocera and Raspberry PI

Deliverable 1

Investigate the following concepts and create a markdown file explain each concept:

  1. What is a Raspberry Pi?
    1. Include images and a table describing each model
    2. Include a small section explaining the origins of the Raspberry Pi
  2. What is Batocera?
    1. Investigate other alternatives to Batocera
  3. What is emulation?
    1. Is Emulation legal in the United States? Do you think Emulation should be legal or illegal?
  4. What is SSH?
    1. Include command examples.
    2. How do I use ssh to connect to my virtual machine from Windows?
  5. IP Address
    1. IPV4
    2. IPV6
  6. What is a ROM? *(in the context of gaming)

What to submit for deliverable 1

  1. In your cis106 repository/directory/folder create a new directory called “FinalProject
  2. Inside FinalProject create a new directory called deliverable1
  3. Inside deliverable1, create a file called deliverable1.md
  4. deliverable1.md must contain all the answers to the questions above including:
    1. Proper markdown syntax
    2. Images
    3. Tables
    4. Links
  5. Convert your markdown file to pdf
  6. Push all your changes to github and in blackboard submit the following:
    1. The URL of deliverable1.md
    2. The PDF file deliverable1.pdf

Deliverable 2

For deliverable 2, you will install Batocera in the Raspberry Pi and configure it. There are free games that you can download directly from Batocera. Those games are homebrews. Please do not include any Pirated Roms However, if you can find any free to play games that are legally available, you may use them.

After you have completed the installation and tested some games, create a markdown file that will answer the following questions:

  1. What are the steps to install Batocera in a Raspberry PI
    1. Start by including a list of all the necessary hardware and why you need it.
    2. Try to include as many screenshots as needed for every step
    3. Do not skip any step. Pretend that you are writing this guide for someone who is not very technical
  2. How to use Batocera?
    1. How to start a game
    2. How to connect Batocera to the internet
    3. How to update Batocera
    4. How to scrape a game? (Research what scrapping means)
    5. How to start a game
    6. How to stop a game
    7. How to use save states when playing?

What to submit for deliverable 2

  1. In your cis106 repository/directory/folder create a new directory called “FinalProject
  2. Inside FinalProject create a new directory called deliverable2
  3. Inside deliverable2, create a file called deliverable2.md
  4. deliverable1.md must contain all the answers to the questions above including:
    1. Proper markdown syntax
    2. Images
    3. Tables
    4. Links
  5. Convert your markdown file to pdf
  6. Push all your changes to github and in blackboard submit the following:
    1. The URL of deliverable2.md
    2. The PDF file deliverable2.pdf

Deliverable 3

Romhacking.net contains some homewbrews that you can download. You can also find roms in myabandomware.com however I am uncertain of their legality therefore use at your own risk. This site contains other homebrews a well.

Your goal for this final deliverable is to explain how to transfer games to your raspberry pi. There is more than one way to do so, for example, you can connect the sd card to your pc and copy the roms over their respective directory. You can also transfer the games over the web or over SSH connection. Your goal is to research each way of transferring games and document them here.

After you have learn how to do it, create a markdown document explaining each way of transferring games and then providing step by step instructions. Do not include instructions on how to download roms. We are assuming that the reader of your guide already has roms that they legally own.

What to submit for deliverable 3

  1. In your cis106 repository/directory/folder create a new directory called “FinalProject
  2. Inside FinalProject create a new directory called deliverable3
  3. Inside deliverable3, create a file called deliverable3.md
  4. deliverable1.md must contain all the answers to the questions above including:
    1. Proper markdown syntax
    2. Images
    3. Tables
    4. Links
  5. Convert your markdown file to pdf
  6. Push all your changes to github and in blackboard submit the following:
    1. The URL of deliverable3.md
    2. The PDF file deliverable3.pdf