This repository contains work for the lab experiments in ECSE 324 at McGill University.
Basic computer structures; instruction set architecture; assembly language; input/output; memory; software; processor implementation; computer arithmetic. Lab work involving assembly language level programming of single-board computers.
- Lab 1: some programming challenges to get familiar with ARM assembly and the E1-SoC Computer System
- Lab 2: exercices to understand how to use the stack, subroutine calls and the interaction between ARM and C
- Lab 3: drivers for the slider switches, push-buttons, LEDs and 7-Segment display
- Lab 4: high level I/O capabilities with the VGA controller, the PS/2 port (keyboard) and the audio controller
- Lab 5: implementation of a musical synthesizer