Coder Social home page Coder Social logo

gba's Introduction

GBA

Directories

####audio audio_top.sv : top module for audio audio_testbench.sv : a testbench for 4 channel sound direct_sound/ : mixer and files for direct sound 4channel/ : mixer and modules for each of the 4 channels

####coe_files mem_test.coe : Test for block RAMs mem_test_new.coe : Another test for block RAMs pixels.coe : COE file for ROM that puts 3 pixels on a screen pmt.coe : COE file for Mario & Luigi Pong ROM w/ sound (final) pong.coe : Basic pong ROM from DevKitARM demo pong_mario.coe : 1st iteration of Mario & Luigi pong pong_mario_txt.coe : 2nd interation of Mario & Luigi pong wstein.coe : ROM for WolfARMStein

There'd normally be gba_bios.coe here, but we remvoed it for copyright reasons. 
Go find it on the internet, then use the following commands:

xxd -ps -c 1 gba_bios.rom > gba_bios.hex
python endian_convert.py gba_bios.hex
mv outfile.hex gba_bios.coe

endian_convert.py is in mem/
Then add the two lines at the top of COE files - see any other COE file for an example

####controller controller.sv : the source code fo the controller interface.txt : detail documentation on the controller interface CI.sv : chip interface for the controller

####cpu Multiplier/ : source code for the multiplier (the M in TDMI) file_lists/ : File lists to pass to the Makefile for simulation roms/ : test roms including the GBA bios test_files/ : Files for defunct testing infrastructure ThumbDecoder.vhd : decoder for thumb mode the (T in TDMI) ARM7TDMIS_TOP.vhd : the top module for the entire CPU cpu_top.sv : wrapper for ARM7TDMIS_TOP.vhd in system verilog ControlLogic.vhd : control logic for the instruction pipeline interrupt_controller.sv : Interrupt controller for system

See project report for more details on CPU

####dma dma.sv : includes the datapath and fsm for dma, as well as the top module for all 4 dma's dma_fsm_tb.sv : an fsm that sets mmio registers for the tb dma_tb_sim.sv : a test bench in simulation, includes a simulated memory controller dma_tb.sv : a tb for the fpga test.coe : a sample coe file for testing

####doc Docs for each of the major systems, summary of the programming reference manual

####games Source for the Mario & Luigi pong game that we made for demo day

####graphics graphics_top.sv : A top module for all of graphics manual_testbench.sv : A manual testbench for individual parts of the pipeline bg_processing_circuit/ : everything for the bg_processing circuit dbl_buffer_src/ : the double buffer for the vga output obj/ : everything for the object (sprite) processing circuit priority_evaluation/ : everything for priority evaluation, the inputs to this are the backgroudn and object circuits special_effects/ : everything for the special effects circuit, the input to this comes from the priority circuit

####mem endian_convert.py : A python script to convert from single-byte-per-line to 4-byte little endian for COE files pixels.coe : A sample coe file mem_top.sv : The memory controller

####timer timer_top.sv : the top module for al 4 timers timer.sv : one individual timer

####zedboard_audio-master: This directory was taken from https://github.com/ems-kl/zedboard_audio. The code in hdl/ outputs to the audio chip hdl/ : the source code doku/ : documentation taken from the project repo constraints/ : a constraints file for the project (not needed for our project) bitstreams/ : sample bitstreams the project gave for tests (not needed for our project)

Instructions to make Project

  1. Unzip and open the GBA_archive.xpr.zip Vivado Project (get from Dropbox/AFS)
  2. Make a COE file for the GBA BIOS
  3. Create COE file out of game ROM you want to play, make sure to convert to Little Endian. Input COE file into Game Pack ROM

gba's People

Contributors

ryanovsky avatar

Stargazers

Yusuf Coşgun avatar  avatar Masanori Ogino avatar  avatar J Schoen avatar Timothy avatar  avatar  avatar  avatar Jevin Sweval avatar buzai avatar Wenting Zhang avatar  avatar Jamie Blanks avatar Brahim HAMADICHAREF avatar

Watchers

Jevin Sweval avatar James Cloos avatar protospork avatar Mara Kirdani-Ryan avatar  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.