Schrijver
| Symbian emulator?
|
1eonid msx novice Berichten: 18 | Geplaatst: 13 Oktober 2003, 17:21   |
Hi Jr! I'm a new MSX friend. I'm from Russia and I don't know english well (You see  ).
Thank you for emulator Yamaha MSX. You - GENIUS! But You Can talk me about NES emulator for Series 60? Really do NES emulator/S60 or Not ? Thanks before you respond . |
|
jr msx addict Berichten: 310 | Geplaatst: 14 Oktober 2003, 05:33   |
Thanks. Do you mean that you would like me to make a NES emulator or are you thinking about creating one yourself?
|
|
karloch
 msx addict Berichten: 389 | Geplaatst: 14 Oktober 2003, 13:02   |
Quote:
| I had a look at Goboy and it seems they don't synchronize at all, at least in the provided source code all timing functions were empty. I think GB emulation does not need as much CPU power as MSX since their source code was not even using direct screen access but instead wasting a lot of time talking with the Symbian OS Window Server.
I also checked what the C64 emulator does for timing and also there in the source code you can find usleep() implementation which does nothing. Other than that it seems to use this 64Hz timer and treat it as a millisecond timer even if that's not what it provides. Oh well.
So no help there but I'll continue the work anyway...
|
Well, as I said before, I think that 64Hz sync is good enough since everybody uses 60Hz. The interesting about these sources were the sound managing since this is the main difficulty of the emulator. Of course, emulate a Gameboy (even a Gameboy Color) requires much less CPU power than a complete MSX system. It is really weird that there is not direct access to sound hardware on Series 60... I think that there must be some workarround for this, but, well... Symbian devices are new ones and it will took time to the programers to discover "tricks"... |
|
jr msx addict Berichten: 310 | Geplaatst: 14 Oktober 2003, 16:18   |
I disabled the 50Hz (PAL) mode for now. Syncing to the 64Hz timer with sound requires a few "tricks" as well because the system is running at the edge so to say but I already got it working on my 7650. I will test this on a 3650 as well to see that it also works on it. One funny thing (which I clarified already some time ago but still) is that the sound streaming API in Symbian OS 6.1 does not offer any means to specify the format in which the audio data is being handled so I basically had to try out different combinations to find the correct format...
So sound (PSG,SCC+) is working if you freeze the screen. I implemented a screen freeze toggle key to the emulator.
I know this is not good enough because you want to listen to sounds while playing. That is also possible, but at the moment this is too much for the system to handle and sound gets distorted => not nice to listen to.
I'll also try to implement a sound on/off toggle key so that you could listen to the music but disable it if you want to play and don't like the sound when it gets distorted.
So once again, I'm hoping to release v0.95 this week. Then you can see for yourself how much there is still left to optimize in the emulator to get sound working all the way =)
About the OS sound system in general -- in the new OS version that is in use in the 6600 phone there is direct access to the sound driver. No access to the sound hardware yet but at least it is a step in the right direction.
And in Goboy they seem to use a separate server process for their sound handling - well, that's one way to do it but also it wastes some CPU resources because they have to do task switching from their emulator to their sound server and after that to the OS sound server. In fMSX the middle step is skipped. Of course server processes can run at higher priority than UI apps but still I don't think it would make that much of a difference especially if you are not running anything else in the background while playing and because of the lost time in the task switching.
|
|
1eonid msx novice Berichten: 18 | Geplaatst: 14 Oktober 2003, 19:13   |
Jr, You are great programmer! And I think, you may make a NES emulator/Series60 also easy as fMSX! The Nes emulators for Windows or DOS writings on C++ a great ensemble! No nothing more simply that creating a NES/S60! But I Can't create, because I'm not programmer!
What abour also SEGA Genesis/S60 or Sega GameGear(Sega Master System) /S60 ? |
|
Sousuke msx freak Berichten: 154 | Geplaatst: 14 Oktober 2003, 22:51   |
That's a pity that the 3650/7650 phones aren't fast enough to emulate the sound perfectly..
well MSX is a powerful computer..
Quote:
| No access to the sound hardware yet but at least it is a step in the right direction.
|
Guess they want to keep everything compatible as much as possible..
Is there any way to check how much CPU-time is still available (i.e. in idle-time)?
I'm just wondering how much time is wasted through all those the API-layers/servers.
Quote:
| So once again, I'm hoping to release v0.95 this week. Then you can see for yourself how much there is still left to optimize in the emulator to get sound working all the way =)
|
I'm already looking forward to the new release! 
And thanks again for your great effort! |
|
jr msx addict Berichten: 310 | Geplaatst: 15 Oktober 2003, 07:39   |
Quote:
| Jr, You are great programmer! And I think, you may make a NES emulator/Series60 also easy as fMSX! The Nes emulators for Windows or DOS writings on C++ a great ensemble! No nothing more simply that creating a NES/S60! But I Can't create, because I'm not programmer!
What abour also SEGA Genesis/S60 or Sega GameGear(Sega Master System) /S60 ?
|
Thanks, 1eonid - I may have learned a thing or two along the way, I have worked for the gaming industry in the past for some years. But like everyone else, I have to work hard to produce things like this emulator. It's not too easy. And it's not just about the difficulty level, even easy things always take up time to implement.
I'm not thinking about starting other emulator projects at the moment, fMSX/S60 is taking up my development resources and systems like NES or Genesis are quite different from MSX so I would have to study them first. You see, even for fMSX/S60, I rewrote nearly 100% of the source code for the emulator -- of course using the original fMSX source code as a reference but still I had to understand how the system works. I had to do this because the original fMSX is written in C for Unix and some of the architectural decisions imposed by the emulator code were not applicable in Symbian OS.
|
|
karloch
 msx addict Berichten: 389 | Geplaatst: 15 Oktober 2003, 10:23   |
1eonid, as Jr explained you, programming such a thing like an emulator requieres a serious amount of work and knowledge, no matter how good is the programmer. I just think that a MSX emulator is much better than a NES or Genesis (Megadrive) one (even, actually I don't think that the phone has enough power to emulate a M68000 based machine).
Jr, I didn't know about the Goboy tech to get sound. Well, as we said before, Gameboy hardware is much less heavy than complete MSX 2 hardware, so it is very understable that Goboy can feature sound, even using slower techs.
Just an idea, what about contacting with the developers of others emulator or even games for the Series 60? Maybe that someone have a good idea of how to handle this (ok ok, only "maybe"  ...
Anyway, thanks for your great work Jr, since I bought my 3650, I have always dreamed about playing MSX in everyplace, now it is a reality ^^ |
|
jr msx addict Berichten: 310 | Geplaatst: 15 Oktober 2003, 12:20   |
Quote:
| That's a pity that the 3650/7650 phones aren't fast enough to emulate the sound perfectly..
|
Well I don't know if it's more because the phones lack processing power or my lack of optimizing skills
Quote:
| Is there any way to check how much CPU-time is still available (i.e. in idle-time)?
I'm just wondering how much time is wasted through all those the API-layers/servers.
|
Maybe it would be possible to measure somehow but the lack of a high precision timer makes it a bit difficult to see. Also, the CPU usage counters in OS thread objects are not updated.
|
|
jr msx addict Berichten: 310 | Geplaatst: 15 Oktober 2003, 14:01   |
...and there it is, v0.95 is now downloadable... |
|
Latok msx master Berichten: 1680 | Geplaatst: 15 Oktober 2003, 15:06   |
Fantastic, JR. Just fantastic!! One question: what's the screen freeze toggle key?!
|
|
Latok msx master Berichten: 1680 | Geplaatst: 15 Oktober 2003, 15:08   |
I should check better, found it already  |
|
karloch
 msx addict Berichten: 389 | Geplaatst: 16 Oktober 2003, 15:46   |
Argh damm, my Nokia 3650 is at the Service Point, updating the firmware... I won't can test the emulator until I get back T_T
|
|
Latok msx master Berichten: 1680 | Geplaatst: 16 Oktober 2003, 16:10   |
Updating firmware, hey! New Symbian OS I hope  With better sound support  |
|
karloch
 msx addict Berichten: 389 | Geplaatst: 16 Oktober 2003, 17:14   |
Hehe, no, actually the firmware update is to solve a problem with WAP and GPRS access to Internet with the phone. This problem only appears with Movistar operator. My original version of firmware was 2.50 and I'm updating to 3.18 I think. There are some other enchacements to the phone but I haven't take a look to the list...
I think that it could be possible to fit Symbian OS 7 in the 3650, but I don't think that Nokia will ever do that... So, upgrading core operating system in the mobile would be an "amateur" job... (actually I don't have knowledge of any of this...).
|
|
|
|
|