CS/COE 0449 - Project/Assignments

 


PalmOS Tools:
 
Software packages needed in the course (all freeware):
  • Install PALM  OS Developer Studio  locally from the course ftp site (download and install- big file: ~275MB).
    Installing the developer studio (or also called developer suite) will install automatically with it the following:
                1. PalmOS SDK environment
                2. Cygwin (PRC-Tools including Pilrc)
                3. PalmOS Emulator
                4. PalmOS Simulator

  • Download instructions on how to create a project in Developer Studio, and related tools (i.e. Cygwin options and feedback on some errors).


  • pilrc -resource compiler (install only if you downloaded developer studio and had a Pilrc Error when you attempt to build the project--this means that the pilrc executable is missing from developer studio's Cygwin tool. If so, then install the pilrc tool and then look for and copy pilrc.exe into the bin/ directory inside C:\PalmOSCygwin).
  • Cygwin (no need to install this if you already installed developer studio with the install Cygwin option).

 

CD Resources for the PDA Programming in C Book
 


  • Assignment-1  (Basic C Programming) - Due Thursday Jan.18 by 11:59pm.

        Structured program development (control structures, if-then-else statements, while and for loops).

            Name the package your FristInitialLastNameAssign1.zip and make sure to submit to the assignment number directory.


    Assignment-2  (C Programming--Recursion, Arrays, and Pointers) - Due Sunday Feb. 4th  by 11:59pm.
       Recursion (the Towers of Hanoi problem).
      Arrays (the Airline Reservation problem).
      Pointers (the Tortoise and the Hare Simulation problem).

     


    Assignment -3 (Build  your own computer) - Due Tuesday Feb. 27 by 11:59 midnight.


  • Programming Assignment-4 (Create a shell and UNIX-cmds implementation)--due: April 7.

      1)  Skeleton Code (myshell.c) --use and build on top of this code to complete the project.

      2) Here is a file that is useful for parsing a line of input with getline()--available here: lex.yy.c 
          which contains some code that uses getline(), a function provided by lex.c to get and parse a line of input.
          getline() returns an array of pointers to character strings.

         Note: that lex.yy.c is generated from the code lex.c.

        To compile lex.c, you have to use flex: "flex lex.c", which will generate lex.yy.c

        (you can use lex.yy.c directly, or generate it from compiling the lex.c file).

     3) You can use the following command line to build an executable called myshell.


           gcc  -o  myshell   myshell.c   lex.yy.c  -lfl 
  •  4) Either use step-3 or this Makefile.

    Functions used in Project4--very helpful (apply and use code in this file to understand the concepts further).

     

  • UNIX-Shells Commands & feedback.
  • Tutorial & Script on using the sys-calls
  • Project4 Grading Sheet
     

  • Programming Assignment5-- due: Friday April 20, by 11:59pm.

    PalmOS Application--Random Number Generator & Tapping Sequence Order

       Standard C Strings and Characters, C library functions reference

       Assignment programming string tools (ppt) [may be used to get the contents of the text field including FldSetNewText() ]:

             FieldType   *fieldseq;

               int  seqOrderLen = FldGetTextLength(fieldseq) --> get the contents length of the text field.

               char *seqorderStr = FldGetTextPtr( fieldseq) --> get the contents of the text field. or

               char  seqorderStr[MAX] = FldGetTextPtr( fieldseq);

      Assignment Design Flow-Chart

      Project5 Grading Sheet