Jump to content
bitbank

Sega GG + Nintendo GameBoy emulator for SP beta test

Recommended Posts

Finally some great news for SmartGear fans! I worked exclusively on sound issues this weekend and fixed many things. We finally have decent GENESIS playback with full audio!!! I also cleaned up the NES and TG16 sound and seem to have solved that ever present clicked on different handsets. I was playing lots of Genesis games on my TP2 this weekend and they worked extremely well. Here's a rundown of what's changed:

1) Genesis sound fix!!!

2) NES sound fix

3) GameBoy system fixes (more games run now - e.g. Boarder Patrol).

4) Turbogfx-16 sound fixes

5) Sound timing fix - games should play on all handsets without any "clicking" sounds

6) Better battery life - re-enabled sleep for the extra time each frame.

7) Added Graphics and network benchmark tests.

8) Fixed GUI to set game settings to currently displayed "previously played game".

9) Added "head2head" play for GBC + GG. Now 2 players can play linked games on a single device.

10) Changed video settings to 3 choices: Best Performance, Fit-2-window, and fullscreen. Let me know if that doesn't cover all.

IMPORTANT: SAVE STATES WILL NOT WORK PROPERLY IN GG/SMS and GBC. I will fix this on the next round.

Many things are still incomplete, but it's come a long way. Please send all feedback including GBC game compatibility issues.

WM5/6 EXE, no installer:

http://www.bitbanksoftware.com/sg.zip

Wowz! You're a hero! I've just returned from my travels and can, finally, test your stuff! I'll post a very detailed review very soon.

Share this post


Link to post
Share on other sites
1) I mentioned earlier that only WM5/WM6 devices would work with the new code...I was wrong. I will continue to support SP2003/PPC2003 devices as long as I can. The newest code with BT networking and wireless controllers DOES support PPC2003 .

The latest (8/3) version doesn't run under WM2003.

Share this post


Link to post
Share on other sites

You're correct, the beta release was not built to run on PPC2003. The official release will have separate EXE's to run on PPC2003 and newer versions.

L.B.

Share this post


Link to post
Share on other sites
You're correct, the beta release was not built to run on PPC2003. The official release will have separate EXE's to run on PPC2003 and newer versions.

L.B.

BTW, will you come to MSN? <_< I have some questions for you so that I can post my latest news item on SG.

Share this post


Link to post
Share on other sites

I am new here, so to read 64 pages from 2004 till 2010 is quite allot thats why i am asking it by this way

Is saving games not possible?

Thanks allot anyway

Edited by laurenze88

Share this post


Link to post
Share on other sites
Hi Larry,

You are officially my hero!! :( I cannot wait to try out the new build and finally be able to play Might and Magic 2 with sound! <_< :mellow:

New code is up. The sound in most Genesis games is now quite good (including Might and Magic 2). Still can't get Michael Jackson's game to sound correct.

www.bitbanksoftware.com/sg.zip

L.B.

Share this post


Link to post
Share on other sites

Hey... Not sure if this has been addressed already in the forum as I just registered. I've had Smart Gear for a few years now (LOVE IT), and I use it with my BGP100 game pad. Is there any possibility of adding 6-button support to Genesis emulation in the future? Some games like Mortal Kombat and Street Fighter play much more smoothly if you have those three extra buttons.

Share this post


Link to post
Share on other sites

Hey Larry,

Your fix did the trick! Finally, we can now hear full sound with Might and Magic 2! <_< I did have to dial down the audio settings a bit, since my Palm Treo Pro, with its underwhelming 400MHz CPU, apparently can't handle processing Genesis audio at 44KHz. The sound was stuttering very slowly and was affecting the fluidity of the video. Once I set it down to 22KHz, the audio was fine and the video no longer skipped. I actually played M&M2 for a half hour, and wanted to save my progress, before realizing it was only a beta! :mellow:

Thanks again for investigating this sound issue. We look forward to the new build with save progress enabled! :(

Share this post


Link to post
Share on other sites

Today I worked on display performance. Specifically to improve the fullscreen performance on VGA and WVGA devices (my current device = Touch Pro 2). The challenge with the TP2 is that when the keyboard is open, the display is oriented 90 degrees away from its "natural" direction. This means when writing to video memory, you're writing against the natural memory order and it thrashes the cache. Either you will be reading from your source bitmap slowly or writing to the display slowly. I rewrote my stretchblt code to do a compromise between these 2 and came up with some fast code. Now you can run all of the emulators fullscreen with no frames dropped on most VGA/WVGA devices. I still need to optimized the 270 degree case (for devices with keyboards which open in the opposite direction). I also have partially implemented the networking code for PAN/Wifi support (all devices).

www.bitbanksoftware.com/sg.zip

L.B.

Share this post


Link to post
Share on other sites
Today I worked on display performance. Specifically to improve the fullscreen performance on VGA and WVGA devices (my current device = Touch Pro 2). The challenge with the TP2 is that when the keyboard is open, the display is oriented 90 degrees away from its "natural" direction. This means when writing to video memory, you're writing against the natural memory order and it thrashes the cache. Either you will be reading from your source bitmap slowly or writing to the display slowly. I rewrote my stretchblt code to do a compromise between these 2 and came up with some fast code. Now you can run all of the emulators fullscreen with no frames dropped on most VGA/WVGA devices. I still need to optimized the 270 degree case (for devices with keyboards which open in the opposite direction). I also have partially implemented the networking code for PAN/Wifi support (all devices).

www.bitbanksoftware.com/sg.zip

L.B.

WOW, I can't wait to try this. I hope this eliminates the dropped frames/jittery playback on my touch pro. Thanks for working on this Larry!

Share this post


Link to post
Share on other sites

Hi,

I am very impressed by the progress you made, keep up good work!

I have tried the latest build and unfortunately I have not noticed any speed improvements on my phone (Samsung Omnia Pro B7610 - slide out keyboard) - fullscreen is still way slower than wit2win.

Great work on the genesis sound, it is almost perfect!

Unfortunately good old Sonic 3 & Knuckles games are still unplayable - when you gain some speed, the movement start to be "laggy". My gues it is because of frame skipping with which the emulator keeps fps on 60 - any chances to add manual frame skipping?

And one more think, I am considering uprade to cooked WinMo 6.5.5 ROM - particularly this build (http://www.modaco.com/content/b7610-omnia-pro-b7610-modaco-com/304234/megalite-rom-6-5-5-xxil2/) which should have about 92MB of free RAM - currently I have 6.1 default ROM with aprox. 39MB free RAM - do you think it could improve performance of smartgear???

Share this post


Link to post
Share on other sites
Hi,

I am very impressed by the progress you made, keep up good work!

I have tried the latest build and unfortunately I have not noticed any speed improvements on my phone (Samsung Omnia Pro B7610 - slide out keyboard) - fullscreen is still way slower than wit2win.

Great work on the genesis sound, it is almost perfect!

Unfortunately good old Sonic 3 & Knuckles games are still unplayable - when you gain some speed, the movement start to be "laggy". My gues it is because of frame skipping with which the emulator keeps fps on 60 - any chances to add manual frame skipping?

And one more think, I am considering uprade to cooked WinMo 6.5.5 ROM - particularly this build (http://www.modaco.com/content/b7610-omnia-pro-b7610-modaco-com/304234/megalite-rom-6-5-5-xxil2/) which should have about 92MB of free RAM - currently I have 6.1 default ROM with aprox. 39MB free RAM - do you think it could improve performance of smartgear???

The change to the fullscreen performance was at least 2X, so you would definitely notice. It's possible that you're not using the newest code (2.0.4) or that your phone's display memory is slow and prevents faster frame rates. Genesis sound is a big performance issue at the moment, so try other systems (e.g. NES/TG16) and see if you notice a difference. It could also be that you're running at 270 degrees which I haven't optimized yet...

L.B.

Share this post


Link to post
Share on other sites
Hey... Not sure if this has been addressed already in the forum as I just registered. I've had Smart Gear for a few years now (LOVE IT), and I use it with my BGP100 game pad. Is there any possibility of adding 6-button support to Genesis emulation in the future? Some games like Mortal Kombat and Street Fighter play much more smoothly if you have those three extra buttons.

I'll see if I can add support for 6-buttons in the next build.

L.B.

Share this post


Link to post
Share on other sites
I'll see if I can add support for 6-buttons in the next build.

L.B.

That could put you one step closer to adding the SNES options, since it essentially had 6 buttons as well.

Although, that still doesn't make up for the vast difference in processors, considering Sega used the same base processor in the Game Gear, the Master System, and the first 2 generations of the Genesis.

Share this post


Link to post
Share on other sites
The change to the fullscreen performance was at least 2X, so you would definitely notice. It's possible that you're not using the newest code (2.0.4) or that your phone's display memory is slow and prevents faster frame rates. Genesis sound is a big performance issue at the moment, so try other systems (e.g. NES/TG16) and see if you notice a difference. It could also be that you're running at 270 degrees which I haven't optimized yet...

L.B.

I think that the problem here is 270 degrees........ I tried some NES games but still nothing :) will be waiting for new build. Thanks

Share this post


Link to post
Share on other sites
The change to the fullscreen performance was at least 2X, so you would definitely notice. It's possible that you're not using the newest code (2.0.4) or that your phone's display memory is slow and prevents faster frame rates. Genesis sound is a big performance issue at the moment, so try other systems (e.g. NES/TG16) and see if you notice a difference. It could also be that you're running at 270 degrees which I haven't optimized yet...

L.B.

Hello Larry,

I just got a chance to check the improved performance with my Touch Pro - and it's definitely obvious. Both Altered Beast on Sega Genesis and Bonk's Adventure for Turbographx are now very playable. It's obvious that frameskipping is taking place - but not to the extent that you miss any action or miss-time button presses like before. Hopefully there's still room for improvement - since there's quite a difference between the unthrottled framerates and otherwise.

That said - your changes are definitely moving in the right direction. Thanks!

Share this post


Link to post
Share on other sites
That could put you one step closer to adding the SNES options, since it essentially had 6 buttons as well.

Although, that still doesn't make up for the vast difference in processors, considering Sega used the same base processor in the Game Gear, the Master System, and the first 2 generations of the Genesis.

The challenge with adding the 6-button support is not the buttons. Internally, I already have the 6-button support ready. The problem is that the Genesis 6-button controller is not well documented and requires special code to communicate with the joystick. I started work on it last night and I have it mostly understood, but still not fully working. I should have it done by Friday.

L.B.

Share this post


Link to post
Share on other sites
The challenge with adding the 6-button support is not the buttons. Internally, I already have the 6-button support ready. The problem is that the Genesis 6-button controller is not well documented and requires special code to communicate with the joystick. I started work on it last night and I have it mostly understood, but still not fully working. I should have it done by Friday.

L.B.

That's right, Sega had to "cheat" their coding to get the 6 buttons to work. Although, they did use a standard serial port interface for the connectors.

Share this post


Link to post
Share on other sites
Hi, I created a new icon for the emulator. It's basically a remake of the old one which includes a 64x64 and 90x90 version for (W)VGA devices running WM 6.5. If you (Larry) like it, you can use it for future builds. I would feel honored because SmartGear is an awesome emulator, although I only use it for NES games. By the way, the latest build fixed the sound bugs for me. Also, playing feels much smoother than with the version I used before (1.1.6).

Here is what the icon looks like:

smartgearicon.png

The icon itself is included in the attached .zip archive.

New icon integrated! It will appear in the 2.0.5 beta which I should be able to release by this Friday. Here are some highlights:

0) New Icon :)

1) Fully enabled GDI paint option - slow, but useful for when paused. Now the paused display doesn't overpaint the menu and title bar.

2) Genesis 6-button support.

3) Better support for 270 degree displays (e.g. keyboard opens to "right" of display).

4) ???

L.B.

Share this post


Link to post
Share on other sites
Hi Larry,

Were you able to include the minor GUI enhancement I had suggested a few months, as discussed in this post? It would help to differentiate between different save game files.

Thanks!

Thanks for reminding me - I'll add it into the next build.

On a similar note. I find myself always playing the same games, so I will be adding a shortcut feature in the next build as well. Part 1 of this feature will allow you to choose a rom/zip file and create a shortcut file (*.LNK) which will launch SG and run the game. Part 2 of this feature will be rewriting all of the savegame logic to create a consistent file format (e.g. *.SGSAV) which will be a registered filetype with the system. Then you'll be able to "open" the savegame file and SG will run that game starting from the spot you saved. This will take much longer than part 1, so I'll see if I can get part 1 ready for the next build. Anyone have thoughts/suggestions on how this feature might be done better?

L.B.

Share this post


Link to post
Share on other sites
Thanks for reminding me - I'll add it into the next build.

On a similar note. I find myself always playing the same games, so I will be adding a shortcut feature in the next build as well. Part 1 of this feature will allow you to choose a rom/zip file and create a shortcut file (*.LNK) which will launch SG and run the game. Part 2 of this feature will be rewriting all of the savegame logic to create a consistent file format (e.g. *.SGSAV) which will be a registered filetype with the system. Then you'll be able to "open" the savegame file and SG will run that game starting from the spot you saved. This will take much longer than part 1, so I'll see if I can get part 1 ready for the next build. Anyone have thoughts/suggestions on how this feature might be done better?

L.B.

Instead of a catch-all save game extention, why not a unique extention for each system?

Share this post


Link to post
Share on other sites
Instead of a catch-all save game extention, why not a unique extention for each system?

It will create more work to do it that way. Detecting the game type is the easy part.

L.B.

Share this post


Link to post
Share on other sites
It will create more work to do it that way. Detecting the game type is the easy part.

L.B.

True, but it would also possibly pave the way to being able to easily transfer the save files from other emus to yours.

Share this post


Link to post
Share on other sites
True, but it would also possibly pave the way to being able to easily transfer the save files from other emus to yours.

It is EXTREMELY unlikely to have any type of transfer of save files between my emulator and others unless I specifically try to copy their file layout. My save files contain a compressed dump of the emulator memory along with cpu registers and private variables.

Is there some specific emulator that you'd like to exchange files with? Perhaps if it was something that a large % of people wanted, I could support reading another emulator's save files.

L.B.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.