- Audio Oddities Solved — I’ve put more work into the audio system. After playing a game for a while you may have noticed garble-ing noises. This was due to the playback getting ahead of the write buffer. 4DO now monitors for this situation (and vice versa) to move the audio read buffer’s position when it gets out of sync.
- Audio Playback Enabled on Some Machines – On initialization, the audio playback now “scans” for the highest supported audio bitrate on the system. This previously would just attempt to load a device with 32-bit fidelity, and gave up if it didn’t find one. This will result in audio being heard on machines that otherwise would have heard none. This could be improved later to give the user the option to choose the audio device to playback to.
- NVRAM now gets initialized with proper structures when the NVRAM file does not exist.. This will prevent certain games like Need For Speed from thinking that there is no save data space. I did not bother changing the filename, so if you ran into this issue, you should delete the NVRAM_SaveData.ram file you have if you’re dropping this new version of 4DO in the same directory.
i dont even think about 3do emulator anymore, since freedo project has been closed. and now this… please dont leave this project until you’ll finish it, i beg you) 3do is the system that have not normal emulator and there is thousand of fans who wish to play one of most amazing system in the world) thanx to your work
I totally agree with Lomax. Please don’t leave this project until the most has been done!!!
I cannot know what must be developed again about the core of the emulator but, if I can say my opinion, I think that two of the priorities of 4DO emulator should be:
– the possibility to play with 2 players (just 1 controller can be configured. It doesn’t matter if the keyboard is the only device which works… With JoyToKey or XPadder is great as well!!)
– the graphic should be a little bit smoother again (interpolation). Overall, why is a black rectangular frame there around the video? Is really not possible to have total full screen?
However, you guys are really making a wonderful job. Keep going and don’t give up!! 🙂
Many thanks for your working from a real 3DO fan.
Try the “Display -> Preserve Aspect Ratio” option. That should get it to a real,complete full screen. If you’ve already tried this, though, let me know.
Yes, I always played with that option enabled and “unfortunately” there’s a frame around the game (the FreeDO does the same thing).
What I mean is this: let # be a black square of side about 1 cm. When I set the 4DO to play in full screen mode, I see the following effect:
# GAME #
Of course this is a minor issue!!
Anyway, unfortunately I have to confirm what has been stated by the other people:
– sometime the emulator freezes
– after a bit I’m playing, the FPS seriously slow down and the video quality is jerky
My PC configuration is the following:
– Intel Core i7 920 (2.66 GHz)
– 3 GB RAM Triple Channel DDR3 PC3-12800 1600 MHz
– Nvidia GTX 280 (1 GB RAM)
– Windows XP SP3
– all software (drivers, DirectX, .NET, etc..) is up to date
Let’s all wait the beta version!! 🙂
P.S.: What happened to the site? During these days it was unreachable.
Have a nice day. 🙂
Damn. In the textual picture I made, the spaces have been removed!! Hope it’s clear what I mean:
where G is the game!!!
I promise next time I will post shorter comments!!! 😛
The site was down for several days because several parts of the city lost power! In fact, some of the upcoming changes to 4DO you’ll see were coded in a coffee shop where I borrowed their power and WiFi! 🙂
I notice you say “sometime the emulator freezes”. Does it freeze permanently? Also, which game do you see this in?
As for the jerky video, I’m still suspecting that adding hardware support for the display buffer will improve performance. I’ll be working on that after joystick support. When those changes are in place I’ll be interested to know if you still experience an issue.
I noticed that the emulator freezes with Super Street Fighter II Turbo (US) game. But I remember that this happens even with other game… I’m not sure which one else… maybe FIFA International soccer.
Sometimes there is a drop in performance emulator.
Sound begins to wheeze and slow down. Appear flicks.
The only solution – to leave the full screen and wait for a few seconds.
It is also sometimes video and sound is not synchronized (crime patrool, brain dead 13, space ace) game scenes sometimes skips rather than waiting deystviyab or expectation of the scene is very short.
I apologize for my English
My PC configurations:
CPU- Intel Core 2 Duo E 8500- 3.166MHz
Video- GTX-275 896Mb
Sound – Creative
Windows 7 SP1
Is it possible to increase the volume emulator?
Or add a volume control from 0 to 200
Your computer definitely seems like it should be fast enough. It looks like the GDI graphics solution I came up with is just too slow. I’m expecting/hoping that when I implement using OpenGL to blit the game window this will be resolved. I intend to add this before beta.
You might also try to disable the “Smooth Image Resizing” option. This will perform slightly better when OFF.
I just want to touch upon what was stated above. The audio is improved from the last release for sure, but there is still some issues. When games are more intense to the system, it seems the audio must be trying to correct itself more resulting in some audio cut-off and crackle noises like listening to an old vinyl record. I notice the Core FPS jumps around quite a bit even though I know have a system fast enough and stable enough to handle this emulator. It’s averaging 60 but it keeps jumping above and below it rapidly.
I also noticed an odity. You said there is triple buffering but wouldn’t that get rid of visual tearing like vsync without the performance drop? Im still noticing a pretty good visual tear that will slowly go down the screen. I haven’t checked to see what Hz my TV is running at though. I usualy play using the hdmi out on my laptop.
Here are some thoughts/questions of mine that need no answering. Is the audio synced to the video? Would increasing the sound buffer (150 ms or more) be better than the buffer check method? Why does the buffer keep running out? Is the audio playing a lil too fast but not noticable when the Core FPS keeps jumping below 60 fps? Is there anyway to get the Core FPS to better lock-in to 60?
Usually when putting triple buffering in place, all vsync issues are gone. In 4DO’s case, however, I haven’t found a way to sync in with the monitor’s refresh rate using GDI. So, the triple buffering that occurs simply allows the two threads in action to avoid blocking each other. OpenGL has a way to do detect V-Sync, though, so that should fill in the missing piece.
I think 4DO has a pretty good solution in place for keeping the core system at 60fps on average. Conceptually, I throttle the speed of the emulator when it goes too fast or too slow. This relates to your question about audio. While the system is going, the audio reads from a buffer that the system thread is populating (at irregular intervals). If the audio thread ever reads past the last sample from the system thread, the user will definitely hear it, so the audio reader is left to intentionally lag behind the most up-to-date samples (which adds a delay).
The main system sometimes “gives up” on its schedule when it gets too slow and figures out it’s too far behind to catch up, and sets a new schedule. In previous versions of 4DO, this would screw up the audio because the reader never “reset” its position. The latest version includes behavior in the audio code that monitors the positions and “resets” the reader position when it notices it’s too far behind or too far ahead. Later, I might experiment with having the core system inform the audio system about the aborted schedule so that a “reset” can occur at that time, which would make the audio delay more “consistent”. However, any “reset” produces the cut-off/cracking noise.
Also, I don’t know if I trust my initial math on this, but I believe the system as it is now only introduces a minimum and maximum of 1 and 3 milliseconds audio delay. At the moment, I think the audio sync issues reported are probably due to the core FPS getting below 60 so much that the schedule gets “aborted” too often. If that’s true, then ultimately it’s just a matter of improving 4DO’s performance in general. Currently, the GDI graphics is the main offender on my radar.
Very nice Job 😉
” Need For Speed ” work now on this version 0.4 ^^
My best wish for a ” Final ” version soon 🙂
Keep this way !