CSE321Week8 - CSE 321 Panya Chanawangsa [email protected]..

Info iconThis preview shows pages 1–18. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: CSE 321 Panya Chanawangsa [email protected] Project 2 Discussion • What is a framebuffer? • Project 2 requirements • How to get started • No late projects will be accepted • Start now What is a framebuffer? • Part of video memory containing a current video frame • Linux framebuffer: graphic abstraction layer to show graphics source: http://en.wikipedia.org/wiki/Linux_framebuffer • In project 2, we will try to simulate a Linux framebuffer. Project 2 Requirements 1. Implement a framebuffer as a shell command called fb 2. The source file should be named xsh_fb.c 3. The command fb takes in strings as its arguments and outputs them in the framebuffer 4. Your code should allow for flexibility and future modifications Project 2 Requirements (cont’d) 5. Display the framebuffer every time a row is full 6. Once the entire framebuffer is full, discard the top row and shift the content of the framebuffer up one line 7. Implement all the options specified in this file: project2description.pdf 8. Your program must handle bad input gracefully, i.e. does not crash when there are missing or invalid arguments How to get started • Create a directory called fb in xinu_mips- 1.0.2 • Copy proj2.tar.gz from /home to your ~/xinu_mips-1.0.2 directory • Go back to your xinu_mips-1.0.2 directory and untar it. You will see console-font.h , console-font.c, framebuffer.h , and xsh_fb.c • Move console-font.c to fb, console- font.h, framebuffer.h to include , and xsh_fb.c to shell How to get started (cont’d) • Update shell.c and shell.h to accommodate xsh_fb.c • Update the Makefile : … # Framebuffer FB = console-font.c # add any additional source # files here SRC = … ${CHAT:%.c=../chat/%.c} \ ${FB:%.c=../fb/%.c} \ ${TST:%.c=../test/%.c} ‘.’ is the background character and ‘*’ is the foreground character. T h i s (1) Display the framebuffer every time a row is full T h i s i s a n (2) T h i s i s a n e x t r (3) T h i s i s a n e x t r e m e l y (4) T h i s i s a n e x t r e m e l y l o n g (5) i s a n e x t r e m e l y l o n g s t r i (6) e x t r e m e l y l o n g s t r i n g (7) console-font.c • Lookup table (1-dimensional array) for bit patterns • Each character is 12 × 8 pixels....
View Full Document

This document was uploaded on 10/27/2011 for the course CSE 321 at SUNY Buffalo.

Page1 / 33

CSE321Week8 - CSE 321 Panya Chanawangsa [email protected]..

This preview shows document pages 1 - 18. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online