Regen for Linux and Windows

Announce new emulators, discuss which games run best under each emulator, and much much more.

Moderator: General Mods

Locked
syntax_
New Member
Posts: 8
Joined: Sun Oct 21, 2007 4:24 am

Post by syntax_ »

Noticed "Sesame Street Counting Cafe" works good, did you have to do any timing trickery for it to work or does the line by line timing avoid this? I remember Stef and Steve had problems getting this game working.
AamirM
Regen Developer
Regen Developer
Posts: 533
Joined: Sun Feb 17, 2008 8:01 am
Contact:

Post by AamirM »

Hi,
syntax_ wrote:Noticed "Sesame Street Counting Cafe" works good, did you have to do any timing trickery for it to work or does the line by line timing avoid this? I remember Stef and Steve had problems getting this game working.
Sesame street requires accurate HINT/VINT timings to run. It requires that interrupts happen at the exact right time with all the delays/latencies which are involved emulated correctly. When I first implemented these things, many games got glitches or broke completely (listed in history.txt). But after my new event system in 0.85 all the glitched/broken games are now working correctly. This new event system can triggers events (interrupts and some other things) cycle accurately while still allowing me to run line by line. I can give you the details if you want but basically I had to more tightly integrate the VDP and CPU together. I didn't go for cyle-by-cycle emulation due to performance issues.
neo_bahamut1985 wrote:Wow, and I thought it was pretty good! Would it then surpass Kega Fusion's or has it already?
In my testing and to my ears, in about 98.5% of the games, Kega and Regen and a real Genesis sound same. In the rest, there are a few things that Regen 0.85 doesn't get right but the latest 0.91 version has them right so then Kega and Regen will be equal. Most of the Nemesis findings are about SSG-EG which Kega doesn't emulate correctly (yay :) ). So yes, someday Regen will have more accurate sound than Kega. But its not a big priority right now since there are only about 0.5% (maybe less) games that use it.

Just so you people know, I have taken a little break from developing Regen :lol: . Right now I am trying to write a cycle-accurate PC-Engine/TurboGraFX-16 emulator. It is about 80% complete and can already run many games (more details here).

stay safe,

AamirM
juetroll
Rookie
Posts: 10
Joined: Thu Apr 24, 2008 9:13 pm

Post by juetroll »

I just tried the linux version of Regen, so I'd like to give some feedback: speed is fine in general (maybe a little slow, but I'm only using a 1,84GHz CPU) and sound is awesome. Now for the "not so fine" part:
GUI and joypad/joystick support are badly needed (but as I understood, you're working on it); and using "simple" soft SDL for video is a rather tough limitation, OpenGL support would be great but with all the crappy drivers out there for linux (who said fglrx ?) I imagine it's a real pain in the a** to have it working properly. You should also consider XVideo, which allows hardware accelerated stuff (fullscreen, image scaling, YUV or RGB filtering, vsync, etc.). Having OpenGL and/or Xvideo support (like in snes9x-gtk or sdlmame) in Regen would be really nice.
If you manage to find some time to tackle these issues, Regen might just become THE BEST genesis emulator for linux :D !
Anyway, thanks for caring about us, linux users !
AamirM
Regen Developer
Regen Developer
Posts: 533
Joined: Sun Feb 17, 2008 8:01 am
Contact:

Post by AamirM »

Hi,
juetroll wrote:GUI and joypad/joystick support are badly needed (but as I understood, you're working on it)
Yes, I was working on GUI but it has stalled due to some real life stuff getting in the way. It should've been done by now if I listened to byuu and used GTK+ for the GUI in the first place (btw, how do I combine SDL window with GTK+ window??). The joypad support is 100% complete and will be present in next release. Thanks to my friend who lent me his gamepad for few days.
juetroll wrote:and using "simple" soft SDL for video is a rather tough limitation
Yeah I know. I did it this way so that it should work on most computers without any problems.
juetroll wrote:OpenGL support would be great but with all the crappy drivers out there for linux (who said fglrx ?) I imagine it's a real pain in the a** to have it working properly. You should also consider XVideo, which allows hardware accelerated stuff (fullscreen, image scaling, YUV or RGB filtering, vsync, etc.). Having OpenGL and/or Xvideo support (like in snes9x-gtk or sdlmame) in Regen would be really nice.
OpenGL support maybe present in the next release although I cannot promise. Same goes for Xvideo. But they'll be present someday for sure.
juetroll wrote:I just tried the linux version of Regen, so I'd like to give some feedback
Thanks. I appreciate it very much.

stay safe,

AamirM
Neo Kaiser
Veteran
Posts: 844
Joined: Thu Jul 29, 2004 3:56 am

Post by Neo Kaiser »

AamirM wrote:Hi,
syntax_ wrote:Noticed "Sesame Street Counting Cafe" works good, did you have to do any timing trickery for it to work or does the line by line timing avoid this? I remember Stef and Steve had problems getting this game working.
Sesame street requires accurate HINT/VINT timings to run. It requires that interrupts happen at the exact right time with all the delays/latencies which are involved emulated correctly. When I first implemented these things, many games got glitches or broke completely (listed in history.txt). But after my new event system in 0.85 all the glitched/broken games are now working correctly. This new event system can triggers events (interrupts and some other things) cycle accurately while still allowing me to run line by line. I can give you the details if you want but basically I had to more tightly integrate the VDP and CPU together. I didn't go for cyle-by-cycle emulation due to performance issues.
neo_bahamut1985 wrote:Wow, and I thought it was pretty good! Would it then surpass Kega Fusion's or has it already?
In my testing and to my ears, in about 98.5% of the games, Kega and Regen and a real Genesis sound same. In the rest, there are a few things that Regen 0.85 doesn't get right but the latest 0.91 version has them right so then Kega and Regen will be equal. Most of the Nemesis findings are about SSG-EG which Kega doesn't emulate correctly (yay :) ). So yes, someday Regen will have more accurate sound than Kega. But its not a big priority right now since there are only about 0.5% (maybe less) games that use it.

Just so you people know, I have taken a little break from developing Regen :lol: . Right now I am trying to write a cycle-accurate PC-Engine/TurboGraFX-16 emulator. It is about 80% complete and can already run many games (more details here).

stay safe,

AamirM
Incredible! A PC-Engine emulator. I'm very interested in this emulator. For me you can take a longer break of Regen in favor of this.
Yes I know that my grammar sucks!
byuu

Post by byuu »

(btw, how do I combine SDL window with GTK+ window??).

Code: Select all

  bool init() {
    display = XOpenDisplay(0);
    char env[512];
    sprintf(env, "SDL_WINDOWID=%ld", GDK_WINDOW_XID(your_gtk_window_handle->window));
    putenv(env);
    SDL_InitSubSystem(SDL_INIT_VIDEO);
    screen = SDL_SetVideoMode(2560, 1600, 32, SDL_HWSURFACE);
    buffer = SDL_CreateRGBSurface(SDL_HWSURFACE,
      1024, 1024,
      32, 0x00ff0000, 0x0000ff00, 0x000000ff, 0x00000000
    );
    return true;
  }
I set a crazy high video mode so that I can resize my window as big as the user could want without things screwing up. Doesn't seem to hurt anything, but who knows. You can probably re-initialize the video on window resize if you'd prefer something more sane.

SDL will still hijack your mouse cursor to show the black cursor thing, it will be ass slow as SDL always is, and you can't switch to fullscreen when it's nested in a window like that.
Agozer
16-bit Corpse | Nyoron~
Posts: 3534
Joined: Sun Aug 01, 2004 7:14 pm
Location: Nokia Land

Post by Agozer »

If only the PC-Engine had a better library of games.
whicker: franpa is grammatically correct, and he still gets ripped on?
sweener2001: Grammatically correct this one time? sure. every other time? no. does that give him a right? not really.
Image
bombman
New Member
Posts: 4
Joined: Thu Jul 10, 2008 8:07 pm

Post by bombman »

In my testing and to my ears, in about 98.5% of the games, Kega and Regen and a real Genesis sound same. In the rest, there are a few things that Regen 0.85 doesn't get right but the latest 0.91 version has them right so then Kega and Regen will be equal. Most of the Nemesis findings are about SSG-EG which Kega doesn't emulate correctly (yay Smile ). So yes, someday Regen will have more accurate sound than Kega. But its not a big priority right now since there are only about 0.5% (maybe less) games that use it.
Very noice. Which are the game that are confirmed to use the SSG-EG?
Just so you people know, I have taken a little break from developing Regen Laughing . Right now I am trying to write a cycle-accurate PC-Engine/TurboGraFX-16 emulator. It is about 80% complete and can already run many games (more details here)
wow you're a fucking coding monster, i salute you
AamirM
Regen Developer
Regen Developer
Posts: 533
Joined: Sun Feb 17, 2008 8:01 am
Contact:

Post by AamirM »

Hi,
Neo Kaiser wrote:Incredible! A PC-Engine emulator. I'm very interested in this emulator. For me you can take a longer break of Regen in favor of this.
I have already taken longer than I had planned for :) . And its very far from finished.
byuu wrote:I set a crazy high video mode so that I can resize my window as big as the user could want without things screwing up. Doesn't seem to hurt anything, but who knows. You can probably re-initialize the video on window resize if you'd prefer something more sane.

SDL will still hijack your mouse cursor to show the black cursor thing, it will be ass slow as SDL always is, and you can't switch to fullscreen when it's nested in a window like that.
Thanks byuu. I'll try that out.
Agozer wrote:If only the PC-Engine had a better library of games.
There are some really nice games but they're less than SNES, Megadrive of course. The CD addon has some very nice games as well.
bombman wrote:Very noice. Which are the game that are confirmed to use the SSG-EG?
Ghostbusters, Asterix, Buba 'n' Stix, Alisia's Dragon are the ones I can remember right now. There may be some more but not many.
bombman wrote:wow you're a fucking coding monster, i salute you
Haha :D . Thanks. *salutes back*

stay safe,

AamirM
juetroll
Rookie
Posts: 10
Joined: Thu Apr 24, 2008 9:13 pm

Post by juetroll »

AamirM wrote:Thanks. I appreciate it very much.
You're welcome ! :D

Btw, I saw you are working on a TGX, PCEngine emu, will there be a linux version as well, and will it have CD-ROM²/S-CD support ?
Speaking of which, do you ever plan to add Sega CD and Mega CD support to Regen ?

Take care !
leilei
Rookie
Posts: 37
Joined: Fri Feb 22, 2008 8:46 pm

Post by leilei »

Agozer wrote:If only the PC-Engine had a better library of games.
Bravoman is all you need
o^_^o
AamirM
Regen Developer
Regen Developer
Posts: 533
Joined: Sun Feb 17, 2008 8:01 am
Contact:

Post by AamirM »

juetroll wrote: Btw, I saw you are working on a TGX, PCEngine emu, will there be a linux version as well, and will it have CD-ROM²/S-CD support ?
Speaking of which, do you ever plan to add Sega CD and Mega CD support to Regen ?

Take care !
Hi,

Yes, maybe there will be a linux version. CD-ROM/Supergrafx support will be there too (because its not too hard :) ).

I have no plans to add SegaCD/MegaCD support to Regen right now.

stay safe,

AamirM
bombman
New Member
Posts: 4
Joined: Thu Jul 10, 2008 8:07 pm

Post by bombman »

Ghostbusters, Asterix, Buba 'n' Stix, Alisia's Dragon are the ones I can remember right now. There may be some more but not many.
damn, i was hoping they would be shitty games... i guess i'll have to bust out the old megadrive if i want to hear those games properly. or wait patiently for your update :wink:
AamirM
Regen Developer
Regen Developer
Posts: 533
Joined: Sun Feb 17, 2008 8:01 am
Contact:

Post by AamirM »

Hi,
damn, i was hoping they would be shitty games... i guess i'll have to bust out the old megadrive if i want to hear those games properly. or wait patiently for your update
That'll be awesome as I need someone who can run these games on a megadrive (I busted mine long time ago) to compare the sound. Can you do that?

stay safe,

AamirM
Eep386

Regen PSG Sound

Post by Eep386 »

Hey,

Glad to be of help :) I always like new Genesis emulators.

I also wanted to mention that the PSG noise channel isn't emulated correctly in Regen. You might want to check out Maxim's notes regarding the noise shift register, as outlined in "An implementation of the noise shift register" in this article:

http://www.smspower.org/dev/docs/wiki/S ... nd.SN76489

This article also has a bunch of other interesting stuff regarding the PSG and the way it makes sound.

Also, I'd like to make some feature requests, if they won't be too much work...

- Individual VDP layer enable/disable (if possible)
- Frame-by-frame pause/advance (again, if possible)
- An Optional 68010 CPU mode would be very interesting, and would be a first in the Genesis emulation scene. I know it sounds odd, but sometimes a 68010 is used to 'mod' Genesis systems so that they run certain games like Sonic Spinball, NBA Live 96 and others a little bit faster without having to mess with all the timing voodoo that is normally associated with overclocking. The 68010 does cause problems with some games though, so that's why it'd be optional. (I believe Starscream has a 68010 mode, but I don't know if it'd be possible to implement alongside a 68000 core).

Once again, keep up the great work, I can't wait to see the next version with the updated YM2612 engine!

Cheers
Eep386

Oh yeah, I almost forgot...

Post by Eep386 »

Oh yeah, I almost forgot, you're using Musashi for the 68000 emulation. (For a moment I thought you were using Starscream.... my bad. :oops:)

I just wanted to let you know that 68010 support is kind of a very low priority at this moment, I just thought it'd be neat to see.

It might be easier just to 'fake' it by implementing the 3-op 'loop mode' cache, that's the only really beneficial thing that the 68010 offers to the Genesis. According to CPU-World: Whenever the CPU detects a word instruction followed by two-word decrement and branch instruction (DBxx), it stores the first instruction in instruction decode register and the DBxx instruction in the prefetch queue, and then executes the loop without fetching both instructions from memory, thus speeding up loop processing.

Most of the other features of the '010 would not be applicable to the Genesis since none of its software is written to use them, nor can any of its hardware use them (directly at least).
juetroll
Rookie
Posts: 10
Joined: Thu Apr 24, 2008 9:13 pm

Post by juetroll »

AamirM wrote:Yes, maybe there will be a linux version. CD-ROM/Supergrafx support will be there too (because its not too hard :) ).
Sweeeeeet ! BTW, mednafen offers near perfect PCEngine/SGFX and CD-ROM² support for linux. You may want to have a look on its source code (it's open source).
AamirM wrote:I have no plans to add SegaCD/MegaCD support to Regen right now.
Ok, no need to hurry ;-)
That would be very very nice though (just a thought), but as one says: "one thing at a time !".
I may sound kinda over-excited, but I've been so unlucky with genesis emulation on linux: mess is a hell of a mess (yeah I know that's poor) , gens hates my ati card (someone, please offer a decent brain to the guys who design fglrx !!) , I can't get Xe to work and Kega using wine is so-so and quite hellish to configure. Hence, I can't wait to see a real working Genesis emu for linux !
DancemasterGlenn
Veteran
Posts: 637
Joined: Sat Apr 21, 2007 8:05 pm

Post by DancemasterGlenn »

juetroll wrote:Hence, I can't wait to see a real working Genesis emu for linux !
You have one right here. Do you mean a working segacd/megacd emulator?
I bring the trouble.
Rashidi
Trooper
Posts: 515
Joined: Fri Aug 18, 2006 2:45 pm

Post by Rashidi »

those who still have win9x machine and want to run Regen on it,
i recomended using KernelEx.
http://www.msfn.org/board/index.php?showtopic=71476

now Regen (0.85) perferctly runs on my win98SE machine :D
adventure_of_link
Locksmith of Hyrule
Posts: 3634
Joined: Sun Aug 08, 2004 7:49 am
Location: 255.255.255.255
Contact:

Post by adventure_of_link »

great, now we can get D3D audio working in older windows OSes :D

now if only someone made this compatability layer for windows XP so you can use windows vista programs on it..
<Nach> so why don't the two of you get your own room and leave us alone with this stupidity of yours?
NSRT here.
AamirM
Regen Developer
Regen Developer
Posts: 533
Joined: Sun Feb 17, 2008 8:01 am
Contact:

Post by AamirM »

Hi,
Eep386 wrote:I also wanted to mention that the PSG noise channel isn't emulated correctly in Regen.
I did emulated it but I may have missed something. I'll look at it again though. Which game/demo did you used to come to this conclusion?
Eep386 wrote:Also, I'd like to make some feature requests, if they won't be too much work...

- Individual VDP layer enable/disable (if possible)
- Frame-by-frame pause/advance (again, if possible)
- An Optional 68010 CPU mode would be very interesting, and would be a first in the Genesis emulation scene. I know it sounds odd, but sometimes a 68010 is used to 'mod' Genesis systems so that they run certain games like Sonic Spinball, NBA Live 96 and others a little bit faster without having to mess with all the timing voodoo that is normally associated with overclocking. The 68010 does cause problems with some games though, so that's why it'd be optional. (I believe Starscream has a 68010 mode, but I don't know if it'd be possible to implement alongside a 68000 core).
Individual VDP layer enable/disable is possible and I'll do it for the next release. 68010 support is very much possible too although don't expect it soon. Frame-by-frame advance is already in there. Just press the Pause key then space bar to advance one frame.
juetroll wrote:Ok, no need to hurry
That would be very very nice though (just a thought), but as one says: "one thing at a time !".
I may sound kinda over-excited, but I've been so unlucky with genesis emulation on linux: mess is a hell of a mess (yeah I know that's poor) , gens hates my ati card (someone, please offer a decent brain to the guys who design fglrx !!) , I can't get Xe to work and Kega using wine is so-so and quite hellish to configure. Hence, I can't wait to see a real working Genesis emu for linux !
Its been a while since I did a Regen release but I've restarted my work on it on both Windows and Linux so expect a release on each OS soon. I wanted to add debugging features but they'll take too long so I guess I'll put them for later. Some stuff that will for sure make in the next version are:

- Updates to YM2612 core
- Konami Justifier support (used in Lethal Enforcers I & II)
- Fix to the Sega Menacer support
- CPU overclocking feature
- GUI for the Linux port (maybe without OpenGL :( )
- Cheat code searching
- UPS (no IPS) patching support
- Zipped/7zip ROM browser
- Gamepad support for Linux port
- Configuration support to the NTSC filter plugin

If there is something you think I am missing or should add to the list please tell it. I've forgotten many feature requests so if you won't tell they won't make it.
Rashidi wrote:those who still have win9x machine and want to run Regen on it,
i recomended using KernelEx.
http://www.msfn.org/board/index.php?showtopic=71476

now Regen (0.85) perferctly runs on my win98SE machine
I thought I linked it with MSLU to make it work under Win98. But maybe I didn't. Oh well, you won't be needing that for any later versions.

stay safe,

AamirM
DancemasterGlenn
Veteran
Posts: 637
Joined: Sat Apr 21, 2007 8:05 pm

Post by DancemasterGlenn »

Yay! I'm looking forward to the new release. Is Opengl very hard to code in to the emulator, as compared to the other method you're using/going to use?
I bring the trouble.
ZH/Franky

Post by ZH/Franky »

Hey AdmirM, why don't you release what you've already made of this TG-16 emulator? (you know, as some kind of beta).

Also, why not open source Regen so others can help out (not me of course, I still basically can't code for shit yet).
AamirM
Regen Developer
Regen Developer
Posts: 533
Joined: Sun Feb 17, 2008 8:01 am
Contact:

Post by AamirM »

Hi,
DancemasterGlenn wrote:Yay! I'm looking forward to the new release. Is Opengl very hard to code in to the emulator, as compared to the other method you're using/going to use?
No, its not much hard. The thing is combining GUI and OpenGL. I am still looking at bsnes sources to see how it doing things (basically how it keeps app control to itself rather than giving it to GTK). I just know some very basic things about GTK+ right now and I am still learning it so its going to take a bit of time.
Franky wrote:Hey AdmirM, why don't you release what you've already made of this TG-16 emulator? (you know, as some kind of beta).
Its pretty useless right now. Compatibility is about 92% and renderer is missing some stuff (inter-sprite priority mainly). But you'll see it soon enough.

stay safe,

AamirM
King Of Chaos
Trooper
Posts: 394
Joined: Mon Feb 20, 2006 3:11 am
Location: Space

Post by King Of Chaos »

Oooh, excellent to hear about the next release. :D Nice set of features there, I have most of the requests logged here if you need to take a look at them.

The requests I'd like to see soon are;

-Various development and hacking features (VRAM, palette, sprite list, and VDP registers view, YM2612 and PSG registers view (and YM2612 registers dump), enable/disable VDP planes, etc.).
-Automatically save and load Cheats for games (based upon the naming scheme of the ROMs, like Kega).
-Editable cheat window interface. Meaning the ability to add/delete selected cheats (New Cheat & Delete Cheat buttons), and edit (Edit Cheat).
-Cheat window remembers it’s position when opening it.
-The ability (via a Tools sub-menu called “Sprites”) to selectively disable sprite layers and backgrounds, and to put sprites on top).
-Ability to set certain functions (like Turbo Mode) to gamepads, with the ability to toggle turbo mode on/off with a gamepad.
-Support for the Genesis BIOS (with some toggle to enable/disable it in the config).

Not to mention some bug/issue fixes like the following;

-Turning a cheat “Off” doesn’t disable the effect.
-Regen can’t read and use SRM files created and used in Gens and Kega.
-Loading a ROM from the Load ROM dialog then loading a cheat for the game, causes the Load ROM window to open at the Cheats folder, not the ROMs folder. Possible Vista-only issue.

I've also noticed another one where if you reload the cheats a time or two, it asks you to find the cheat file again.

Two more things, is the debugger going to be a full debugger supporting breakpoints, traces, etc, and what kind of cheats can we search for? PAR? Hex? Game Genie? :P
[url=http://www.eidolons-inn.net/tiki-index.php?page=Kega]Kega Fusion Supporter[/url] | [url=http://byuu.cinnamonpirate.com/]bsnes Supporter[/url] | [url=http://aamirm.hacking-cult.org/]Regen Supporter[/url]
Locked