5de545520e2760ffb124399f69368ebf09ed4a33
haas/fall2026/cprog/projects/fwg0.md
| ... | ... | @@ -6,8 +6,7 @@ |
| 6 | 6 | |
| 7 | 7 | Obtain the latest stable release source code, or latest repository code, |
| 8 | 8 | of the `Vircon32` Fantasy Console, along with its `DevTools`, and modify |
| 9 | -the provided code to display a sprite, move it around the screen, and |
|
| 10 | -detect screen bounds. |
|
| 9 | +the provided code to display an image, change the text, basically modify the code as given to some different state of output. |
|
| 11 | 10 | |
| 12 | 11 | ## TASK |
| 13 | 12 | |
| ... | ... | @@ -15,17 +14,17 @@ Obtain and install on your development system the latest stable release, |
| 15 | 14 | or latest version of the repository code, of the `Vircon32` Fantasy |
| 16 | 15 | Console, along with its `DevTools` (C compiler). |
| 17 | 16 | |
| 18 | -NOTE: Do not add the source code or binary code to `Vircon32` or |
|
| 17 | +NOTE: Do **NOT** add the source code or binary code to `Vircon32` or |
|
| 19 | 18 | `DevTools` to your repository! Process these outside of your repository. |
| 20 | 19 | Once installed, your files specifically related to your modified code |
| 21 | 20 | SHOULD be added to your repository. |
| 22 | 21 | |
| 23 | -There is a `README` file in the base directory of the Vircon32 |
|
| 22 | +There is a `Readme.md` file in the base directory of the Vircon32 |
|
| 24 | 23 | `ComputerSoftware` directory that includes build instructions. |
| 25 | 24 | |
| 26 | -Verify that it works, by testing the grabit code in its initial state by |
|
| 27 | -ensuring the `DevTools` work when called (`compile`, `assemble`, and |
|
| 28 | -`packrom`), and of course running it in the `Vircon32` emulator. |
|
| 25 | +Verify that it works, by testing the project-supplied code in its initial |
|
| 26 | +state by ensuring the `DevTools` work when called (`compile`, `assemble`, |
|
| 27 | +and `packrom`), and of course running it in the `Vircon32` emulator. |
|
| 29 | 28 | |
| 30 | 29 | Then, modify the program according to the following criteria: |
| 31 | 30 | |
| ... | ... | @@ -33,21 +32,20 @@ Then, modify the program according to the following criteria: |
| 33 | 32 | |
| 34 | 33 | You are to write a Vircon32 C program that does the following: |
| 35 | 34 | |
| 36 | - * displays some "sprite" of your choosing on the screen |
|
| 37 | - * moves based on the control of the first gamepad (left, right, up, down) |
|
| 38 | - * screen bounds detection and handling (barrier or wrap-around) |
|
| 35 | + * displays at least one image/sprite (region) to the screen |
|
| 36 | + * alters the default text in a meaningful way |
|
| 39 | 37 | |
| 40 | 38 | NOTE: the first gamepad by default is mapped to the keyboard |
| 41 | 39 | |
| 42 | 40 | ## URLs |
| 43 | 41 | |
| 44 | -The main Vircon32 site can be found [here](https://www.vircon32.com/), be |
|
| 45 | -sure to note the link to the Vircon32 API. |
|
| 42 | +The Vircon32 C API reference can be found |
|
| 43 | +[here](https://www.vircon32.com/api.html). |
|
| 46 | 44 | |
| 47 | 45 | The code can be found on the [Vircon32 ComputerSoftware GitHub |
| 48 | 46 | repository](https://github.com/vircon32/ComputerSoftware/) |
| 49 | 47 | |
| 50 | -I would recommend against checking out the tutorials: too many have |
|
| 48 | +I would recommend **against** checking out the tutorials: too many have |
|
| 51 | 49 | gotten into trouble being influenced by the code, running into issues |
| 52 | 50 | trying to conform to project specifications. |
| 53 | 51 | |
| ... | ... | @@ -149,31 +147,21 @@ equivalent) must be met: |
| 149 | 147 | * Sufficient comments explaining the point of provided logic **MUST** be present |
| 150 | 148 | * No global variables (without instructor approval), no goto statements, no calling of main()! |
| 151 | 149 | * Track/version the source code in your private semester repository |
| 152 | - * Submit a copy of your source code to me using the **submit** tool by the deadline. |
|
| 153 | 150 | |
| 154 | -### SUBMIT TOOL USAGE |
|
| 155 | - |
|
| 156 | -Let's say you have completed work on the project, and are ready to |
|
| 157 | -submit, you would do the following: |
|
| 158 | - |
|
| 159 | -``` |
|
| 160 | -lab46:~/src/SEMESTER/cprog/fwg0$ make submit |
|
| 161 | -``` |
|
| 162 | - |
|
| 163 | -You should get some sort of confirmation indicating successful submission |
|
| 164 | -if all went according to plan. If not, check for typos and or locational |
|
| 165 | -mismatches. |
|
| 151 | +To submit this project to me, make sure the `Makefile` and your completed |
|
| 152 | +`fwg0.c` file, `fwg0.xml`, and any associated asset files are placed in |
|
| 153 | +your private semester repository under `cprog/fwg0/`; do NOT track any |
|
| 154 | +`.vbin` or `.v32` files. |
|
| 166 | 155 | |
| 167 | 156 | ### RUBRIC |
| 168 | 157 | |
| 169 | 158 | I'll be evaluating the project based on the following criteria: |
| 170 | 159 | |
| 171 | 160 | ``` |
| 172 | -234:fwg0:final tally of results (234/234) |
|
| 161 | +156:fwg0:final tally of results (156/156) |
|
| 173 | 162 | *:fwg0:code modified to meet project specifications [52/52] |
| 174 | -*:fwg0:grabit of project data by Sunday prior to duedate [26/26] |
|
| 175 | -*:fwg0:screenshot or video posted to class DISCORD of game running [52/52] |
|
| 176 | -*:fwg0:source file, XML file, build script, and cartridge submit [52/52] |
|
| 163 | +*:fwg0:screenshot or video posted to class DISCORD of CART running [26/26] |
|
| 164 | +*:fwg0:source file, XML file, build script, and assets provided [26/26] |
|
| 177 | 165 | *:fwg0:code compiles, cartridge builds with no warning or error [26/26] |
| 178 | 166 | *:fwg0:committed project related changes to private semester repo [26/26] |
| 179 | 167 | ``` |
haas/fall2026/cprog/projects/sof0.md
| ... | ... | @@ -130,28 +130,18 @@ For three digit numbers like 105, we have 10, and its increment is 11, so |
| 130 | 130 | = 11025 |
| 131 | 131 | ``` |
| 132 | 132 | |
| 133 | -## GRABIT |
|
| 133 | +## OBTAIN THE PROJECT FILES |
|
| 134 | 134 | |
| 135 | -I have prepared a `grabit` for resources related to this project. To |
|
| 136 | -obtain it: |
|
| 135 | +To assist with consistency across all implementations, data files for use |
|
| 136 | +with this project are available on the class repository under the |
|
| 137 | +`projects/` directory. Please copy the data to your project directory to |
|
| 138 | +begin work. |
|
| 137 | 139 | |
| 138 | -``` |
|
| 139 | -lab46:~/src/SEMESTER/DESIG$ grabit DESIG sof0 |
|
| 140 | -make: Entering directory '/var/public/SEMESTER/DESIG/sof0' |
|
| 141 | -'/var/public/SEMESTER/DESIG/sof0/Makefile' -> '/home/user/src/SEMESTER/DESIG/sof0/Makefile' |
|
| 142 | -'/var/public/SEMESTER/DESIG/sof0/sof0.c' -> '/home/user/src/SEMESTER/DESIG/sof0/sof0.c' |
|
| 143 | -make: Leaving directory '/var/public/SEMESTER/DESIG/sof0' |
|
| 144 | -lab46:~/src/SEMESTER/DESIG$ |
|
| 145 | -``` |
|
| 146 | - |
|
| 147 | -At which point you can change into the newly created and populated |
|
| 148 | -`sof0` directory. |
|
| 140 | +Please study any provided code or supporting documents, and look up, |
|
| 141 | +experiment, and ask questions on aspects that you do not understand. |
|
| 149 | 142 | |
| 150 | 143 | Be sure, using **git**, to **add**, **commit**, and **push** this to your |
| 151 | -lab46 clone of your repository. |
|
| 152 | - |
|
| 153 | -Then, if working on your pi/system, **git pull** to get the files |
|
| 154 | -available there, or continue working on it on lab46. |
|
| 144 | +private semester repository. |
|
| 155 | 145 | |
| 156 | 146 | ## PROGRAM |
| 157 | 147 | |
| ... | ... | @@ -334,18 +324,10 @@ met: |
| 334 | 324 | * Code must be well commented |
| 335 | 325 | * Do NOT double space your code. Group like statements together. |
| 336 | 326 | * Track/version the source code in your private semester repository |
| 337 | - * Submit a copy of your source code to me using the **submit** tool |
|
| 338 | - |
|
| 339 | -To submit this program to me using the **submit** tool, run the following |
|
| 340 | -command at your LAB46 prompt: |
|
| 341 | - |
|
| 342 | -``` |
|
| 343 | -lab46:~/src/SEMESTER/cprog/sof0$ make submit |
|
| 344 | -``` |
|
| 345 | 327 | |
| 346 | -You should get some sort of confirmation indicating successful submission |
|
| 347 | -if all went according to plan. If not, check for typos and or locational |
|
| 348 | -mismatches. |
|
| 328 | +To submit this project to me, make sure the `Makefile` and your completed |
|
| 329 | +`sof0.c` file are placed in your private semester repository under |
|
| 330 | +`cprog/sof0/` |
|
| 349 | 331 | |
| 350 | 332 | What I'll be looking for: |
| 351 | 333 | |
| ... | ... | @@ -355,8 +337,7 @@ I'll be evaluating the project based on the following criteria: |
| 355 | 337 | |
| 356 | 338 | ``` |
| 357 | 339 | 130:sof0:final tally of results (130/130) |
| 358 | -*:sof0:grabit the code on lab46 by Sunday before deadline [13/13] |
|
| 359 | -*:sof0:code is pushed to private semester repository [13/13] |
|
| 340 | +*:sof0:updated code is in private semester repository [26/26] |
|
| 360 | 341 | *:sof0:proper output formatting per specifications [26/26] |
| 361 | 342 | *:sof0:clean compile, no compiler messages [26/26] |
| 362 | 343 | *:sof0:program conforms to project specifications [26/26] |