Regen 0.95

AamirM's Regen forum

Moderator: AamirM

King Of Chaos
Very interested
Posts: 273
Joined: Fri Feb 29, 2008 8:12 pm
Location: United States

Post by King Of Chaos » Thu Dec 18, 2008 5:07 pm

AamirM wrote:Hi,
The sound in the SMS/GG game Sonic The Hedgehog 2 sounds off. Kega/MEKA gets this portion correct. SuperHQ or any sound options don't make a difference.
Disable YM2413 and try again in SuperHQ mode.
Okay, that did it. A couple more things noticed...

-The Brighten feature screws with SMS/GG games badly. Check Sonic 2 for both systems to see what I mean.
-Clicking on a SMS or GG game in the file history, causes Regen to silently crash.
-Powering off on a SMS game can cause it to silently crash. It did it to me several times. BIOS was enabled.

My suggestion there is to add extension to all history games, so we may have a better idea if it's a Genesis or SMS/GG game.

AamirM
Very interested
Posts: 472
Joined: Mon Feb 18, 2008 8:23 am
Contact:

Post by AamirM » Thu Dec 18, 2008 6:46 pm

Hi,
Eke wrote:congrats, all "VDP timing sensitive" games I've tested seems to be working without glitch so far, you finally did it Wink
Ahhh.....finally no bug report from you :D :lol: . Thanks for testing it out.
Eke wrote:one reminder though, Super Street Fighter 2 banking mechanism seems to be broken (red screen on startup), tried with autofix checksum enabled and disabled
Are you reloading the ROM after enabling autofix checksum? Because its working fine here.
On the default buffer size (which is 7 if I'm correct) the game's timer runs for 20 seconds, plus 5 seconds or so to get past the title screen, before the emulator freezes.

Using 15 for the buffer size, the game timer runs for on average 28 seconds before freezing, plus the 5 or so seconds to get past the title screen.

I hope that is of some use.
The best option for you is to use it on your main computer and see if it works out there. Seems like some bug in my timing code.
-The Brighten feature screws with SMS/GG games badly. Check Sonic 2 for both systems to see what I mean.
-Clicking on a SMS or GG game in the file history, causes Regen to silently crash.
-Powering off on a SMS game can cause it to silently crash. It did it to me several times. BIOS was enabled.
Okay, I'll fix them. Thanks for testing.
My suggestion there is to add extension to all history games, so we may have a better idea if it's a Genesis or SMS/GG game.
"ShortenHistoryNames=0 ;) .

stay safe,

AamirM

Shiru
Very interested
Posts: 786
Joined: Sat Apr 07, 2007 3:11 am
Location: Russia, Moscow
Contact:

Post by Shiru » Thu Dec 18, 2008 6:55 pm

I have managed to drop Regen many times. Can't explain exact actions sequence, but generally I load SMS game, change HQ and Rate settings, and when I load another SMS game, Regen falls without any error messages, but with standart sound of error pop-up.

edc2008
Newbie
Posts: 9
Joined: Wed Dec 17, 2008 9:49 pm

Post by edc2008 » Thu Dec 18, 2008 7:59 pm

The best option for you is to use it on your main computer and see if it works out there. Seems like some bug in my timing code.
Thanks. I have tried it on my main computer and no problems there. And I'm happy to say that so far all the bugs I encountered in previous versions are now fixed.

Snake
Very interested
Posts: 206
Joined: Sat Sep 13, 2008 1:01 am

Post by Snake » Thu Dec 18, 2008 8:12 pm

King Of Chaos wrote:-The Brighten feature screws with SMS/GG games badly. Check Sonic 2 for both systems to see what I mean.
Personally, Aamir, I would drop that option, as well as "Overdrive". Kega does things a bit differently to other emulators and those options are only there to make it look/sound more like Gens, because a few people bitched about it ;)

But they really don't make any sense in Regen.

King Of Chaos
Very interested
Posts: 273
Joined: Fri Feb 29, 2008 8:12 pm
Location: United States

Post by King Of Chaos » Thu Dec 18, 2008 8:51 pm

AamirM wrote:
My suggestion there is to add extension to all history games, so we may have a better idea if it's a Genesis or SMS/GG game.
"ShortenHistoryNames=0 ;)
Oh, I know. But I don't want to see the full path, just the extension on the end of the game name (.bin, .smd, .gen, .gg, etc.). Or add a counter to the left side stating what kind of game it is...

[Gen]
[MD]
[SMS]
[GG]
Etc.

Nemesis
Very interested
Posts: 791
Joined: Wed Nov 07, 2007 1:09 am
Location: Sydney, Australia

Re: Regen 0.95

Post by Nemesis » Thu Dec 18, 2008 10:12 pm

Eke wrote:congrats, all "VDP timing sensitive" games I've tested seems to be working without glitch so far, you finally did it ;-)
Hi Eke, a little OT, but would you mind listing some of these problematic games, and the nature of how they "break". I need some really juicy test cases for my new VDP core (when I finally get around to finishing it).

Snake
Very interested
Posts: 206
Joined: Sat Sep 13, 2008 1:01 am

Re: Regen 0.95

Post by Snake » Fri Dec 19, 2008 12:35 am

Nemesis wrote:
Eke wrote:congrats, all "VDP timing sensitive" games I've tested seems to be working without glitch so far, you finally did it ;-)
Hi Eke, a little OT, but would you mind listing some of these problematic games, and the nature of how they "break". I need some really juicy test cases for my new VDP core (when I finally get around to finishing it).
This is a good point actually, such a list should exist somewhere, as it would no doubt be useful for a lot of people. I always forget to note problem games myself and then never remember what to test... I know of a few but Eke already listed them in the Kega thread (I should just add that Outrunners is probably the biggest bitch of the entire set...) - if I think of any more, I'll add them.

Eke
Very interested
Posts: 884
Joined: Wed Feb 28, 2007 2:57 pm
Contact:

Post by Eke » Fri Dec 19, 2008 9:50 am

ok, here's my list:

ON/OFF display changes mid line or during hblank:
  • Deadly Moves / Power Instinct
    F1 World Championship (E) / Kawasaki Superbike Challenge (same engine)
    Legend of Galahad (during intro)
    Nigel Mansell's World Championship (both european/ us versions)
    Lemmings 2
    Out of this World (password screen and main game )
The result is generally flickering line (if the change does not happen at the same moment from line to line but the emulator is rendering lines always at the same "time") or corrupted line (if the line is supposed to be blanked)

Note that this also depends on your DMA timings, it's possible that when they are different, glitch won't actually happen because of shortened timings but will once you modify them.

H counter related:
  • Zero the kamikaze (us version !)
    Striker
    Road Rash series
    Sonic 3D (bonus stage)
Those games generally waits for a specific value in the HV counter before triggering some CRAM or VSRAM writes (DMA or direct) . If the HVC is not accurately handled, it will result in glitchy lines. Road rash games will also changes the border color mid-line: if you rendered your line before that register writes, it results in bad colored horizon line.


About Out Runners, I don't know what is the problem, I only know the "crazy dot" effect happens when I mess with the Vint occurence timing. Same goes with Double Dragon 2 and X-Perts, they will crash if I delay the Vint occurence to much, not sure why (this can be related to something completely different)

Fatal Rewind is also a bit sensitive to Vint timing, it will broke if you clear pending interrupt when a new frame begins (I don't know how the real VDP is handling interrupt specific cases, and I 'm really curious about that)

Bram Stocker's Dracula needs enough delay between VBLANK and VINT occurence

Mega-Lo-Mania/Tyrants and Ex-Mutant need some latency between VINT flag being set in VDP status and VINT occurence

Sesame Street needs some latency between VINT being enabled through VDP register and VINT occurence

Sonic 2 VS mode uses the HBLANK flag from VDP status to enable/disable the display and trigger DMA operation mid-frame (during the screen separation area). It will require both accurate HBLANK and DMA timings to properly display the separation blue area.

Chaos Engine/Soldiers of Fortune and Double Clutch (intro text) require accurate VDP FIFO emulation, there might be others as well



that's all I can remember ;-)

    AamirM
    Very interested
    Posts: 472
    Joined: Mon Feb 18, 2008 8:23 am
    Contact:

    Post by AamirM » Fri Dec 19, 2008 10:58 am

    Hi,
    I always forget to note problem games myself and then never remember what to test
    Yeah, I have somewhat the same habit. Though, I just write down the name of the games, alongside the code, which are affected by the changes I make. These are the names of the games that are written alongside the HV counter and H/V INTs enable/disable registers:

    Road Rash 1/2/3, 3 Ninjas kick back (sensitive), Lemmings status bar, Sonic 3D Bonus stage, Skitchin', Wheel of Fortune, Street Racers (sensitive), Lotus 2.

    And these are the games I check when testing DMA:

    F1 World Championship (E), F1 World Championship (U), Kawasaki Superbike Challenge, Sonic 3D intro (it will desync with sound if DMA isn't accurate), Virtua Racing, Legends of Galahad.
    Same goes with Double Dragon 2 and X-Perts, they will crash if I delay the Vint occurence to much, not sure why (this can be related to something completely different)
    Both of these games were broken in Regen at one point. IIRC, I fixed DD2 by improving the HBLANK timings. X-Perts worked after I made some changes to VBLANK timings.
    Fatal Rewind is also a bit sensitive to Vint timing, it will broke if you clear pending interrupt when a new frame begins (I don't know how the real VDP is handling interrupt specific cases, and I 'm really curious about that)
    You will notice that this game has severe glitches in Regen before 0.95. That was because the FIFO timings were somehow interfereing with it. Before that, I remember, that this game required vint pending to be cleared at some point (IIRC, when 68k acked hint) to work.
    Chaos Engine/Soldiers of Fortune and Double Clutch (intro text) require accurate VDP FIFO emulation, there might be others as well
    Revolution X will lock-up later if this isn't emulated correctly.

    I maybe wrong as well and that the fix maybe something else altogether (remember how I fixed Pacman 2 incorrectly ;) ). I'll add some more as I remember.
    I have managed to drop Regen many times. Can't explain exact actions sequence, but generally I load SMS game, change HQ and Rate settings, and when I load another SMS game, Regen falls without any error messages, but with standart sound of error pop-up.
    You should change HQ setting before loading the game.
    Personally, Aamir, I would drop that option, as well as "Overdrive". Kega does things a bit differently to other emulators and those options are only there to make it look/sound more like Gens, because a few people bitched about it Wink

    But they really don't make any sense in Regen.
    Brighten feature was requested (IIRC, by King :) ). Overdrive, I may remove.

    stay safe,

    AamirM
    Last edited by AamirM on Fri Dec 19, 2008 11:18 am, edited 1 time in total.

    notaz
    Very interested
    Posts: 193
    Joined: Mon Feb 04, 2008 11:58 pm
    Location: Lithuania

    Post by notaz » Fri Dec 19, 2008 11:05 am

    I'll add a few too:

    Mazin Saga / Mazin Wars - title screen breaks if vint timing is off

    Wiz 'n' Liz - The Frantic Wabbit Wescue - if you wait through attract mode credits screen will appear with some water mirror effect, which may mess up due to hint/vint timing.

    Jimmy White's Whirlwind Snooker - sometimes might act strangely or hang, seems to be related to irq timing.

    Lemmings - scoreboard may split into two parts if you fire interrupts wrong.

    Road Rash series, Skitchin' - might get bright line in sky if you fire hint interrupts wrong.

    That's all I could find in my notes. Most of them overlap with Eke's :)

    HardWareMan
    Very interested
    Posts: 745
    Joined: Sat Dec 15, 2007 7:49 am
    Location: Kazakhstan, Pavlodar

    Post by HardWareMan » Fri Dec 19, 2008 11:50 am

    AamirM wrote:
    I have managed to drop Regen many times. Can't explain exact actions sequence, but generally I load SMS game, change HQ and Rate settings, and when I load another SMS game, Regen falls without any error messages, but with standart sound of error pop-up.
    You should change HQ setting before loading the game.
    Confirm that. I have drop out Regen many times, when try to launch my own code, that contain some errors. On real hardware or even on Gens it works, but glitches. Regen simple shutting down, without any sound/visual error.
    PS I don't use Z80 and sound part. Only VDP, M68K and joystick port.

    AamirM
    Very interested
    Posts: 472
    Joined: Mon Feb 18, 2008 8:23 am
    Contact:

    Post by AamirM » Fri Dec 19, 2008 4:35 pm

    Hi,
    Snake wrote:This is a good point actually, such a list should exist somewhere
    I was thinking, why not make another topic here (or in the MD board) which lists these games? Unless someone has a better idea.
    Confirm that. I have drop out Regen many times, when try to launch my own code, that contain some errors. On real hardware or even on Gens it works, but glitches. Regen simple shutting down, without any sound/visual error.
    It can be that I left in some debug code which is causing that. Can you PM the file please?

    stay safe,

    AamirM

    HardWareMan
    Very interested
    Posts: 745
    Joined: Sat Dec 15, 2007 7:49 am
    Location: Kazakhstan, Pavlodar

    Post by HardWareMan » Fri Dec 19, 2008 5:26 pm

    AamirM wrote:It can be that I left in some debug code which is causing that. Can you PM the file please?
    That file not longer available.
    I will try to reproduce situation and then we see what we've got.

    eighty5cacao
    Interested
    Posts: 15
    Joined: Thu Sep 25, 2008 9:11 pm

    Post by eighty5cacao » Fri Dec 19, 2008 10:02 pm

    Okay, I have noticed some user-interface-related bugs:

    The text field in the Overclock M68000 dialog is prefilled with garbage characters (regardless of whether the overclocking feature has been used previously in a Regen session), and the LastROM configuration field either has garbage characters at the end of the pathname or is overwritten with garbage entirely.

    The following is a screenshot showing both of these issues. There is no ROM loaded here, but that does not seem to matter. (EDIT: cropped screenshot)
    Image
    This problem did not happen with Regen 0.93 beta with Debuggers. Is there a possibility that my download or your upload might be corrupted?

    BTW: What is the purpose of the RunCount field in the configuration file? Is there supposed to be an Easter egg that triggers after Regen has been run a certain number of times?
    Also, when do you expect to be able to reenable the debugging features?

    Post Reply