Oh man, I got it working now! The cwd=path did the trick, so now I can run the script and watch the "MSG->TXT" messages roll in. Thanks so much for your help so far!
Now the only problem I have remaining is that the files that are too small to dump still cause the script to hang, though it only does that for the current folder. This means that I'll probably get 80 to 90% of the script dumped with this method, and then the patches of files that occur after the too-small files remain untouched, which is still a massive improvement over what I had so far.
To illustrate what is happening now:
Current location: F:\11\2
Filenames: ['1.msg', '1.txt', '2.msg', '2.txt', '3.msg', '4.msg', '5.msg', '6.msg', '7.msg']
F:\11\2>F:\11\DUMP F:\11\fonttbl.bin F:\11\rh.tbl *.msg
DUMP - Copyright (C) 2012 CUE
Script dumper for 'Radiant Historia' - Nintendo DS
- reading font: 'F:\11\fonttbl.bin'
- reading table: 'F:\11\rh.tbl'
- MSG->TXT: '1.msg'
- MSG->TXT: '2.msg'
- MSG->TXT: '3.msg'
File too short
I renamed some files to make an easier point, but 3.msg here is actually the ===============================================================================.msg I mentioned way earlier in this thread. It is also only 9 bytes large because, uh, I guess that's how many characters are in the file? The smallest file I could find after that was 23 bytes, which is totally fine and gets changed to a .txt file. I can't seem to use Windows Explorer's search function to look into .msg files for whatever, and all attempts to change the standard app for .msg files from Outlook to Notepad or whatever are blocked by an invisible wall, which is pain alright. Why do I even have Outlook? I never use it.
At this point I'm just going to uninstall Outlook if I can, change the standard app to Notepad, and try to cull the responsible files from there, but I don't know if that's going to work. We'll see, I guess.
EDIT: Apparently Windows is being a real bastard here and won't allow me to change .msg files to a standard Notepad even though there is no Outlook. Heck, the extension name doesn't even show up in the part of the settings where you can choose standard apps per file extension. What nonsense.
EDIT #2: Looking into code, I'm guessing I would need an "if os.path.getsize()" in my code to check for the too-short files so they can be skipped. I didn't know what the cut-off point would be, so I decided to go into the dumped ROM and search for .msg and sort them by size. After 9 bytes, there's also two .msg files sized at 10 bytes (too short) and six or so .msg files at 18 bytes.
And then it hit me I could just take all of the 9- and 10-byte files that showed up in the search results (135 of them, and I feel like most of them were in the part I had already changed manually) and delete them from there.More fool me
So unless we're all so incredibly invested that we want to do everything with Python code, I'll just back up the dumped ROM again, get rid of the 135 purveyors of dump-breaking doom, and run the code like that.
Thanks so much for your help, Jorpho.