Welcome, Guest. Please login or register.
Pages: 1 2 3 [4] 5 6 ... 9
  Print  
Author Topic: Lynx emulator  (Read 9766 times)
Stevie A
*

Karma: 2
Offline Offline

Posts: 41


« Reply #45 on: October 23, 2009, 10:16:57 PM »

Ninja Gaiden seems ok but i never played it

I used to own an Atari Lynx and Ninja Gaiden and can tell you it runs very accurately indeed!

One of my first downloads for my brand new Dingoo and I'm thrilled!
Logged
Spiller
* *

Karma: 31
Offline Offline

Posts: 106



« Reply #46 on: October 24, 2009, 07:38:52 AM »

I experience the freezes sometimes as well. The cause is still unknown. Alekmaul suggested some alignment problems, but I haven't been able to find such a thing yet.
Logged
alekmaul
* *

Karma: 65
Offline Offline

Posts: 230


Out of memory error


WWW
« Reply #47 on: October 26, 2009, 07:17:50 AM »

Spiller, could you help me with my Stella port (size pb and object creation hangs dingoo) here : http://boards.dingoonity.org/dingoo-emulation/atari-2600-anyone-working-on-it/msg1672/#new
Did you have same pb with your handy port (i remember that Handy was C++ coding, isn't it  ?
Logged
Spiller
* *

Karma: 31
Offline Offline

Posts: 106



« Reply #48 on: October 26, 2009, 09:18:39 AM »

I have good and bad news. The good news is that I have added throttling and automatic frameskip functionalities. The emulator tries to stay as close to the original speed of the Lynx as possible now. The bad news is that the graphical and sound glitches are still there. I will try to put some more time in these glitches and will certainly release a new beta in a few days.
Logged
capt_bugaloo
*

Karma: 5
Offline Offline

Posts: 73



« Reply #49 on: October 26, 2009, 02:16:25 PM »

Sounds great!
Logged
Spiller
* *

Karma: 31
Offline Offline

Posts: 106



« Reply #50 on: October 27, 2009, 01:03:05 PM »

I have found the reason for the graphical glitches. It's actually quite simple: I'm basing LynGOO on a port of Handy, not Handy itself. This port contains some hacks to speedup the emulator. That's where the glitches come from. So actually there is not much difference to the original port.

However... I have experienced that the compatibility was not so good as I thought. Several games (like Lemmings) even refuse to run on the last beta. I decided to backport some stuff from the original Handy into LynGOO and it has been with success. The graphical glitches in Shadow of the Beast are gone and Lemmings runs perfectly as well now. The main drawback being the loss of speed.

The upcoming beta will change a lot compared to the last one. I have switched from 320x240 to the Lynx native resolution of 160x102, so the menus are displayed in this resolution now as well. Applying a linear filter to the scaling is perfectly possible and working but way too slow to enable currently. To be honest the whole emulator has become a lot slower, but compatibility should be much, much better.
Logged
alekmaul
* *

Karma: 65
Offline Offline

Posts: 230


Out of memory error


WWW
« Reply #51 on: October 27, 2009, 01:09:35 PM »

Nice to see that some pbs are fixed !
You can grab the scale engine from gnuboy or spoout, it's really fast and i don't think it will grab a fps to your emu.
Is the emulator really slow now ? how much fps ?
Logged
capt_bugaloo
*

Karma: 5
Offline Offline

Posts: 73



« Reply #52 on: October 27, 2009, 01:58:19 PM »

Hmm...  I found the previous version was running about 15% too fast with most games.  A little slower is okay but I hope it's not too much slower...   Huh
Logged
Spiller
* *

Karma: 31
Offline Offline

Posts: 106



« Reply #53 on: October 27, 2009, 02:25:05 PM »

It depends on the game how slow the emulator is. The previous beta's ran at between about 115% and 130% of the speed of a real Lynx. The version I have right now is running at 100% for most games, less than that for some games. Shadow of the beast is real crappy right now at about 85% of the speed and 6FPS (auto frameskip 10). Not continuously, but quite often.

About the FPS: the previous betas were running at about 20FPS because it contains a speed hack which copies the raw contents of the video memory only when something has changed. The current version runs at the proper 60FPS whenever possible, auto skipping frames when needed. The graphical glitches came from completely skipping the graphical subsystem and making a raw dump of the video memory.

About the scaling engine: I'm using the display code from flatmush right now. It has some linear scaling as well and really slows the emulator down a lot. I'll have a look at replacing it with some Gnuboy or Spout code.
« Last Edit: October 27, 2009, 02:28:26 PM by Spiller » Logged
Chris23235
*

Karma: 23
Offline Offline

Posts: 344


« Reply #54 on: October 27, 2009, 08:43:31 PM »

Maybe you can include an overclocking option, the original speed of the Dingoo can be greatly improved by clocking the CPU up to 430 MHz.
Logged
Spiller
* *

Karma: 31
Offline Offline

Posts: 106



« Reply #55 on: October 28, 2009, 12:27:30 PM »

Good suggestion! I'll have some more time to work on this on Thursday and Friday, so expect a new beta this weekend.

Alekmaul: I have been looking for some good tv-out code, but could not find it. Do you have some suggestion where to look?
« Last Edit: October 28, 2009, 12:29:45 PM by Spiller » Logged
alekmaul
* *

Karma: 65
Offline Offline

Posts: 230


Out of memory error


WWW
« Reply #56 on: October 28, 2009, 01:58:07 PM »

Alekmaul: I have been looking for some good tv-out code, but could not find it. Do you have some suggestion where to look?

Yes, take (Spoout source code ) and take a look at display.c and graphics.c in src/lib.
They use pointers to current frame buffer. It's the only thing to use to have tv out ok. Nothing else.
Logged
gromit77
*

Karma: 0
Offline Offline

Posts: 16


« Reply #57 on: October 28, 2009, 11:27:45 PM »

sorry put this in the wrong place, please ignore
« Last Edit: October 28, 2009, 11:30:37 PM by gromit77 » Logged
Spiller
* *

Karma: 31
Offline Offline

Posts: 106



« Reply #58 on: October 29, 2009, 08:17:20 PM »

They use pointers to current frame buffer. It's the only thing to use to have tv out ok. Nothing else.

I think you are referring to g_pGameDecodeBuf, right? But how do I switch to TV out then? Do I have to intercept START + L? And what then? Sorry for bothering you with this, but I seem to be missing something here...

Also, what did you fix in the sound threading in Colecoo? Something that could benefit others as well?  Wink
Logged
alekmaul
* *

Karma: 65
Offline Offline

Posts: 230


Out of memory error


WWW
« Reply #59 on: October 30, 2009, 01:32:25 PM »

About TV Out, it's on the Dingoo menu, i don't know how to switch with softawre function.
About sound threading, it was because ColeCoo used my first implementation of a320_sound, just take a look at spoout source code, you've got all the things regarding the new implementation.
Logged
Pages: 1 2 3 [4] 5 6 ... 9
  Print  
 
Jump to: