This assignment is very simple and easy to complete. It will probably
take you somewhere between 5 and 30 minutes. You should do this on your
own. If the instructions are not clear enough, however, and you do need
help with the assignment, feel free to contact Bob for help. Note that
for this assignment, it is not necessary that you have any understanding
of why it works; you must simply do it. These are the goals of the assignment:
Your final result for this project will be a Nintendo ROM, which you can
run in an emulator, that will display your name on the screen. These are
the basic steps of the assignment, but you can scroll down more for
detailed instructions:
Downloading the assignment files
Save this file, assign1_osx.dmg, somewhere on
the hard drive, such as on the Desktop. Double click on it, and a new drive will automagically appear
on the Desktop.
Editing your name
Double click on the new drive, named "assign1", to see its contents. Ctrl-click on the file
name.bas, and use the "Open With" menu option to open it with a text editor, such as
XCode or Project Builder if you have them, or TextEdit, which is in the Applications folder
of every OSX Macintosh. Find the text on the 14th line of the file that says "YOUR NAME HERE".
Replace that text with your own name, whatever name you prefer to be called. Be sure to use
capital letters. Then save the file.
Compiling and assembling
For this, you will need to open the Terminal application. This can be found usually in the
hard drive's Applications folder, or in the Utilities folder within that. You can use Finder's
File/Find menu option to help you if you are having trouble locating Terminal. Once you have a
Terminal open, you should type the commands that are listed below in bold text. The only
change you should need to make to these commands is replacing my Andrew user id (rrost)
with your own in both the second and third commands. If everything goes peachy, then your
"assign1" folder should now contain a NES rom. In my case, the resulting file would be named
"rrost.nes". This will be the file to turn in.
(optional) Testing your rom
If you would like to test your rom, you will need to first find a Nintendo emulator on
the internet. RockNES and
Nestopia are good choices for
the Macintosh. Figuring out how to install the emulator and load a ROM is up to you.
Turning it in
You should submit your rom to me by email. The address to send to is
rrost+nes@andrew.cmu.edu.
The email subject should be "NES Assignment 1", and the email should contain these items: Downloading the assignment files
For Windows computers, download this file, assign1_win.zip,
and unzip it to a directory, such as the Desktop.
Editing your name
Open name.bas in a text editor. Notepad or WordPad should work well enough, or MS-DOS
edit if you have that. On the 14th line, replace the text that says "YOUR NAME HERE"
with your own name, whatever name you prefer to be called. Be sure to use
capital letters. Then save the file.
Compiling and assembling
For this step, you will need to use the command line. Many Windows machines have a command
prompt available from the Start Menu / Programs / Accessories. Another way to open a command
is to go to the Start Menu, and select the "Run..." command, or hit the Window+R key. From
the Run menu, enter Once you have the command prompt open, change to the directory where you unzipped the
assignment. If you unzipped to the Desktop and it created a "nes1" folder, you will want
to change to the nes1 folder. On most Windows machines, you can type "cd " (with a space)
into the command line and then drag the nes1 folder into the command line to complete the line.
Then hit enter. If this doesn't work, try one of the following commands, or panic.
From the directory containing the assignment files, run the following two commands.
You should replace my Andrew user id (rrost) with your own in both commands. If everything
goes peachy, then you should now have a NES rom. In my case, the resulting file would be named
"rrost.nes". This will be the file to turn in.
(optional) Testing your rom
You're on your own here. Find a NES emulator and try it out. It's up to you to figure
out how to install the emulator and load a ROM. For Windows, I recommend the emulator
Jnes.
Turning it in
Scroll up and follow the handin instructions listed for Mac OSX.
Downloading the assignment files
For x86 Linux computers, download this file, assign1_linux.zip,
and unzip it to a directory.
Editing your name
Open name.bas in a text editor, and on the 14th line replace the text that says
"YOUR NAME HERE" with your own name, whatever name you prefer to be called. Be sure to use
capital letters. Then save the file.
Compiling and assembling
From the directory containing the assignment files, run the following two commands.
You should replace my Andrew user id (rrost) with your own in both commands. If everything
goes peachy, then you should now have a NES rom. In my case, the resulting file would be named
"rrost.nes". This will be the file to turn in.
(optional) Testing your rom
You're on your own here. Find a NES emulator and try it out.
Turning it in
Scroll up and follow the handin instructions listed for Mac OSX.
General guidelines: General advice: Turning it in: Option 1: Development Tool Option 2: A Complete Game Option 3: A Partial Game A Complete Game Handin
name.bas
in a text editor, and replace the text "YOUR NAME
HERE"
with your preferred name, such as "BOB ROST"
.rrost.nes
.
Assignment 1 Details (Mac OSX)
otherguy:~ bobrost$ cd /Volumes/assign1/
otherguy:/Volumes/assign1 bobrost$ ./nbasic name.bas -o rrost.asm
Read file name.bas (81 lines)
Beginning compile
Compile completed successfully.
otherguy:/Volumes/assign1 bobrost$ ./nesasm rrost.asm
NES Assembler (v2.51)
pass 1
pass 2
otherguy:/Volumes/assign1 bobrost$
Assignment 1 Details (Windows)
command
(for Windows 95/98), or cmd
(for Windows NT/2000/XP).
cd "desktop\nes1"
cd "\windows\desktop\nes1"
cd "\documents and settings\username\desktop\nes1"
nbasic name.bas -o rrost.asm
nesasm rrost.asm
Assignment 1 Details (Linux)
./nbasic name.bas -o rrost.asm
./nesasm rrost.asm
Assignment 2 - Midterm Project
General plan of attack due (approved) by Tuesday, February 10
Final product due Tuesday, March 16, at High Noon
Note that Spring Break is March 5-14. You really should try to have it done before.
Assignment 3 - Final Project
Due Monday, April 26, 2004 (any timezone)