Post subject: Emulator Movie Frontend -- a simple way to view .fcm files.
Hoe
Joined: 7/31/2004
Posts: 183
Location: USA
I have writen a small program in C# 2.0/.NET which, when associated with the .fcm extentions, allows you to view the movies simply by double clicking on them in explorer. Download [This version is old. Please find the post with the most recent version] The basics of how the program works: Setup an ini. The ini belongs in the same directory as the executable, and is named config.ini. To give an example, mine is: [config] dirs=G:\NES\US;G:\NES\Jap fcm=E:\NES\fceu-0.98.12-blip.win\fceu.exe Of course change for your own situation. The program will warn you if there is a problem with it. When the program runs, it gets the md5 checksum from the movie file. It then checks against it's database (sqlite) to see if that file is known. If not, it updates the database (the first time, if you have a lot of roms, it will take a bit), and rechecks the db for the rom. To associate this with your fcm's. Just double click a fcm in explorer. Ask to find the program, and pick emuMovFront. And you're all set. You will need a semi-special version of FCEU. I believe nitsuja intends to keep this in the main releases. Download semi-special FCEU. A big deal fo thanks to nitsuja for helping me out. The source code will be released with my second release (it's dirty atm). With the second release I hope to support additional systems. Comments, mud slinging, bugs, feature requests, etc, are overly welcome. Edit--- Any one who downloaded it prior to 8:15EST may want to consider redownloading- assuming they want the program to work :P I accidentally uploaded the wrong executable.
ventuz
He/Him
Player (126)
Joined: 10/4/2004
Posts: 940
sound very cool, I'd start using when it support more emu's (or all TAS emu).
Player (68)
Joined: 3/11/2004
Posts: 1058
Location: Reykjaví­k, Ísland
So all it does is play the movie with the emulator, right? Mmmm, nice, I guess....
Emulator Coder, Site Developer, Former player
Joined: 11/6/2004
Posts: 833
Basically, yes. But the emulators don't normally support movie playback from the command-line, plus you need to load it with the right ROM as well. There are a few kinks that would need to be worked out. I'm pretty sure that nesmock eats the MD5 field of your ROM unless you explicitly tell it not to. Maybe fixed in a newer version, but as a result I'm fairly sure that mine and Angerfist's movie won't work in this program at all. But good luck. Convenience is always worth the effort.
Emulator Coder, Skilled player (1311)
Joined: 12/21/2004
Posts: 2687
It crashes if I double-click on an FCM file that's still inside of a .zip file. (Lazy, I know, but normally that should work given that it's only 1 file that doesn't depend on any other files in the zip.) Also, it crashed once when I added a new rom to my roms directory then tried opening a movie that used that rom (but it re-indexed and worked on the next attempt). Besides that it works pretty well.
Hoe
Joined: 7/31/2004
Posts: 183
Location: USA
I have created a new version. No new functionality was added. Download version .2 [This version is old. Please find the post with the most recent version] *Files being added, but not searched for, quoted was fixed. *Bytes less then <0x10 in the hash were not stored as 2 bytes. *Tons and tons of source cleanup (needs more). *Tons and tons more error checking. *Lots done less hackjobish (needs more). *Database wount corrupt if you close it while it's updating *Database should update much faster. My machine did ~2,6000 roms in ~20seconds. *If a match is found, but the rom file does not exist, it's removed from the db. *The roms database's filename now contains the database version. Your old one wount work with this one. nitsuja, if you're stilling having that problem, let me know. Source is included with this release. I modified the SQLiteTest program which comes with SQLite C# to accept databases through the commandline. To run queries against your database run: SQLiteTest.exe roms.1.db
Hoe
Joined: 7/31/2004
Posts: 183
Location: USA
The following formats, as is, can not be supported due to a lack of a hash stored in their movie: gmv, smv The follow can be supported assuming the emulator authors update them to allow running movies through the commandline: m64, vbm
nesrocks
He/Him
Player (247)
Joined: 5/1/2004
Posts: 4096
Location: Rio, Brazil
Emulator Coder, Skilled player (1311)
Joined: 12/21/2004
Posts: 2687
It uses whatever MD5/checksum info is stored in the movie file about what ROM the movie was made with, together with the folder(s) you tell it your ROMs are in, to choose a rom from the folder that matches up with what's in the movie file. That won't work for movies that had their ROM info zeroed out by something like nesmock, though. BTW, VBA already supports commandline playing of movies, so I guess we can expect that sooner than the others. And SMV does have a place for storing CRC32 although it's not entirely standard so many existing smv's don't use it.
Hoe
Joined: 7/31/2004
Posts: 183
Location: USA
nitsuja wrote:
BTW, VBA already supports commandline playing of movies, so I guess we can expect that sooner than the others. And SMV does have a place for storing CRC32 although it's not entirely standard so many existing smv's don't use it.
I noticed that SMV does contain an optional checksum. I didn't notice on the info page that there was an optional section seperate from the rest. I've got internal support for smv now. As for VBA, thank you for pointing that out. I coded support for it today, and I'll make it functional tomorrow and release a new version once done. Internally, I've got support writen (it can read the checksum from the movies and the roms) for smv, m64, fcm, and vbm. Also, did the new version fix up your troubles?
Emulator Coder, Skilled player (1311)
Joined: 12/21/2004
Posts: 2687
Hoe wrote:
Also, did the new version fix up your troubles?
The problem with movies in zip files, no, it still causes emuMovFront.exe to crash with some sort of unhandled IO exception failure. (edit: also happens for all read-only movie files. The error is UnauthorizedAccessException.) The other issue seems to be fixed, though. edit: all better
Hoe
Joined: 7/31/2004
Posts: 183
Location: USA
I have released version .3, and have moved the thread due to the support for multiple emulator formats now: http://tasvideos.org/forum/viewtopic.php?p=72670#72670