Home
CPSC 305
CPSC 305: Computer Systems and Architecture
Syllabus
Course Notes:
Course Introduction
Introduction to C
C Programming Continued
Circuits and Transistors
Bytes and Bits
Logic Gates
Introduction to the Game Boy Advance
GBA Graphics Programming
Carry Lookahead Adders
Using Images
Midterm Topics
Sequential Logic
GBA Tile Modes
Memory Systems
Sprites
Assembly Programming
Assembly Programming Branches
Memory in Assembly
Instruction Pipelining
GBA Sound Programming
Caching
Parallelism
Final Topics
Labs
String Reversal
Structure Exercise
Switch Exercise
Seven Segment Display Exercise
GBA Input Exercise
Simple Logic Unit
Tic-Tac-Toe Exercise
Combinatorial Analysis
Flip Flop Exercise
Parallax Exercise
Average Exercise
Collatz Exercise
Uppercase Exercise
Assignments
XOR Encryption
GBA Pong
Build a CPU Part 1
GBA Game
Build a CPU Part 2
GBA Instructions
Setting up a GBA development environment:
Option 1: Using the CPSC server
Option 2: Using the CPSC 305 VM
Option 3: Installing the tools [Linux only]
Totally optional: Running the games on a real GBA
Copyright © 2024 Ian Finlayson | Licensed under a
Creative Commons BY-NC-SA 4.0
License.