User Tools

Site Tools


haas:spring2021:cprog:projects:ngfx

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
haas:spring2021:cprog:projects:ngfx [2021/01/22 21:11] – [Submission] wedgehaas:spring2021:cprog:projects:ngfx [2021/03/31 22:37] (current) – [Submission] wedge
Line 11: Line 11:
 =====NOTE===== =====NOTE=====
 Due to similar descriptions among the range of projects, I have condensed everything into one common project page. Where you see "ngfX" please substitute the particular project you are working on (ie "ngf0", "ngf1", etc.) Due to similar descriptions among the range of projects, I have condensed everything into one common project page. Where you see "ngfX" please substitute the particular project you are working on (ie "ngf0", "ngf1", etc.)
 +
 +=====Abstraction=====
 +{{page>haas:spring2021:common:projects:abstraction&noheader}}
 +
 +=====Locational Awareness=====
 +{{page>haas:spring2021:common:projects:location&noheader}}
  
 =====Reading===== =====Reading=====
 Please be sure to familiarize yourself with the pertinent content in:  Please be sure to familiarize yourself with the pertinent content in: 
-  * [[https://publications.gbdirect.co.uk//c_book/|the C book]] 
- 
  
 +  * [[https://www.tutorialspoint.com/cprogramming/|C Tutorial]]
 +  * [[http://publications.gbdirect.co.uk/c_book/|The C Book, online C book]]
 +    * [[http://publications.gbdirect.co.uk/c_book/thecbook.pdf|PDF of above]]
 +  * [[/_media/haas/printf.pdf|printf PDF]]
 +  * [[https://www.cprogramming.com/tutorial/c-tutorial.html?inl=hp|C tutorial]]
  
 +Please familiarize yourself with the table of contents and or index of the various resources, and sample various content to connect yourself with deeper understanding into the concepts being called upon in the current activity.
 ====On your pi==== ====On your pi====
 Develop and test this program on your pi. Only when done, verify that it compiles on lab46. Develop and test this program on your pi. Only when done, verify that it compiles on lab46.
Line 24: Line 34:
  
   * build-essential (hopefully you took care of this in ntr0)   * build-essential (hopefully you took care of this in ntr0)
-  * libgd-dev +  * mercurial (also installed and configured in ntr0)
-  * libgd-tools +
-  * libgd3+
  
 +NOTE: make sure you, for the purposes of your activities pertaining to this class, that you are using your SEMESTER repository.
 =====Specifications===== =====Specifications=====
 Your program should: Your program should:
Line 39: Line 48:
  
 =====Grabbing project resources===== =====Grabbing project resources=====
-have prepared a **grabit** for resources related to this project. To obtain:+To obtain project data, you will need to satisfy the following prerequisites: 
 + 
 +  * be logged into lab46 (shell) as your user 
 +  * have your semester lab46 repo cloned (into ~/src/SEMESTER) 
 +  * have created the appropriate DESIG (like "cprog" or "unix") subdirectory therein (~/src/SEMESTER/DESIG) 
 +  * have changed into that ~/src/SEMESTER/DESIG directory 
 + 
 +If all those conditions are met, you can use the **grabit** tool to obtain the project, as follows:
  
 <cli> <cli>
-lab46:~/src/SEMESTER/cprog$ grabit cprog ngfX +lab46:~/src/SEMESTER/DESIG$ grabit DESIG ngfX 
-make: Entering directory '/var/public/SEMESTER/cprog/ngfX' +make: Entering directory '/var/public/SEMESTER/DESIG/ngfX' 
-'/var/public/SEMESTER/cprog/ngfX/Makefile' -> '/home/wedge/src/SEMESTER/cprog/ngfX/Makefile' +'/var/public/SEMESTER/DESIG/ngfX/Makefile' -> '/home/USER/src/SEMESTER/DESIG/ngfX/Makefile' 
-'/var/public/SEMESTER/cprog/ngfX/README' -> '/home/wedge/src/SEMESTER/cprog/ngfX/README' +'/var/public/SEMESTER/DESIG/ngfX/README' -> '/home/USER/src/SEMESTER/DESIG/ngfX/README' 
-'/var/public/SEMESTER/cprog/ngfX/ngfX.c' -> '/home/wedge/src/SEMESTER/cprog/ngfX/ngfX.c' +'/var/public/SEMESTER/DESIG/ngfX/ngfX.c' -> '/home/USER/src/SEMESTER/DESIG/ngfX/ngfX.c' 
-'/var/public/SEMESTER/cprog/ngfX/ref_ngfX.aarch64' -> '/home/wedge/src/SEMESTER/cprog/ngfX/ref_ngfX.aarch64' +'/var/public/SEMESTER/DESIG/ngfX/ref_ngfX.aarch64' -> '/home/USER/src/SEMESTER/DESIG/ngfX/ref_ngfX.aarch64' 
-'/var/public/SEMESTER/cprog/ngfX/ref_ngfX.armv7l' -> '/home/wedge/src/SEMESTER/cprog/ngfX/ref_ngfX.armv7l' +'/var/public/SEMESTER/DESIG/ngfX/ref_ngfX.armv7l' -> '/home/USER/src/SEMESTER/DESIG/ngfX/ref_ngfX.armv7l' 
-'/var/public/SEMESTER/cprog/ngfX/ref_ngfX.x86_64' -> '/home/wedge/src/SEMESTER/cprog/ngfX/ref_ngfX.x86_64' +'/var/public/SEMESTER/DESIG/ngfX/ref_ngfX.x86_64' -> '/home/USER/src/SEMESTER/DESIG/ngfX/ref_ngfX.x86_64' 
-'/var/public/SEMESTER/cprog/ngfX/tttX.c' -> '/home/wedge/src/SEMESTER/cprog/ngfX/tttX.c' +'/var/public/SEMESTER/DESIG/ngfX/tttX.c' -> '/home/USER/src/SEMESTER/DESIG/ngfX/tttX.c' 
-make: Leaving directory '/var/public/SEMESTER/cprog/ngfX' +make: Leaving directory '/var/public/SEMESTER/DESIG/ngfX' 
-lab46:~/src/SEMESTER/cprog+lab46:~/src/SEMESTER/DESIG
 </cli> </cli>
  
Line 69: Line 85:
  
 ====Raspberry Pi command-line via SSH/MOSH==== ====Raspberry Pi command-line via SSH/MOSH====
-You don't have a monitor, so you are logging into your pi remotely (doable, and good intra-system practice)+If you don't have a monitor, you likely are logging into your pi remotely (doable, and good intra-system practice) 
 + 
 +Once your **ngfX** project files are 'hg' **add**ed to your repository on lab46, **commit** and **push**.
  
-Once your **Makefile** and **fwf0.c** file are added to your repository, **commit** and **push**.+On your pi, to obtain those files there, be sure to be in your repository, and 'hg' **pull** and **update**.
  
-On lab46**pull** and **update**.+NOTE: To avoid repository conflictsALWAYS check for any incoming pull/update transactions before doing a commit/push. Problems occur when you forget (this is an issue on both lab46 and your pi).
  
 Compile: Compile:
  
 <cli> <cli>
-lab46:~/src/desig/fwf0$ make+lab46:~/src/SEMESTER/DESIG/ngfX$ make
 </cli> </cli>
  
Line 84: Line 102:
  
 <cli> <cli>
-lab46:~/src/desig/fwf0$ ./fwf0+lab46:~/src/SEMESTER/DESIG/ngfX$ ./ngfX.ARCH
 </cli> </cli>
  
Line 102: Line 120:
  
 <cli> <cli>
-lab46:~/src/SEMESTER/cprog/ngfX$ make submit+lab46:~/src/SEMESTER/DESIG/ngfX$ make submit
  
 Project backup process commencing Project backup process commencing
Line 112: Line 130:
 Project backup process complete Project backup process complete
  
-Submitting cprog project "ngfX":+Submitting DESIG project "ngfX":
     -> ../ngfX-DATESTAMP-HOUR.tar.gz(OK)     -> ../ngfX-DATESTAMP-HOUR.tar.gz(OK)
  
 SUCCESSFULLY SUBMITTED SUCCESSFULLY SUBMITTED
-lab46:~/src/SEMESTER/cprog/ngfX$ +lab46:~/src/SEMESTER/DESIG/ngfX$ 
 </cli> </cli>
  
Line 141: Line 159:
  
 Additionally: Additionally:
-  * Solutions not abiding by spirit of project will be subject to a 25% overall deduction +  * Solutions not abiding by **SPIRIT** of project will be subject to a 25% overall deduction 
-  * Solutions not utilizing descriptive why and how comments will be subject to a 25% overall deduction +  * Solutions not utilizing descriptive why and how **COMMENTS** will be subject to a 25% overall deduction 
-  * Solutions not utilizing indentation to promote scope and clarity will be subject to a 25% overall deduction +  * Solutions not utilizing **INDENTATION** to promote scope and clarity will be subject to a 25% overall deduction 
-  * Solutions not organized and easy to read (within 90 char width) are subject to a 25% overall deduction+  * Solutions lacking **ORGANIZATION** and are not easy to read (within 90 char width) are subject to a 25% overall deduction
  
-^  project  ^  point item  ^  total points  |+^  project (ngfX)   point item (#)   total points (TOTAL) |
 |  ngf0  |  1  |  13  | |  ngf0  |  1  |  13  |
 |  ngf1  |  2  |  26  | |  ngf1  |  2  |  26  |
Line 153: Line 171:
 |  ngf4  |  5  |  65  | |  ngf4  |  5  |  65  |
 |  ngf5  |  6  |  78  | |  ngf5  |  6  |  78  |
 +|  ngf6  |  6  |  78  |
  
haas/spring2021/cprog/projects/ngfx.1611349868.txt.gz · Last modified: 2021/01/22 21:11 by wedge