Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
I've seen that controller swap thing once... I can't reproduce it anymore, and I can't think of any way for it to happen. I've had protection against that all over the code since the first day...
Yeah, I'm working on that... Hopefully someday soon every plugin will sound good and will be desync-less at the same time.
Thanks for the reports, I'll see if I can find a way to reproduce these bugs.
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
Pause at frame 0 is not possible; PCSX seems to enter an infinite loop if you start emulation paused. Test my previous versions where you were allowed to do that... Anyway, with the new system, it pauses at the first drawn frame, so it never would pause at frame 0, and more like at frame 100 or 500, 600, etc. depending on the game.
I have zero interest in doing that, sorry... You'll have to find this info for yourself or ask somebody else to do it for you.
Heh, probably.
Let me see if I understand this correctly:
For example:
You had a 1000 frames long movie which didn't desync at all. Then, you started recording at frame 1000 until frame 2000. Then, when you played the movie back, it desynced at frame 500? Is that correct? Did some random new input appear out of nowhere or is it something else?
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
Thanks for the information, I'll see if I can reproduce it; but I have never seen something like that before...
To use the same settings/plugins doesn't mean anything with PCSX. You need to use some exact settings/plugins to prevent desyncs. Read the instructions file for more information.
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
1. File format probably isn't definitive.
2. Most users don't even read a text file if it's larger than two lines, and I already have a lot of problems with that.
3. The best place to put this would be on Google Code's wiki. bla bla bla I'm lazy
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
Currently there are two options:
1. Most games give you the option to save to a memory card at disc change; so, save there and then start recording a new movie with that memory card on and Disc 2. Users would not need to download a separate memory card for this, for they can use the same one generated by the Disc 1 movie.
2. Start a new movie from a savestate on the disc change screen. This one may not be as safe as option 1, because you can cheat with a start from savestate movie.
The input file doesn't record reset-press or disc changes. These things require more coding, which aren't a high priority right now. I'm still trying to get the basic stuff working as good as it can get...
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
I only have a draft I made before I even started coding this. Maybe it isn't 100% right:
000 4-byte signature: "PXM "
004 1-byte flags:
bit 0: reserved, set to 0
bit 1:
if "0", movie begins from an embedded savestate
if "1", movie begins from power-on
bit 2:
if "0", NTSC timing
if "1", PAL timing
other: reserved, set to 0
005 1-byte flags: reserved, set to 0
006 1-byte unsigned char: joypad port 1 type
007 1-byte unsigned char: joypad port 2 type
008 4-byte unsigned long: number of frames
00C 4-byte unsigned long: rerecord count
010 4-byte unsigned long: offset to the savestate inside file
014 4-byte unsigned long: offset to the controller data inside file
018 4-byte unsigned long: author string lenght
01C string: name of the author
Then it's 2 bytes for each joypad for each frame. You're going to need to find yourself what button is which bit and all that. :P
I'll try to do a proper document with all this when I feel the format is good enough for our needs...
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
Derakon, could you see if this WIP version fixes your crash?
I'd have to make a special build for that, and even then, it's not very useful for crashes, because it doesn't save to a text file, yet... It only shows text on the console output.
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
This WIP version should fix any GPU crash. Just ignore the other unfinished stuff...
That's really strange... I can't think of a single way to reproduce something like that.
Normally you'd want to start over from there, but you can hex-edit it too. You can upload the .pxm file somewhere and I'll try to do it for you, if you like.
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
There used to be a game fix for it on some old releases of the P.E.Op.S. plugin. You can download v1.4 here: P.E.Op.S. Soft GPU 1.4 (this was the last version to have this fix).
Then, before starting the game, you need to activate the fix:
I'll try to port this to the newest version whenever I have more free time, even though the fix doesn't make it look 100% correct...
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
I made a TAS of PaRappa the Rapper because I wanted to have a video with all of its songs played like they were supposed to be played. This is not so easy to make in real time.
Also, the story is funny + the characters are cute + I had never played the game since I was ~13 (most of us are here because of the nostalgia :P).
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
Castlevania Chronicles does work in PCSX:
You'll need to use Eternal SPU plugin for now. It seems to be a SPU IRQ issue like Metal Gear Solid, so maybe I can I find a workaround to make it work with other SPU plugins.
Also, every version of Megaman 8 I've tried works fine. You can watch a video of it I made some time ago with PCSX: YouTube video.
I don't have the other games you mention, but make sure you're not using Mooby CDR plugin, as it sucks with most ISO formats. You should use the P.E.Op.S. CDR plugin and a virtual drive for better results.
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
Derakon: DLLs not showing up means some needed Windows DLLs are missing on your system. About the CDR plugin not showing drives, this is what Pete has to say about it:
So, it looks like you'll have to use another CDR plugin.
For all the other people having crashes: only use the provided plugins, thanks. You're wasting many people's time trying to run the emulator with the ultra cool OpenGL v2.9 GPU plugin and/or the Mooshit CDR plugin. So, if you want to get better help:
-Make sure you're only using the plugins that come with my version of PCSX.
-Show me a screenshot of your plugin folder, so I can now for sure it is a real issue.
Unfortunately, I cannot try every plugin in the world while I do my tests, as I already waste several hours only by testing with the provided ones. Also, it really helps if you can identify since which version your crash started to occur, or if it also happens with the official PCSX.
That being said, I'll try to fix the confirmed reported bugs for the next version.
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
If you're using "Use subchannel SBI/M3S info file (recommended)", you need to create a SBI/M3S file first. Or, you can simpy select "Read subchannels (slow, etc...)". For either option, you need a drive with subchannel reading support (this shouldn't be a problem if you're using a virtual drive).
Also, your CD image (if you're using one) needs to have the subchannel information dumped (the ".sub" file on CloneCD images, I think), which some of the rips available on the internet are missing.
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
Hah, yeah, I know. But it's not the converter, it's the emulator... It seems it sometimes starts reading the Pad 2, others Pad 1, or something.
Anyway, you need to hex edit FF WIPs and add two bytes at the start of the input stuff, which should be somewhere after position 29, I think.
It kind of reminds me the about box of P.E.Op.S. CDR plugin:
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
v0.0.3 released with a possible fix for some desync problems and two other minor fixes. See the first post for more information and download links.
There is no "ROM" to load, or CD image or nothing. What you see is the stupid CDR plugin asking you for a disk image each time you try to record a movie or whatever. You shouldn't use that crap anyway. Use P.E.Op.S. CDR plugin and a virtual drive.
Unfortunately, your movie seems to desync for me (I did try a lot different settings, even that ugly Mooby plugin :P). But at least I was able to see the locked input (it was just a > for me), and they both sync exactly the same with sound or without it. I'll see later if the debugger shows something regarding the input bug, but it seems to be an emulation bug with only this specific game...
You may try to record with sound, but it's better without it for most games. I've modified the SPU plugin to make it sync-compatible with the No Sound plugin, so in theory this shouldn't be a problem...
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
You don't need to load anything at all before recording or replaying, just make sure you have a CD ready on your real/virtual drive, or your CDR plugin and then select "Start recording" or "Start playback". It will automatically start reading your CD from the beginning (or from a savestate).
You can start replaying a new movie if you press Esc and select "Start playback", and you can change settings/configurations the same way. To resume the game, just select Emulator->Run.
Unfortunately, it's impossible to create a menu while the game is running, because the PCSX window has to be closed each time the GPU window needs to be called.
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
I've never encountered this problem. Can you find an easy way to reproduce it? It happens to you with every game or is it only with one game (what game?)?
Why would you want to automatically start movie recording? I guess I should create a shortcut for replaying the current movie from start, but for now you can create a savestate at the start of the movie and then load it in read-only mode whenever you want to replay from start.
It's on my to-do list. Maybe I will just make it with a text-file config, since I've found it to be almost impossible to do it otherwise. :(
Also, you can use PAUSE for pause and \ for frame advance, too.
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
So... I was bored so I decided to do a TAS of this game:
Download
Input file: PaRappa the Rapper.pxm
Encoded video: parappatherapper-tas-mz.avi (88 MB)
*Emulator used: PCSX-RR v0.0.2 with P.E.Op.S. SPU plugin and its highest settings.
*Aims for fastest time
*Aims for exact repetition of the sequence of buttons
*Does not aim for highest score
*Sings 6 songs
I thought I could make this movie in 30 minutes, but I ended up using the whole night, as I had too many desyncs. The movie could have been a lot better if I wouldn't have had a huge desync every 100 frames or so... I had to hex-edit it for the most part. Anyway, I still kind of like how it is now, even though sometimes the timing is awful and there are some missing words here and there, but it was the best I could do.
Also, I think now I know why these desyncs happen in PCSX, so I'll try to get them fixed for the next release of it.
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
It's ok, I haven't worked on this since my failed attempt at configurable hotkeys.
Dromiceius, you can still send me a PM with your Gmail address if you want me to add you to the current project page on Google Code, so you can have a reliable server where to host files.
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
Most PS games are copy-protected in their japanese and european versions, that's why you need to enable subchannel reading for most of them to even work. On the other hand, you'll never need subchannel reading for american releases.
I'm waiting for your encode too, as I only have the american MMX4 version. Good luck with that. :P
Experienced Forum User, Published Author, Player
(79)
Joined: 10/26/2007
Posts: 693
You need to check the "Show FPS display on startup" box when you're configuring the GPU plugin. Or you can press the "Delete" key once you are in game.
I'll try to make it more intuitive for the next release. Just showing it by default should be fine, I think.