Lab 4: Paint applicationDue May 29, 2022, 11:59 PMMinimum Submission Requirements Ensure that your Lab3 folder contains the following files (note the capitalizationconvention): lab4_part1.asm lab4_part2.asmThese above files MUST have the correct file name with extensionElse there is a penalty of 100% README.txt Commit and push your repository Complete the Google Form (link within the text) with the correct commit ID ofyour final submission.You absolutely MUST complete this Google Form correctly in order to be gradedfor Lab4.Failure to do so will result in a penalty of 100%.Brief Summary of Lab 4This lab will develop a mini Paint application running on our emulated RISC-V computer. Thisapplication will take user input from the keyboard to draw patterns over a Bitmap display. Abitmap essentially maps a bit pattern (in our case a 32-bit/64-bit value) to a specific colorfor display. The address where we store this color value essentially behaves as a pixel whenwe pull that value over a display unit.Figure 1 High level Lab4 visualizationOur given Paint application will draw against a black background. The user will specify astarting pixel coordinate. Then using the w, a, s, d keys, they can draw straight lines inleft, right. Up, down directions. By pressing q, c, e, z keys, they can draw diagonally aswell.As you read along in this document, you will be given hints so as to guide you in finishingLab4. So, you MUST carefully read every section in this document in order without skippingany.ResourcesIn the Lab4 folder in the course Google Slide, you will see the following files. They are meantto read (and understood) in sequence:1. add_function.asm This program accepts two integers as user inputs and prints theiraddition result. The actual addition is done through calling a function, sum. Sum acceptstwo arguments in the a0, a1 registers and returns a0 a1 in a0 register2. (optional) multiply_function.asm This program accepts two integers as user inputs andprints their multiplication result. The actual multiplication is done through calling afunction, multiply. Multiply accepts two arguments in the a0, a1 registers and returnsa0*a1 in a0 register. This function in turn calls the function sum, described previously,to do a particular addition. Thus, multiply function is an example of a nested functioncall, a function which itself calls another function, sum in our case.3. RISC-V_function_convention.pdf This pdf describes the conventions of how we use thevarious 32 RV64I registers in terms of creating a program with multiple functions. Thedocumentation is provided such that students can start working on implementing therequired function for Lab4_part1.asm. Studying the comments in add_function.asmalongside reading this pdf should be sufficient to create the required function forLab4_part1.asm4. bitmap.asm This program generates a 32 by 32-pixel grid on the Bitmap display toolprovided by RARS. Certain pixels are colored red, green and blue. Refer to this sectionfor more details.5. lab4_part1.asm, lab4_part2.asm These are the 2 files you will need to modify andsubmit as part of Minimum Submission Requirements.6. lab4.asm This is the testbench file that will implement our Paint application iflab4_part1.asm and lab4_part2.asm are implemented correctly. These two student filesare stitched in to this .asm source code. Thus, you should only read the file lab4.asmand NOT change or modify it in any form.Please download the .asm files and make sure to open them in RARS Text editor only. Else thecomments and other important code sections wont be properly highlighted and can be a hindranceto learning assembly language intuitively.Understanding the RARS bitmap display toolAt this point, you should be somewhat comfortable with writing simple leaf functions inassembly. Remember to approach tutors/TAs/instructor if you still feel the need to clarifysome questions you might have regarding this aspect of the lab.HTML color codesFor displaying various colors, RARS bitmap tool uses the HTML color codes. In the link provided,note that the color code hex value is preceded by
Delivering a high-quality product at a reasonable price is not enough anymore.
That’s why we have developed 5 beneficial guarantees that will make your experience with our service enjoyable, easy, and safe.
You have to be 100% sure of the quality of your product to give a money-back guarantee. This describes us perfectly. Make sure that this guarantee is totally transparent.Read more
Each paper is composed from scratch, according to your instructions. It is then checked by our plagiarism-detection software. There is no gap where plagiarism could squeeze in.Read more
Thanks to our free revisions, there is no way for you to be unsatisfied. We will work on your paper until you are completely happy with the result.Read more
Your email is safe, as we store it according to international data protection rules. Your bank details are secure, as we use only reliable payment systems.Read more
By sending us your money, you buy the service we provide. Check out our terms and conditions if you prefer business talks to be laid out in official language.Read more