|\
__ __ __ __ ____ | |
| \/ | \/ | _ \ |/
| |\/| | |\/| | |_) |/|_
| | | | | | | __///| \
|_| |_|_| |_|_| | \|_ |
\_|_/
|
@'
_______________________________________________________
|:::::: o o o o . |..... . .. . | [45] o o o o o ::::::|
|:::::: o o o o | .. . ..... | o o o o o ::::::|
|::::::___________|__..._...__._|_________________::::::|
| # # | # # # | # # | # # # | # # | # # # | # # | # # # |
| # # | # # # | # # | # # # | # # | # # # | # # | # # # |
| # # | # # # | # # | # # # | # # | # # # | # # | # # # |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|
To compile the file run make clean && make
which will create a file
called mmps.s
. Open this file in Mars, assembly it and then click
run. You will most likely need expand the console area in Mars in
order to see everything and interact with the program properly.
The preprocessor requires python and make to be installed. As you may
not have this installed we have also included a precompiled version in
the mmps_final.s
file.
The submission includes two files for example called: pokecenter.mid
and pallet_town.mid
. To use these files call load pokecenter.mid
and load pallet_town.mid
.
Note: that if mars is not started from the same directory as these files then you must supply an absolute or relative path to the files in order for mars to find them.
play
- plays music added or loaded thus farplay n v d i
- plays a single note n, with velocity v, for duration n on instrument iadd n v d i
- adds a note n, with velocity v, and duration d, to the working track using instrument iadd d
- adds a rest for the specified durationcat
- display a listing of notes in the track thus farload f
- load a previously saved MIDI file from file location f.save f
- save the working track to file location fhelp
- display commands available
Durations are a number of 16th notes. Quarter notes are 480ms each.
0
: Piano1
: Chromatic Percussion2
: Organ3
: Guitar4
: Bass5
: Strings6
: Ensemble7
: Brass8
: Reed9
: Pipe10
: Synth Lead11
: Synth Pad12
: Synth Effect13
: Ethnic14
: Percussion15
: Sound Effect
Valid velocities are:
pp
pianissimop
pianomp
mezzopianomf
mezzofortef
forteff
fortissimo
tt tt tt tt ci nn vv vv
t
- Time delta (in ticks, variable-length quantity[7-bit])c
- MIDI Command (9 for on, 8 for off)i
- Instrument (channel, in reality, 0-15)n
- Note (0-127)v
- Velocity (0x80vv, last byte contains usable velocity)