This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
haas:fall2017:discrete:projects:dcf1 [2017/09/09 14:23] – [Submission] wedge | haas:fall2017:discrete:projects:dcf1 [2017/10/09 14:21] (current) – wedge | ||
---|---|---|---|
Line 3: | Line 3: | ||
< | < | ||
</ | </ | ||
- | |||
- | ~~TOC~~ | ||
======Project: | ======Project: | ||
+ | |||
+ | =====Errata===== | ||
+ | Any changes that have been made. | ||
+ | |||
+ | * Revision 0.1: Updating dcfX v2 spec and added some additional implementation constraints (20170907) | ||
+ | * Revision 0.2: Finalized project data files, adapted included ' | ||
+ | * Revision 0.3: Updated check script so it no longer gives out false negatives. **make getdata** to grab the updated copy (20170921) | ||
=====Objective===== | =====Objective===== | ||
Line 55: | Line 60: | ||
====Header==== | ====Header==== | ||
It is actually **identical** to the specifications of last week, save for four changes: | It is actually **identical** to the specifications of last week, save for four changes: | ||
- | - we're no longer hard-coding the **stride** value to 1 (byte 10) | + | - we're no longer hard-coding the **stride** value to 1 (byte 10), but instead obtaining it from the command-line (argv[3]), any valid value between 1 and 255 (inclusive). |
- we're placing a 2 in the version byte (byte 9) | - we're placing a 2 in the version byte (byte 9) | ||
- the embedded source file name will now be stripped of any path (ie " | - the embedded source file name will now be stripped of any path (ie " | ||
- the destination argument (argv[2]) is now merely a path, NOT a path+filename (ie " | - the destination argument (argv[2]) is now merely a path, NOT a path+filename (ie " | ||
* the destination file is a combination of the destination path + source filename + " | * the destination file is a combination of the destination path + source filename + " | ||
+ | |||
+ | And specifically for **decode**, the source filename will be retrieved out of the post-header information at the start of the encoded file. | ||
Every RL-encoded file will start with the following 12-byte header: | Every RL-encoded file will start with the following 12-byte header: | ||
Line 162: | Line 169: | ||
‘/ | ‘/ | ||
‘/ | ‘/ | ||
- | ‘/ | + | ... |
- | ‘/ | + | |
- | ‘/ | + | |
- | ‘/ | + | |
- | ‘/ | + | |
- | ‘/ | + | |
- | ‘/ | + | |
- | ‘/ | + | |
make: Leaving directory '/ | make: Leaving directory '/ | ||
lab46: | lab46: | ||
Line 264: | Line 263: | ||
<cli> | <cli> | ||
- | lab46: | + | lab46: |
- | input filename: | + | input filename: |
output name length: 11 bytes | output name length: 11 bytes | ||
| |