FRI version 1.2.0.0
March 17th, 2008- Added feature: Net Play makes it easy to initiate a net play session with people on the same LAN.
- Added feature: Right-click on a ROM and select "Look up in Wikipedia" to get for information about the ROM.
- Added feature: Right-click on a ROM and select "Open containing folder" to go to the folder that the ROM is in.
- Added feature: If multiple emulators are compatible with a ROM that is about to be played, the user will be allowed to choose which one to use. If no emulator is registered as compatible with that ROM, then all emulators will be listed for the user to choose.
- Added feature: The title bar informs the user if the database has been changed since the last save.
- Back-end reconstruction: listing of ROMs has been made more robust to allow for future development of more ROM information.
- Tweak: Messages from the Database Management items have been made more clear.
- Tweak: The icon has been changed from a green arrow pointing into a blue database to a black and blue, 3D power symbol

Maze-Solving Robot
March 13th, 2008Botball is an annual robotics competition. I am part of the Botball club at my high school, and I thought I would share a little project that I just finished.
My goal was to have a generic robot with a camera on it that all of the club members could write code for. First the task was to make the robot bounce around in an arena marked off with red tape, then the goal was to make the robot follow a line (curvy, with sharp edges, with dead ends, whatever), then it was to make the robot solve a maze. It was a lot of fun, and a great learning experience.
One look at the robot shows that I definitely care about software way more than hardware.
![]()
Â
It may not look like much, but surely you know that personality is more important than appearance, and besides this little guy has spunk. If I were to continue this project, though, the next step would be to make him less fat.
Here’s the maze. In theory the robot can solve any maze of this style. (Yes, the end of the maze is a mouse pad.
)
![]()
Here is the robot solving the maze. Keep in mind that the robot can be placed in any part of the maze with the end anywhere else in the maze.Â
I found by experimentation that the longest time it can take the robot to solve this maze, given any start and any end, is 1 minute and 54 seconds.
If there’s one bit of advice that I think new Botball members need to know, it’s to be patient. The first version of my maze-solving code was really just code that made the robot follow lines. A later version would only solve a maze if it never encountered a dead end, and there’s always the version of the code that makes the robot flail about sporadically. So be patient, and don’t try to tackle the whole project at once. Get little pieces to work, and use that to build off of. I in no way assert to be the authority on robotics, but I have learned a thing or two.
Oh, also precise names. Don’t go calling methods “dog” or “cat”.
Here I made a video explaining in general terms how the robot stays on track when following a wall:
So you may want the code to mess around with, and if you do then you’re in luck! Not only is there a link to download the code at the bottom of this post, but I also recorded two videos of me explaining it, or attempting to anyway.
 Warning: It may be a little boring!
In this video I explain the defines, whose values you can change to make the robot behave differently:
In this video I explain how the rest of the code works:
(Note: I found an error in the deadEndInSight method. I fixed it incorrectly on video, but it should be right in the download below.)
Putting your own ringtones for your Razr V3m from Verizon
March 13th, 2008As a result of my Razr unlocking tutorial, I have gotten tons of questions. The most common by far is “how do I get custom ringtones on it?” A visitor to my blog, sendherastar, was kind enough to make a tutorial.
Here’s what he says:
You need to make yourself some ringtones before you actually get to the point of uploading songs to your phone because anything over 30seconds you can’t set as a ring tone. I use Wave Pad but any other program similar to it (cool edit pro, etc) will do just fine. Here’s the link for Wave Pad:
http://www.nch.com.au/wavepad/masters.html just click “download wave pad,” it should be free. If not, find it on another site where it is.
You can use any song that you want up to 30 seconds long and you can also choose the part of the song you want. Here are the steps on how to do that if you’re uncertain:
After you obviously install the program and have it up and running, you want to open a song of your choice. You can scope out the part of the song you want by listening to it. Once you’ve got it figured out, you can highlight the part you’re going to use. Down in the right hand corner, it will tell you the Sel Length by the seconds. Make sure that does not go over 30.
Once you’ve got the part of the song highlighted, right click on it and click, “copy.” Up in the left hand corner of the Wave Pad, you want to click, “New File.” Once that opens, take your mouse over top of newly opened wave file, right click anywhere inside the box and click, “paste.” This is how I save it — I close it out and it asks me if I want to save as “untitled.” I click yes and a box will pop up where you can name it whatever you want and you can also save it to whatever kind of file you want it to be (wav, mp3, etc.) I save mine as mp3, for some reason when I used a .wav file it wouldn’t work. I only tried once so I could have just did something wrong while uploading it to my phone.
Alright after you’re finished making the ringtone(s) you want, the first thing you need to do is make sure you have a usb cable that hooks into your phone and your computer. If you do, then follow this link to a download:
http://rsddownload.motorola.com/download/Motorola_Software_Update.exe
After downloading that, you then need to download p2kcommander which can be found here:
http://handheld.softpedia.com/get/Developer-Tools/File-Manager/P2kCommander-38120.shtml
p2kcommander files HAVE to be extracted! I put the extracted files on my desktop for easy access!
Both programs you want to install and run. Make sure when you’re ready to connect your phone you have them BOTH running.
Once the MSU (Motorola Software Update) starts running it’s going to ask “repair motorola software update,’ or “remove motorola software update,” just leave it on repair and hit, “finish.” Make sure when it finishes and comes to the “close,” option that the “Launch Motorola Software,” is clicked. Once it recognizes your phone LEAVE IT UP AND RUNNING then p2k commander should recongnize your phone as well.
Using p2k commander:
Either the right or left hand corner (which ever you prefer) click the drop down box and select P2K Mobile Phone — If it connects, you will be able to open your phone up and see everything inside of it.
Now to the fun part — the first thing you see once your phone connects with P2K is going to be the “a” folder. Open that up. In that folder you’re going to have to delete a file (don’t worry it regenerates itself once you reboot your phone, meaning that everytime you go through the process of putting ringtones on your phone, it will have to be deleted every time). The file you’re going to delete is named “MyToneDB.db.” Make sure to only highlight that file by clicking it once and then click delete on the p2kcommander, a simple hitting of the delete key on your keyboard doesn’t do it for some reason. Once you’ve done that you’re ready to hit the ringtone section of your phone!
To get to the ringtones you want to go to “motorola, shared,” then to “ringtone.” Once there you should be able to see ringtones that you may have already purchased as well as the stock ringtones that came with the phone. By my prefrence I deleted the more bigger stock ringtones (after listening to them to make sure I didn’t want them or they weren’t used for anything specific such as voicemail, recieved text message etc) but you don’t have to.
On the side that you didn’t use to get into your phone — you want to find where you saved the ringtones you made to. Once you’ve got both the ringtone section of your phone open on one side and the place where you saved your newly made ringtones on your computer on the other side, you’re ready to start putting them on your phone.
You can upload more than one ringtone to your phone at a time but I suggest, just for now do it one at a time. Highlight the ringtone you made for your phone simply by clicking once on it and then hit the, “copy,” option located at the bottom of the p2k commander. Once the p2k mobile side refreshes itself and your ringtone is showing in your phones ringtone section — keep your phone hooked into the computer. Go to your ringtones using your phone to see if the one you put on is there and make sure it plays.
If it does, congratulations! You have just uploaded your very own FREE ringtone!!! =) If you made more than just one, go ahead and upload them now. Make sure you check to see if they work! When you’re finished uploading all the songs you want/can, go ahead and unhook your phone and enjoy!
You can also do your photos the same way but I’m not 100% sure on that. I had to figure that out for myself and I’m still unsure of how to explain it, although it’s very similar and I don’t believe you have to delete the MyToneDB.db to do it– so hopefully after all that I just explained to you and you upload a couple of ringtones yourself — you will be able to figure out how to work the rest of it on your own!
Edit, March 14, 2008:
Sendherastar updates:
i forgot to mention that after you put your ringtones on, reboot your phone manually by just turning it off and back on. occasionally the ringtones will reset themselves (not sure why) and the quick fix is just to reboot your phone and reset whatever ringtone you want as your default. sorry to trash up your website with so many posts!! but if you use it in a blog, please note that on there!
Thanks!
Edit, March 28, 2008:
Izzyd has this to say:
Can I make a suggestion on the guide for transferring ring tones. It should be updated to state something to the effect of that process is for use with the VZW .01.19.07 firmware. Reason I say this is on the older firmwares the tones do not go into that folder the write up is specific to that firmware only, however it still works the same way jus ta different folder is all. On the older firmwares they go into the /motorola/shared/audio folder. Oh and as for pics using p2kcomannder on any firmware they can be placed in the /motorola/shared/pictures folder and no file needs to be delete to get them to show up either. On a side note on ringtones as mentioned in the guide the *.wav file does not work because ring tones need to either be mp3, qcp, or mid files.
Disabling that annoying UPS beeper
March 9th, 2008UPSs, or uninterruptible power supplies, are great for preventing your computer from crashing in the event of a power outage. They at least give you enough time to save your work and shutdown the computer safely, and some even allow you to go on computing for 30 minutes or more. The problem with most UPSs, though, is that they beep, scream when the power goes out, as if the computer equipment is sucking the life from it. I swear, the sound of ultimate suffering goes "BEEEEEEEEEP!"
…I think that beeper is annoying.
Luckily, it’s relatively easy to take that sucker out! Here I’ll show the steps I took to remove the beeper in my Dynex DX-800U.
First, I unplugged everything from the unit, turned it off, and flipped it over. ![]()
Poor guy. I told him that it would only hurt for a little bit.
Next I removed the screw that kept the battery cover closed, and then removed the cover. ![]()
The next thing I did was find a screw driver that was long and thin enough to fit in those long, narrow screw holes. Once I did that I removed the remaining five screws and pulled off the bottom half of the case. ![]()
I was going to wait until the next day and get a soldering iron to melt the two contacts on the other side of the board so that I could just slide the beeper right out… ![]()
…and that probably would have worked, but I got impatient. Instead I decided to just attack the beeper and render it mute.
![]()
Putting the cover back on was a bit tricky, but after I worked out how the power cables to the battery folded it went smoothly enough. To test my handwork I plugged a light into the UPS and unplugged then unplugged a light from the wall and… silence. Happy day!
Two Features of FRI
March 8th, 2008I’m working on a new release of FRI, and I thought I’d show a bit of what I’m doing.
I pronounced FRI the wrong way the last time I said it. It’s pronounced "free" now.
