Objective: This program will create a magic square. The size of the magic square and values present will depend on user input, this program only accepts odd numbers as input. The magic square created will have every row, column, and the two main diagonals sum up to the same value. The sum value is also known as a magic constant. The magic constant formula is as follows, n being the user input.
M = n *((n^2+1)/2)
Context: This program was written as a final project for a course on machine organization and assembly language. The program is written in a mix of ARM and C. This program was created using a raspberry pi and is intended for its specific architecture. This program is intended to demonstrate proficiency in concepts explored in the course such as memory allocation, memory addressing, stack use, proper set up and use of arrays, and efficient register use.